From 44fc73108ff46878e9ca392698eec4e88cb3ac0f Mon Sep 17 00:00:00 2001 From: czp Date: Tue, 13 Mar 2018 23:43:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=BC=B9=E5=B9=95=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E6=B5=81=E7=9A=84=E6=95=B0=E6=8D=AE=E5=8C=85=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=20ROOM=5FSHIELD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + .../ROOM_SHIELD.json | 11 +++ .../live/socket/entity/RoomShieldEntity.java | 67 +++++++++++++++++++ .../socket/event/RoomShieldPackageEvent.java | 9 +++ .../socket/handler/LiveClientHandler.java | 5 ++ 5 files changed, 93 insertions(+) create mode 100644 record/bullet_screen_stream_json/ROOM_SHIELD.json create mode 100644 src/main/java/com/hiczp/bilibili/api/live/socket/entity/RoomShieldEntity.java create mode 100644 src/main/java/com/hiczp/bilibili/api/live/socket/event/RoomShieldPackageEvent.java diff --git a/README.md b/README.md index 598c44d..26057ec 100644 --- a/README.md +++ b/README.md @@ -332,6 +332,7 @@ API 文档 | ReceiveDataPackageDebugEvent | 该事件用于调试, 收到任何 Data 数据包时都会触发 | | RoomAdminsPackageEvent | 收到 ROOM_ADMINS 数据包 | | RoomBlockMsgPackageEvent | 收到 ROOM_BLOCK_MSG 数据包 | +| RoomShieldPackageEvent | 收到 ROOM_SHIELD 数据包 | | RoomSilentOffPackageEvent | 收到 ROOM_SILENT_OFF 数据包 | | RoomSilentOnPackageEvent | 收到 ROOM_SILENT_ON 数据包 | | SendGiftPackageEvent | 收到 SEND_GIFT 数据包 | diff --git a/record/bullet_screen_stream_json/ROOM_SHIELD.json b/record/bullet_screen_stream_json/ROOM_SHIELD.json new file mode 100644 index 0000000..5df5508 --- /dev/null +++ b/record/bullet_screen_stream_json/ROOM_SHIELD.json @@ -0,0 +1,11 @@ +{ + "cmd": "ROOM_SHIELD", + "type": 1, + "user": [], + "keyword": [ + "暗号", + "摄像头", + "色相头" + ], + "roomid": 505447 +} diff --git a/src/main/java/com/hiczp/bilibili/api/live/socket/entity/RoomShieldEntity.java b/src/main/java/com/hiczp/bilibili/api/live/socket/entity/RoomShieldEntity.java new file mode 100644 index 0000000..cb0c28d --- /dev/null +++ b/src/main/java/com/hiczp/bilibili/api/live/socket/entity/RoomShieldEntity.java @@ -0,0 +1,67 @@ +package com.hiczp.bilibili.api.live.socket.entity; + +import com.google.gson.annotations.SerializedName; + +import java.util.List; + +public class RoomShieldEntity implements DataEntity { + /** + * cmd : ROOM_SHIELD + * type : 1 + * user : [] + * keyword : ["暗号","摄像头","色相头"] + * roomid : 505447 + */ + + @SerializedName("cmd") + private String cmd; + @SerializedName("type") + private int type; + @SerializedName("roomid") + private long roomid; + @SerializedName("user") + private List user; + @SerializedName("keyword") + private List keyword; + + @Override + public String getCmd() { + return cmd; + } + + public void setCmd(String cmd) { + this.cmd = cmd; + } + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + public long getRoomid() { + return roomid; + } + + public void setRoomid(long roomid) { + this.roomid = roomid; + } + + public List getUser() { + return user; + } + + public void setUser(List user) { + this.user = user; + } + + public List getKeyword() { + return keyword; + } + + public void setKeyword(List keyword) { + this.keyword = keyword; + } +} diff --git a/src/main/java/com/hiczp/bilibili/api/live/socket/event/RoomShieldPackageEvent.java b/src/main/java/com/hiczp/bilibili/api/live/socket/event/RoomShieldPackageEvent.java new file mode 100644 index 0000000..5763cc0 --- /dev/null +++ b/src/main/java/com/hiczp/bilibili/api/live/socket/event/RoomShieldPackageEvent.java @@ -0,0 +1,9 @@ +package com.hiczp.bilibili.api.live.socket.event; + +import com.hiczp.bilibili.api.live.socket.entity.RoomShieldEntity; + +public class RoomShieldPackageEvent extends ReceiveDataPackageEvent { + public RoomShieldPackageEvent(Object source, RoomShieldEntity entity) { + super(source, entity); + } +} diff --git a/src/main/java/com/hiczp/bilibili/api/live/socket/handler/LiveClientHandler.java b/src/main/java/com/hiczp/bilibili/api/live/socket/handler/LiveClientHandler.java index 6c2aba7..046dee4 100644 --- a/src/main/java/com/hiczp/bilibili/api/live/socket/handler/LiveClientHandler.java +++ b/src/main/java/com/hiczp/bilibili/api/live/socket/handler/LiveClientHandler.java @@ -187,6 +187,11 @@ public class LiveClientHandler extends SimpleChannelInboundHandler { eventCreationExpression = () -> new PreparingPackageEvent(this, GSON.fromJson(jsonObject, PreparingEntity.class)); } break; + //房间屏蔽 + case "ROOM_SHIELD": { + eventCreationExpression = () -> new RoomShieldPackageEvent(this, GSON.fromJson(jsonObject, RoomShieldEntity.class)); + } + break; default: { LOGGER.error("Received unknown json below: \n{}", formatJson(jsonObject)); eventCreationExpression = () -> new UnknownPackageEvent(this, jsonObject);