Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/azzzak/alice-101

Ликбез для желающих создавать навыки для Алисы
https://github.com/azzzak/alice-101

alice-skills yandex-alice yandex-dialogs

Last synced: about 2 months ago
JSON representation

Ликбез для желающих создавать навыки для Алисы

Awesome Lists containing this project

README

        

# alice-101

Репозиторий содержит пример простого навыка для голосового помощника [Алиса](https://yandex.ru/alice) от Яндекса. Также есть FAQ секция с ответами на частые вопросы от желающих создавать навыки.

## Пример навыка на языке

- [Go](/go)
- [JavaScript](/js)
- [Python](/python)
- [Ruby](/ruby)

_PR с добавлениями приветствуются_ 🤗

## FAQ

**Я хочу сделать навык для Алисы, что для этого потребуется?**

Самый простой способ — использовать [конструктор навыков](https://github.com/sameoldmadness/awesome-alice#Конструкторы-и-платформы), который не требует знания программирования. Если нужна более сложная логика работы или дополнительные функции, то навык придется программировать самостоятельно.

**Какой язык программирования подойдет для создания навыка?**

С этой задачей справится любой современный язык программирования. В репозитории есть пример простейшего навыка на разных языках.

**А как, вообще, работает навык?**

После того, как пользователь вызывает навык на своем устройстве на адрес навыка (указанный в настройках вебхук) отправляется запрос. Этот запрос в формате [JSON](https://ru.wikipedia.org/wiki/JSON) содержит реплику пользователя, идентификатор сессии и другую информацию. После обработки данных навык отправляет ответ в формате [JSON](https://ru.wikipedia.org/wiki/JSON) с текстом, инструкциями для голосового движка, а если необходимо — с кнопками и картинками, которые увидит пользователь. Подробно [протокол работы](https://yandex.ru/dev/dialogs/alice/doc/protocol-docpage) описан в документации.

**Я хочу упростить работу с протоколом Алисы, где взять готовые библиотеки?**

Библиотеки для разных языков собраны в каталоге [Awesome Alice](https://github.com/sameoldmadness/awesome-alice#sdk).

**Как сделать, чтобы мой навык оповещал пользователя в нужный момент?**

Сейчас это невозможно. Взаимодействие Алисы с навыком происходит в рамках одного запроса и ответ должен быть отправлен в течение 3 секунд.

**Как мне тестировать навык на локальном компьютере?**

Используйте сервис [ngrok](https://ngrok.com). Он дает публичный адрес в интернете, который ведет к вашему компьютеру.

**Мой навык готов, где мне его разместить в сети?**

Для этого подойдет практически любой хостинг, поддерживающий запуск скриптов. С октября 2019 года навыки можно бесплатно [размещать](https://yandex.ru/blog/dialogs/navyki-alisy-teper-mozhno-razmeschat-v-yandeks-oblake-besplatno-i-prosto) в Яндекс.Облаке — этот способ подойдет более опытным разработчикам.

**Какие ресурсы могут быть полезны?**

- [Документация](https://yandex.ru/dev/dialogs/alice/doc/about-docpage)

- [Школа Алисы](https://www.youtube.com/channel/UCzQZwJjg0_1RyYPWB9sc4Wg) — видеоролики про создание навыков
- [Awesome Alice](https://github.com/sameoldmadness/awesome-alice) — каталог ресурсов и инструментов для Алисы
- [Вики YaBoard](https://wiki.yaboard.com) — неофициальная база знаний

**У меня остались вопросы, куда я могу обратиться?**

[Группа разработчиков навыков](https://t.me/yadialogschat) в Telegram.