將 Bot 連線至 Alexa
適用于: SDK v4
您可以設定 Bot,透過 Alexa 自訂技能與人員通訊。 本文說明如何使用 Alexa 開發人員主控台建立 Alexa 技能、將 Bot 連線至 Azure 中的 Alexa 技能,以及在 Alexa 中測試您的 Bot。
必要條件
- Azure 訂用帳戶。 如果您還沒有帳戶,請在開始之前建立 免費帳戶 。
- 發佈至 Azure 的 Bot,您想要連線到 Alexa。
- Amazon 帳戶。
重要
您的 Bot 必須使用 Bot Framework SDK 4.8 版或更新版本。 如果您有現有的 Bot,您可能需要更新 SDK 版本並重新發佈 Bot。
建立 Alexa 技能
登入 Alexa 開發人員主控台 ,然後選取 [ 建立技能 ]。
在下一個頁面上:
- 輸入新技能的名稱。
- 請確定 [ 選擇要新增至技能 的模型] 設定為 [自訂 ]。
- 請確定 [ 選擇裝載技能後端資源 的方法] 設定為 [ 布建您自己的 資源]。
- 選取 [ 建立技能 ]。
在下一個頁面上:
- 確定 [ 選擇範本 ] 設定為 [從頭開始]
- 選取 [ 選擇 ]。
在 [互動模型 ] 底下的技能儀表板上 ,選取 [ JSON 編輯器 ]。
在 JSON 編輯器中:
以下列 JSON 取代現有的內容。
{ "interactionModel": { "languageModel": { "invocationName": "<your-skill-invocation-name>", "intents": [ { "name": "GetUserIntent", "slots": [ { "name": "phrase", "type": "phrase" } ], "samples": [ "{phrase}" ] }, { "name": "AMAZON.StopIntent", "samples": [] } ], "types": [ { "name": "phrase", "values": [ { "name": { "value": "<example-phrase>" } }, { "name": { "value": "<example-phrase>" } }, { "name": { "value": "<example-phrase>" } } ] } ] } } }
針對
invocationName
,將 your-skill-invocation-name > 變更 < 為使用者將在 Alexa 上叫用技能的名稱。 例如,如果您的技能調用名稱是「配接器協助程式」,則使用者可以說出 「Alexa,啟動配接器協助程式」來啟動技能。在 的
values
陣列中types
,將 的<example-phrase>
三個實例取代為使用者可說觸發技能的片語。 例如,如果使用者說「Alexa,請要求配接器協助程式給我 alexa 配接器的詳細資料」,其中一個範例片語可能是「給我 alexa 配接器的詳細資料」。
選取 [ 儲存模型 ],然後選取 [ 建置模型 ]。 這會更新 Alexa 上的技能設定。
在 Azure 中設定 Bot
若要完成此步驟,您需要 Alexa 技能識別碼。 從 Alexa 入口網站中的 URL 取得識別碼,或移至 Alexa 開發人員主控台 ,然後選取 [ 複製技能識別碼 ]。 您的 Alexa 技能識別碼應該是 「amzn1.ask.skill」 之類的值。 <some-guid > 」。
- 開啟 Azure 入口網站。
- 開啟 Bot 的 [Azure Bot 資源] 刀鋒視窗。
- 開啟 [頻道] ,然後選取 [Alexa ]。
- 在 Alexa 通道組態 中,輸入您在上一個步驟中複製的資訊。
- 在 [輸入技能識別碼 ] 中,輸入您從 Alexa 開發人員主控台複製的 Alexa 技能識別碼。
- 選取套用。
- 複製 Azure 產生的 Alexa 服務端點 URI。
更新您的 Alexa Bot 註冊
登入 Alexa 開發人員主控台 。
尋找並開啟技能的設定頁面。
選取 [端點 ]。
針對 [ 服務端點類型 ],選取 [ HTTPS ]。
針對 預設區域 :
- 輸入您從Azure 入口網站複製的 Alexa 服務端點 URI。
- 在下拉式清單中,選取 [我的開發端點] 是具有憑證授權單位單位 萬用字元憑證之網域的子域。
選取 [ 儲存端點 ]。
測試及發佈您的技能
如果您擁有 Alexa 裝置,您可以在發佈技能之前先測試技能。
如需有關如何在其平臺上測試及發佈技能的資訊,請參閱自訂語音模型技能 的 Alexa Skills Kit 開發人員檔。
其他資訊
如需 Alexa 技能的詳細資訊,請參閱 Amazon 開發人員檔:
Alexa 中的使用者驗證
Alexa 中的使用者驗證是透過在 Alexa 技能 上設定和使用 帳戶連結來完成。 如需詳細資訊,請參閱 瞭解 Alexa 技能 的帳戶連結。 當使用者啟用技能時,您可以要求帳戶連結,也可以要求它作為交談流程的一部分。
如果您在交談中新增使用者驗證:
在傳出活動上附加登入卡片 。 這會轉換成 Alexa LinkAccount 卡片 ,提示使用者使用 Alexa 應用程式登入。
如果使用者成功將帳戶連結至應用程式,則通道資料中的後續要求會提供權杖。
下一步
- 如需建置 Bot 的相關資訊,請參閱 Bot 的運作方式和 使用 Bot Framework SDK 建立 Bot 快速入門。
- 如需部署 Bot 的相關資訊,請參閱 教學課程:在 Azure 中布建 Bot 和 教學課程:發佈基本 Bot 。
- 如需 Bot 連線or Service 中通道支援的相關資訊,請參閱 將 Bot 連線至通道 。
- 如需 Bot Framework 架構的詳細資訊,請參閱 Bot Framework 活動架構 和 Bot Framework 卡片架構 。