Размещение навыка в Google Cloud

  1. Подготовка
  2. Создание веб-приложения
  3. Добавление Webhook URL
  4. Тестирование навыка

В инструкции описано размещение навыка на Google Cloud Platform. Если вы не пользовались этим сервисом раньше, вы сможете развернуть и проверить свой навык в Google Cloud в рамках бесплатного периода.

Бесплатный доступ и тарификация Связка аккаунтов Командная разработка Поддерживаемые среды разработки

Виртуальная машина или веб-приложение на Google Cloud Platform

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

Google Cloud Free Program (free tier) не ограничен по времени.

Подробнее см. тарификацию сервисов App Engine и тарификацию виртуальных машин в Compute Engine.

Не обязательна

Возможна.

Настройте политику Identity & Access Management (IAM).

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

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

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

Бесплатный доступ и тарификация Связка аккаунтов Командная разработка Поддерживаемые среды разработки

Виртуальная машина или веб-приложение на Google Cloud Platform

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

Google Cloud Free Program (free tier) не ограничен по времени.

Подробнее см. тарификацию сервисов App Engine и тарификацию виртуальных машин в Compute Engine.

Не обязательна

Возможна.

Настройте политику Identity & Access Management (IAM).

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

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

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

Подготовка

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

  2. Перейдите в консоль Google Cloud и создайте новый проект. Для этого в верхней панели нажмите New Project → My first Project.
  3. Находясь в созданном проекте, слева в консоли выберите Billing. Убедитесь, что вам доступен стартовый грант и срок его действия не истек.
  4. Включите Сloud Build API по ссылке. Сверху выберите, для какого проекта вы подключаете API, и нажмите Next → Enable.
  5. Установите Cloud SDK и авторизируйтесь.
    Windows
    1. Скачайте и запустите Cloud SDK Installer.
    2. Авторизируйтесь в Cloud SDK. В открывшемся окне браузера введите учетные данные аккаунта Google.
    MacOS
    1. Выполните консольную команду uname -m, чтобы определить версию системы.
    2. Установите Сloud SDK.
    3. Выполните команду ./google-cloud-sdk/bin/gcloud init.

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

  1. Создайте веб-приложение App Engine. Используйте консольную команду ниже, заменив [YOUR_PROJECT_ID] на Projeсt ID вашего проекта:
    gcloud app create --project=[YOUR_PROJECT_ID]
  2. Выберите регион.
  3. Установите Git.
  4. Установите nvm и Node.js.
    Windows
    1. Удалите Node.js, если устанавливали его ранее. Установите NVM for Windows.
    2. Установите Node.js. Используйте команду nvm install stable.
    3. С помощью команды node --version убедитесь, что платформа установлена.
    MacOS
    1. Выполните команду curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh.
    2. Установите Node.js. Используйте команду nvm install stable.
    3. С помощью команды node --version убедитесь, что платформа установлена.
  5. Скачайте или скопируйте исходный код примера из GitHub-репозитория Яндекса.
  6. Перейдите в каталог приложения. Установите пакеты NPM c помощью команды npm install.
  7. Запустите сервер разработки: выполните команду npm start.
  8. Разверните приложение с помощью Google Cloud: выполните команду gcloud app deploy.
  9. Дождитесь окончания процесса, чтобы получить URL в строке "target url": https://***.appspot.com.

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

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

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

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

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

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

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