mirror of
https://github.com/lkeme/BiliHelper-personal.git
synced 2025-12-19 17:40:07 +08:00
[fix] AloneTcpClient
This commit is contained in:
parent
15bb434c1b
commit
2b45dc46c0
@ -185,24 +185,102 @@ class ZoneTcpClient
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
$data = [];
|
$data = [];
|
||||||
|
$update_room = false;
|
||||||
switch ($de_raw['cmd']) {
|
switch ($de_raw['cmd']) {
|
||||||
case 'TV_START':
|
case 'TV_START':
|
||||||
// 小电视
|
// 小电视飞船(1)
|
||||||
|
$data = [
|
||||||
|
'room_id' => self::$room_id,
|
||||||
|
'raffle_id' => $de_raw['data']['id'],
|
||||||
|
'raffle_title' => $de_raw['data']['title'],
|
||||||
|
'raffle_type' => 'small_tv',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
break;
|
break;
|
||||||
case 'RAFFLE_START':
|
case 'SPECIAL_GIFT':
|
||||||
// 活动礼物
|
// 节奏风暴(1)
|
||||||
break;
|
if (array_key_exists('39', $de_raw['data'])) {
|
||||||
case 'LOTTERY_START':
|
if ($de_raw['data']['39']['action'] == 'start') {
|
||||||
// 抽奖
|
$data = [
|
||||||
break;
|
'room_id' => self::$room_id,
|
||||||
case 'PK_LOTTERY_START':
|
'raffle_id' => $de_raw['data']['39']['id'],
|
||||||
// 乱斗
|
'raffle_title' => '节奏风暴(1)',
|
||||||
|
'raffle_type' => 'storm',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'GUARD_LOTTERY_START':
|
case 'GUARD_LOTTERY_START':
|
||||||
// 舰长
|
// 舰长(1)
|
||||||
|
$data = [
|
||||||
|
'room_id' => $de_raw['data']['roomid'],
|
||||||
|
'raffle_id' => $de_raw['data']['id'],
|
||||||
|
'raffle_title' => '总督舰长(1)',
|
||||||
|
'raffle_type' => 'guard',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
break;
|
break;
|
||||||
case 'ALL_MSG':
|
case 'GUARD_MSG':
|
||||||
// 未知
|
// 舰长(2)
|
||||||
|
// {"buy_type":3,"cmd":"GUARD_MSG","msg":":?淩白夜:? 在本房间开通了舰长"}
|
||||||
|
$data = [
|
||||||
|
'room_id' => self::$room_id,
|
||||||
|
'raffle_id' => self::$raffle_id++,
|
||||||
|
'raffle_title' => '总督舰长(2)',
|
||||||
|
'raffle_type' => 'guard',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
|
break;
|
||||||
|
case 'LOTTERY_START':
|
||||||
|
// 舰长(3)
|
||||||
|
$data = [
|
||||||
|
'room_id' => $de_raw['data']['roomid'],
|
||||||
|
'raffle_id' => $de_raw['data']['id'],
|
||||||
|
'raffle_title' => '总督舰长(3)',
|
||||||
|
'raffle_type' => 'guard',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
|
break;
|
||||||
|
case 'ANCHOR_LOT_START':
|
||||||
|
// 天选时刻(1)
|
||||||
|
$data = [
|
||||||
|
'room_id' => $de_raw['data']['room_id'],
|
||||||
|
'raffle_id' => $de_raw['data']['id'],
|
||||||
|
'raffle_title' => '天选时刻(1)',
|
||||||
|
'raffle_type' => 'anchor',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
|
break;
|
||||||
|
case 'PK_LOTTERY_START':
|
||||||
|
// PK大乱斗(1)
|
||||||
|
$data = [
|
||||||
|
'room_id' => $de_raw['data']['room_id'],
|
||||||
|
'raffle_id' => $de_raw['data']['id'],
|
||||||
|
'raffle_title' => 'PK大乱斗(1)',
|
||||||
|
'raffle_type' => 'pk',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
|
break;
|
||||||
|
case 'PK_BATTLE_END':
|
||||||
|
// PK大乱斗(2)
|
||||||
|
$data = [
|
||||||
|
'room_id' => self::$room_id,
|
||||||
|
'raffle_id' => $de_raw['pk_id'],
|
||||||
|
'raffle_title' => 'PK大乱斗(2)',
|
||||||
|
'raffle_type' => 'pk',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
|
break;
|
||||||
|
case 'RAFFLE_START':
|
||||||
|
// 高能抽奖(1)
|
||||||
|
$data = [
|
||||||
|
'room_id' => self::$room_id,
|
||||||
|
'raffle_id' => $de_raw['data']['id'],
|
||||||
|
'raffle_title' => $de_raw['data']['title'], // 高能抽奖(1)
|
||||||
|
'raffle_type' => 'raffle',
|
||||||
|
'source' => $msg
|
||||||
|
];
|
||||||
break;
|
break;
|
||||||
case 'NOTICE_MSG':
|
case 'NOTICE_MSG':
|
||||||
$msg_type = $de_raw['msg_type'];
|
$msg_type = $de_raw['msg_type'];
|
||||||
@ -227,46 +305,43 @@ class ZoneTcpClient
|
|||||||
'raffle_type' => 'raffle',
|
'raffle_type' => 'raffle',
|
||||||
'source' => $msg
|
'source' => $msg
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'GUARD_MSG':
|
case 'DANMU_GIFT_LOTTERY_START':
|
||||||
$data = [
|
// 弹幕抽奖(1)
|
||||||
'room_id' => $de_raw['roomid'],
|
// $data = [
|
||||||
'raffle_id' => self::$raffle_id++,
|
// 'room_id' => $de_raw['data']['room_id'],
|
||||||
'raffle_title' => '总督舰长',
|
// 'raffle_id' => $de_raw['data']['id'],
|
||||||
'raffle_type' => 'raffle',
|
// 'raffle_title' => $de_raw['data']['title'],
|
||||||
'source' => $msg
|
// 'raffle_type' => 'raffle',
|
||||||
];
|
// 'source' => $msg
|
||||||
|
// ];
|
||||||
break;
|
break;
|
||||||
case 'SPECIAL_GIFT':
|
case 'PREPARING':
|
||||||
if (array_key_exists('39', $de_raw['data'])) {
|
// 房间内下播消息。
|
||||||
if ($de_raw['data']['39']['action'] == 'start') {
|
$update_room = true;
|
||||||
$data = [
|
|
||||||
'room_id' => $de_raw['roomid'],
|
|
||||||
'raffle_id' => self::$raffle_id++,
|
|
||||||
'raffle_title' => '节奏风暴',
|
|
||||||
'raffle_type' => 'raffle',
|
|
||||||
'source' => $msg
|
|
||||||
];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case 'SYS_GIFT':
|
case 'CUT_OFF':
|
||||||
/**
|
// 房间内被下播消息。
|
||||||
* 系统礼物消息, 广播
|
$update_room = true;
|
||||||
*/
|
|
||||||
break;
|
break;
|
||||||
case 'SYS_MSG':
|
case 'WARNING':
|
||||||
/**
|
// 房间内管理员警告消息。
|
||||||
* 系统消息, 广播
|
$update_room = true;
|
||||||
*/
|
|
||||||
break;
|
break;
|
||||||
// TODO 支持更多消息类型
|
|
||||||
default:
|
default:
|
||||||
$data = [];
|
$data = [];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
// 下播处理
|
||||||
|
if ($update_room) {
|
||||||
|
self::triggerReConnect([
|
||||||
|
'area_id' => self::$area_id,
|
||||||
|
'wait_time' => time()
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
// 处理数据
|
||||||
if (!empty($data)) {
|
if (!empty($data)) {
|
||||||
unset($data['source']);
|
unset($data['source']);
|
||||||
if (!isset(self::$raffle_list[$data['raffle_type']])) {
|
if (!isset(self::$raffle_list[$data['raffle_type']])) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user