ご家庭でFluentdパート2: Fluentdから家電をリモコン操作したいよね
AWS - ご家庭でFluentd - Qiita [キータ]の次として、Fluentdからr7kamura/iremocon · GitHubを利用して、http://i-remocon.com/をリモコン操作するためのプラグイン「fluent-plugin-iremocon」を作りつつあります。
とりあえずはリモコン操作できているものの、連続でリモコン操作しようとすると
emit transaction failed error_class=Net::OpenTimeout error=#<Net::OpenTimeout: timed out while opening a connection to the host>
などと怒られがちなので全く実用的ではありません*1。
このへんの問題を解決し、ご家庭でFluentdの一環として使えることを自宅で運用できたら、rubygems.orgにリリースしようと思います。
追記
@fukayatsu さんにアドバイスいただいたので試してみる。ありがとございます! https://twitter.com/fukayatsu/status/412986113158963200
更に追記
当初、http://i-remocon.com/hp/documents/IRM01L_command_ref.pdf のみを重視してたのだった。
3.2. KeepAliveについて
IRM-01Lでは、300秒の間、無通信状態が継続するとIRM-01L側から接続を切断します。
接続を継続したい場合には「4.2.1 [au]:接続確認用」などのコマンドを利用してKeepAliveを行ってくださ
い。
長く間があくこと、連続でくることの両方に対応しましょう。
*1:ストリーム処理がリモコン操作にそもそもフィットしないんじゃというのはさておき