min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

IFTTTで新しい条件を作成 → Google Home からラジコをエリアフリー再生する

東京から、福島のラジオを聴きたい。Google Homeはまだradikoのエリアフリーには対応していないからIFTTTを使って自作する

 

現状

・ラジコでエリアフリー会員になっている。

・RaspberryPi3 からラジコ(エリアフリー)を聴けるようになっている

・WebからRaspberryPiを操作できる機能を(phpで)実装している

  

なので、あとはIFTTTを使えば音声でラジコを再生できる。が、IFTTTはインターフェースにほんとセンスがない

 

新規のIF...That条件をどの画面から作成(create)するか、とても分かりにくい。こうやる。

 

まずはIFTTTのサイトにいく。

ifttt.com

 

右上のアカウントのアイコンをクリックして「create」を押して進む。

f:id:min117:20191124203537p:plain

 

これでやっと「If...That画面」に行ける

f:id:min117:20191124203625p:plain

この画面を探し出すのに小1時間かかった。最初にこの画面に行って欲しい。IFTTTなんだから。

 

出てきた画面から「Google」で検索して Google Assistant をクリックする

f:id:min117:20191124203720p:plain

 

Say a simple phrase で最もシンプルなIF...that命令を作る。

f:id:min117:20191124203858p:plain

 

「ねえGoogleふくしまFM」と話しかけたら「ふくしまFMを再生します」と返すように設定する。

f:id:min117:20191124204445p:plain

 

ちなみにFM局は無数にある。自作のラジオ再生アプリつくったときのアイコンを参照にする。

f:id:min117:20190512224426j:plain

min117.hatenablog.com

 

これで ifにGoogle assistant の条件が入ったので

f:id:min117:20191124204745p:plain

次は That にラジコ再生コマンド(RaspberryPiに投げるコマンド)を入れる

 

That をクリックした画面から「web」で検索して

f:id:min117:20191124204903p:plain

 

出てくる Webhooksから「Make a web request」 を使う

f:id:min117:20191124205010p:plain

 

URL欄は、自宅にあるRaspberryPi3 の外部ドメインで埋める。IFTTTのサーバからアクセスできるグローバルIPドメインである必要がある。

f:id:min117:20191124205945p:plain


リクエストを受けるradio3.php(自作)はRaspberryPi3のApacheで動いていて、引数にラジオ局を渡せば(エリアフリー接続で)ラジオを再生し、HDMI接続したテレビのスピーカーからラジオ音声を流してくれるようになっている。ふくしまFMは「FMF」で、引数として渡している。

min117.hatenablog.com

min117.hatenablog.com

 

条件作成を完了するところで「Finish」を押し忘れるとせっかくいれた条件が保存されない。このへんもIFTTTの画面の(冗長で)センスがないところ。

f:id:min117:20191124211806p:plain

 

f:id:min117:20191124211743p:plain

条件ができた。

 

使ってみる。

 

「ねえGoogleふくしまFM

f:id:min117:20180121094637j:plain

 

ふくしまFMを再生します」(テレビからラジオ音声が流れ始める)

f:id:min117:20191114231346j:plain

完璧。

 

RaspberryPi3にwebリクエストでコマンドを流し込める機能をいろいろと作ってきたおかげで、そのコマンドをIFTTT経由で音声で流すとほぼ無限にいろんなことができる。

 

ホントいつも思うけど、ソフトウェア開発って「つながっていく」。一回考えて、試して、作ったものは無駄にならない。次につながる。UNIX哲学の「ソフトウェアのテコ」というやつだ。ほんと素晴らしい。

 

いろいろ試す。

 

 

 

追記)

ちなみに Amazon Echoアレクサなら、IFTTTを使うまでもなくradikoエリアフリーに対応している。さすがアマゾンというべきか。

min117.hatenablog.com

min117.hatenablog.com