Размещение навыка в Azure

Примеры навыков для Node.js и Python проверены и адаптированы для размещения на платформе Microsoft Azure. Если вы не пользовались этим сервисом раньше, вы сможете развернуть и проверить свой навык в Azure в рамках бесплатного периода.

Виртуальная машина или веб-приложение в Microsoft Azure

Бесплатный доступ и тарификация

Связка аккаунтов

Командная разработка

Поддерживаемые среды разработки

Пробный период включает стартовый грант на 30 дней.

Виртуальные машины, базы данных и некоторые службы Azure предоставляются бесплатно в течение 12 месяцев.

Все бесплатные сервисы ограничены по ресурсам: 750 часов вычислений на виртуальных машинах в месяц, 10 приложений с Azure App Service.

Обязательна.

Необходимо связать учетную запись Microsoft с учетной записью Azure.

Возможна.

Настройте доступ пользователей в Azure Active Directory.

Поддерживаются операционные системы на базе Linux и Windows.

Среды выполнения: Node.js, Python, Java, PHP, .NET Core, Ruby.

Если необходимая среда выполнения не поддерживается во встроенных образах, ее можно развернуть с помощью пользовательского контейнера.

Подготовка

  1. Создайте нужные учетные записи, если у вас их еще нет:

  2. Установите Azure CLI. Выполните консольную команду az --version . Убедитесь, что установлена версия 2.0.80 или выше.

  3. Войдите в Azure с помощью CLI, используя консольную команду az login. Откроется окно браузера для ввода учетных данных.

Создание веб-приложения

1. Установите Node.js. С помощью команды node --version убедитесь, что платформа установлена.

2. Скачайте или скопируйте исходный код примера из GitHub-репозитория Яндекса.

3. Перейдите в каталог приложения и установите пакеты NPM с помощью команды npm install.

4. Запустите сервер разработки: выполните команду npm start.

5. Разверните приложение с помощью Azure. Используйте команду ниже, подставив вместо <app-name> уникальное имя приложения.

Linux

az webapp up --sku F1 --name <app-name>

Windows

az webapp up --sku F1 --name <app-name> --os-type Windows

6. Дождитесь окончания процесса, чтобы получить URL в строке "URL": http://***.azurewebsites.net.

1. Установите Python 3.6 или более поздней версии. В командной строке выполните команду, чтобы убедиться, что установлена нужная версия: - python3 --version — для Linux. - py -3 --version — для Windows.

2. Cкачайте или скопируйте исходный код примера из GitHub-репозитория Яндекса.

3. Перейдите в каталог приложения. Создайте виртуальную среду:

Linux
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Windows
py -3 -m venv .venv
source .venv\\scripts\\activate
pip install -r requirements.txt

4. Запустите сервер разработки: в командной строке выполните команду flask run.

5. Разверните приложение с помощью Azure. Используйте команду ниже, подставив вместо <app-name> уникальное имя приложения.

Linux

az webapp up --sku F1 --name <app-name>

Windows

az webapp up --sku F1 --name <app-name> --os-type Windows

6. Дождитесь окончания процесса, чтобы получить URL в строке "URL": http://***.azurewebsites.net.

Добавление Webhook URL

  1. Перейдите в консоль разработчика.
  2. Создайте навык и перейдите на вкладку Настройки.
  3. В блоке Backend выберите Webhook URL и укажите URL приложения. Замените http на https.
  4. Внизу страницы нажмите кнопку Сохранить.

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

Подробнее о тестировании навыка.

  1. Проверьте работу навыка на вкладке Тестирование. Если все настроено правильно, появится приветствие: Hello!
  2. Отправьте сообщение с любым текстом и убедитесь, что вам пришел ответ с таким же содержанием.
  3. Попробуйте изменить код навыка. Откройте файл index.js в визуальном редакторе. Отредактируйте приветственную фразу: в тексте кода замените 'Hello!' на 'Привет!'.
  4. Повторно разверните приложение с помощью консольной команды az webapp up.
  5. Обновите страницу на вкладке Тестирование. Проверьте изменения в навыке.
  1. Проверьте работу навыка на вкладке Тестирование. Если все настроено правильно, появится приветствие: Привет! Купи слона!
  2. Отправьте сообщение и убедитесь, что навык отвечает.
  3. Попробуйте изменить код навыка. Откройте файл app.py в визуальном редакторе. Отредактируйте приветственную фразу: в тексте кода замените 'Привет! Купи слона!' на 'Добрый день! Не желаете купить слона?'.
  4. Повторно разверните приложение с помощью консольной команды az webapp up.
  5. Обновите страницу на вкладке Тестирование. Проверьте изменения в навыке.

Чтобы писать более сложные навыки, ознакомьтесь с протоколом работы Яндекс Диалогов.