2017-01-05 39 views
-1

我問過這個question here,但它可能是有點太深入,給大家看一遍,但我想我的基本問題可以簡化爲:兩個API調用

是有可能在編寫自定義alexa技能時,在同一個JS代碼中執行兩個獨立的API調用?

這裏是我的邏輯

  1. 調用API蒸汽,
  2. 從我的好友名單細節
  3. 回報細節ALEXA

4.create與朋友返回新的API網址功能ID

5.致電新網址取得朋友在線狀態和名稱

這些交貨期:細節alexa排名進行排序並確定在線狀態

7.construct的語音響應

8.say響應

我已經得到它儘可能與構建API網址好友ID,但看起來我的第二個API調用無法正常工作,或者我只是沒有正確訪問它。

任何想法都會有所幫助。

回答

1

是的,你的代碼可以在處理Alexa請求的過程中做任何你想做的事情(包括多個外部API調用),但是你只能在履行其請求時返回一個響應給Alexa。

的步驟可以逐項這樣

  1. 接收來自Alexa的要求,
  2. 你想要的,包括多個外部API調用,但也只要用戶在等待不採取任何處理!
  3. 制定您的迴應並將其返回給Alexa,作爲對#1的迴應。
  4. 繼續處理,例如。以保存一些會話或用戶數據,但是您無法向Alexa發送更多數據,因爲您已經對其請求做出了響應。

這是否明確了事情?

+0

它確實是湯姆,謝謝。現在我知道它可以做到,它只是如何!我被告知我應該使用承諾來完成這個任務,並且我已經檢查了他們,並對他們的工作方式有了一些瞭解,但是現在還不知道如何將它們應用到我的代碼中。 (我在問題中鏈接的代碼)。在這方面的任何提示? –

+0

這是非常不同的 - 這是一個js實現細節。你需要獲得一些關於js的好資源/教程。幸運的是,那裏有很多! (請將答案標記爲已接受。) – Tom