Подготовка сервера с навыком

Навык сначала надо где-то разместить. В этом разделе собраны инструкции для некоторых способов:

Не знаете, что выбрать?

Посмотрите таблицы со сравнением этих и других способов.

Функция в Yandex Cloud — поддержка облачных сервисов и бессерверных (serverless) приложений

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

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

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

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

Cloud Functions, которые вы используете для навыков Алисы, бесплатны и не тарифицируются.

В остальных случаях см. тарификацию ресурсов Yandex Cloud.

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

В консоли Диалогов в параметре Backend отображаются функции, которые вы имеете право просматривать.

Но навык будет работать, только если ваш аккаунт может запускать выбранную функцию.

Разрешение на запуск входит в роли Yandex Cloud serverless-functions-invoker, editor и выше.

Возможна.

Назначайте другим пользователям роли для доступа к функции.

Node.js, Python, Go, Java, .NET Core, PHP, R, Bash

Сервисы с поддержкой Webhook

Веб-приложение в Firebase

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

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

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

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

Бесплатный план содержит 10 ГБ дискового пространства, 360 МБ трафика в день и поддерживает до 100 одновременных подключений.

Подробнее см. в тарификации Firebase.

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

Вы можете интегрировать аккаунт с Google Cloud Platform и GitHub.

Возможна.

Назначайте роли для доступа к проекту, используя политику Identity & Access Management (IAM).

Node.js, Java, C#, Go, Python

Проект в Vercel

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

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

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

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

Бесплатный план содержит 100 ГБ дискового пространства, 100 ГБ ежемесячного трафика и неограниченное количество проектов.

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

Необходимо привязать аккаунт GitHub, GitLab или Bitbucket.

Возможна в платной версии.

Подробнее см. документацию Vercel.

Node.js, Go, Python, Ruby

Сервисы с поддержкой Webhook и облачных сервисов

Виртуальная машина в Yandex Cloud

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

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

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

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

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

В остальных случаях см. тарификацию ресурсов Yandex Cloud.

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

Вы можете создать сервисный аккаунт. Это позволит гибко настраивать права доступа к ресурсам Yandex Cloud.

Возможна.

Назначайте другим пользователям права доступа.

Поддерживаются операционные системы на базе Linux и Windows. Среды выполнения — без ограничений.

Виртуальная машина или веб-приложение в 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.

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

Виртуальная машина или веб-приложение в Amazon Web Services

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

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

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

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

Уровень бесплатного использования длится 12 месяцев.

Подробнее см. тарификацию сервисов AWS.

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

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

Возможна.

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

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

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

Виртуальная машина или веб-приложение на 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. Создайте сервер, который ожидает запросы с помощью вебхука.
  2. Укажите ссылку на ваш сервер (Webhook URL) при создании навыка в консоли.
  3. Когда пользователь запускает навык или что-то делает в нем, платформа Диалогов передает эти запросы на ваш сервер по указанной ссылке. Формат запросов и ответов — в справочнике API.

Как попробовать:

  1. Скачайте или скопируйте исходный код примера из GitHub-репозитория Яндекса.
  2. Разместите его привычным для вас способом.
  3. Получите Webhook URL, на который платформа Диалогов будет отправлять запросы.
  4. Создайте навык в консоли и укажите в нем ваш Webhook URL.

Совет

Напишите нам, какой инструкции вам не хватает в документации. Если у вас есть готовый пример, приложите его. Так вы поможете другим пользователям Диалогов и сделаете Алису еще лучше.