def
send_msg(ws):
a
=
base64.b64decode(
'Mzo6OgAAAAEf'
)
enter
=
{
"sid"
: "
", "
rid
": str(room_id), "
userid
": "
0
",
"brand"
:
"Redmi Note 8"
,
"cores"
:
8
,
"memory"
:
5638
,
"screen"
:
1080
,
"trid"
:
666
,
"re_enter"
:
1
,
"true_ip"
:
"210*12*195*3"
,
"sktime"
:
1622114102
,
"sign"
: sign,
"version_code"
:
507
,
"is_intl_pack"
:
"0"
,
"channel"
:
"9700288"
,
"client_code_version"
:
"23"
,
"client_side"
:
2
,
"sys_sdk"
:
29
,
"country_code"
:
"CN"
,
"pkg_channel"
:
"9700288"
,
"is_market"
:
"1"
,
"timestamp"
:
1622114101589
}
ws.send(a
+
bytes(
'sioconnector.entryHandler.enter'
+
json.dumps(enter), encoding
=
'utf8'
))
b
=
base64.b64decode(
'Mzo6OgAAAAIc'
)
ws.send(b
+
bytes(
'chat.chatHandler.getTopThree'
+
json.dumps({
"timestamp"
:
1622113988470
}), encoding
=
'utf8'
))
c
=
base64.b64decode(
'Mzo6OgAAAAMj'
)
ws.send(c
+
bytes(
'chat.chatHandler.checkUserStatusMix'
+
json.dumps({
"uid"
:
"0"
,
"timestamp"
:
1622113988484
}),
encoding
=
'utf8'
))
d
=
base64.b64decode(
'Mzo6OgAAAAQg'
)
ws.send(d
+
bytes(
'chat.chatHandler.getAnchorCdnMix'
+
json.dumps({
"timestamp"
:
1622113988496
}),
encoding
=
'utf8'
))
e
=
base64.b64decode(
'Mzo6OgAAAAcg'
)
ws.send(e
+
bytes(
'chat.chatHandler.getGuardinfo'
+
json.dumps({
"timestamp"
:
1622113988496
}),
encoding
=
'utf8'
))
f
=
base64.b64decode(
'Mzo6OgAAAAYd'
)
ws.send(f
+
bytes(
'chat.chatHandler.onlineGoldPhone'
+
json.dumps({
"timestamp"
:
1622113988496
}),
encoding
=
'utf8'
))
while
1
:
ws.send(b
'2::'
)
sleep(
1
)
def
on_open(ws):
print
(
'on_open'
, ws)
threading.Thread(target
=
send_msg, args
=
(ws,)).start()
def
on_message(ws, message):
print
(message)
message
=
message[
len
(
'3:::'
):]
print
(
'on_message'
, message)
def
on_close(ws, close_status_code, close_reason):
print
(
'on_close'
, ws, close_status_code, close_reason)
def
start_websocket(chat_url, token):
ws
=
websocket.WebSocketApp(
f
"ws://{chat_url}/socket.io/1/websocket/{token}"
,
on_message
=
on_message,
on_open
=
on_open,
on_close
=
on_close
)
ws.run_forever()