Открыть URL в разговоре IBM Watson
Я использую бесплатную учетную запись Blumix для разработки чат-бота с помощью watson Беседы.
Как добавить кликабельный URL-адрес в ответе или автоматически вызвать URL-адрес в браузере?
Я отредактировал "расширенный ответ", используя предложения, описанные на этой странице, но не смог заставить его работать.
Как я могу этого достичь?
1 ответ
Я не знаю, правильно ли я понял ваш вопрос, но.. если вы хотите добавить URL inside
Служба беседы (IBM Watson), попробуйте:
1º: добавить URL с тегом <a target>
а также href=
Ваш URL внутри потоков. Смотрите пример:
JSON:
"output": {
"text": "This is a link <a target=\"_blank\" href= \"https://www.choosemyplate.gov\">Food and nutrition Guide</a>.\n<br/><br/>Talk to you later, bye for now!"
},
2º Посмотрите, что он не работал внутри разговора, потому что это будет ваш браузер, который будет render
html
,
3º Если вы открываете браузер, он работает, смотрите:
Посмотрите, что ссылка показывается, и это будет работать для других вещей в HTML, как кнопка, например...
Но если вы можете: на основе пользовательского ввода должен получить доступ к URL:
Это делается с помощью двух функций: Context.request
skip_user_input
Запрос - это специальная переменная контекста, которая имеет аргументы, имя и результат. Он используется, чтобы рассказать calling app
что он должен сделать какое-то действие на основе этой переменной.
настройка skip_user_input
не является обязательным. Во многих случаях вы можете захотеть выполнить некоторую бизнес-логику в своем приложении и затем предоставить ее результаты через result
, настройка skip_user_input
в true
, скажет Watson Conversation не ждать ввода от пользователя. Таким образом, ваше условие на следующем узле должно основываться на содержании внутри результата.
{
"output": {},
"context": {
"request": {
"args": {
"url_to_invoke": "your_url"
},
"name": "Call_A_URL",
"result": "context.response"
},
"skip_user_input": true
}
}
Ссылка: IBM Professional @Dudi: здесь.