1
1

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 3 years have passed since last update.

Sonosを操作するツールを調べてみた。

Last updated at Posted at 2019-10-05

Sonosとは?

米国サンタバーバラ生まれのワイヤレスホームサウンドシステムです。
https://www.sonos.com/ja-jp/home

Sonos One?

Alexa / Google両対応の高音質スマートスピーカーです。

Sonos App?

iPhoneアプリとMacデスクトップアプリを試してみました。どちらも迷うことなく利用できました。同じネットワークにつながっていれば、どのデバイスからも操作できるのは良いですね。接続方式にBluetoothではなくWi-Fiを使用している利点ですね。

Sonos公式(開発者向け情報)

Sonos Developer
https://developer.sonos.com/build/
Sonos Labs
https://musicpartners.sonos.com/?q=docs

Node-REDから操作する

同じネットワークにつながっていればどのデバイスからも操作できるということは、プログラムからも操作できるということです。Node-REDから操作するために「メニュー」→「パレット管理」→「ノードを追加」から「sonos」で検索するといくつかリストアップされます。

node-red-contrib-better-sonos

サンプルフローが掲載されているので、「メニュー」→「読み込み」→「クリップボード」から貼り付けます。Dashboard機能を利用しているので、ブラウザから操作します。
https://proknx.com/nodered/sound-ui-sonos/

2019-10-05 23.45.54.png 2019-10-05 23.45.12.png

node-red-contrib-sonos-plus

WiKiのページにサンプルフローが掲載されているので、「メニュー」→「読み込み」→「クリップボード」から貼り付けて試してみると理解し易いです。

https://github.com/hklages/node-red-contrib-sonos-plus/wiki/A.-Nodes-and-Commands
2019-10-05 9.49.17.png

https://github.com/hklages/node-red-contrib-sonos-plus/wiki/B.-How-To-and-Examples
2019-10-05 22.05.33.png

Config Nodeの設定は新規に追加する際にSonosのSerial NumberとIPアドレスの情報が必要ですが、虫眼鏡ボタンを押して暫く待つと、同じネットワーク内に存在するSonosをディスカバリーしてくれるので、目的のSonos情報を選択します。
2019-10-05 9.01.35.png

https://github.com/hklages/node-red-contrib-sonos-plus/wiki/C.-SONOS-Concept
現在再生している音楽を一時中断して割り込み再生できるNotificationの機能が面白いと思いました。

node-red-contrib-sonospollytts

https://aws.amazon.com/jp/polly/
AWSアカウントでログインし、IAM Management ConsoleでAmazonPollyFullAccessポリシーを適用したユーザーを登録します。登録した際に作成されるアクセスキーとシークレットキーをsonospollyttyノードのプロパティで設定します。Pollyの日本語音声は女性(Mizuki)と男性(Takumi)から選べますが、ノードのプロパティで選択できるのは女性(Mizuki)のみでした。

2019-10-05 21.26.37.png 2019-10-05 21.34.56.png

コマンドラインツール

その他のツール

IoTでおなじみのMQTT経由でSonosをコントロールするブリッジツールやブラウザからSonosをコントロールするツールもありました。

sonos2mqtt

# sonos2mqttモジュールのインストール
$ npm install -g sonos2mqtt

# 起動
# 例. mqtt://<ユーザー名>:<パスワード>@broker.shiftr.io
$ sonos2mqtt -v debug -u <MQTTブローカーサーバ>

https://github.com/svrooij/sonos2mqtt#usage
使用方法はトピックで制御する仕様のようです。(メッセージペイロードは空でOK)
2019-10-05 23.10.54.png

sonos-web

# sonos-web-cliモジュールのインストール
$ npm install -g sonos-web-cli

# インストール(インストール後に起動される)
$ sonos-web install
Installing Sonos Web
✔ downloading installation files
✔ installing front-end dependencies
✔ build front-end application
✔ install back-end dependencies
✔ cleaning up installation files
✔ Starting Sonos Web

success Open a web browser on this computer to http://localhost:5050 to start!
You can access Sonos Web network-wide by going to http://192.168.13.4:5050

# 起動
$ sonos-web start
✔ Starting Sonos Web

success Open a web browser on this computer to http://localhost:5050 to start!
You can access Sonos Web network-wide by going to http://192.168.13.4:5050

# 停止
$ sonos-web stop
✔ Stopping Sonos Web

ブラウザから http://localhost:5050 へアクセスします。

Arduino から Sonos を操作するライブラリ

ジャケ写表示対応 ( https://github.com/kitazaki/sonos/blob/master/examples/Sonos_Controller_M5Stack_2 ) M5StickC 対応 ( https://github.com/kitazaki/sonos/tree/master/examples/Sonos_Controller_M5StickC )

まとめ

Sonosとの音楽ライフがさらに充実すれば幸いです。

1
1
0

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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?