まえがき
alexaスキルを開発している際に、zipにしたり、AWSとAmazon開発者への行き来が面倒になりCLIを使ってみる事にしたので、その際の手順を記載したいと思います。
前提
AWSアカウント への登録が完了している。
Amazon開発者アカウント への登録が完了している。
AWS CLI がインストール及び設定されている。
※設定時にリージョンはregion = ap-northeast-1にしてください
インストール方法
インストール
$ npm install -g ask-cli
インストール確認
$ ask -v
認証情報を設定
$ ask init
※AWS CLIで設定したプロファイルを選択
使用可能なプロファイルのリストを表示
$ ask init -l
プロファイルの場所
$ cat ~/.ask/cli_config
プロジェクトの作成方法
プロジェクトの作成
$ ask new
? Please select the runtime Node.js V8
? List of templates you can choose Hello World
? Please type in your skill name: alexa-skill-sample
不要なファイルを削除し以下の構成にする
alexa-skill-sample
├── README.md
├── hooks
│ ├── post_new_hook.ps1
│ ├── post_new_hook.sh
│ ├── pre_deploy_hook.ps1
│ └── pre_deploy_hook.sh
├── lambda
│ └── custom
│ ├── index.js
│ ├── node_modules
│ ├── package-lock.json
│ └── package.json
├── models
│ └── en-US.json
└── skill.json
skill.jsonの修正(日本語化)
skill.json の en-US を ja-JP に変更する
ja-JP.jsonの作成(日本語化)
en-US.json を ja-JP.json にリネーム
プロジェクトをデプロイする
コンフィグを修正
$ cat .ask/config
{
"deploy_settings": {
"default": {
"skill_id": "",
"was_cloned": false,
"merge": {
"manifest": {
"apis": {
"custom": {
"endpoint": {
"uri": "AlexaSkillSample"
}
}
}
}
}
}
}
}
※デプロイすると skill_id の値など追加されます
デプロイ
$ ask deploy
結果
まとめ
東京リージョンのデプロイが目的でしたので、必要最低限のことを記載しました。
設定関連(インテント等)についてはデフォルトのままにしています。必要に応じて修正してください。
また、ja-JP.jsonを直接を編集してスキルモデルを修正できる方はいいのですが、
私はAmazon開発者コンソールで編集した後、JSONエディターの内容をja-JP.jsonにコピペしたりしています。
今回使用したソースはこちらにあります。
参考
Alexa Skills Kitコマンドラインインターフェース(ASK CLI)リファレンス
スキルマニフェストのスキーマ