2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【現行版未対応】Mildomのチャット取得

Last updated at Posted at 2020-07-26

2022年2月頭に仕様変更がありました。
メッセージの暗号化、復号化のロジックをここにベタで書くとオイコラされそうなのでやめておきます

以下は過去の仕様に則ったもの

コメントビューア用。
OAuthが要るようなAPIは使わず、未登録で取得できるコメントを取得。
あくまで執筆時点の情報です。仕様が変わる可能性もあるのであしからず。

ユーザのチャンネルURL

  • https://www.mildom.com/{ユーザID}
    • 例: https://www.mildom.com/10946091

手順

  1. 以下にWebSocket接続
  • wss://jp-room1.mildom.com/?roomId={ユーザID}
  1. メッセージ送受信
send
{
    /** ユーザID。 */
    "userId": 0,
    /** ユーザレベル。 */
    "level": 1,
    /** ユニークなID。guest766863みたいな。 */
    "userName": string,
    /** ユニークなID */
    "guestId": string,
    /** リファラ */
    "nonopara": string,
    /** ユーザID */
    "roomId": number,
    /** コマンド。ここでは固定 */
    "cmd": "enterRoom",
    "reConnect": 0,
    "nobleLevel": 0,
    "avatarDecortaion": 0,
    "enterroomEffect": 0,
    "nobleClose": 0,
    "nobleSeatClose": 0,
    "reqId": 1
}

以降はメッセージが送られてくる。cmdがメッセージ種別。

cmd 内容
enterRoom 最初に受信する。チャットに入ったことを表す。
onBroadcast 規約文のメッセージが入ってる。
onAdd 不明。
他のユーザが入ってきた時のような気もする。
onChat コメント
  • enterRoom
receive
{"admin": 0, "cmd": "enterRoom", "fobiddenGlobal": 0, "forbidden": 0, "reqId": 1, "rst": 0, "type": 2, "userCount": 590}
  • onChat
receive
{
  /** メッセージの種別 */
  "cmd": "onChat"
  /** メッセージ */
  "msg": string,
  /** メッセージID */
  "msgId": string,
  /** ユーザID */
  "userId": number,
  /** アイコン画像のURL */
  "userImg": string,
  /** ユーザ表示名 */
  "userName": string,
  // 省略
}
2
2
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?