正確設定alexa技能不僅可以節省大量時間,還可以使您更靈活,更不易出錯。 在本文中,我們將完全基於**設定一項新技能,以便您在本地儲存庫中擁有從開發人員控制台到lambda函式的所有功能。
我們將設定的示例技能將是瑣碎的「 hello world」技能,因為本文僅關注設定而不是技能本身。 本文還將假定您已經了解了進行技能訓練所需的基本部分。
在github上檢視已完成專案的倉庫開發者控制台用於管理所有技能資訊,例如呼叫名稱,技能儲存描述的意圖。 但是,在開發人員控制台中管理所有這些資訊有一些缺點:
為了解決這些問題,我們將使用ask cli 。 ask cli為我們提供了將所有資訊儲存在json檔案中並通過命令進行部署的功能。 因此,我們將所有內容(**和技能資訊)放在乙個地方並進行了版本化。 因此,讓我們設定專案:
安裝並登入 ask cli。 還要按此處所述設定您的aws憑證(您不必做配置檔案之類的東西,只需進行快速設定即可)
通過詢問新的--skill-name basic-setup-cat-facts來建立新技能。 這將在我們的本地計算機上建立乙個包含所有必需檔案的新資料夾。 然後移到建立的資料夾中。
現在有3個檔案儲存了技能資訊和配置:
當我們使用無伺服器框架進行**部署時,我們將不得不稍稍更改配置並重新排序一些檔案,以使其使用起來更加方便:
開啟skill.json檔案並刪除「 apis」物件。 然後轉到.ask / config檔案,並將「 uri」變數的值更改為arn:change_later。 這將阻止ask cli部署我們的技能。
將index.js檔案從/ lambda / custom移至/ src資料夾,並將package.json和package-lock.json移至專案根資料夾。 然後刪除/ lambda資料夾。
現在,我們可以執行ask deploy將模型和技能資訊推送到開發人員儀表板。
當您使用技能生成器進行更改時,當前的ask cli不支援更新模型json。為了定義和部署我們的技能功能和基礎架構,我們將使用無伺服器框架。 無伺服器是部署和操作無伺服器體系結構的市場領導者。 ask cli的直接優勢在於,我們不僅可以部署**,還可以定義aws基礎架構。 例如,這允許新增資料庫,s3或稍後我們可能會在我們的技能中使用的其他內容。 因此,讓我們開始部署我們的功能:它只能轉殖整個專案並覆蓋當前專案。
在使用技能構建器進行某些操作後,一種變通方法是將專案轉殖到新資料夾中,然後將模型json複製並貼上到當前專案中。
無伺服器安裝
為該技能建立無伺服器配置。 這是在serverless.yml檔案中完成的:
3.使用無伺服器部署來部署功能
4.部署完成後,您可以顯示arn(aws上的唯一技能限定詞)以及無伺服器資訊--verbose。 複製arn並將其替換為.ask / config檔案中的arn:change_later值。 這會將開發人員儀表板上的技能配置與您的lambda函式相關聯
5.通過請求部署更新技能配置
技能設定現已完成。 您現在可以去技能商店並啟用自己的技能。
通過此設定,我們現在能夠更改技能配置,lambda函式並使用乙個命令來部署更新。 同樣,所有內容均已版本化,並位於乙個專案資料夾中。
此外,我們可以做一些改進,並將ask cli和lessserver軟體包作為dev依賴項儲存到我們的package.json中。 因此,所有工具都隨專案一起提供。 我們還將所有使用的命令放在其中。 這樣,我們只需要記住一些簡單的命令即可。 如果要詳細檢視所有內容,請簽出儲存庫:
feedm3 /學習alexa技能的基本設定
快樂的技能發展:)
from:
快速了解dueros技能開發
相當於應用商場裡的乙個應用,在dueros系統裡稱為技能,可以被使用者通過對話的方式喚醒和使用 能觸發意圖功能的句子,當使用者說的話完全匹配常用表達的時候,就會觸發意圖,要觸發意圖,需要先進入技能,然後說出常用表達裡的句子。這就像乙個個 函式方法 相當於常用表達裡的放置引數的插槽,如果常用表達裡的某...
亞馬遜向所有Alexa開發者開放技能購買
亞馬遜今天向所有alexa開發人員提供技能採購,以及亞馬遜支付技能。這意味著開發人員可以通過基於alexa的裝置 如亞馬遜的echo揚聲器 在其語音應用中獲得收入。例如,開發人員可能會收取額外的包以支援其語音遊戲,或者提供其他優質內容來擴充套件免費語音應用體驗。該功能之前於2017年11月發布,但僅...
開發應對mysql效能基本技能
聯合索引的最左原則 建立a,b,c三個欄位的聯合索引意味著有a,a,b,a,b,c三個索引 看看mysql所有的演算法就明白了 這個時候看下建立的索引是否被包含在內 對於一些區分性很差的字段不要新增所有,比如性別,年齡,新增所有效果不大,而且浪費儲存空間 對於已有表,特別是大表 資料量比較大的表 新...