Advertisement
  1. Code
  2. Amazon Alexa

Как за час создать простую игру для Amazon Echo

by
Difficulty:BeginnerLength:LongLanguages:
Sponsored Content

This sponsored post features a product relevant to our readers while meeting our editorial guidelines for being objective and educational.

Russian (Pусский) translation by Ilya Nikov (you can also view the original English article)

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

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

Amazon Echo и Alexa, голосовая служба, которая ее поддерживает, являются одними из первых примеров этой новой технологии.

В этом уроке мы будем использовать Alexa Skills Kit, AWS Lambda и некоторый исходный код шаблона от Amazon, чтобы создать игру мелочей, которую можно играть с помощью устройства Amazon Echo или любого устройства с поддержкой Alexa, такого как Amazon Fire TV, Echo Dot или Amazon Tap.

По завершении учебного пособия у вас будет хорошее базовое понимание создания новых навыков для Alexa, и мы будем готовы участвовать в изучении новой границы голосового опыта пользователей.

Быстрый обзов архитектуры

Alexa skill - приложение Alexa управляемое голосом - состоит из двух частей:

  • The skill, определенное на портале разработчиков Amazon. Это то, что связывает все это вместе, связывая фразы, которые говорит пользователь, чтобы взаимодействовать с игрой (например, «начать игры с оленями») в логику приложения.
  • Веб-сервис, который вызывается, когда пользователь дает команду навыку. Служба может работать на любом защищенном веб-сервере, который отвечает на JSON-based API.

В этом учебном пособии мы запустим веб-службу на AWS Lambda, сервисе, который выполняет код в ответ на события, тем самым сохраняя разработчику проблемы в обслуживании сервера. Lambda также легко соединяется с Alexa Skills Kit, что делает его отличным инструментом для запуска кода для Alexa Skills.

Мы реализуем функциональность сервера как модуль Node.js, поэтому для завершения учебника вам потребуется базовое понимание JavaScript. Опыт Node.js - будет плюсом, но совершенно не обязательным для прохождения учебника.

1. Создайте Лямбда-функцию

Давайте начнем строить игру, установив функцию AWS Lambda для запуска своей бизнес-логики.

Шаг 1. Начало работы с AWS Lambda

Чтобы использовать Lambda, вам сначала понадобится учетная запись Amazon Web Services (AWS).

Если у вас уже есть учетная запись, нажмите «Войти в консоль» в правом верхнем углу страницы, чтобы начать.

Если вы новый пользователь, вы увидите другую ссылку, Create an AWS Account. Нажмите ссылку и следуйте инструкциям на странице, чтобы зарегистрироваться для бесплатной учетной записи.

Sign up for an AWS account

Во время регистрации вам нужно будет ввести действительную информацию о кредитной карте. Но не беспокойтесь, вы не будете платить, если ваше использование не будет превышать уровень бесплатного использования, что для Lambda означает 1 миллион бесплатных запросов и до 3,2 миллиона секунд «времени вычисления» в месяц более, чем достаточно для прохождения учебное пособие и тестирование его функциональности.

После того, как вы завершили регистрацию и вошли в Консоль AWS, вы можете активировать Lambda для своей учетной записи.

Сначала проверьте верхний правый угол страницы, чтобы убедиться, что вы используете регион US East (N. Virginia).

Затем в списке услуг выберите Lambda:

Select Lambda

Если вы впервые используете этот инструмент, вы увидите следующий экран с информацией о том, что вы можете с ним сделать.

Нажмите Get Started Now.

Get Started with AWS Lambda

Шаг 2. Настройка Lambda Function

Поскольку вы еще не создали никаких Лямбда-функций, пользовательский интерфейс запускается в мастере создания New function. Во-первых, он показывает вам список blueprints, образцы Lambda-конфигураций для различных распространенных случаев использования.

Мы собираемся создать нашу игру с нуля, поэтому прокрутите вниз и нажмите кнопку «Skip» в нижней части страницы.

Skip the blueprint selection screen

Следующим шагом в мастере является «Configure Function»:

Configure function

Введите некоторую информацию о вашей новой функции лямбда:

Enter some information about the Lambda function
  • Name: выберите описательное имя для функции. Это не то имя, которое вы покажете пользователям Alexa, поэтому вам не нужно беспокоиться о том, чтобы сделать его уникальным вне вашей учетной записи Lambda. Просто придумайте что-нибудь описательное, что поможет вам распознать функцию в вашей консоли AWS Lambda. В этом примере мы поговорим с MyTriviaGame, но вы можете выбрать все, что захотите.
  • Description: Это поле является необязательным, и оно используется для документирования вашей работы. Если вы хотите, вы можете ввести что-то вроде «Моя первая игровая игра».
  • Runtime: Язык сервера, используемый для запуска вашего кода. AWS Lambda поддерживает Node.js, Java и Python. В этом уроке мы будем использовать Node.js.

Далее на странице вы увидите редактор для ввода кода функции.

Прежде чем мы перейдем к нему, прокрутите вниз и настройте остальные параметры:

Configure the Handler function and the IAM role
  • Handler: укажите функцию JavaScript, которую Lambda должен вызывать, когда она запускает ваш код, в формате <имя файла JavaScript>. <Имя функции>. При использовании встроенного редактора код сохраняется как index.js. И, как мы вскоре увидим, функция обработчика в игре называется handler. Итак, чтобы использовать эту функцию, введите index.handler.
  • Role: роль безопасности IAM, которую следует использовать при работе функции Lambda. Выберите «Basic role execution» в раскрывающемся списке, чтобы создать новую роль. Если вы раньше использовали Lambda, у вас может быть роль lambda_basic_execution. В этом случае вы можете использовать существующий.

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

IAM role configuration

Для этих значений по умолчанию не требуются изменения. Нажмите «Allow», чтобы создать новое правило IAM и вернуться на предыдущую страницу. Также оставляйте поля в Advanced settings с их значениями по умолчанию.

Затем, с готовой конфигурацией, давайте добавим код.

Шаг 3: добавьте код JavaScript

При определении функции лямбда вы можете либо написать свой код в встроенном редакторе прямо в интерфейсе Amazon Lambda, либо загрузить его в виде zip-файла. Встроенный редактор в настоящее время ограничен 20 КБ, поэтому для больших функций или для разделения кода на несколько файлов (например, если вы используете библиотеки), лучше выбрать подход с zip-файлом.

На этот раз, однако, мы не будем создавать ничего слишком сложного, поэтому мы отлично используем встроенный редактор.

Скопируйте исходный код из урока образца Amazon's Reindeer Games и вставьте его в редактор кода. Reindeer Games - это полная реализация игры, которую вы можете свободно использовать в качестве шаблона для своей собственной игры.

Insert the code for the Lambda function

В оставшейся части этого шага мы рассмотрим основные части кода, чтобы увидеть, как он взаимодействует с конфигурацией Alexa Skills Kit, которую мы создадим позже в учебнике, и дать вам несколько указателей, чтобы вы начали писать код самостоятельно.

Код JavaScript начинается с структуры данных (строки 18-265 в исходном коде шаблона), который содержит вопросы для игры. Каждый пустячный вопрос состоит из вопроса и массива с по меньшей мере четырьмя вариантами: правильный ответ, за которым следуют как минимум три неверных:

При настройке игры, замените вопросы своими: добавьте не менее 20, но желательно больше. Очень хорошее число будет 100 вопросов. Кроме того, помните, что правильный ответ всегда на первом месте.

Затем, после вопросов, в строках 267-305 вы найдете функцию обработчика, указанную на предыдущем шаге. Всякий раз, когда Alexa Skills Kit отправляет запрос функции Lambda, эта функция, handler, вызывается.

Функция принимает два параметра:

  • event будет содержать объект с информацией о запросе.
  • context будет представлять состояние функции лямбда (например, сколько времени осталось до истечения времени ожидания функции). Параметр контекста также используется для отправки ответа обратно вызывающему.

Для получения дополнительной информации см. Документацию AWS Lambda.

Вот как выглядит функция:

В строках 278-280 (12-14 в этом фрагменте) вы найдете прокомментированную структуру if. Эта проверка необходима, чтобы предотвратить другие навыки, чем тот, который вы скоро настроите при вызове функции Лямбды.

На данный момент оставьте код как есть. Позже в уроке, как только вы создали свой Alexa Skill и у вас есть уникальный идентификатор, вернитесь к этой проверке и замените пример ID приложения на строке 278 новым идентификатором. Затем раскомментируйте код, чтобы использовать его.

Каждый запрос от Alexa Skills Kit имеет тип, переданный в event.request.type.

В целом, существует три типа запросов, на каждый из которых служба должна отвечать отдельно:

  • LaunchRequest: отправляется, когда пользователь запускает навык. Код примера вызывает вспомогательную функцию onLaunch для инициализации игры, выбора вопросов и отправки первого вопроса вместе с приветственным сообщением.
  • SessionEndedRequest: отправляется, когда пользователь перестает использовать навык, говоря «exit», не реагируя на какое-то время или если возникает ошибка. Код примера вызывает вспомогательную функцию onSessionEnded, которая в настоящее время является только заполнителем и ничего не делает.
  • IntentRequest: отправляется, когда пользователь говорит команду, которая соответствует intent. Код примера вызывает вспомогательную функцию onIntent.

Документация Amazon объясняет, что:

«Намерение (intent) представляет собой действие высокого уровня, которое выполняет пользовательский запрос пользователя. В намерениях необязательно могут быть аргументы, называемые слотами, которые собирают дополнительную информацию, необходимую для выполнения запроса пользователя».

Когда пользователь говорит команду, Alexa преобразует ее в текст и сравнивает его со списком фраз, которые приложение понимает. Каждая фраза сопоставляется с определением намерения, так что вашему коду не нужно беспокоиться о разборе ввода свободной формы от пользователя, но он может полагаться на намерения организовать свою связь с пользователем.

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

Вы можете найти функцию в строках 327-371 в исходном коде:

Как вы можете видеть, большая часть функции - это структура if..else, которая сравнивает имя намерения от запроса к множеству намерений, которые принимает игра. В зависимости от имени намерения он вызывает соответствующую функцию геймплея.

Например, когда игра получает запрос с именем намерения AnswerIntent, она знает, что запрос является ответом на текущий вопрос и вызывает функцию handleAnswerRequest для его обработки.

Шаг 4: Сохраните Lambda Function

Поскольку это учебное пособие по созданию навыков для устройств с поддержкой Alexa, а не для разработки игр, мы не будем углубляться в логику игры. Но теперь у вас должны быть некоторые идеи о том, где начать думать, чтобы изучить код самостоятельно.

Прокрутите страницу до конца и нажмите «Next», чтобы сохранить конфигурацию.

На последнем шаге мастера вы увидите обзор настройки функции Lambda. Убедитесь, что все выглядит правильно, а затем нажмите «Create function».

Review and create function

Теперь создана функция лямбда.

Если вам нужно изменить какие-либо параметры мастера, вы можете сделать это на вкладке « Configuration».

The Lambda function was successfully created

Шаг 5: Определите, как функция лямбда получает триггер

Теперь, когда вы создали функцию и поместили ее код, пришло время указать, как он будет вызван. Мы сделаем это, добавив источник событий.

Сначала перейдите на вкладку Event sources.

Event sources

На этой вкладке, после настройки, вы найдете список источников событий, которые были настроены для этой функции Lambda. Нажмите ссылку Add event source, чтобы добавить.

Открывается всплывающее окно для выбора типа источника события:

Add event source

Выберите Alexa Skills Kit. Затем нажмите «Submit».

Это все, что вам нужно сделать, чтобы заставить Лямбду прослушать события из Alexa Skills Kit.

Новый источник событий теперь указан на вкладке Event sources:

The event source was successfully added

Обратите внимание на идентификатор с меткой ARN в верхнем правом углу. Вы скоро будете использовать его, чтобы настроить Alexa Skill, чтобы вызвать правильную функцию лямбда.

Теперь давайте определим навык.

2. Настройте навык в Amazon Developer Portal

Теперь вы добавили логику для игры и настроили функцию для выполнения по просьбе Alexa Skills Kit.

Осталось создать навык, чтобы вы и ваши пользователи могли использовать фактическое устройство с поддержкой Alexa, такое как Amazon Echo, чтобы поговорить с кодом.

Для этого мы будем использовать Портал разработчиков Amazon.

Шаг 1. Создание учетной записи разработчика Amazon.

Начните с регистрации в учетной записи портала разработчика.

Нажмите Sign in or Create Free Account в правом верхнем углу страницы разработчика Amazon. Во-первых, вы увидите учетную запись Amazon по умолчанию. Используйте ее, чтобы создать новую учетную запись или использовать свою существующую учетную запись Amazon (ту же, что вы использовали при регистрации для AWS, например) для входа.

Sign In

Если вы раньше не использовали портал разработчика, вам будет предложено ввести некоторую информацию о вашей компании и принять соглашение о распространении приложения. Эта информация делится между любыми приложениями, которые вы можете создать для Amazon Marketplace, используя эту учетную запись.

Наконец, на последнем этапе поток регистрации запрашивает у вас payments. В настоящее время Alexa Skills нельзя продавать или покупать, поэтому, если вы планируете развивать Alexa Skills, выберите No для обоих вопросов, чтобы пропустить любые шаги, связанные с монетизацией. Если вы решите монетизировать свои приложения позже, вы всегда можете вернуться к настройке, когда это станет актуальным.

Enter payment information

Нажмите Save and Continue.

Теперь вы вошли и готовы добавить свой первый навык.

Шаг 2: добавьте свой первый навык Alexa

После входа в Developer Console перейдите на страницу Alexa Skills Kit: сначала нажмите «Apps & Services» в верхнем меню, а затем в подменю выберите «Alexa».

Navigate to Alexa Skills Kit

На этой странице вы увидите следующие варианты:

Select Alexa Skills Kit

Выберите Alexa Skills Kit, нажав на кнопку Get Started.

На экране, который появляется, вы найдете все навыки Alexa Skills, которые вы создали:

A list of your Alexa skills

Список по-прежнему пуст, поэтому нажмите Add New Skill, чтобы начать определение первого, используя мастер с пятью шагами, который приведет вас к публикации этого навыка, чтобы другие пользователи Alexa могли его найти и использовать.

Во-первых, на вкладке Skill Information введите некоторую базовую информацию, чтобы определить свой новый навык.

Create a New Alexa Skill Configuration Screen
  • Skill Type: выберите «Custom Interaction Model», поскольку вы создадите пользовательский навык, в котором вы определяете модель взаимодействия. Здесь вы можете узнать больше о различных типах навыков Alexa.
  • Name: описательное имя навыка. Как только вы опубликуете свое умение, это имя, которое ваши потенциальные пользователи увидят. В примере Amazon использует Reindeer Games, но вы должны выбрать что-то свое, так как это имя уже используется.
  • Invocation Name: имя, которое пользователи будут использовать, когда они захотят сказать Alexa для выполнения этого навыка, например, «Alexa, open Reindeer Games». Обратите внимание, что это не должно быть таким же, как имя умения. При выборе имени вызова проверьте свои идеи с помощью устройства Echo, чтобы убедиться, что имя, которое вы выбираете, легко распознает Alexa. Таким образом, вы можете быть уверены, что ваши пользователи смогут активировать ваше умение без каких-либо дополнительных проблем.

После того, как информация будет на месте, нажмите «Next».

Обратите внимание, что вы всегда можете вернуться к редактированию этой информации позже, если есть ошибки. После сохранения шага вы также найдете Application ID, вернувшись к этому шагу (чтобы вы могли использовать его в своем JavaScript-коде для проверки запросов, как я упоминал ранее).

Шаг 3: Определите модель взаимодействия

Модель взаимодействия - это связь между пользователем, разговаривающим с устройством, поддерживающим Alexa, например Amazon Echo, и функцией Lambda, которую мы установили ранее. В некотором роде, это определение пользовательского интерфейса для нашей части голосовой программы.

Модель состоит из Intent Schema, которая определяет набор намерений, используемых параметрами умения, намерениями, известными как слоты и Slots и Utterances которые пользователь скажет, чтобы выполнить одно из намерений, определенных в схеме намерений.

Intent Schema

Схема намерения

Скопируйте и вставьте следующий фрагмент кода в текстовое поле с надписью Intent Schema:

Посмотрев на структуру данных, вы заметите, как имена целей, определенные в списке, совпадают с именами в JavaScript-коде, которые мы рассмотрели ранее в учебнике. Например, первым намерением, AnswerIntent, является тот, который сопоставляется с функцией, которая проверяет правильность ответа пользователя.

Для получения дополнительной информации о разработке голосового интерфейса см. Документацию Alexa Skills Kit.

Slots

Хотя большинство намерений - это только идентификаторы с не более чем именем, пара из них определяет параметры, известные как слоты.

Все еще глядя на AnswerIntent, обратите внимание, что намерение определяет один параметр Answer с типом слота LIST_OF_ANSWERS.

LIST_OF_ANSWERS - это тип пользовательского слота, поэтому мы должны указать его в конфигурации.

Нажмите Add Slot Type и введите следующую информацию:

Add a custom slot type
  • Enter Type: имя типа слота, как указано в Intent Schema. Введите LIST_OF_ANSWERS.
  • Enter Values: принятые значения для слота, по одному значению в строке. Введите числа от 1 до 4, каждый на своей строке, чтобы дать возможность пользователю ответить на вопросы, указав правильный номер ответа.

Затем нажмите «ОК».

Теперь вернемся к JavaScript и рассмотрим функцию с именем isAnswerSlotValid (строки 599-603), чтобы узнать, как функция использует этот слот для получения ответа пользователя:

Здесь вы можете видеть, что объект намерения содержит атрибут, slots, для передачи любых параметров, определенных в схеме намерений.

В этом случае есть только один Answer. Итак, посмотрев на intent.slots.Answer.value, функция может увидеть, какой ответ выбрать пользователь, и проверить, является ли он правильным для текущего вопроса.

Примеры Utterances

Наконец, чтобы завершить модель взаимодействия, вам нужно определить Sample Utterances, предложения, которые пользователь может сказать, чтобы вызвать намерения, указанные в схеме.

Add sample utterances

В текстовом поле введите одну фразу в строке, используя формат <Intent Name> <Phrase>. Чтобы включить слот параметра, используйте {Answer}. Затем, когда пользователь говорит эту фразу, Alexa проанализирует ее и вызовет передачу службы в соответствующем Intention и проанализированное значение для слота Answer.

Начните с вставки следующих примеров высказываний. Затем вы можете продолжить, добавив столько высказываний, сколько захотите. На самом деле, чем больше (релевантных) фраз вы можете придумать, тем лучше.

С этими высказываниями, например, когда пользователь говорит: «два - мой ответ», Alexa отправит IntentRequest в функцию Lambda, передав в качестве намерения AnswerIntent и 2 в качестве значения для слота Answer.

Нажмите «Next», чтобы сохранить модель взаимодействия. Построение модели взаимодействия может занять минуту или две, поэтому дайте ей некоторое время. Затем, как только сборка завершится, вы будете готовы настроить свой навык Alexa.

Шаг 4: Настройте свой навык Alexa

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

  • Endpoint: метод выполнения функциональных возможностей умения. Наш код находится на AWS Lambda, поэтому выберите Lambda ARN. Затем в текстовом поле введите идентификатор, указанный мной в конце первой части учебника.
  • Account Linking: выберите Нет.

После того, как информация будет на месте, нажмите Next. Вы готовы начать тестирование своего нового навыка Alexa!

Configure Your Alexa Skill

3. Протестируйте игру

Хотя лучший способ проверить свой новый навык Alexa - поиграть на реальном устройстве Echo, вы также можете проверить навык прямо там, в вашем браузере, используя инструменты на следующем этапе потока Add New Skill.

Шаг 1: Проверка игры в симуляторе

На странице тестирования вы найдете два инструмента тестирования:

Testing the skill
  1. Voice Simulator можно использовать для проверки того, как Alexa говорит какое-либо предложение. Это полезно, например, при разработке вопросов для вашей игры: если вопрос не звучит правильно в симуляторе голоса, попробуйте еще раз и замените его версией, которая это делает.
  2. Service Simulator проверяет функциональность навыка, как если бы вы использовали фактическое устройство с поддержкой Alexa. Используя этот инструмент, вы можете ввести высказывание и посмотреть, как реагирует на это приложение через Alexa Skills Kit.

Итак, давайте проверим игру, используя Service Simulator.

В текстовом поле Enter Utterance введите:

Затем нажмите кнопку Ask Reindeer Games под ним.

Инструмент тестирования использует вашу модель взаимодействия для синтаксического анализа команды, а затем делает запрос на функцию лямбда-навыка.

Если все пойдет хорошо, вы увидите запрос JSON и ответ, показанный ниже командной строки:

Testing the game using the Service Simulator

С левой стороны вы увидите запрос, который Alexa Skills Kit отправил вашей функции Lambda, и справа, как ваш код ответил на него.

Теперь вы можете проанализировать ответ JSON или более аутентичный опыт Echo, нажмите кнопку Listen, чтобы услышать, как Alexa говорит ответ за вас.

Когда вы услышите вопрос, попробуйте ответить на него. Выберите один из форматов высказываний, указанных на предыдущем шаге, и введите его в текстовое поле Enter Utterance.

Например:

Обратите внимание, что вам нужно записать номер как слово, а не фактическое число 4.

Правильно ли вы получили ответ? Продолжайте тестирование с различными высказываниями и изменениями потока, пока не почувствуете уверенность в том, что приложение работает должным образом, - и вы хорошо понимаете, как это работает.

Если что-то пойдет не так, и вы получите неверный ответ от сервера, вот некоторые распространенные ошибки, которые вы, возможно, захотите проверить:

  • Вы скопировали правильный ARN для своей лямбда-функции в свой навык на портале разработчиков?
  • Используете ли вы правильное имя вызова? Возможно, вы изменили его на нечто иное, чем reindeer games, и теперь все еще тестируете имя примера?
  • Вы говорите launch, start или open?
  • Уверены ли вы, что у вас нет других навыков в вашем аккаунте с тем же именем?
  • Для этого шаблона вам необходимо иметь как минимум семь вопросов и ответов для функционирования бизнес-логики.

Шаг 2. Проверка игры на устройстве.

Как мы видели на предыдущем шаге, онлайновый инструмент так же хорош, как и фактическое устройство для тестирования логики и схемы взаимодействия приложения.

Однако этот метод тестирования не покажет вам, насколько хорошо Alexa сможет понять и проанализировать высказывания. Итак, если вы создаете умение, которое планируете публиковать, вы также можете провести финальное тестирование с помощью устройства, а не только этих онлайн-инструментов, прежде чем отправлять свои навыки.

Команда сертификации Amazon Alexa также проведет тщательное тестирование, прежде чем принять ваше умение на рынок. Если ваше умение еще не готово к сертификации, они отправят вам дополнительную обратную связь, чтобы сообщить вам о необходимых изменениях и помочь вам подготовить свое умение к публикации.

Чтобы проверить игру на вашем устройстве Echo, сначала зарегистрируйте устройство с адресом электронной почты, который вы использовали для регистрации своей учетной записи разработчика на портале разработчиков Amazon. Как только это будет сделано, вы можете использовать умение точно так же, как и реальный конечный пользователь.

Дополнительную инструкцию по тестированию см. в документации Alexa.

4. Опубликуйте свой навык Alexa

Когда ваше умение готово к прайм-тайму, вы можете пойти и отпустить его в мир, чтобы увидеть.

Однако не публикуйте пример приложения, как есть.

Вместо этого сделайте игру своей собственной, используя шаблон и то, что вы узнали в этом учебнике, в качестве основы для вашего удивительного нового навыка. Измените код в редакторе AWS Lambda, чтобы заменить вопросы, добавить новые высказывания в конфигурацию навыков и, возможно, внести некоторые другие изменения, которые будут соответствовать вашей версии игры.

Затем на вкладке Test, после того как вы уверены в своем приложении, нажмите Next, чтобы перейти к последним двум шагам, ведущим к публикации навыка.

Publishing Information

На вкладке Publishing Information опишите умение настолько подробно, насколько это необходимо, чтобы пользователи могли легко найти свои навыки, получить представление о том, как это работает, и почему стоит попробовать и как его использовать. Это единственная возможность привлечь новых пользователей!

Значок также является важным маркетинговым элементом. Это должно быть то, что потенциальные пользователи заметят и заинтересуются. Кроме того, обязательно загружайте изображения, которые вы имеете право использовать.

В любой момент при редактировании данных вы можете сохранить изменения, нажав Save и просмотрите страницу описания навыков в приложении Alexa Companion. Это также означает, что описания будут отображаться, когда умение выйдет в мир.

Пройдитесь внимательно по полям внимательно, уделяя пристальное внимание инструкциям. На скриншоте, приведенном выше, вы можете увидеть примерные значения из шаблона Reindeer Games от Amazon.

Если вы используете вариации этих значений, не забудьте заменить «Reindeer Games» в Example Phrases именем вашего умения.

Testing Instructions видны только команде аттестации Amazon Alexa. Вы можете просто упомянуть: «Я использую шаблон навыков Trivia на основе образца кода Reindeer Games».

Затем, когда вы будете готовы, нажмите Next.

Privacy and Compliance

На этом последнем этапе вы ответите на несколько вопросов о настройках конфиденциальности вашей игры.

Для игры, основанной на этом уроке, выберите No для обоих вопросов: умение не позволяет пользователям тратить деньги или собирать информацию о пользователе.

Privacy Policy URL и Terms of Use URL являются необязательными.

Когда вы думаете, что игра готова, нажмите Submit for Verification. Затем ждите ввода от команды Alexa Skills: вы получите сообщения о прогрессе и, возможно, некоторые предложения о том, как вы можете улучшить свой скил.

И если все будет хорошо, через некоторое время ваша игра будет доступна для пользователей, чтобы попробовать Amazon Echo или любое устройство с поддержкой Alexa!

Что дальше?

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

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

Получайте удовольствие, создавая будущее!

Создайте скил Alexa и получите три месяца бесплатно на Envato Tuts +

Хотели бы вы получить бесплатный доступ к нашей обширной библиотеке из более чем 750 видеокурсов? Если это так, вам повезло. Amazon предлагает три бесплатных месяца подписки Envato Tuts + на первых 500 читателей, которые публикуют умение Alexa с 31 марта 2016 года по 31 мая 2016 года.
Узнайте больше о ограниченном времени и о том, как вы можете отправить свое умение, чтобы получить бесплатную трехмесячную подписку!
Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.