RU
+7 (499) 450-65-25

Как подключить Яндекс Алису к платформе RIC?

Привет! Меня зовут Гриша Куликов, я - менеджер продукта в Rightech. Мы с командой хотим продемонстрировать вам самый простой способ подключения Яндекс Алисы к платформе RIC. Опираясь на этот пример, вы сможете добавить новые команды для Яндекс Алисы и интегрировать новые устройства. Расширьте возможности вашей умной колонки и превратите ваш дом в пространство инноваций и удобства!

Создание модели

В новой моделе добавьте новую подсистему Для добавления модели нажмите «+» и выберите подсистему. Заполните поле идентификатор и имя (в моем случае для имени выбран Yandex)

alice1.png

В подсистеме Yandex добавьте два аргумента:

webhook alice2.png

webhook result alice3.png

В подсистеме Yandex добавьте два события:

запуск теста alice4.png

остановка теста alice5.png

Создание объекта

Для создания объекта нажмите «+», затем выберите модель (в моем случае модель называется Yandex Alisa), проверьте наличие идентификатора, добавьте имя и описание (при необходимости). В завершение, нажмите «Сохранить». alice6.png

Создание обработчика

Для добавления обработчика нажмите «+», введите имя и описание. alice7.png

Перейдите во вкладку «код» и замените существующий код на новый (код внутри).

function process() {
  let body = ric.webhook?.request?.body ?? {};
 
  const test_start =
    body.request?.nlu?.intents?.test_rightech_start ?? undefined;
  const test_stop = body.request?.nlu?.intents?.test_rightech_stop ?? undefined;
 
  let response = {
    status: 200,
    body: {
      version: body.version,
      session: body.session,
      response: {
        text: "Не поняла команду, попробуйте еще",
        end_session: "false",
      },
    },
  };
 
  if (test_start != undefined) {
    ric.events.gen("yandex_test_start", {});
    response.body.response.text = "Тест запущен";
  }
 
  if (test_stop != undefined) {
    ric.events.gen("yandex_test_stop", {});
    response.body.response.text = "Тест остановлен";
  }
 
  ric.webhook.respondWith(response);
 
  return { body };
}

Назначьте обработчик на объект. Для этого перейдите во вкладку «Объекты», нажмите «Выбрать» и выберите ранее созданный объект для Яндекс Алисы, не забудьте нажать «Сохранить». alice8.png

Затем перейдите во вкладку «параметры» и для блока «выходные параметры» выберите один из ранее созданных аргументов «webhook» или «webhook result». alice9.png

Нажмите на редактирование ранее созданного Обработчика (в данном случае – «Яндекс Алиса №1») и нажмите Создать вебхук. alice10.png

alice11.png

Создание автомата

Для создания автомата нажмите «+», затем заполните имя, описание, выберите модель (в данном случае – Yandex Alisa) и нажмите «Создать». alice12.png

Добавьте еще одно состояние и соедините их между собой событиями. alice13.png

В добавленном событии нажмите на «добавить событие» и выберите ранее созданное событие из модели (в данном случае модель — Yandex, событие — «запуск теста»). Далее проделайте тоже самое, но добавьте ваше второе событие (в данном случае - «остановка теста»). Сохраните полученный автомат и назначьте его на объект (в данном случае — Yandex Alisa object). alice14.png

Регистрация и запуск в Яндекс Диалоги

  1. Перейдите в «консоль» и создайте новый диалог.
  2. Во вкладке «настройки» (подраздел - «главные настройки») заполните: имя навыка, webhook URL (для этого перейдите в объекты – сервисы – обработчики – расширьте обработчик – скопируйте вебхук), выберите голос (в данном случае — голос Алисы).

alice15.png

  1. Также во вкладке «настройки» (подраздел — «главные настройки») нужно заполнить:
  1. Теперь во вкладке настройки необходимо перейти в подраздел  «интенты» и нажать «создать». Добавление интентов нужно для того, чтобы Яндекс Алиса смогла распознать вашу натуральную речь.
  1. Теперь можно перейти во вкладку «тестирование». В чате пишем, например, «тест Райтек», далее переходим на платформу – объекты – журнал и смотрим входящие пакеты. Если все работает верно, то должен прийти пакет данных (как на скринах ниже). alice18.png

alice19.png

alice20.png

  1. Ранее внесенные изменения необходимо сохранить и опубликовать. Теперь ожидаем некоторое время, пока диалог будет опубликован. Как только это произойдет, появится сообщение. alice21.png

  2. Перейдите во вкладку «доступ» и нажмите «сгенерировать». Когда вы перейдёте по этой ссылке, у вас появится выбор – запустить навык или запустить навык на колонке. Выбираете удобный для вас способ и проговариваете Алисе, что хотите сделать, исходя из тех интентов, которые у вас есть. alice22.png

  3. За выполнением событий можно наблюдать во вкладке Объекты – Сервисы – Логика. Не забудьте запустить автомат перед началом работы. alice23.png