自作スマートホームスキルの擬似センサーでAlexaの定型アクションを起動

Amazonの「Alexa」には「IFTTT」のように特定の状態が発生したときに特定のアクションを実行させる「定型アクション」の機能がある。標準機能は限られているが、スマートホーム機器との連携のための「スマートホームスキル」を自分で作成すれば、外部ツールやサービスと連携させて柔軟な活用が可能だ。
パソコン上から定型アクションを起動させるには、自作スマートホームスキルで登録した擬似センサーをトリガーとなる実行条件に設定しよう。パソコン上のスクリプトからAmazonのサーバにセンサー感知を通知するHTTPSリクエストを送ることで、割り当てた動作を起動させられるぞ。
単にこのスクリプトをショートカットから起動するだけでも、パソコン上から素早く家電の操作を行えて便利だ。また、動画エンコードなどの処理完了時に照明の点灯やアラームで目覚ましにするなど、他のソフトと組み合わせることも出来る。自宅サーバ上にスクリプトを設置してインターネット経由でアクセス可能にすれば、スマホ上の自動化ツールなどから呼び出して連携させる事も可能だ。スマートホーム機器をさらに便利に活用出来るぞ。




001

あんスマが用意した自作スマートホームスキル用のLambda関数コードの最初の方にある「sensors={」……「};」の部分に、スキルによって登録されるモーションセンサーの識別名と表示名の定義が記述されている。3つ以上のセンサーを使いたい場合は、同様の行を追加しよう。このとき、少なくとも識別名は重複しないように変更しておく必要があるぞ。
関数コードを変更したら、「Deploy」で保存・反映させ、Alexaでデバイスの検出を再度実行しよう。


002

モバイルアプリ版のAlexaで左上のアイコンをタッチしてメニューを表示し、「定型アクション」を選択して定型アクション管理画面に進もう。


003

右上の「+」をタッチして、新たな定型アクションの作成画面に進もう。


004

「名前」で分かりやすい名称を設定し、「実行条件を設定」をタッチ。


005

実行条件の種別で「デバイス」を選択。


006

自作スマートホームスキルで登録されたモーションセンサーの項目を選択しよう。


007

検出状態の条件では、「検出」をタッチして選択。右上の「次へ」を押せば条件の設定が完了する。
最後に「アクションを追加」で割り当てたいアクションを設定して「保存」を押そう。


008

トリガースクリプトを実行するには、XAMPPのフォルダ内の「php」フォルダにある「php.exe」のショートカットを作成し、「リンク先」欄のファイルパスの後に半角スペースで区切ってトリガースクリプトのパスと擬似センサーの識別名を加えて保存し、実行しよう。
BATファイルなどに組み込む場合は、同様のコマンドラインを記述すればいい。

また、スクリプトをXAMPPの「htdocs」フォルダ以下に置いて自宅サーバ上で公開し、HTTPリクエストで起動する事も可能だ。その場合、スクリプトのURLの後に「?」に続いて擬似センサーの識別名を加えたURLにアクセスすればいいぞ。
HTTPサーバで実行可能にすれば、他のパソコンからアクセスして実行出来る他、IFTTTやZapier、Zoho Flowなどの自動化サービスやAndroidの「Tasker」などの自動化アプリから呼び出してAlexaの定型アクションと連携させる事も可能になるぞ。
HTTPサーバで公開する場合は、ファイル名を推測されて誰かに勝手にアクセスされる事の無いように、ファイル名やサブフォルダ名をランダムで長い名前にして、他人に知られないようにしておこう。
なお、トリガースクリプトは次回アクセス時に使用する認証トークンの情報をスクリプトと同じフォルダに保存するため、スクリプトを別のパソコンなど複数の場所にコピーして使う事は出来ないので注意しよう。

関連記事

2020年10月31日06時40分 公開 | カテゴリー: 便利化・快適化 | キーワード:, | Short URL
このエントリーをはてなブックマークに追加

最新記事