RU
background

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

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

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

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

alice1.webp

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

webhook alice2.webp

webhook result alice3.webp

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

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

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

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

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

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

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

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

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.webp

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

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

alice11.webp

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

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

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

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

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

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

alice15.webp

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

alice19.webp

alice20.webp

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

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

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