2
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

GoogleHomeでVolumioを操作〜ngrokからREST編〜

Last updated at Posted at 2018-11-08

概要とVolumioについて

  • GoogleHomeで音楽聞くのはいいけど,無料だとspotifyしかないし,CDや他のストアで買った音楽が聞けない
  • また,お気に入り(自作)のスピーカーで聞きたいけどBluetooth機能なんてない
  • PCをスピーカーにつなげるのでもいいけど...

そんなときは,ラズパイにVolumioを入れるのがおすすめです
https://volumio.org/

Volumioには色々な機能があり,AirPlayに対応していたり,自宅nasにある音楽ファイルを再生できたり,プラグインを追加するとyoutube(音だけですが)が聞けたりします
そして今回はそのVolumioをGoogleHomeで操作してみようということです

Volumioには,元からAPIがwebsocketやRESTなどで公開されています
今回はそのRESTの方を使います

ngrokについて

https://ngrok.com/
https://qiita.com/mininobu/items/b45dbc70faedf30f484e

自宅のラズパイなどを外からアクセスできるようにしてくれるすごいやつ
GoogleHomeとラズパイの連携にfirebaseを用いるのをよく見かけますが,今回はRESTということで,もっと単純にできるかもっということで利用してみます

アプリケーション構成

googleHome -> ifttt,webhook -> ngrok,raspberryPi(volumio REST API)
スライド1.png

ngrokの設定

ngrokは有料版もあるのですが,今回は全部無料で

  1. https://ngrok.com/ にログイン
  2. Linux (ARM) をダウンロード
  3. ダウンロードしたものを解凍し,ラズパイに移す(ftpやusbメモリを利用してなど)
  4. /usr/local/binにファイルを移動(mvコマンドなどで)
  5. さっきログインした画面の3番目のコマンドを実行(ngrok authtoken 〜)
  6. nohup ngrok http 3000 & を実行(volumioのplayback画面がポート番号が3000のため)
  7. curl localhost:4040/status | grep ngrok.io を実行
  8. 出力されたログの中のURLを控えておく(http://〇〇.ngrok.io)

iftttの設定

  1. https://ifttt.com/ にログイン
  2. google asisstantで例えば「ラズパイで再生」といったら(volumioの単語は認識が悪かったでした)
  3. webhookで
    • URL:さっき控えたurl + /api/v1/commands/?cmd=play
    • Method : GET
    • Content Type: application/x-www-form-urlencoded(関係なし)
    • Body : 空

Screenshot_2018-11-09 IFTTT.png

# 実行!!
これで一旦Volumioにキューを追加しておいて,
GoogleHomeに向かって「ok google! ラズパイで再生」で再生されるはずです
もしVolumioを再起動などさせた場合URLが変わってしまうので[ngrok]項目の6,7と[ifttt]の3のurlの変更をしてもらえればと思います
ngrok有料版だと控えたURLのサブドメインの部分を指定できるっぽいので,楽ですね

その他,参考サイト

https://volumio.github.io/docs/API/REST_API.html
http://netbuffalo.doorblog.jp/archives/4974284.html
https://hakengineer.xyz/2017/11/15/post-629/

2
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?