Python

Запустим навык «Купи слона», который предлагает пользователю купить слона, пока он не согласится. Нужно подготовить исходный код и развернуть веб-сервис.

Внимание.

В инструкции используется сервис Now, который позволяет быстро запустить нужное веб-приложение, но в бесплатном варианте сильно ограничивает удобство разработки и тестирования.

Если вы хотите запустить навык в условиях, приближенных к боевым, следуйте инструкциям для развертывания в Microsoft Azure или Amazon Web Services.

  1. Исходный код
  2. Развертывание веб-сервиса

Исходный код

Чтобы развернуть навык на Python, подготовим исходный код и конфигурацию навыка — скачайте или склонируйте код репозитория на GitHub.

В результате у вас должна получиться папка (например, myskill-alice), в которой лежат файлы api.py, Dockerfile и requirements.txt.

Развертывание веб-сервиса

Развернем приложение с помощью сервиса Now:

  1. Установите приложение Now.

    Примечание. Обратите внимание, что в бесплатном варианте Now ваш исходный код и логи приложений открыты для всех.
  2. Выполните консольную команду now в папке myskill-alice. Консоль выведет адрес созданного приложения.

  3. По умолчанию Now генерирует случайный адрес для ваших приложений. Чтобы использовать постоянный поддомен, используйте команду now alias:

    now alias https://myskill-alice-qfnzrtlply.now.sh myskill-alice

Теперь навык можно зарегистрировать, указав полученный URL в поле Webhook URL. Сразу после этого работу навыка можно будет проверить на вкладке Тестирование. Чтобы писать более сложные навыки, ознакомьтесь с протоколом работы Яндекс.Диалогов.