Подключение Dialogflow для проекта на JAICF
Сервис позволяет интегрировать диалоговый пользовательский интерфейс в мобильное приложение, устройство, веб-приложение и др. В данной статье мы рассматриваем подключение Telegram для проекта на JAICF с использованием Dialogflow.
Чтобы подключить канал Dialogflow для проекта на JAICF, выполните следующие шаги:
Подготовка проекта
Перед подключением канала предварительно подготовьте проект JAICF:
- Укажите в файле
build.gradle.kts
в зависимостях настройки:
dependencies {
// ...
implementation("com.just-ai.jaicf:jaicp:$jaicfVersion")
implementation("com.just-ai.jaicf:google-actions:$jaicfVersion")
}
$jaicfVersion
последней версией фреймворка.- Сконфигурируйте в зависимости от способа подключения к платформе:
-
long polling
— бот будет сам подключаться к серверу Just AI при взаимодействии с платформой. Простое решение, подходит для локальной разработки и отладки.Для этого способа укажите в файле
JaicpPoller.kt
ActionsFulfillmentDialogflow()
:
package com.just-ai.jaicf.template.connections
fun main() {
JaicpPollingConnector(
templateBot,
accessToken,
channels = listOf(
ChatApiChannel,
ChatWidgetChannel,
TelephonyChannel,
ActionsFulfillmentDialogflow()
)
).runBlocking()
}
-
webhook
— по указанной ссылке бот будет принимать сообщения платформы. Необходимо конфигурировать для подключения в JAICP Cloud.Для этого способа укажите в файле
JaicpServer.kt
ActionsFulfillmentDialogflow()
:
package com.just-ai.jaicf.template.connections
fun main() {
JaicpServer(
botApi = templateBot,
accessToken = accessToken,
channels = listOf(
ChatApiChannel,
ChatWidgetChannel,
TelephonyChannel,
ActionsFulfillmentDialogflow()
)
).start(wait = true)
}
Подключение канала
Перейдите в проект JAICF на JAICP. Нажмите на панели управления Каналы → Входящие → Подключить канал. В разделе Голосовые Ассистенты выберите Dialogflow. Укажите название канала → нажмите Создать.
Нажмите Получить вебхук под названием созданного канала, он будет скопирован в буфер обмена. Скопированный вебхук понадобится позже при настройке навыка.