でぃするだいありー?

そんな気はないんだれど、でぃすっちゃってる。 でぃすでれ?

Alexa Skills Kit + すまーとほーむ

先日の結果・・・Google APIsの課金がガンガン増えてくのでやめた。

二日間、夜間だけ連続で試用して、3700円くらい。「ボタンを押してOKぐーぐる」ではなく、常時待ち受けにしたため、こんなことであろうと思っていたが、思っていたよりもえぐかった。趣味的AIYレベルのコストではない。

Google AIY Voice Kitによる実現は断念。Google Home Miniを買うかとか血迷いかけたが、ウチにはAlexaがいる。そうだ、Alexaがいるんだ。

 

というわけで、Alexa発IFTTT経由でSlackとの連携。
Alexaのやることリストにやることを音声登録するとIFTTTをキックしてSlackにその内容をポストするというもの。

参考にしたWebページが、IFTTTに指定するAlexaトリガを間違えていた。か、あるいは、短い間にIFTTTの機能が変更されたか。とにかくハマりつつ、なんとかSlackにメッセージを送るところまで実現したが、送られたメッセージが化けた。

以下、やることリストに『テスト』を音声登録し、IFTTTが受信した結果。赤字がどうも『テスト』らしい。

My Amazon Alexa To Dos
You have just added a new Alexa To Do: ãã¹ã

IFTTTやSlackで文字関連の設定が見つからなかったので、本案も破棄。

 

次、Alexa スキル。AlexaスキルでSlackにポストし、俺環では実装済みのSlackから赤外線対応機器をコントロールする仕組みへと連携する。

大事になってきた。が、手持ちの材料からすると一番の近道かもしれない。Alexa持ってるし、PCにはVisual Studioがインストール済である。と思いきや、VSのアップデートが長かった。いつ、なんのためにインストールしたのか忘れるくらい放置していたからか。

初めてやることなので、ターゲットフレームワークでエラーが出たりする。.NET Core 2.1(dotnet-sdk-2.1.301-win-x64.exe)のインストールを行って解消。

.NET Core 2.1を選択する。アップロード時にエラー。.NET Core 2.0を選択してうまくいった。
参考にしたWebページに記載されていたサンプルソースのnamespaceが間違っていたりとかでハマる。コンパイルは通る、AWSへのデプロイもOK。だが、実行時にエラーとなる。

AWSは、2年くらい前に仕事で携わった時にも存分に味わったことだが、参考にしたWebページと現行のAWS画面が違っていて、やや難儀。アマゾンは、3カ月前の情報がもう古いとかいうセカイ。まあ、コツはつかめている。
Lambda ManagementにAlexaのスキルIDを登録してからでないと、Alexa Skills Kit Developer Consoleのエンドポイント登録ができないとか、同じアマゾンなのに異なるサイトをいったりきたりして設定する必要があり、かつ、順序がある。理解すればその順序に思うところはないが、理解していない時代には言ってくれよってカンジ。

またしても、参考にしたWebページに『char:write:user』という誤字! コピペしてハマる。『chat:write:user』ですから!

 

よくわからないまま突き進んで、とりあえずうごくものを作ってから家内すまーとほーむシステムへ連携できるよう実装を始める。突き進んできたのでインテントとかよくわかってない。

普段は飲まない酒を飲みながら実装したので、いまいちイけてない気がするが、赤外線機器は二個しかないのでとりあえずよしとする。

俺すまーとほーむが音声対応になりました。

 

以下、参考にさせていただいた記事。
初心者向けチュートリアル。プログラミングの初心者向けではない。誤字があったり、やややっつけな印象もあるが、突端としては非常に有益でした。多謝。

www.atmarkit.co.jp

www.atmarkit.co.jp

www.atmarkit.co.jp

インテントの理解に。上記サイトでは画像でわかれ的な説明だったが、こちらはインテントの設定がきちんと説明されている。去年の記事だとインテントに関する部分はjsonで書かれてたりする。説明画像で示されているUIが現行のものなので、画面で設定する方法としてわかりやすい。感謝。

Alexaのスキルを開発する ~その1~ スキルの作成(Amazon Developer Console) – らくがき帖

Alexaのスキルを開発する ~その2~ 処理の作成(AWS Lambda) – らくがき帖

 

引っ越してきてから初めて使ったけど、はてなのリンク機能は便利だな。