【IFTTT】Google home で IoT Part.3【Hue】
■ このスレッドは過去ログ倉庫に格納されています
Google HomeでIoTをする人の為のスレッドです。
本スレはできるだけ本体(もしくは+Chromecast)で楽しむ人に譲って、
濃い話はこちらでお願いいたします。
※本スレ
google home Part.11
http://mevius.5ch.net/test/read.cgi/google/1516500534/
※前スレ
【IFTTT】Google home で IoT Part.1【Hue】
http://mevius.5ch.net/test/read.cgi/google/1513235443/
【IFTTT】Google home で IoT Part.2【Hue】
http://mevius.5ch.net/test/read.cgi/google/1516114373/ >>770
ありがとうございます。でもダブルクォートでくくってもダメでした。
「(」、「)」の代わりに「_」にしても、メールのサブジェクトに「_」が入ってたら
(頻度は減るような気がしますが)話は同じなのでスジの悪い対処法だということは
重々わかっています。この「ダブルクォートでくくる」のような、入力の方をなんとか
する(エスケープというか)のが正しいアプローチなんでしょう。もうちょっと考えてみます。
ヒントをありがとう。 >>780
9800円w
691氏は神だな
寄付サイト作ってくれたらある程度お金出したいわ 691氏のリモコン比較表で、IHCの「部屋の自動識別」が○になってるのは、どゆこと?
『リビングで、「明かりをつけて」と言えば、リビングが点灯する』と説明があるけど、
それできないよね?
https://gyazo.com/085ddf4a29323d397a8e93170638a83d >>782
善意に対してお金を払うと言うのは大変失礼なことだぞ。しかも口だけ
災害ボランティアに感謝していますと言って10円払う位に失礼なこと。
払いたいなら出張費と土木作業の費用払え(土建屋に頼めば1日一人5万円で最低二人体制) あの手この手でマウント取りにかかるの笑うからやめて >>783
homeアプリのスマートホーム設定画面で部屋の登録をするのとは別物かな? >>783
複数台の黒豆が存在する場合に、@を使った黒豆の指定が可能だからだろ? >>788
部屋の「指定」ではなくて、「自動識別」。
部屋名を言わなくても(指定しなくても)、どの部屋で言われたかで部屋を識別する機能のことだよ。
それが、hubot-broadlink-rmではできないけど、公式アプリIHCの場合にはできるってなってる。 >>770
GoogleAppsScriptで、文字列(メールのFromName、Subject)を受け取ってSlack
に投稿する、というWebAPIをでっち上げ、IFTTTのWebhooksでGmailを受信したら
こいつを叩くようにしました。これでSubjectに「(」、「)」が入ってても、GAS
側でSlackに渡す前に消してしまえるのでうまくしゃべってくれます。
また、Subjectに「Amazon.co.jp」などという文字列があると、Slackが勝手にリ
ンクにしてしまうため、いちいち「エイチティーティーピー」をつけてしゃべる
のがうざかったのですが、これも「.」を消してリンクにならないようにするこ
とで解決できました。
あと、IFTTTのSlackへのpostの設定を「send say( {{FromName}}から{{Subject}}
というメールが届きました )」としておくと、FromNameが指定されていないメー
ルを受け取ったとき、いきなり「からナントカというメールが届きました」とし
ゃべるのがまぬけで、かといってメールアドレスを設定しておくと、たとえばAmazon
マーケットプレイスからのメールのような無意味な文字の羅列が長々続くような
ものだと、お前は一体何の呪文をしゃべってるんだという感じになってしまうた
め、結局Subjectしかしゃべらせないようにしていたのですが、これもFromName
が指定されているときだけしゃべるようにすることができました。
こちらでヒントをもらって、こういう風にやればいいということを思いつきまし
た。なかなか楽しいですね。ありがとうございました。
GASについて調べていくうちに、IFTTTを使わずにGASでGmailをフェッチすればい
いのでは、ということに気づきましたが、まだやっていません。 691氏始めとしてえらい人どうか教えてください。。。
Android端末にturmux入れてサーバーとして運用、slack経由IFTT使ってRMmini3動かしていたのですが、
そのAndroid端末がいつの間にかシャットダウンされており、またturmuxで一から環境作る必要が出てきました。。。
・やはり、また一からturmux環境作り直す必要があるのか?
・今後こういう事態を防ぐため、turmuxを閉じたり端末を再起動してもデータが残るようにはできないのでしょうか? >>791
redisのdbに残ってるんじゃないの >>791
Raspberry Pi Zero Wとケースで2,000円ぐらい。
SSH接続でPCから設定できる(分かれば超楽)。 >>793
調べても分からず、申し訳ないです。
dbからの復帰方法ってどこかに載ってませんでしょうか? >>791
>[**** 注意事項]
>termuxやandroid端末を再起動しても、ここで行った設定や、学習した赤外線データは残るのでご安心を。
ドキュメントは読んでますか?
turmaxの起動後にredis-serverを起動しhubotを起動してみましたか? ヤマダ電機でGoogleHomeminiとRS-WFIREX3がセット価格13,000円で売ってた。
思わず衝動買いしそうだったが、とりあえず調べるために帰ってきて、ここを覗いた。
やっぱり黒豆とやらを買った方がいいのかな? >>797
ご教示ありがとうございます!
hubotを起動させようとすると、そのディレクトリには何もないと出るのです… >>798
黒豆より端々で頭の良い動作はするよ、音声認識ウンコみたいにおっそいけどw
どうせ黒豆なんて安いから、まずその店頭セット買ってから買い足しても問題はない。 >>798
RS-WFIREX3がAmazonで6872円
GoogleHomeminiが楽天で5699円(クーポン300円引き含む)
合計で12571円
わざわざ高い金だして必要のないセット買う必要ないんじゃね? >>801
あらら、それなら好きなのチョイスして買うほうがいい?
ただ迷う人はおすすめセットの方がいいよね
私もここで黒豆推しみてそれにしたし、切っ掛けって大事よ google home + RM mini3 + hubot on ras piで、
IFTTTで朝5時にエアコンオンは実現できてます。
先人の方々、中でも691氏、ありがとうございます。
朝5時 かつ 外気温が0度以下 とか
朝5時 かつ 室温が5度以下
というような複数の条件を満たした時にエアコンオンさせることは
できないでしょうか? >>800
背中押してくれてありがと!
自分はテレビで使用する気はなく、エアコンが使えればいいのでヤマダ電機のセット買ってみます。
上手くいったら照明も追加してみます。 >>805
エアコンの操作だけならラトックので間違いないと思うよ
余計な設定がほとんど必要ないのにほとんど自由自在に操作ができるよ
ただ、自分以外がhomeで操作するとvoice match関係でエラーがでることがあるから、家族も操作するなら注意だよ >>806
単身赴任の一人暮らしで使うので、その点は大丈夫です。
明日早速買ってきます! >>804
時刻指定ってできるの?
〜時間後ってのはできるのだけど >>811
リセット強く押しすぎるとはんだが取れてリセット出来なくなる
俺もなったけどつけ直したらリセット出来るようになった >>812
中開けたけど半田割れとかはなさそうなんだよなぁ
念のため半田盛ってみるか >>813
はんだの見えてる部分ショートさせてみ
リセットかかると思う
見た目じゃわからんかった >>814
それがかからないんだよね
もう壊れたと思ってあきらめるかなぁ
ふと動いてないことに気が付いて見てみたらランプが高速点滅していた
iPhoneのアプリで再設定しようと思って間違って5G AP設定したら低速点滅に
リセットしても低速点滅のまま
まぁあんまり使ってないから困るほどのことでもないけど >>804
Linux なんだから普通に cron に登録しておけ! >>804
ラズパイ使ってるならやろうと思えばやれるのでは?
GPIOに温湿度センサーでもつければいい。
691氏のシステムでどう拡張するのかはわからない。
node-redだとプログラミングレスでできる範囲。 iftttで午前5時とかの時間指定ってどういう記述になるんでしょうか? 時間指定のトリガーあるじゃん。迷う要素ないような気がするけど。 thisならDate&Timeが使える。
home経由で時刻指定するのは無理なんじゃないかな。 Date&Timeは15分刻みでしてか調整できないのどうにかならんかな
せめて5分刻みくらいで設定させて欲しい 時間指定するだけならihcのタイマー機能使った方が簡単では? 暖房(RM mini3)やら電気とも連携したいからIFTTTでないと一元管理が難しい。
broadlink-rmのwait機能で微調整できるけどあまり直感的でないし Node-RED Alexa Home Skill Bridgeの不可視な切断が多く、困っている。
ラズパイの再起動やnode-redを一部変えてデプロイで治るが不定期で厳しい。
Node-Red使ってる人はどう対策してるか教えてください。
スレ違いで申し訳ない。 >>790
続き。しつこくてすいません。
GoogleAppsScriptをちょっといじってみて、Gmailを扱えるサービスがあること
に気づき、それだったらIFTTTを使うのをやめて、GASだけで、Gmailでメールを
を受信したらメールのサブジェクトをSlack経由でGoogleHomeにしゃべらせれば
いいのではと思いつきました。
しかし、GASのトリガーに「メールが届いたら」というものがないことから、例
えば5分おきに定期実行するしかないにもかかわらず、GASにはメール読み書きの
回数制限があるためそんなに頻繁には実行できない。よって、トリガーとしては
やはりIFTTTを使うことにしました(IFTTTのGmail着信をトリガーに、GASであら
ためてメールをとって処理)。
IFTTTのGmailのingredientのSubjectの抽出にはどうやらバグがあって、例えば
「【honto】本日がご利用期限のクーポンがございます」というサブジェクトが
「【honto】本日がご利用期」で切れてしまうのですが(最初は自分のバグだと
思って悩んだが、IFTTTのActivityを見たらもうそこで切れてた)、GASのGmailApp
で取ってくればそんな問題もなし。
すでに読み上げたメールかどうか区別するため、読み上げ済のマークとしてメッ
セージにスターをつけるようにしたのがちょっとなあと思わないでもないですが、
メッセージ単位のマークが未読/既読とスターあり/なししかないので仕方がな
い。
届いたメールのサブジェクトをGoogleHomeでしゃべらせるのはこれで完了でしょ
うか。
このGASを使う方法はIFTTTのserviceやmyThingsのチャンネルにないことができ
そうで、夢が広がります。
とりあえず次は鉄道の遅延情報をしゃべらせますかね。 先の投稿に肝心のお礼を書くのを忘れました。
691さん、みなさん、ありがとう。 鉄道は遅延なんてしょっちゅう起きるから
運転見合わせだけ教えて欲しいんだよな 掃除の時にラズパイの電源引っこ抜いたらデータ壊れて最初からやり直しになってしもた
バックアップ本当に大事 >>694
どう考えても原因はルータ、いいやつに買い直せ Google Home買って初めてGPMを使い始めたんだけど、なんか痒いところに手が届かない仕様だな。
トップチャートとか、自動プレイリストにしてくれればいいのに、、と思いながら結局node.jsでトップチャートからプレイリストを生成するスクリプトを組んでしまった。
youtube musicでこのあたり綺麗になるといいんだけど。 >>828
少し横ですが、こちらはYahoo路線情報の遅延情報メールから必要な部分(路線と理由など)だけ抽出して喋らせてます。
IFTTTのgmail連携は15分インターバルらしいので、自宅のメールサーバーで処理してGoogleHomeNotifierのサンプルサーバーを叩くようにしちゃいました。ので汎用性低いです。
なお、この仕組み試行錯誤してる過程で、Notifierに?ip=やlanguage=のパラメータで喋らせるHomeや言語の指定が出来ることを知りました。
遅延情報をリビングと寝室の両方のHomeに喋らせるのに使ってます。 >>833
この「IFTTTのgmail連携は15分インターバル」というのは本当なのでしょうか?
体感的には到底信じられず、今試してみたのですが、IFTTTのthis Gmail、that Slackで、
6時53分0秒にメール送信したら、6時54分にはSlackへの投稿がなされ
(Slackの時刻表示には秒がないので細かいところはわからない)、
6時55分に送信したら、6時55分のうちにSlackへの投稿がなされました。
「最大で15分の遅延」ということらしいので、今回はたまたまかもしれませんが、
今まで試してきて、大抵1、2分のうちに反応があり、15分も遅延した
覚えはありません。
体感的には実用上問題ないので私はIFTTTのthisにGmailでいこうと思います。 >>836
1分毎に15回を2セットして遅延がなければいいんじゃない >>836
gmail連携15分の話は、ネット情報で見かけたものなので古い情報かもしれません。これを見て私は方向転換してしまったので、試してません。遅延は特に無いとの事なのでIFTTTのgmail連携の方がお手軽ですね。 iftttが落ちると動かないね
やっぱり〜
早く復旧しないかなー >>808 >>821
時刻を指定する機能を追加しました。
send [6時半] aircon:on
とすれば、6時半にエアコンを起動できます。
IFTTTで「エアコンを $ につけて」と設定すれば、
「エアコンを 6時半 につけて」にも、
「エアコンを 7時間後 につけて」にも対応できます。
定期的な操作にはIFTTTのDate&Timeを使い、
不定期な操作は音声で時刻を指定する、という使い分けがよいかと。
>>804
この記事の応用例として、
https://scrapbox.io/smart-home/WebAPI%E3%81%8B%E3%82%89hubot%E3%82%92%E6%93%8D%E4%BD%9C%E3%81%99%E3%82%8B
「朝6半時に、気温が10度以下なら、エアコンを起動する」方法を載せました。
>>818
Slackにメッセージを送るUNIXコマンドをhubotに登録すれば、自由に制御できます。
例えば、寒い時だけエアコンを起動するコマンド
cold.sh && bin/send.sh aircon:on
をhubotに登録すればOKです。 >>841
ktkr
これで6時にエアコン付けとくにはあと…とか考えなくて済むのか >>841
うわぁあ!!! ありがとうございます。
こういう組み合わせで行くんですね。
早速、試してみます。 MagicCube
明日Google Home対応するらしい googlehome も定形アクションに対応か。
暫くは英語だけのようだが。
マルチリンガルも楽しみだ さすがに現在のエアコンの設定温度を読み上げるのはムリだよな。
最後に設定した温度を覚えておいて読ませる手があるかもしれないが、その後1℃上げたりしたら分からなくなるし。 設定温度って一度設定したら変えないのが普通ちゃうんか >>851
便利かどうかはさておき、設定自体は簡単です。
ただし、hubot以外での温度操作までは把握できませんので、あしからず。
温度をメモするコマンドと、メモを喋るコマンドをhubotに登録。
command memo:temp echo '#' > temp
command say:temp bin/say.js "$(cat temp) 度です"
温度設定のIFTTTアプレットで温度をメモしておけば、「現在の暖房は?」でメモを喋ります。
「暖房 # 度」 → 「send ac:warm{{NumberField}} [0s] memo:temp({{NumberField}})」
「現在の暖房は」 → 「send say:temp()」
他の用途にも応用できそうなので、参考まで。 >>841
まさにこれを待ってたのでありがたい!
暖房を $
send [{{TextField}}] heater:on
ってIFTTTに登録すれば、
「暖房を[1時間後]」、「暖房を[5分後]」、「暖房を[6時50分]」の
全てに対応可能と思って大丈夫ですか? >>842
Sonoffの最新ファームにも対応してるの? かもしれません、って言ってんじゃん
頼ってばかりじゃなくて自分で試せばいい >>841
[{{TextField}}]の部分が5分後が5 分 後、9時半が9 時 半
という風に間にスペースが入ってしまい認識しないのですが対処法ありますか? うちの環境も確認したら例えば
homebot send [22 時 11 分] light:on
ってなっててwait レスポンス返ってなかったわ スペースをカットするコードを一行書くだけでしょうに・・・ https://scrapbox.io/smart-home/WebAPI%E3%81%8B%E3%82%89hubot%E3%82%92%E6%93%8D%E4%BD%9C%E3%81%99%E3%82%8B
に書いてある、
> IFTTTのGoogle Assistantトリガーを「エアコンを `$` につけて」にして、
> Slackに送るメッセージを `send [{{TextField}}] if:cold:ac:on()` にする。
では、9時半が、9 時 半になってダメってこと?
send.shの頭で、$1の半角スペースをsed等で消すコードを書き足す必要があるってこと? >>861
そこテキストフィールドだけど元々の文字列に半角スペース入ってるんではなくて? >>855
はい、1つのIFTTTアプレットで、その3つ全てに対応可能です。
ご要望があれば、お気軽に書き込んでくださいね。
実装できるかはさておき、利用者の声を直接聞けるのはありがたいです。
>>858 >>859 >>861
「新機能」なので、hubot-broadlink-rmを更新しないと使えませんよ。 >>863
691様ありがとうございます。
更新で無事にwaitが返ってきました! 気が早いけど、次スレのテンプレには691氏のサイトを入れないとね。 >>863
要望なのですが指定時刻を起点に時間の相対指定は実現できないでしょうか。
例えば「7:00に起きたい」と言ったら、
「6:30にエアコンがつき、6:45に電気がつき、7:00にアラームがなり、7:30に電気等が消える」
というような一連の流れを1コマンドにまとめられないでしょうか。
コマンド例)
send [{{TextField}}-30m] aircon:on [{{TextField}}-15m] hue:on
[{{TextField}}] Alarm [{{TextField}}+30] aircon:off hue:off >>573
今更だけど615より「Discoverされない問題」補足.
とりあえずウチのLAN環境の問題かどうか切り分けのために
ホスト:FMV-e8110 (捨ててあった2005年ころ(XP時代)のノートPC)
OS:Debian 9.3.0 i386(32bit)
で試してみた.途中で
$ sudo apt install -y npm
→E: パッケージ npm が見つかりません
となったが,
http://atomiyama.com/linux/page/debian-9-2-node-npm/
で対処してOK.これ以外は大体691氏のやり方で進み,ちゃんとDiscoverされた.
その後の手順でも特に問題はなく,あっさりエアコンのコントロールはできてしまった.うーん. >>866
「おっけーぐーぐる、6時半に朝のおつとめ」って言えばヨクナイ? >>867
broadlinkjs-rmのバージョンて、NGだったときと、今度の環境で同じ? >>841
指定時刻を間違えた場合にキャンセルする方法ってありますか >>841
IFTTT側の仕様なのでたぶんどうにもできないと思いますが、
1.暖房 $
2.出かける準備 $
3.出かける準備暖房付きで $
4.暖房付きで出かける準備 $
※いずれも$は時間指定
としたときに3と4は利用する方法ないですよね?
(3は2として動作、4は1として動作するため、
「出かける準備暖房付きで7時」とすると、
「$=暖房付きで7時」と認識される。 >>873
そのような曖昧な設定では、IFTTT以前に、人間でも区別できませんよね?
こんなのはどうですか?
1 暖房 $
2 出発 $
3 暖めつつ出発 $ >>873
1行目で結論出てんのに691氏に質問してどうすんだよと。
$使うと前方一致になるんだから前方一致にならないようにワード組み立ててればいいだけ。
例えば1,2,4で1を「暖房だけ」にワード変えれば$の前のワードが独立する。 試してないけど873の言う通りになるんだっけ?
4の文言だと1と4が両方起動されると思うんだけど。 >>866 >>870
時間を相対的に指定できるようにしました。
相対指定は [7時 - 30m] や [8時間後 - 30分] などと記述します。
例えば、「起床 7時」と言ったときに、7時の「30分前」から、
以下のような一連の操作を開始するには、
6:30 エアコンON
6:45 照明 ON
7:00 アラーム
7:30 エアコンOFF、照明OFF
次のようなメッセージを hubot に送ればOKです。
send [{{TextField}} - 30m] ac:on [15m] hue(on) [15m] alarm(on) [30m] ac:off hue(off)
なお、相対指定や時刻指定を記述できるのは、send の先頭の [ ] 内のみとしました。
これは、次のような設定ミスを防止するためです。
send [7:00] alarm(on) [6:30] ac:on [15m] hue(on) >>877
早速の対応ありがとうございます。
実行確認しました。
確かに最初の時間だけ対応できれば十分ですね ダイソーで売ってるBluetoothシャッターとマグネットスイッチ付きLEDライト組み合わせて窓とかドアの開閉を検知して691氏のシステム駆動できるようにできたわ
これで簡易セキュリティ構築できる
Bluetoothシャッターの電池の減りがやばそうだけど ■ このスレッドは過去ログ倉庫に格納されています