This site is no longer updated.Go to new Conversational Cloud docs

Подключение Google Assistant для проекта на JAICF


Чтобы создать Action и подключить к нему проект на JAICF, выполните следующие шаги:

  1. Подготовьте проект.
  2. Подключите канал.
  3. Скачайте Action Package.
  4. Зарегистрируйте Action в Actions Console.
  5. Задайте активационную фразу.
  6. Скопируйте Project ID.
  7. Скачайте gactions.
  8. Загрузите Action Package в проект.
  9. Протестируйте бота в симуляторе Actions Console.

Обратите внимание, что данная интеграция с Google Assistant активна только для проектов, созданных с устаревшей версией Actions SDK. Для проектов, созданных с использованием Conversational Actions, используйте канал Dialogflow.


Подготовьте проект

Перед подключением канала предварительно подготовьте проект JAICF:

  • Укажите в файле build.gradle.kts в зависимостях настройки:
dependencies {
   // ...
    implementation("com.justai.jaicf:jaicp:$jaicf")
    implementation("com.justai.jaicf:google-actions:$jaicf")
}

  1. Сконфигурируйте в зависимости от способа подключения к платформе:
  • long polling — бот будет сам подключаться к серверу Just AI при взаимодействии с платформой. Простое решение, подходит для локальной разработки и отладки.

    Для этого способа укажите в файле JaicpPoller.kt канал ActionsFulfillment.ActionsFulfillmentSDK:

package com.justai.jaicf.template.connections

fun main() {
    JaicpPollingConnector(
        templateBot,
        accessToken,
        channels = listOf(
            ChatApiChannel,
            ChatWidgetChannel,
            TelephonyChannel,
            ActionsFulfillment.ActionsFulfillmentSDK
        )
    ).runBlocking()
}

  • webhook — по указанной ссылке бот будет принимать сообщения платформы. Необходимо конфигурировать для подключения в JAICP Cloud.

    Для этого способа укажите в файле JaicpServer.kt канал ActionsFulfillment.ActionsFulfillmentSDK:

package com.justai.jaicf.template.connections

fun main() {
    JaicpServer(
        botApi = templateBot,
        accessToken = accessToken,
        channels = listOf(
            ChatApiChannel,
            ChatWidgetChannel,
            TelephonyChannel,
            ActionsFulfillment.ActionsFulfillmentSDK
        )
    ).start(wait = true)
}

Подключите канал

Перейдите в проект JAICF на платформе JAICP. Нажмите на панели управления Каналы > Входящие > Создать канал. В разделе Голосовые Ассистенты выберите Google Ассистент.

Заполните поля:

  • Название канала — здесь вы можете сменить имя канала на удобное для вас.
  • Web app URL — укажите ссылку на веб-приложение Interactive Canvas при необходимости.
  • Триггеры — укажите фразы, которые будут ассоциироваться с вашим навыком. Если пользователь произнесет одну из этих фраз, Google Assistant предложит запустить ваш навык.

Нажмите Создать


Action Package

Скачайте JSON вашего Action Package. Для этого нажмите на ссылку Скачать action.json под названием добавленного канала.


Зарегистрируйте Action в Actions Console

Зайдите в Action Console и создайте новый проект. Для этого нажмите Add/import Project. Укажите название для проекта, язык и страну. Выберите категорию для проекта из представленных.


Задайте активационную фразу

На панели управления перейдите в меню Setup > Invocation. В поле Display name укажите активационную фразу для Action вашего бота.

Также здесь можно выбрать голос, которым ваш бот будет разговаривать с пользователями.


Скопируйте Project ID

Перейдите в настройки проекта Project settings > скопируйте значение поля Project ID.


Скачайте gactions

Скачайте на компьютер программу gactions для вашей операционной системы.


Загрузите Action Package в проект

Запустите консоль (Windows) или терминал (Mac OS, Linux). Перейдите в папку, в которую вы сохранили программу gations и JSON-файл для Action Package. Выполните команду:

gactions update --action_package PACKAGE_NAME --project PROJECT_ID
  • Вместо PACKAGE_NAME подставьте имя JSON-файла.
  • Вместо PROJECT_ID подставьте Project ID, который вы скопировали из настроек проекта.

Нажмите Enter.


Разрешение на использование

Вы получите от gactions URL, который нужно открыть в любом браузере. Скопируйте URL, а затем вставьте в строку браузера.

Если вы совершаете эти действия не в первый раз, то вы уже авторизованы и URL для авторизации может не выдаваться.

В браузере откроется страница, на которой вас попросят выбрать аккаунт и дать разрешения на управление проектами. Выберите аккаунт, на котором вы создали проект в Actions Console, нажмите Разрешить.

Вы увидите авторизационный код, который нужно скопировать и вставить обратно в консоль/терминал, а затем нажать Enter.


Тестирование

Теперь вы можете протестировать Action на устройстве с Google Assistant в том же аккаунте, под которым был создан проект. А также вы можете тестировать бота в симуляторе Action Console.

Перед тестированием проставьте разрешения на отслеживание действий в вашем Google Assistant. Для этого перейдите в настройки аккаунта выберите пункт Конфиденциальность > Действия в сервисах Google. Проверьте настройки Отслеживания действий, должны быть активны пункты:

  • история приложений и веб-поиска;
  • информация с устройств;
  • история голосового управления.