MultiCommentViewer
MultiCommentViewer copied to clipboard
ローカルホストで動作する、コメント取得用APIサーバー実装
MultiCommentViewerと連携させてコメント一覧を取得するには、現状プラグインが必須となります。ただMultiCommentViewer自体がC#で書かれており、何らかの事情で他言語で書かれたプログラムから連携させたくなったときなど、新しく言語を勉強してプラグインを開発する必要があるためかなりの手間が生じます。
ローカルホストの特定ポートで動作するAPIサーバーを実装することによって、これらの負荷を軽減できる上にユーザー側からみても操作が簡潔になります。
処理の流れ
MultiCommentViewer側の処理
- MultiCommentViewerが起動する。
- 起動処理の中で、設定に記載された特定ポートにて自動的にウェブソケットサーバーが起動する。ポートがブロックされていた場合は何もしない。
連携するプログラムでの処理
- MultiCommentViewerと連携するプログラムを起動する。
- MultiCommentViewerが起動するウェブソケットサーバーの、デフォルトポートに接続を試みる。
- 接続が完了すると、ウェブソケットサーバーを介してコメントデータが配信される。
データフォーマット
より多くの言語にサポートされているデータフォーマットを使用することがAPIサーバーとしてはふさわしいため、JSONを使うことを提案します。
JSONのフォーマットに関しては現状具体的な案が決まっているわけではありませんが、一例として以下のようなフォーマットを提案させていただきます。
{
"id": "ブロードキャストID(複数同時視聴の場合に、これらの値でどの配信からのコメントかを判断する。ランダムな値)",
"name": "ユーザー名",
"body": "コメント内容",
"type": "配信の種類(例えばYouTubeなら「youtube」など)",
"extra": {
// 各プラットフォーム特有のデータが入る。
}
}