2022年2月頭に仕様変更がありました。
メッセージの暗号化、復号化のロジックをここにベタで書くとオイコラされそうなのでやめておきます
以下は過去の仕様に則ったもの
コメントビューア用。
OAuthが要るようなAPIは使わず、未登録で取得できるコメントを取得。
あくまで執筆時点の情報です。仕様が変わる可能性もあるのであしからず。
ユーザのチャンネルURL
-
https://www.mildom.com/{ユーザID}
- 例:
https://www.mildom.com/10946091
- 例:
手順
- 以下にWebSocket接続
wss://jp-room1.mildom.com/?roomId={ユーザID}
- メッセージ送受信
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,
// 省略
}