[Integromat] Google Homeから任意回数分の赤外線送信する方法

CHASUKEの記事をシェアする..

どうも、CHASUKEです。

タイトル付けが難しいところですが、「Integromatを使って、Google Homeで指定回数分の赤外線を送信したい」との要望をいただきましたので、作ってみました。

例えば、こんな感じです。

「OK.Google. テレビのボリュームを3上げて」

同じ赤外線信号の連続実行であれば、「3」固定でなく、「1」でも「100」でも汎用的に操作できます。ただ、「100」指定したらとんでも無いことになります..w

Integromatシナリオの作り方は、以前にアップした下記の記事を少しイジればできてしまうので、詳しいところは参考にしていただければと思います。

[Integromat] IFTTTから値を渡してNature APIを叩く方法
どうも、CHASUKEです。 本日も『Integromat』ネタです。Google HomeからIFTTT経由で設定温度などをIntegromat...

それでは、やっていきましょう!!

SPONSORED LINKS

指定回数分の連続実行シナリオの作り方

連携イメージはこんな感じ♪

▼Integromatのシナリオ完成形がこちら

Integromat側のWebhooksを作成

IFTTTからの呼び出し元になるWebhooksモジュールを作成します。

今回は、新たに「IFTTT_Number」という名前でWebhookを作成しました。表示されたURLをコピーして次の手順に行きます。この画面はこのまま放置しておきます。

※詳しくは、こちらの「Webhooksモジュールを作成」を参考にしてください。

IFTTTで呼出用レシピを作成

今回のポイントはここです。

指定回数を渡すためのIFTTTレシピを作っていきます。

▼まずはトリガー「Google Assistant」の設定

数字を仕込むため「Say a phrase with a number」を選択します。

▼見ればわかると思いますが、起動フレーズの数字部分に「#」を入力します。また、前後に半角スペースが必要です!!

少し違和感があるのが、テレビと言わずに「BRAVIA」と言ってる部分。

テレビと言うと、Google Homeに登録しているChromecastの音量が変更されます。逆にテレビと言わなければ、Google Homeの音量が変更されます。

最終的に製品名から「BRAVIA」としています。

次に、なぜ「ブラビア」でなく「BRAVIA」なのか。Google Assistantがそうやって認識するからです。

この辺りは、Google Homeに実際に話しかけてみて、「マイ アクティビティ」で何と聞こえているかをチェックすると組み立てやすいです。

▼続いて、アクション「Webhooks」の設定

▼URLは先ほどのIntegromat側の呼出元となるものを指定します。

Body部分に、トリガー側のGoogle Assistantで指定した「#」に当たる指定回数をセットします。

▼Bodyの設定は以下のように、「Add Ingredient」にある「NumberField」を選びます。

レシピが完成したら、Google HomeからIFTTTレシピを起動させてみましょう。

▼事前に用意しておいた、Integromat側のWebhooksモジュールに「Success」と表示されていれば成功です。

連続実行用のRepeaterモジュールを設定

同じモジュールを実行したいときに使える便利なモジュールが「Repeater」です。

▼こんな感じで、連続実行したいHTTPモジュールの前にセットします。

▼リピート回数は、IFTTTから連携されてくる「number」を利用してセットします。

Repeats項目にカーソルを当てると、星マークから「number」を指定できます。この中身に、Google Homeに伝えた回数が入っています。

これで、完了です。

HTTPモジュールでAPI実行

最後にNature APIを利用して、音量UPの赤外線信号を送信します。

URLhttps://api.nature.global/1/appliances/[赤外線信ID]/send
MethodPOST
Body typeApplication/x-www-form-urlencoded

▼HTTPヘッダーに認証情報も忘れずにセットしましょう。

HTTPモジュールの詳しい設定方法は、こちらの「HTTPモジュールを設定する」を参考にしてみてください。

これで、シナリオは完成です。

▼シナリオを「Active」として起動してみてください。

「OK. Google. BRAVIAの音量を3上げて」

これで音量が3アップするはずです♪

最後に

同じモジュールの実行であれば、「Repeater」モジュールが使えてめちゃ楽です。同じ要領で「音量ダウン」も揃えておこっと。

ポイントは、IFTTT側のWebhooks設定値。「マイ アクティビティ」を地道に確認しながら呼出フレーズを決めるところですね。

また、誤って「音量を100上げて」と言っちゃったなど、明らかに間違った値が来たときに作動しないようにフィルターを入れときましょうw

それではまた。

コメント

  1. mokusaku より:

    RepeaterのNumberのRepeats項目に☆マークが出ず、Numberが指定できません。
    IFTTTとGoogleHomeの連携はできていて、「テレビの音量を3下げて」と言うと「1」だけですが、下げてくれます。
    なにか原因があれば教えてほしいです。

    • CHASUKE より:

      mokusakuさん

      「Integromat側のWebhooksを作成」にあるWebhookモジュール編集状態で、IFTTTからURLアクセスして数値パラメータを飛ばします。
      Webhookモジュールの編集画面が「STOP→SUCCESS」と変われば成功です。
      これで、星マークでIFTTTから送られてきた変数が選択できるようになるはずです。