プラグインをインストールするのに「コンパイルして☆」なんてことをやらかそうか迷うわ
require 'websocket-client-simple'
してからこいつをrequireすると、なんと接続時のHTTPステータスコードが2xx系じゃない時はcloseしてくれるしコネクションがEOFしてきたときはcloseしてくれるしpingに対しては自動でpongしてくれるのです。
そんなわけで書いたモンキーパッチがこちらになります。 https://gist.github.com/cobodo/0c0f94855ed973fcc09903c673746a2b
EventMachineに依存していないwebsocket gemのwrapperとしてはwebsocket-client-simpleがあるがエラー処理があまりにも雑
まずEventMachineが複数並列に使うことに対して耐性がなく、faye-websocketを含むほとんどのwebsocket系gemが内部的にEventMachineに依存しているのが、mikutterでwebsocket対応しようとしたときの最大の罠なのではないかと思う。
輝夜月の隠し動画あるやん。
https://youtu.be/fMct5CC-BTo
実際複数アカウント対応でやるならWSは諦めないと辛い