活動記録の続き。完成していません。
sangoでconnectionが残る問題
- WebSocket上だとkeepalive指定があってもsangoにconnectionが残ることがある
- 次回deployで修正予定らしい
- connect中にPCをスリープにしてネットワークを切断するか切り替えるかで発生した
- 具体的には、電車の中でつないでて、電車降りて(スリープ)、家帰って(ネットワーク切り替え)Dashboard見たら起きてた
- 一応beforeunloadイベントでdisconnectする実装を入れたけど、 ブラウザ閉じなくても起きるので、この問題には無意味だった。
- 世のWebSocket対応MQTT Brokerは対応しているのだろうか?
疎通確認
- PC上のmqttcliからsangoを通してブラウザでsubscribeしたメッセージを見るところまできた
-d
付けるとBroker URI: %stcp://free.mqtt.shiguredo.jp:1883
と%s
が余計に表示される- mqttcli/mqtt.go at master · shirou/mqttcli · GitHub のぱっと見では起きそうにないんだけどな・・・
- 次はRaspberry Piからpublishしたい
- goの環境を作らなくては
追記
- mqttcli は修正済みでした
go get -u github.com/shirou/mqttcli mqttcli pub -t "ledsun@github/test" -d -m "yoyo" INFO[0000] Broker URI: tcp://free.mqtt.shiguredo.jp:1883 INFO[0000] Connecting... INFO[0000] Connected INFO[0000] Topic: ledsun@github/test INFO[0000] Published
- sangoも対応版をdeploy済み出そうです。
- この対応の早さたるや!mowsはいつPull Requestに反応してくれるのだろう・・・