概要
enebularで、alexaスキルのwebhookを返してみた。
練習問題やってみた。
練習問題
九九を実装せよ。
方針
呼び出しは、九九
LaunchRequestで、"それぞれの段を読み上げます。"
IntentRequestで、"1の段" "いん いち が いち いん に が に ・・・"
写真
手順
新しいスキルを作成
1.スキルに追加するモデルを選択
- カスタムを選択
2.スキルのバックエンドリソースをホスティングする方法を選択
- ユーザー定義のプロビジョニングを選択
スキルを作成をクリック
スキルに追加するテンプレートを選択
- スクラッチで作成を選択
選択をクリック
呼び出し名の登録
- 九九
インテントの追加
-
NumIntent
-
" {num}の段 "
-
num AMAZON.Number
サービスのエンドポイントの種類
- https https://***.herokuapp.com/
フロー
[{"id":"f0a907cc.af4218","type":"http in","z":"da568283.b34a7","name":"","url":"/","method":"post","upload":false,"swaggerDoc":"","x":130,"y":140,"wires":[["2a34f775.7fda08"]]},{"id":"2a34f775.7fda08","type":"switch","z":"da568283.b34a7","name":"request.type 判定","property":"payload.request.type","propertyType":"msg","rules":[{"t":"eq","v":"LaunchRequest","vt":"str"},{"t":"eq","v":"IntentRequest","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":270,"y":80,"wires":[["cfd360ad.7b27c"],["c12a09a5.1fa5b8"]]},{"id":"d06f833d.ef44f","type":"http response","z":"da568283.b34a7","name":"","statusCode":"","headers":{},"x":750,"y":100,"wires":[]},{"id":"f37951a4.334fe","type":"debug","z":"da568283.b34a7","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":730,"y":260,"wires":[]},{"id":"cfd360ad.7b27c","type":"template","z":"da568283.b34a7","name":"page","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"{\n \"version\": \"1.0\",\n \"sessionAttributes\": {\n },\n \"response\": {\n \"outputSpeech\": {\n \"type\": \"PlainText\",\n \"text\": \"それぞれの段を読み上げます。\"\n },\n \"card\": {\n \"type\": \"Simple\",\n \"title\": \"九九\",\n \"content\": \"それぞれの段を読み上げます。\"\n },\n \"reprompt\": {\n \"outputSpeech\": {\n \"type\": \"PlainText\",\n \"text\": \"他にも質問はありますか?\"\n }\n },\n \"shouldEndSession\": false\n }\n}\n","x":450,"y":40,"wires":[["a3f5d1d3.48456"]]},{"id":"a3f5d1d3.48456","type":"change","z":"da568283.b34a7","name":"Set Headers","rules":[{"t":"set","p":"headers","pt":"msg","to":"{}","tot":"json"},{"t":"set","p":"headers.content-type","pt":"msg","to":"application/json","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":590,"y":160,"wires":[["d06f833d.ef44f","f37951a4.334fe"]]},{"id":"5d09dbfd.0d44d4","type":"template","z":"da568283.b34a7","name":"page","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"{\n \"version\": \"1.0\",\n \"sessionAttributes\": {\n },\n \"response\": {\n \"outputSpeech\": {\n \"type\": \"PlainText\",\n \"text\": \"{{o}}\"\n },\n \"card\": {\n \"type\": \"Simple\",\n \"title\": \"九九\",\n \"content\": \"{{o}}\"\n },\n \"reprompt\": {\n \"outputSpeech\": {\n \"type\": \"PlainText\",\n \"text\": \"他にも質問はありますか?\"\n }\n },\n \"shouldEndSession\": false\n }\n}\n","x":430,"y":240,"wires":[["a3f5d1d3.48456"]]},{"id":"c12a09a5.1fa5b8","type":"function","z":"da568283.b34a7","name":"switch","func":"var num = msg.payload.request.intent.slots.num.value;\nswitch(parseInt(num))\n{\ncase 1:\n\tmsg.o = \"いん いち が いち いん に が に いん さん が さん いん し が し いん ご が ご いん ろく が ろく いん しち が しち いん はち が はち いん く が く\";\nbreak;\ncase 2:\n\tmsg.o = \"に いち が に に にん が し に さん が ろく に し が はち に ご じゅう に ろく じゅうに に しち じゅうし に はち じゅうろく に く じゅうはち\";\nbreak;\ncase 3:\n\tmsg.o = \"さん いち が さん さん に が ろく さ ざん が く さん し じゅうに さん ご じゅうご さぶ ろく じゅうはち さん しち にじゅういち さん ぱ にじゅうし さん く にじゅうしち\";\nbreak; \ncase 4:\n\tmsg.o = \"し いち が し し に が はち し さん じゅうに し し じゅうろく し ご にじゅう し ろく にじゅうし し しち にじゅうはち し は さんじゅうに し く さんじゅうろく\";\nbreak;\ncase 5:\n\tmsg.o = \"ご いち が ご ご に じゅう ご さん じゅうご ご し にじゅう ご ご にじゅうご ご ろく さんじゅう ご しち さんじゅうご ご は しじゅう ごっ く しじゅうご\";\nbreak;\ncase 6:\n\tmsg.o = \"ろく いち が ろく ろく に じゅうに ろく さん じゅうはち ろく し にじゅうし ろく ご さんじゅう ろく ろく さんじゅうろく ろく しち しじゅうに ろく は しじゅうはち ろっ く ごじゅうし\";\nbreak; \ncase 7:\n\tmsg.o = \"しち いち が しち しち に じゅうし しち さん にじゅういち しち し にじゅうはち しち ご さんじゅうご しち ろく しじゅうに しち しち しじゅうく しち は ごじゅうろく しち く ろくじゅうさん\";\nbreak;\ncase 8:\n\tmsg.o = \"はち いち が はち はち に じゅうろく はっ さん にじゅうし はち し さんじゅうに はち ご しじゅう はち ろく しじゅうはち はち しち ごじゅうろく はっ ぱ ろくじゅうし はっ く しちじゅうに\";\nbreak;\ncase 9:\n\tmsg.o = \"く いち が く く に じゅうはち く さん にじゅうしち く し さんじゅうろく く ご しじゅうご く ろく ごじゅうし く しち ろくじゅうさん く は しちじゅうに く く はちじゅういち\";\nbreak; \ndefault:\n\tmsg.o = \"いん いち が いち いん に が に いん さん が さん いん し が し いん ご が ご いん ろく が ろく いん しち が しち いん はち が はち いん く が く\";\n}\nreturn msg;\n\n\n","outputs":1,"noerr":0,"x":270,"y":240,"wires":[["5d09dbfd.0d44d4"]]}]
以上。