Как я могу обнаружить использование симулятора Alexa

Я разрабатываю для Alexa, в частности, визуальные элементы, отображаемые на устройстве Show.

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

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

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

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
281
1

Ответы 1

JSON запроса Alexa включает информацию об устройстве в context:

{
   "context":{
       "System": {
           "device":{
               "supportedInterfaces":{
                    "Display":{},
                    "AudioPlayer": {},             
                    "VideoApp":{}
                }
            }
        }
    }
}

Вы можете найти это с event.context.System.device.supportedInterfaces.Display

supportedInterfaces может включать AudioPlayer, Display и / или VideoApp.

Если его нет в списке supportedInterfaces, значит, он не поддерживается.


Симулятор Alexa должен обеспечивать отображение в поддерживаемых интерфейсах. Глянь сюда:

Note: The Alexa Simulator behaves like a device with a screen, such as the Echo Show or Echo Spot. This means that the context.System.device.supportedInterfaces property in the request sent to your skill always contains the Display interface. In addition, the simulator is not supported for use in multiple browser tabs at the same time.


Чтобы симулятор Alexa отображался как эхо-шоу, вам необходимо включить «Отображение эхо-шоу» вверху.

Alexa Simulator Options Bar

Я знаю, что проблема в том, что симулятор не указывает, что это поддерживаемый интерфейс для отображения, и поэтому мой код обычно не отображает выводимые данные. К сожалению, это означает, что я не могу протестировать элементы отображения в симуляторе (хотя симулятор поддерживает это). Вот почему я специально хотел определить, используется ли симулятор.

theThought 27.06.2018 14:06

Под "симулятором" вы подразумеваете echoism.io?

Jay A. Little 27.06.2018 14:57

Симулятор входит в комплект Alexa Skills.

theThought 27.06.2018 15:56

Я должен признать, что не слышал об echoism.io. Так что я просто попробовал. Мне кажется, что это только аудио. Я тестирую визуальную часть Alexa, поэтому этого симулятора недостаточно. Существуют ли тренажеры, обеспечивающие доступ ко всем возможностям (как вербальным, так и визуальным)?

theThought 27.06.2018 16:08

Я использовал только встроенный Alexa Simulator и Echoism.io. Я добавил к своему ответу дополнительную информацию в надежде, что это поможет решить вашу проблему.

Jay A. Little 27.06.2018 16:39

Другие вопросы по теме