Доступ к намерениям Watson в Unity

У меня есть Watson 2.7.0 преобразования речи в текст, помощник, преобразование текста в речь.

Моя рабочая область содержит общие намерения для предоставления общих голосовых ответов; а также намерения «действия», которые выполняют действия в Unity.

Я скопировал код из примера Watson Cardboard vr в свой собственный скрипт, но обнаружил, что не могу получить доступ к намерениям. Он продолжает давать мне ошибку ниже. Мой сценарий отлично работал без части намерений «действия». Что мне не хватает?

Type `IBM.Watson.DeveloperCloud.Services.Assistant.v1.MessageResponse' does not contain a definition for `intents' and no extension method `intents' of type `IBM.Watson.DeveloperCloud.Services.Assistant.v1.MessageResponse' could be found. Are you missing an assembly reference?

person Community    schedule 14.09.2018    source источник
comment
Пожалуйста, добавьте подробности: какой скрипт, какая версия Watson Assistant API, что именно вы делаете, ...?   -  person data_henrik    schedule 14.09.2018
comment
@data_henrik Добавил подробности. Спасибо.   -  person    schedule 14.09.2018


Ответы (1)


MessageResponse и Intents являются объектами, поскольку они могут иметь дополнительные свойства, определяемые пользователем. Вы можете разобрать намерение из ответа в обратном вызове

private void OnMessage(object response, Dictionary<string, object> customData)
{
    Log.Debug("ExampleAssistantV1.OnMessage()", "Response: {0}", customData["json"].ToString());

    //  Get intent
    object tempIntentsObj = null;
    (response as Dictionary<string, object>).TryGetValue("intents", out tempIntentsObj);

    //  First intent
    object tempIntentObj = (tempIntentsObj as List<object>)[0];
    object tempIntent = null;
    (tempIntentObj as Dictionary<string, object>).TryGetValue("intent", out tempIntent);
    string intent = tempIntent.ToString();

    Log.Debug("ExampleAssistantV1.OnMessage()", "intent: {0}", intent);
}
person taj    schedule 07.11.2018
comment
Я использовал этот скрипт для доступа к намерению, но в моем случае он не работал. github.com/ IBM / vr-speech-sandbox-rift / blob / master / - person ; 27.11.2018