自作スマートホームスキルでAlexaの定型アクションから外部ツールを呼び出し
Alexaの「定型アクション」機能では、モーションセンサーの感知や特定のフレーズの認識などのイベントにAlexaの動作を割り当てて実行させられる。スマートホーム家電の操作も割り当てられるので、「スマートホームスキル」を自作すれば、外部ツールやサービスと連携させることも可能となるぞ。
自宅サーバ上に設置したスクリプトを呼び出せば、Alexaへの音声入力でパソコン上のソフトを起動させたり、モーションセンサーの感知をログファイルに記録するなどといった使い方が可能だ。パソコンには様々なソフトが存在するので、実行させられる動作も様々だ。
また、IFTTTやZapier、Zoho Flowなどのサービスの「WebHook」トリガーを呼び出して連携させることも出来る。アイデア次第でAlexaがますます便利になるぞ。
XAMPPをインストールしてHTTPサーバを起動したら、メモ帳などのテキストエディタで以下のようなスクリプトを記述し、拡張子「.php」でXAMPPのフォルダにある「htdocs」フォルダ内に保存しよう。
このとき、htdocs内にランダムな長い名前のサブフォルダを作ってその中に入れれば、URLを予測されにくくし、誰かに勝手にアクセスされるのを防止出来るぞ。
<?php if(preg_match('@\\.compute\\.amazonaws\\.com$@si',gethostbyaddr($_SERVER['REMOTE_ADDR']))){ exec("C:\\someapp\\someapp.exe"); }
「if(……){」の行は、Amazonのサーバからのアクセスのときのみ中の処理を実行するという条件分岐で、「exec(‘……’);」は、引用符内に記述されたコマンドラインでプログラムを起動するという処理だ。コマンドライン中のファイルパスなどの「\」記号は「\\」のように二重にして記述する必要があるぞ。
設置したPHPスクリプトのURLは、「http://(ダイナミックDNSのアドレス):(Apacheのポート番号)/(htdocsフォルダより後のスクリプトファイルのパス)」のようになる。このURLを、スマートホームスキルのLambda関数コードの「buttons」のところのURL部分に記述し、「Deploy」を押して保存しよう。
擬似デバイスを増やしたい場合は、既存の項目行を複製にして、左の識別名とname以下の表示名、URLの部分を書き換えよう。デバイスを増減させたり名前を変更した場合は、Alexaでデバイスの再検出を行う必要があるぞ。
モバイルアプリ版のAlexa上でメニューの「定型アクション」から定型アクション管理画面に進み、右上の「+」ボタンで新規作成画面に進んだら、「実行条件」で自宅サーバのスクリプト起動を割り当てたい条件を設定しよう。
Alexaに特定のフレーズを話し掛けたときや、Alexaに登録してある(現実の)センサー機器が特定の状態を検出したときなどの条件が設定可能だ。
次に、「アクションを追加」で動作の種類選択画面に進み、「スマートホーム」を選択。
Alexaに登録されているデバイスのカテゴリ一覧が表示されたら、「全てのデバイス」か「照明」のカテゴリを選択しよう。該当するデバイスの一覧が表示されるので、自作スマートホームスキルで登録された擬似デバイスを選択し、右上の「次へ」をタッチ。
操作内容を選択する画面では、「電源」の「オン」が選択されていることを確認し、右上の「次へ」を押して設定を完了しよう。
定型アクション作成画面に戻ったら、右上の「保存」を押せば定型アクションが作成される。
実際に実行条件に設定した行動をしてみて、パソコン上で設置したPHPスクリプトに記述した動作が実行されるか確かめよう。
関連記事
自作スマートホームスキルの擬似センサーでAlexaの定型アクションを起動
Alexaやスマートホーム機器をパソコンなどと連携させるためのスマートホームスキルを作成しよう
実質有料化のIFTTT代替!自作Alexaスキルでスマートホーム機器を自在に活用しよう
Alexaのスキルを自作して手持ちの音楽ファイルを再生させよう
Alexaの自作スキルでお気に入りのサイトをフラッシュニュースに対応させよう
画面付きのAlexaでお気に入りの動画を再生するスキルを自作しよう
【デバッグ接続】複数端末を接続しているときは「-s」オプションで対象を指定
Amazon開発者アカウントを作成してAlexaスキルを自作しよう
AlexaのスキルでWeb上から取得したテキストを喋らせよう
2020年10月31日06時40分 公開 | カテゴリー: ライフハック | キーワード:チップス | Short URL
ツイート
最新記事
- ゲームを楽しむだけで無く、おしゃれにも使えるカラバリ!有線でも無線でも使えるゲームコントローラー!
- 小さく運ぶ、大きく使う!移動中も効率的に休める枕!
- 柔軟なケーブル管理!すべてのケーブルが絡まないようにする結束バンド!
- 一瞬でくるっとまとまる充電ケーブル!急速充電も高速データ伝送も対応!
- 小型化とスタイルの融合!テンキーレスで一日ゲームをするのも快適!
- 太めのケーブルも使えるマグネット式ケーブルクリップ!6個セットで家中どこでも使える!
- クランプで手軽に設置できるケーブルトレー!使い方によって小物入れとして使うことも!
- 配線を整理してスッキリ!デスク裏に設置する布製ケーブルトレー!
- 液晶ディスプレイの上を小物置きに!設置も取り外しも簡単なディスプレイボード!
- 照明の常識が変わる究極のモニターライト!自動調光で常に最適な明るさ!
- 狭いデスクを広々使う!可動域の広いモニターアーム!
- 大きな文字で見やすいデジタル時計!壁掛け時計としても置き時計としても!
- 3in1のヘッドホンスタンド!USBハブや 3.5mmオーディオ機能も!
- ゲームやテレワークを快適に!目に優しい設計のモニターライト!
- 便利なUSB電源のPCスピーカー!Bluetooth接続にも対応!
- 高さと向きを自由に調整可能!様々なゲーム周辺機器を収納できるスタンド!
- 安定性抜群!スマホを安定して置いておける折りたたみ式のスマホスタンド!
- 片手で脱着できるスマホホルダー!ダッシュボードでもエアコン送風口でも!
- AUX経由で音楽再生!Bluetoothでワイヤレスに再生できる!
- 小さい空間のあらゆるところで空気を浄化!プラズマクラスター搭載のコンパクトな空気清浄機!
- 2台の機器を立てて収納できるクラムシェルスタンド!重量感があるので安心して置ける!
- 超スリムで持ち運びも簡単!ノートPCを最適な角度に出来るスタンド!
- ボタン1つで締めるも緩めるも手軽に!シンプル操作で高精度作業!
- 最大8台同時充電可能!スマホスタンド付きの電源タップ!
- 一台6役の猫足型電源タップ!コンセントもUSBポートもこれ一台!
- 5個のコンセントと4つのUSBポート!コンパクトなのにたくさん使える電源タップ!
- 一台6役で干渉しにくい延長コード!コンセントもUSBもこれ一台!
- 4つの機能を1台に!ワイヤレス充電機能等がついた高機能空気清浄機!
- 車内空間を短時間でリフレッシュ!高性能HEPAフィルター搭載!
- ウイルスも花粉もきれいに!車内の空気を清浄化!