Распознавание речи в WordPress на основе Alexa Skill - PullRequest
0 голосов
/ 29 октября 2018

Я хотел бы разработать плагин для WordPress, который позволит пользователям общаться с веб-сайтом WordPress. Я хочу, чтобы это было основано на Alexa Skill.

Какой будет архитектура для этой задачи?

1 Ответ

0 голосов
/ 30 октября 2018

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

Если вам нужно что-то более индивидуальное, вы можете использовать WordPress REST API для предоставления Alexa нужных вам данных. С этой архитектурой ваш плагин на стороне WordPress будет просто настраивать и управлять всеми конечными точками REST API.

Сверху вниз архитектура выглядит так:

Architecture Diagram of an Example Alexa Skill

Это дает вам 3 предмета для сборки:

Настройка навыка Alexa

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

Настройка Лямбда-Навыка для выполнения ввода Alexa

Когда Умение знает, что нужно искать функцию Lambda для ее функциональности, нам действительно нужно кодировать функцию Lambda. Это можно сделать в Node.js (JavaScript), Python, Java (Java 8-совместимый), C # (.NET Core) или Go. Функция Lambda должна проанализировать JSON, полученный из Alexa, и определить, какую конечную точку вызывать или какие параметры передавать в эту конечную точку. Для примера этого в Python, вы можете проверить мой пример на GitHub .

Настройка конечных точек WordPress для предоставления данных

Когда у вас есть функция Lambda, которая анализирует намерения пользователя и отправляет запрос на определенные конечные точки, вам нужно написать код из WordPress, чтобы убедиться, что все необходимые вам конечные точки доступны. Это та часть, на которую я могу дать наименьший вклад, потому что конкретные конечные точки, которые вам понадобятся, основаны на вашем сценарии использования, которого я на самом деле не знаю на данный момент. Но для примера того, как мы создали поле настроек и вернули это значение через пользовательскую конечную точку API REST, вы можете увидеть этот пример на GitHub .

Завершение и дальнейшее расширение

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

Это можно настроить и добавить дополнительные функциональные возможности, добавив больше конечных точек в WordPress и добавив больше маршрутизации в функцию Lambda на основе новых голосовых входов Alexa.

Далее Чтение Просмотр

Если вы заинтересованы в получении дополнительной информации, я дал пару слов об этом:

...