【IFTTT】Google home で IoT Part.7【Hue】
■ このスレッドは過去ログ倉庫に格納されています
Google HomeでIoTをする人の為のスレッドです。
本スレはできるだけ本体(もしくは+Chromecast)で楽しむ人に譲って、
濃い話はこちらでお願いいたします。
※本スレ
google home Part.23
https://mevius.5ch.net/test/read.cgi/google/1565277110/
※前スレ
【IFTTT】Google home で IoT Part.6【Hue】
https://mevius.5ch.net/test/read.cgi/google/1545138252/
※初心者スレ
【初心者】初心者だけどGoogle home でIoT 2【IOT】
https://mevius.5ch.net/test/read.cgi/google/1534381538/
691氏の作ったシステム(hubot-broadlink-rm)について質問をする際には、
過去スレや下記に目を通してからにしよう
https://scrapbox.io/smart-home/TOP アシスタントは実行をトリガーするだけで後の処理を全部外部に出さないと無理だろうね >>367
ざっと考えてみた。
用意するのhAmazon echoとHomekitとそれに対応したスマートプラグとPhilips HueのLEDとモーションセンサー
定形アクションで「アレクサ照明をつけて」と言う
アクションでスマートプラグをOn
Homekitのオートメーションで
トリガーをスマートプラグOn and モーションセンサーの情報で〇〇ルクス以下
アクションでphilips hueをOnにする
消す方法は邪魔くさいので割愛
こんな感じをざっと考えてみた。 >>367
特定のキーワードを言った時にラズパイでスクリプト動くように環境とか作れば可能IFとかは全部スクリプトの方でやらせる みんなありがとう。スマスピへの発声をトリガーにしてスクリプトなりデバイスを走らせた後、IFの結果をスマスピに戻す部分ができないんだよねー。やっぱり無理かー。
ただ>>370のレス見て思ったんだけど、Homekit対応のドアセンサー使えばトリガー発動時にスイッチの開閉をスマホに通知させることは可能かな?
(ルーティンは開閉関係なく走っちゃうけど目を瞑る) >>372
Homekitは標準でセンサー関係のOn offは通知を受けるようにできる
https://i.imgur.com/S68yKJN.jpg 分岐の結果をスマスピに処理させるのは難しいわ
泥スマを用意してhomeやalexaアプリのインテントを叩くようにすればできるかも知れんが
質問のレベルから見て不可能と思う スマスピに戻す必要あるの?
何させたいのか知らんけど、ルーティンで実行させたいこと自体もラズパイなりで実行させたらダメなのかね 処理を戻すのは難しいが、喋らせるのはできるんじゃないか >>376
具体的には風呂のIoT化。
風呂の自動ボタンをswitchbotなりWifiリレーで叩いた時に、風呂の栓が閉まってるかどうかを監視し、閉まってない時に警告を出すか、自動ボタンを押す動作をキャンセルさせたい。
我が家の風呂はよくある浴槽のボタンを押すとポコっと栓が浮くやつ。これは自転車のブレーキみたいにワイヤーで遠隔操作してるから、浴槽のエプロンを外してこのワイヤーの変位を取る何かしらのデバイスを仕込めばよい。
自分にとって難しいのは、風呂の栓が空いてて動作をキャンセルした時に、その結果をスマスピに返し「エラーです」と喋らせる部分。ただみんなの意見聞いてるとかなりハードル高そうね。
次点の策が、>>373のように風呂の栓の状態をHomekitに飛ばす方法だと思った。この場合スマホが必要になるが、いちいちアプリ立ち上げたりしなくて済むのでまだマシかなと。 >>378
浴槽の側面に漏水センサーをつければいいんじゃない。試しにお湯を入れて漏水センサーが感知するまでに時間を測っていれば、次回からは監視ができるかな。 上のお風呂のIoT可はラズパイだけでなんとかなりそうだけど…参考までに。
https://github.com/greghesp/assistant-relay
を使うとラズパイからアシスタントの任意のコマンドを実行できるっぽい。
まだ試してないけどこれが動けば IF の条件分岐でアシスタントのスキル発動とかやりたい放題になるかも?! >>381
喋らせたいだけならラズパイから google-home-notifier 呼び出し >>381
おお、こんなのあるのか。
ちょっと勉強してみる。
>>382
あ、そうだ、google-home-notifierの存在忘れてた!なんでや!それでいけるかも! HomeAssistantならIFというか条件のAND取れるよ
ドアセンサが”閉”のときに室温が29℃を超えるとエアコン起動とかやってる
力技だと、実行ファイルはAとして、しゃべるB、しゃべらないCのファイルを作っておき、
センサONでしゃべるBをAにリネーム、センサOFFでしゃべらないCをAにリネームとかするとできるかと >>381
>>385
Google drive内のGoogle apps scriptで条件分岐すればIFTTTにIFやANDを組み込めると気付いて、やってみたらうまく行けました。
ここを参考にしました。
https://qiita.com/mnr68/items/3594a946224e293068eb
これならラズパイ使わずにやりたいことが実現できます。
みなさんありがとうございましたー。 >>386
クラウド側で処理させたいなら gcp とか aws 使うのもいいかもですね。
自宅のルータに穴あけたら google-home-notifier も行けるかも(^^) >>388
撮ってみました。
マグネットスイッチが開いているときはSwitchbot2が作動し、スイッチが閉じてる時はSwitchbot 1が反応します。ウェイクワードはどちらも「ねえGoogle、テスト」で同じです。
https://i.imgur.com/BGv0gzG.mp4
Javascriptに一切触れたことのないレベルからなんとかここまで行き着きました。夏休みの自由研究ですね。 imgurだと音が出ないのでYoutubeに貼り直し。
https://youtu.be/bxEbs3XszCk >>390
いいねー、できてるねー。
風呂のせんのワイヤーを開閉センサーに繋いで
せんが開いてるか閉じてるかみるわけだ。 ありがとうー。慣れないプログラミングがんばったので嬉しい。
おっしゃる通りで、浴槽のエプロンを開けて、風呂栓のワイヤーにこの磁石を繋いで開閉をモニターしようという計画です。ハードを作るのは得意なのでこの辺はなんとかなるかと。
最終的には、
風呂栓が閉まってたら:お風呂リモコンのお湯はりボタンを一回押す。風呂栓が空いてたら:お湯はりボタンを二回押してお湯張りをキャンセル→スマホに通知を出す。
という動作にしようと思っています。
試行錯誤の過程で>>385の推薦したHass.ioにも興味が出てきてラズパイも買っちゃったのでw、これはこれで色々いじってみまーすノシ >>392
そーすると、スイッチボットは1個でいいわけだ。
>>386の参考リンクみれば分かるんだろーけど、
簡単でいいから流れを説明してもらえる? >>393
下準備:
・空白のGoogleスプレッドシートを作成
・Smart lifeアプリ対応の中国産ドアセンサーで、IFTTTを使ってGoogleスプレッドシートの特定のセル(動画ではD2)を0または1に書き換えるように設定
・Switchbotは同じくIFTTTのWebhooksをつかって、URLを叩いたらスイッチを押すようにしておく(仮にURL1,URL2とします)
・スプレッドシートからスクリプトに入り、スクリプトを書く。今回は下記のように書きました。超初心者のコードなのでお目汚し失礼。
https://qiita.com/PIKOTARO/private/1ac534d4001ebeb819e8
参考にしたサイトでは、IFTTTでセルに時刻を記載し、そのセルの更新を改めてIFTTTで検知してましたが、スクリプトで直接URLを叩いた方が動作が早いのでそうしています。 >>394
こんなスレあったんだ!
覗いてみたら全く会話についていけないw
頑張って勉強しまーす。。。 >>395に、記載し忘れた、トリガーの設定は「スプレッドシートの変更時」にしてあります。ただこれだけだとマグネットスイッチが作動した時にもスクリプトが反応してしまうので、スクリプトの方で反応するセルを限定しています。
Googleホームに特定の言葉を喋った時にIFTTTでA2セルに時刻が打刻されると、その打刻をトリガーにしてスクリプトが発火します。 >>397
おぉ、早速の詳しい解説、有難う。
トリガー部分のロジックが、分からなかったんだよ。
過疎スレも、たまには覗いて観るもんだね、勉強になったよ。 GASは1日の呼び出し回数とかに制限があった気がするするので場合によっては要注意ですよ >>399
今回のGoogleスクリプトの実行時間は約0.5秒でした。
GASの制限は5400秒/日なので、今回のように風呂の開閉確認なら多めに見ても1日一桁しか動かさないから大丈夫かと。
他にも動かしているスクリプトがあったら別問題ですが。 スプレッドシートへの読み書きとかも配列にまとめて処理しましょうみたいなtipsがあった
1日1回程度なら問題無いでしょうけど 質問させてください。
現状はテレビを赤外線経由で操作しているのですが、
オンオフがトグルになっていて困るので、確実にオンオフ
操作をするために、ラズパイを挟んだコントロールに
挑戦しようかと思っています。
ググってみると、HDMI CECを通してコントロールする
方法と、LANを通じてXMLで操作する方法の二通りがある
ようですが、Googleアシスタントと連携させることを前提
とした場合どちらがより導入の工数が少なく済むでしょうか。
Google Home→ラズパイ→HDMI CECまたはLAN→ビエラ
というイメージです。
なお、ラズパイからビエラを操作する方法は色々出てきますが、Googleホームにラズパイ経由でテレビを認識させる方法がよくわかっていません。Hass.ioを使うのでしょうか?? >>402
今の環境は?
ir信号が自由に触れるんならそれが一番楽だと思うけど >>402
赤外線のオン信号とオフ信号で制御すればいいんじゃない? たぶんVIERAならON/OFFありそうだけどね。家のはある。 最近の機種はオンオフが別々になってるんでしょうか。
ビエラはTH-55EX850、スマートリモコンはSwitchbot hubとラトックのWFIREX4です。そこまで古い機種でもないと思うのですが。。。
改めて実験してみましたが、同じ赤外線信号でオンオフを繰り返します。これをオンとオフを分離したいのです。 リモコンではオンオフがひとつの信号になってるけどそれとは別にオンとオフそれぞれ別の信号を受信出来る様になってたりするんでしょ
だからリモコンの信号をコピーしてもしょうがないよ >>408
付属リモコンが発するオンオフ信号とは別に、オンとオフの信号が別々に存在するらしい、というところまではググって分かったのです。が、じゃあその信号を我が家のスマートリモコンで発信できるようにするにはどうしたらよいのでしょう…?
下記サイトにその信号のコードが記載されていました。
プラズマ時代のコードなので今も使えるかは怪しいですが。
http://files.remotecentral.com/library/3-1/panasonic/plasma_display/power_control/index.html >>409
ONとOFFを送信出来るリモコン(赤外線スマホとアプリ)を使って学習させればいいんじゃね?
家ではそうしたけど? >>408
うちTH55EX750。
とりあえず電源オフはNetflix→電源(数秒ディレイ)で問題無し。
信号ちゃんとしたの見つかるまではこんな対応もありよ。 >>409
コード変換してWFIREXで送信、Switchbot hubで学習
https://zmzlz.blogspot.com/2019/09/blog-post.html
コード変換方法わからないなら
anymote対応スマホを買うか
rm mini3購入してSUREユニバーサルリモートで送信
anymoteは国内メーカースマホは非対応が多い >>409
だから今の環境を書けって
テメーんちにどのスマートリモコンがあるかとか
どうやって制御してるとか分かるわけねーだろ SHARPのテレビ、ONKYOのAVアンプはAnymoteにON OFF信号があった。 >>413
>>407に書いてある情報では足りないですか? >>412
ありがとうございます!
これでいけそうですね! みなさんサポートありがとうございます。
結局色々試しましたがオンオフ独立の赤外線コードを見つけることができませんでした。しかし、>>411さんの方法で確実にオフにすることが出来るので、とりあえずはそれでなんとかなりそうです。
ラトックのリモコンに赤外線コードを直に打ち込む裏技があるのは知りませんでした。(>>412)これはこれで別の家電の制御に使わせてもらいます。 色々試したって言うからそれでも無理だったのかとおもた
無駄が多い方法ではあるけど、知識なくてもできる唯一のやり方ぐらいな感あるanymote AnymoreをHTL22で使っているけど、安くてもっとサクサク動くやつないかな >>424
VieraのON/OFFコードが見つからないとか言ってたんで。
そのスレのON/OFFコードでもダメだったんかと思った。 >>423
おお、こんな情報あったのか。
早速やってみます。ありがとうー。
でも、このコードはbroadlink rmの規格っぽいな…これをラトックの形式に変換するのはどうしたらよいんだ…。 google homeにGoogleカレンダーの予定喋らせてるんだけど、毎週スケジュールしてるやつを今回だけ削除とかしてるのに喋ってしまうのはなんとかならんのかな?
もちろんカレンダーからは消えてるんだけど ごめん、カレンダーから消えてなかったわ
429は気にしないでくれ >>428
prontoに変換してやってみたけどもダメだねー。。。 ラトックの赤外線信号フォーマットの情報って検索してもヒットしないね。 https://forest.watch.impress.co.jp/docs/news/1276182.html
新プラン“IFTTT Pro”でサポートされる機能は以下の通り。
これまでの無料プランでは1つのトリガーに1つのアクションしか紐付けられなかったが、
“IFTTT Pro”では複数のアクションをトリガーしたり、複数のサービスからデータを取得して組み合わせたり、
JavaScriptで条件を記述して合致する場合だけ実行(またはスキップ)することができる。
そのほかにも、無制限にアプレットを作成できるなどの特典が得られる。
一方で、無償版で作成できるアプレットの数は3つになるようだ。
“IFTTT Pro”の価格は、月額9.99米ドル。 >>433
サンクス
メール来てたが、これのことだったか。 local home sdkってどの辺まで来てんの?
961氏システムのiftt絡みの部分を置き換える記事誰か書いてplz iffft前提だったせいで3個となるとすげぇ少ないよな・・・ アプレットってのは追加機能で、従来通り使ってたIF THENは無制限なんじゃないの? これキツいわー。
既存の3つ以上のアプレットはどうなってしまうの? まいったなあ
ちょっと躊躇する金額だし、海外のサイトでクレカ使ったこと無くて不安だし アプレット3つ!?
今まで登録してたのはどうなっちゃうの?
ユーザーが価格決定できるって0でもいいといいなぁ 54あるんだが、今ある奴はロックされて新しい物が作れなくなってる。。 アプレット適当に作ってたら107もあっと罠
今のところ、新規作成は出来ないけど、既存の編集は出来るみたいね 面倒だけどIFTTTみたいに一発で呼べるホームアプリ作るか
IFTTTって、スマートホームアプリとは違う接続方法だったのかね
スマートホームだと、Alexaのスマートホームスキルみたいに、デバイスの括りがある Webhooksの代替になるサービスねえかなぁー。 複数のコマンドをIFTTTの変数として指定する
コマンドの分岐はIFTTTから変数をGAPに渡して処理する
で行けるかな
呼び出しが面倒そうだけど 1000円/月で今より良くなるなら良いと思うけどな つかIFTTTでできること全部Googleアシスタント/ホーム側でできるようにしてくれよ IFTTTとwebhooks、pushbullet、macrodroidを組み合わせていろいろやってるけどこの先年1万以上払い続けることになるのはためらわれる
HomeAssistantを使えば置き換えられるて見かけたけど、どこまでできるのか、ちょっと調べたけど難しい・・・ iftttの件関係者に聞いた。
3つ以上作ってた場合は数カ月程度は継続して使える。
有料→無料に変更した場合は3つのアプレットを選択することになる。
上記いずれの場合もアプレットを削除されるわけではなく有料プランにすると取り戻せる
最安2ドルは10/7までに契約した初年度1年のみ
10/7まで代替策模索して、駄目なら2ドルで時間稼ぎかな。
手放せない自宅のシステムに毎月金を使い続けるのはさすがにねぇ 課金してみたけど、10/7からじゃなくて支払った日から開始みたい
ギリギリまで待ったほうがいいかも 2ドル払って、1年後には代替策が出てるだろ。
俺はもともと使ってなかったし、クレカ情報、渡したくないからアプレット3個以外削除したがな。
まったく、問題なし。 制限に従って3個に減らして問題無いってわざわざ言うのは何かアホらしさを感じる 3個で対応できるってすごいな
何に使ってるのか逆に気になるわ google homeの音声入力とか、
iftttボタンをトリガーにしてるとアプレット消費が激しすぎる
せめてgoogle home の音声トリガーだけでも代替手段があればかなり楽になるんだが… 代替案というか上位互換な方法としてhomeassistantみたいな自宅鯖を導入するっていうのはずっと前からある選択肢だし
現状で影も形も無い新サービスに期待するよりそっちを検討した方がまだ現実的じゃないか ラズパイに依存しないスマートリモコン帰ってことか。。。 home assistantってDS-Lite接続(IPv4overIPv6)でも使えるんか >>466
プロバイダから指定されてるポートだけでも一応使えるっちゃ使えるけど
googleassistantが443以外は受け付けないせいでスマートスピーカーと連携できなかったりするので
ラズパイだけ個別にIPv4のPPPoEセッションを張ってポート解放する方が無難 ■ このスレッドは過去ログ倉庫に格納されています