IBM Watson Assistant: Как Skill может получить доступ к session_id с помощью V2 API WA - PullRequest
0 голосов
/ 09 апреля 2019

API-интерфейсы V2 для IBM Watson Assistant запрашивают получение session_id, а затем используют его при последующих вызовах Assistant для сохранения значений глобального контекста при вызовах.Если посмотреть на веб-страницу ссылки «Просмотр», которую мы связали с нашим помощником, кажется, что запрос содержит как объект значения, содержащий все ожидаемые части полезной нагрузки для навыка, так и идентификатор_сессии.

Я хотел бы получить доступ к этому session_id в своем умении, чтобы передать его облачным функциям, которые могут захотеть использовать API V2 для навыков в своих URI.Это возможно?Другими словами, на что можно ссылаться в содержимом JSON Skills для получения доступа к значению session_id?

Я предполагаю, что ссылка Предварительный просмотр приводит к использованию API-интерфейса V2 для Ассистента (кажется, существует промежуточная служба).веб-страницу предварительного просмотра и запросы к настоящему помощнику), и я также предполагаю, что установка значений context.global в моем навыке приведет к их повторному отображению помощником, так как ссылка предварительного просмотра должна повторно использовать session_id?

Как Skill может предоставить помощнику обратную связь о том, что session_id может быть удален (например, разговор завершен), заставив веб-страницу предварительного просмотра получить доступ к новому session_id?

1 Ответ

1 голос
/ 10 апреля 2019

Вы можете получить доступ к переменным контекста, используя context[variableName] или $variableName.Смотрите документацию по выражениям для доступа к объектам в IBM Watson Assistant .

. session_id , если он присутствует (это зависит от интерфейса), является частью системных переменных(context.system.session_id).Я просто попытался открыть и распечатать его в окне предварительного просмотра, добавив следующий текст ответа:

My session ID: <? $system.session_id ?>

<? ?> используется для оценки выражения втекст.

Я протестировал его с API V2 в моем инструменте разговора , и идентификатор сеанса был приятно напечатан как ответ.

...