2017-01-05 5 views
-1

Я спросил это question here, но это может быть немного слишком в глубине для всех, чтобы прочитать, но я полагаю, мой основной вопрос может быть уменьшен до:два API вызовов в пользовательской Алексе навыке

возможно делать два отдельных вызова API внутри одного и того же фрагмента JS-кода при написании пользовательского умения alexa?

Вот моя логика

  1. вызова пара апи,
  2. получить информацию из моего списка друзей
  3. Возвращенных деталей к Алексам

4.Create новый API URL с вернувшимися друзьями Идентификаторами

5.call новый URL-адрес, чтобы получить статус и фамилию друзей

6.Return этих деталей в Алексы для сортировки и определить статус онлайн

ответ 7.construct речи

8.say ответ

Я понял, насколько построения API URL с ID друзей, но кажется, что мой второй вызов API либо не работает, либо я просто не обращаюсь к нему должным образом.

любые мысли были бы полезны.

ответ

1

Да, ваш код может делать все, что угодно (включая несколько внешних вызовов API), в процессе обработки запроса Alexa, но вы можете вернуть только один ответ Alexa в ответ на его запрос.

шаги могут быть детализированы, как этот

  1. получающего запрос от Alexa,
  2. делать то, что обработка вы хотите, в том числе несколько внешних вызовов API, но не слишком долго, поскольку пользователь ждет!
  3. Сформулируйте свой ответ и верните его Alexa в качестве ответа на # 1.
  4. Продолжить обработку, например. для сохранения некоторых сеансов или пользовательских данных, но вы не можете отправить больше данных Alexa, потому что вы уже ответили на запрос.

Это ясно?

+0

это Том, спасибо. Теперь я знаю, что это можно сделать, это как раз то, как! Мне сказали, что я должен смотреть на использование обещаний, чтобы выполнить это, и я проверил их и понял, как они работают, но в настоящее время понятия не имею, как применить их к моему коду. (код, с которым я связан в вопросе). Любые подсказки на этом фронте? –

+0

Это совсем другое - это детализация js. Вам нужно будет получить хорошие ресурсы/учебники по js. К счастью, их много! (Пожалуйста, отметьте ответ, как принято.) – Tom