ツール側から見たニコ生運営コメントの挙動まとめ
NicoLive Helperで対処しているものも含めて、ツール作る上で対策が必要になってくる、ニコ生の不思議な挙動をリストアップ(ただし気づいた範囲で)。
メンテのたびにサーバ側挙動も変わるので、解決されてたり、不具合再発したり、仕様が戻ったり変わったりします。
1. 主コメが配信されない
パターン1:
主コメを送信する→status=okの応答がある→でもクライアントに主コメが配られませんが…。たまに一部リスナーにだけ送られていることもあったりした気が。
通常コメントの場合気にしなくておk。オートコンプリートによって発言履歴が補完できるし。
パターン2:
/playを送信する→status=okの応答がある→でもコマンドが配信されません!→しかし不思議なことに、たまに再生開始したことになっている場合があり、getplayerstatusを見ると確かに再生していることになっている。
この時ページをリロードすると確かに動画が再生される。
NicoLiveHelperの場合、タイムアウト待ち。
2. 主コメに失敗する
status=error が返る。
パターン1:
/playする動画が生放送での引用を拒否している場合。
引用できるかどうかをチェックするためにニコ生→ニコ動にアクセスし、その応答によって、status=errorにしているのだと思う。
パターン2:
/playする動画が、引用拒否していない場合。
引用拒否チェックにニコ動に問い合わせをするが、サーバ間負荷が高いなどで応答がタイムアウトやエラーになった場合、引用拒否動画でなくてもstatus=errorを返しているのだと思われる。
パターン3:
プログラムのバグなど。修正しる!
引用拒否なのかどうか判断できないので、NicoLiveHelperの場合とりあえずリトライしておく。
経験的にstatus=errorになった主コメはクライアントに配信されることはなし。
こんな感じ。