Nature Remoが届いたけどiOSがないのでMacだけで四苦八苦した話

クラウドファンディングで出資していたNature Remoが届きました!当初は12月お届け予定でしたが待つこと半年、突然Amazonから届きました。ただしクラウドファンディングの醍醐味はまだまだこれからでした…。

Android版アプリはまだ製作中?

Androidアプリはまだ製作中でした。Nature Remoはスマホアプリがないと初期設定ができないんですね…。一週間ほどで公開できるようですが、ただ白い箱を眺めているわけにもいかないのでどうにかならないかと試行錯誤します。届くまでの半年は待てたのに届いてからの一週間は待てない不思議。

IRKitのapiと互換性

調べてみるとどうやらIRKitと同じapiが使えるようです。IRKitは所持していませんが、こちらはスマホがなくても初期設定が可能な様子。試してみましょう。

まずはNature Remo自身が接続されるWiFiアクセスポイントを教えてやらねばなりません。
IPアドレスはNature Remo自身がWiFiアクセスポイントになっているため、WiFiで接続してシステム環境設定のネットワークに書いてあります。

IRKitのapiについてはこちらに。
IRKit – Open Source WiFi Connected Infrared Remote Controller

$ curl -i "http://192.168.4.2/wifi" -H "X-Requested-With: curl"-d 'シリアライズ化したWiFiアクセスポイント情報'
curl: (7) Failed to connect to 192.168.4.2 port 80: Connection refused

port 80は拒否されてしまいます。どうやらNature RemoのapiはIRKitと完全互換ではない様子。

では、Nature Remoで空いているポートを探してみましょう。ネットワークユーティリティというアプリの”Portscan”という機能で確認してみます。

空いているポートを指定して再度POSTを投げます。

$ curl -i "http://192.168.4.2:3689/wifi" -H "X-Requested-With: curl" -d 'シリアライズ化したWiFiアクセスポイント情報'
HTTP/1.1 400 Bad Request
Date: Mon, 22 May 2017 13:40:33 GMT
DAAP-Server: iTunes/12.6.1.25 (OS X)
Content-Type: application/x-dmap-tagged
Content-Length: 0
$ curl -i "http://192.168.4.2:57132/wifi" -H "X-Requested-With: curl" -d 'シリアライズ化したWiFiアクセスポイント情報'
curl: (52) Empty reply from server

DAAPってなんだろうと調べてみたらiTunesをローカルネットワーク上で聞くためのプロトコル?将来AlexaでiTunesが聞けるようになったりするんでしょうか。

もう一つのポートも何も反応がなく、文系SEにはここが限界です。そうこうしているうちにAndroidアプリが公開されました…。
初期設定以外のapiについては動作報告もあるようなので今度はそちらを試してみようと思います。