mirror of
https://github.com/SocialSisterYi/bilibili-API-collect.git
synced 2025-01-27 12:20:09 +08:00
100 lines
2.0 KiB
Protocol Buffer
100 lines
2.0 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package bilibili.broadcast.message.im;
|
|
|
|
import "google/protobuf/empty.proto";
|
|
|
|
//
|
|
service Notify {
|
|
//
|
|
rpc WatchNotify(google.protobuf.Empty) returns (stream NotifyRsp);
|
|
}
|
|
|
|
//
|
|
enum PLType {
|
|
//
|
|
EN_PAYLOAD_NORMAL = 0;
|
|
//
|
|
EN_PAYLOAD_BASE64 = 1;
|
|
}
|
|
|
|
//
|
|
enum CmdId {
|
|
// 非法cmd
|
|
EN_CMD_ID_INVALID = 0;
|
|
// 服务端主动发起
|
|
EN_CMD_ID_MSG_NOTIFY = 1;
|
|
//
|
|
EN_CMD_ID_KICK_OUT = 2;
|
|
}
|
|
|
|
//
|
|
message NotifyRsp {
|
|
//
|
|
uint64 uid=1;
|
|
// 命令id
|
|
uint64 cmd=2;
|
|
//
|
|
bytes payload=3;
|
|
//
|
|
PLType payload_type=4;
|
|
}
|
|
|
|
//
|
|
message Msg {
|
|
// 发送方uid
|
|
uint64 sender_uid = 1;
|
|
// 接收方类型
|
|
int32 receiver_type = 2;
|
|
// 接收方id
|
|
uint64 receiver_id = 3;
|
|
// 客户端的序列id 用于服务端去重
|
|
uint64 cli_msg_id = 4;
|
|
// 消息类型
|
|
int32 msg_type = 5;
|
|
// 消息内容
|
|
string content = 6;
|
|
// 服务端的序列号
|
|
uint64 msg_seqno = 7;
|
|
// 消息发送时间(服务端时间)
|
|
uint64 timestamp = 8;
|
|
// at用户列表
|
|
repeated uint64 at_uids = 9;
|
|
// 多人消息
|
|
repeated uint64 recver_ids = 10;
|
|
// 消息唯一标示
|
|
uint64 msg_key = 11;
|
|
// 消息状态
|
|
uint32 msg_status = 12;
|
|
// 是否为系统撤销
|
|
bool sys_cancel = 13;
|
|
// 是否是多聊消息 目前群通知管理员的部分通知属于该类消息
|
|
uint32 is_multi_chat = 14;
|
|
// 表示撤回的消息的session_seqno 用以后续的比较 实现未读数的正确显示
|
|
uint64 withdraw_seqno = 15;
|
|
// 通知码
|
|
string notify_code =16;
|
|
// 消息来源
|
|
uint32 msg_source = 17;
|
|
}
|
|
|
|
//
|
|
message NotifyInfo {
|
|
//
|
|
uint32 msg_type = 1;
|
|
//
|
|
uint64 talker_id = 2;
|
|
//
|
|
uint32 session_type =3;
|
|
}
|
|
|
|
//
|
|
message ReqServerNotify {
|
|
// 最新序列号
|
|
uint64 lastest_seqno = 1;
|
|
// 即时消息 该类消息主要用于系统通知 当客户端sync msg时 不会sync到此类消息
|
|
Msg instant_msg = 2;
|
|
//
|
|
NotifyInfo notify_info = 3;
|
|
}
|