mirror of
https://github.com/balloonwj/TeamTalk.git
synced 2026-10-18 22:32:12 +08:00
123 lines
3.4 KiB
Protocol Buffer
123 lines
3.4 KiB
Protocol Buffer
package IM.Message;
|
|
import "IM.BaseDefine.proto";
|
|
option java_package = "com.mogujie.tt.protobuf";
|
|
//option java_outer_classname = "MOGUJIEIMMessage";
|
|
option optimize_for = LITE_RUNTIME;
|
|
|
|
//service id 0x0003
|
|
message IMMsgData{
|
|
//cmd id: 0x0301
|
|
required uint32 from_user_id = 1; //消息发送方
|
|
required uint32 to_session_id = 2; //消息接受方
|
|
required uint32 msg_id = 3;
|
|
required uint32 create_time = 4;
|
|
required IM.BaseDefine.MsgType msg_type = 5;
|
|
required bytes msg_data = 6;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
message IMMsgDataAck{
|
|
//cmd id: 0x0302
|
|
required uint32 user_id = 1; //发送此信令的用户id
|
|
required uint32 session_id = 2;
|
|
required uint32 msg_id = 3;
|
|
required IM.BaseDefine.SessionType session_type = 4;
|
|
}
|
|
|
|
message IMMsgDataReadAck{
|
|
//cmd id: 0x0303
|
|
required uint32 user_id = 1; //发送此信令的用户id
|
|
required uint32 session_id = 2;
|
|
required uint32 msg_id = 3;
|
|
required IM.BaseDefine.SessionType session_type = 4;
|
|
}
|
|
|
|
message IMMsgDataReadNotify{
|
|
//cmd id: 0x0304
|
|
required uint32 user_id = 1; //发送此信令的用户id
|
|
required uint32 session_id = 2;
|
|
required uint32 msg_id = 3;
|
|
required IM.BaseDefine.SessionType session_type = 4;
|
|
}
|
|
|
|
message IMClientTimeReq{
|
|
//cmd id: 0x0305
|
|
}
|
|
|
|
message IMClientTimeRsp{
|
|
//cmd id: 0x0306
|
|
required uint32 server_time = 1;
|
|
}
|
|
|
|
message IMUnreadMsgCntReq{
|
|
//cmd id: 0x0307
|
|
required uint32 user_id = 1;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
message IMUnreadMsgCntRsp{
|
|
//cmd id: 0x0308
|
|
required uint32 user_id = 1;
|
|
required uint32 total_cnt = 2;
|
|
repeated IM.BaseDefine.UnreadInfo unreadinfo_list = 3;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
message IMGetMsgListReq{
|
|
//cmd id: 0x0309
|
|
required uint32 user_id = 1;
|
|
required IM.BaseDefine.SessionType session_type = 2;
|
|
required uint32 session_id = 3;
|
|
required uint32 msg_id_begin = 4;
|
|
required uint32 msg_cnt = 5;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
//对于群而言,如果消息数目返回的数值小于请求的cnt,则表示群的消息能拉取的到头了,更早的消息没有权限拉取。
|
|
//如果msg_cnt 和 msg_id_begin计算得到的最早消息id与实际返回的最早消息id不一致,说明服务器消息有缺失,需要
|
|
//客户端做一个缺失标记,避免下次再次拉取。
|
|
message IMGetMsgListRsp{
|
|
//cmd id: 0x030a
|
|
required uint32 user_id = 1;
|
|
required IM.BaseDefine.SessionType session_type = 2;
|
|
required uint32 session_id = 3;
|
|
required uint32 msg_id_begin = 4;
|
|
repeated IM.BaseDefine.MsgInfo msg_list = 5;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
message IMGetLatestMsgIdReq{
|
|
//cmd id: 0x030b
|
|
required uint32 user_id = 1;
|
|
required IM.BaseDefine.SessionType session_type = 2;
|
|
required uint32 session_id = 3;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
message IMGetLatestMsgIdRsp{
|
|
//cmd id: 0x030c
|
|
required uint32 user_id = 1;
|
|
required IM.BaseDefine.SessionType session_type = 2;
|
|
required uint32 session_id = 3;
|
|
required uint32 latest_msg_id = 4;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
message IMGetMsgByIdReq{
|
|
//cmd id: 0x030d
|
|
required uint32 user_id = 1;
|
|
required IM.BaseDefine.SessionType session_type = 2;
|
|
required uint32 session_id = 3;
|
|
repeated uint32 msg_id_list = 4;
|
|
optional bytes attach_data = 20;
|
|
}
|
|
|
|
message IMGetMsgByIdRsp{
|
|
//cmd id: 0x030e
|
|
required uint32 user_id = 1;
|
|
required IM.BaseDefine.SessionType session_type = 2;
|
|
required uint32 session_id = 3;
|
|
repeated IM.BaseDefine.MsgInfo msg_list = 4;
|
|
optional bytes attach_data = 20;
|
|
}
|