Проверьте вопрос в этой публикации - https://developer.ibm.com/answers/questions/477020/help-with-custom-actions-for-ibm-watson-assistant/
Есть две части для действий на стороне клиента.Первый находится в диалоге, который сигнализирует о том, что действие требуется, и где должен быть размещен результат действия.Действия на стороне клиента требуют наличия уровня оркестровки.Это означает, что вы контролируете как поток диалога, так и уровень оркестровки, который реагирует.Это зависит от вас, как вы получаете их координировать.Вы не обязаны следовать какой-либо схеме.Самый простой способ - использовать контекст.Диалог устанавливает контекстную переменную, например.«PleaseDoSomething», приложение видит его и что-то делает.
Документированная конструкция Client Action - это спецификация, которая помещает структуру в этот процесс;Позволяет другим слоям оркестровки понимать смысл действия;Позволяет относительно легко переключаться на облачные функции.
Если использовать конструкцию Client Action.
, тогда диалог json будет выглядеть примерно так:
{
"output": {
"text": {
"values": [
"Hang on I need to look that up."
],
"selection_policy": "sequential"
},
"actions": [
{
"name": "fetchBalance",
"type": "client",
"result_variable": "balance"
}
]
}
}
Ваш уровень оркестровки ищет «Действия», запускает «fetchBalance»и помещает результат в поле контекста «баланс».