diff --git a/config/config.yaml b/config/config.yaml index 3172baa50..2f78bd49d 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -235,8 +235,6 @@ groupMessageHasReadReceiptEnable: false #单聊已读开启 singleMessageHasReadReceiptEnable: false - - #token config tokenpolicy: accessSecret: "open_im_server" #token生成相关,默认即可 @@ -487,30 +485,6 @@ notification: defaultTips: tips: "group member info set" - groupMemberSetToOrdinaryUser: - conversation: - reliabilityLevel: 3 - unreadCount: false - offlinePush: - switch: false - title: "groupMemberSetToOrdinaryUser title" - desc: "groupMemberSetToOrdinaryUser desc" - ext: "groupMemberSetToOrdinaryUser ext" - defaultTips: - tips: "was set to ordinaryUser" - - groupMemberSetToAdmin: - conversation: - reliabilityLevel: 3 - unreadCount: false - offlinePush: - switch: false - title: "groupMemberSetToAdmin title" - desc: "groupMemberSetToAdmin desc" - ext: "groupMemberSetToAdmin ext" - defaultTips: - tips: "was set to admin" - #############################organization################################# organizationChanged: conversation: @@ -727,4 +701,4 @@ demo: imAPIURL: http://127.0.0.1:10002 rtc: - signalTimeout: 300 + signalTimeout: 35 diff --git a/internal/api/third/rtc.go b/internal/api/third/rtc.go index 4986558d7..576e32892 100644 --- a/internal/api/third/rtc.go +++ b/internal/api/third/rtc.go @@ -21,9 +21,7 @@ func GetRTCInvitationInfo(c *gin.Context) { return } log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req) - var ok bool - var errInfo string - ok, _, errInfo = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID) + ok, userID, errInfo := token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID) if !ok { errMsg := req.OperationID + " " + "GetUserIDFromToken failed " + errInfo + " token:" + c.Request.Header.Get("token") log.NewError(req.OperationID, errMsg) @@ -37,6 +35,10 @@ func GetRTCInvitationInfo(c *gin.Context) { c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": err.Error()}) return } + if err := db.DB.DelUserSignalList(userID); err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "DelUserSignalList result:", err.Error()) + } + resp.Data.OpUserID = invitationInfo.OpUserID resp.Data.Invitation.RoomID = invitationInfo.Invitation.RoomID resp.Data.Invitation.SessionType = invitationInfo.Invitation.SessionType @@ -45,6 +47,9 @@ func GetRTCInvitationInfo(c *gin.Context) { resp.Data.Invitation.InviteeUserIDList = invitationInfo.Invitation.InviteeUserIDList resp.Data.Invitation.MediaType = invitationInfo.Invitation.MediaType resp.Data.Invitation.Timeout = invitationInfo.Invitation.Timeout + resp.Data.Invitation.InitiateTime = invitationInfo.Invitation.InitiateTime + resp.Data.Invitation.PlatformID = invitationInfo.Invitation.PlatformID + resp.Data.Invitation.CustomData = invitationInfo.Invitation.CustomData c.JSON(http.StatusOK, resp) } @@ -83,6 +88,9 @@ func GetRTCInvitationInfoStartApp(c *gin.Context) { resp.Data.Invitation.InviteeUserIDList = invitationInfo.Invitation.InviteeUserIDList resp.Data.Invitation.MediaType = invitationInfo.Invitation.MediaType resp.Data.Invitation.Timeout = invitationInfo.Invitation.Timeout + resp.Data.Invitation.InitiateTime = invitationInfo.Invitation.InitiateTime + resp.Data.Invitation.PlatformID = invitationInfo.Invitation.PlatformID + resp.Data.Invitation.CustomData = invitationInfo.Invitation.CustomData c.JSON(http.StatusOK, resp) } diff --git a/internal/msg_gateway/gate/logic.go b/internal/msg_gateway/gate/logic.go index 40095a229..35059ec5b 100644 --- a/internal/msg_gateway/gate/logic.go +++ b/internal/msg_gateway/gate/logic.go @@ -91,9 +91,9 @@ func (ws *WServer) getSeqReq(conn *UserConn, m *Req) { ws.getSeqResp(conn, m, nReply) } - } -func (ws *WServer) getSeqResp(conn *UserConn, m *Req, pb *sdk_ws.GetMaxAndMinSeqResp) { + +func (ws *WServer) getSeqResp(conn *UserConn, m *Req, pb *pbChat.GetMaxAndMinSeqResp) { log.Debug(m.OperationID, "getSeqResp come here ", pb.String()) b, _ := proto.Marshal(pb) mReply := Resp{ @@ -108,7 +108,7 @@ func (ws *WServer) getSeqResp(conn *UserConn, m *Req, pb *sdk_ws.GetMaxAndMinSeq } func (ws *WServer) pullMsgBySeqListReq(conn *UserConn, m *Req) { - log.NewInfo(m.OperationID, "Ws call success to pullMsgBySeqListReq start", m.SendID, m.ReqIdentifier, m.MsgIncr) + log.NewInfo(m.OperationID, "Ws call success to pullMsgBySeqListReq start", m.SendID, m.ReqIdentifier, m.MsgIncr, string(m.Data)) nReply := new(sdk_ws.PullMessageBySeqListResp) isPass, errCode, errMsg, data := ws.argsValidate(m, constant.WSPullMsgBySeqList) if isPass { @@ -117,7 +117,7 @@ func (ws *WServer) pullMsgBySeqListReq(conn *UserConn, m *Req) { rpcReq.UserID = m.SendID rpcReq.OperationID = m.OperationID rpcReq.GroupSeqList = data.(sdk_ws.PullMessageBySeqListReq).GroupSeqList - log.NewInfo(m.OperationID, "Ws call success to pullMsgBySeqListReq middle", m.SendID, m.ReqIdentifier, m.MsgIncr, data.(sdk_ws.PullMessageBySeqListReq).SeqList, data.(sdk_ws.PullMessageBySeqListReq).GroupSeqList) + log.NewInfo(m.OperationID, "Ws call success to pullMsgBySeqListReq middle", m.SendID, m.ReqIdentifier, m.MsgIncr, data.(sdk_ws.PullMessageBySeqListReq).SeqList) grpcConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfflineMessageName) msgClient := pbChat.NewChatClient(grpcConn) reply, err := msgClient.PullMessageBySeqList(context.Background(), &rpcReq) @@ -157,7 +157,6 @@ func (ws *WServer) sendMsgReq(conn *UserConn, m *Req) { sendMsgAllCountLock.Lock() sendMsgAllCount++ sendMsgAllCountLock.Unlock() - //stat.GaugeVecApiMethod.WithLabelValues("ws_send_message_count").Inc() log.NewInfo(m.OperationID, "Ws call success to sendMsgReq start", m.MsgIncr, m.ReqIdentifier, m.SendID, m.Data) nReply := new(pbChat.SendMsgResp) @@ -248,14 +247,8 @@ func (ws *WServer) sendSignalMsgReq(conn *UserConn, m *Req) { nReply.ErrMsg = err.Error() ws.sendSignalMsgResp(conn, 200, err.Error(), m, &signalResp) } else { - log.NewInfo(pbData.OperationID, "rpc call success to sendMsgReq", reply.String()) - // save invitation info for offline push - if err := db.DB.NewCacheSignalInfo(pbData.MsgData); err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), m, &signalResp) - ws.sendSignalMsgResp(conn, 200, err.Error(), m, &signalResp) - } else { - ws.sendSignalMsgResp(conn, 0, "", m, &signalResp) - } + log.NewInfo(pbData.OperationID, "rpc call success to sendMsgReq", reply.String(), signalResp.String(), m) + ws.sendSignalMsgResp(conn, 0, "", m, &signalResp) } } else { log.NewError(m.OperationID, utils.GetSelfFuncName(), respPb.IsPass, respPb.CommonResp.ErrCode, respPb.CommonResp.ErrMsg) diff --git a/internal/msg_gateway/gate/ws_server.go b/internal/msg_gateway/gate/ws_server.go index 690e57cd3..1ce05441f 100644 --- a/internal/msg_gateway/gate/ws_server.go +++ b/internal/msg_gateway/gate/ws_server.go @@ -89,11 +89,25 @@ func (ws *WServer) readMsg(conn *UserConn) { } } + +func (ws *WServer) SetWriteTimeout(conn *UserConn, timeout int) { + conn.w.Lock() + defer conn.w.Unlock() + conn.SetWriteDeadline(time.Now().Add(time.Duration(timeout) * time.Second)) +} + func (ws *WServer) writeMsg(conn *UserConn, a int, msg []byte) error { conn.w.Lock() defer conn.w.Unlock() + conn.SetWriteDeadline(time.Now().Add(time.Duration(60) * time.Second)) return conn.WriteMessage(a, msg) +} +func (ws *WServer) SetWriteTimeoutWriteMsg(conn *UserConn, a int, msg []byte, timeout int) error { + conn.w.Lock() + defer conn.w.Unlock() + conn.SetWriteDeadline(time.Now().Add(time.Duration(timeout) * time.Second)) + return conn.WriteMessage(a, msg) } func (ws *WServer) MultiTerminalLoginChecker(uid string, platformID int, newConn *UserConn, token string, operationID string) { switch config.Config.MultiLoginPolicy { @@ -104,7 +118,7 @@ func (ws *WServer) MultiTerminalLoginChecker(uid string, platformID int, newConn ws.sendKickMsg(oldConn, newConn) m, err := db.DB.GetTokenMapByUidPid(uid, constant.PlatformIDToName(platformID)) if err != nil && err != redis.ErrNil { - log.NewError(operationID, "get token from redis err", err.Error()) + log.NewError(operationID, "get token from redis err", err.Error(), uid) return } if m == nil { @@ -160,7 +174,7 @@ func (ws *WServer) sendKickMsg(oldConn, newConn *UserConn) { } err = ws.writeMsg(oldConn, websocket.BinaryMessage, b.Bytes()) if err != nil { - log.NewError(mReply.OperationID, mReply.ReqIdentifier, mReply.ErrCode, mReply.ErrMsg, "WS WriteMsg error", oldConn.RemoteAddr().String(), newConn.RemoteAddr().String(), err.Error()) + log.NewError(mReply.OperationID, mReply.ReqIdentifier, mReply.ErrCode, mReply.ErrMsg, "sendKickMsg WS WriteMsg error", oldConn.RemoteAddr().String(), newConn.RemoteAddr().String(), err.Error()) } } func (ws *WServer) addUserConn(uid string, platformID int, conn *UserConn, token string) { diff --git a/internal/msg_transfer/logic/online_history_msg_handler.go b/internal/msg_transfer/logic/online_history_msg_handler.go index 62f0ea0e8..afacf097c 100644 --- a/internal/msg_transfer/logic/online_history_msg_handler.go +++ b/internal/msg_transfer/logic/online_history_msg_handler.go @@ -460,7 +460,9 @@ func (och *OnlineHistoryConsumerHandler) ConsumeClaim(sess sarama.ConsumerGroupS //och.chArrays[channelID] <- Cmd2Value{Cmd: UserMessages, Value: MsgChannelValue{userID: userID, msgList: []*pbMsg.MsgDataToMQ{&msgFromMQ}, triggerID: msgFromMQ.OperationID}} //sess.MarkMessage(msg, "") rwLock.Lock() - cMsg = append(cMsg, msg) + if len(msg.Value) != 0 { + cMsg = append(cMsg, msg) + } rwLock.Unlock() sess.MarkMessage(msg, "") //och.TriggerCmd(OnlineTopicBusy) @@ -539,7 +541,7 @@ func sendMessageToPush(message *pbMsg.MsgDataToMQ, pushToUserID string) { grpcConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImPushName) if grpcConn == nil { log.Error(rpcPushMsg.OperationID, "rpc dial failed", "push data", rpcPushMsg.String()) - pid, offset, err := producer.SendMessage(&mqPushMsg) + pid, offset, err := producer.SendMessage(&mqPushMsg, mqPushMsg.PushToUserID, rpcPushMsg.OperationID) if err != nil { log.Error(mqPushMsg.OperationID, "kafka send failed", "send data", message.String(), "pid", pid, "offset", offset, "err", err.Error()) } @@ -549,7 +551,7 @@ func sendMessageToPush(message *pbMsg.MsgDataToMQ, pushToUserID string) { _, err := msgClient.PushMsg(context.Background(), &rpcPushMsg) if err != nil { log.Error(rpcPushMsg.OperationID, "rpc send failed", rpcPushMsg.OperationID, "push data", rpcPushMsg.String(), "err", err.Error()) - pid, offset, err := producer.SendMessage(&mqPushMsg) + pid, offset, err := producer.SendMessage(&mqPushMsg, mqPushMsg.PushToUserID, rpcPushMsg.OperationID) if err != nil { log.Error(message.OperationID, "kafka send failed", mqPushMsg.OperationID, "send data", mqPushMsg.String(), "pid", pid, "offset", offset, "err", err.Error()) } diff --git a/internal/msg_transfer/logic/persistent_msg_handler.go b/internal/msg_transfer/logic/persistent_msg_handler.go index 6b6955ee2..4a313d1ad 100644 --- a/internal/msg_transfer/logic/persistent_msg_handler.go +++ b/internal/msg_transfer/logic/persistent_msg_handler.go @@ -34,7 +34,7 @@ func (pc *PersistentConsumerHandler) Init() { func (pc *PersistentConsumerHandler) handleChatWs2Mysql(cMsg *sarama.ConsumerMessage, msgKey string, _ sarama.ConsumerGroupSession) { msg := cMsg.Value - log.NewInfo("msg come here mysql!!!", "", "msg", string(msg)) + log.NewInfo("msg come here mysql!!!", "", "msg", string(msg), msgKey) var tag bool msgFromMQ := pbMsg.MsgDataToMQ{} err := proto.Unmarshal(msg, &msgFromMQ) @@ -42,6 +42,7 @@ func (pc *PersistentConsumerHandler) handleChatWs2Mysql(cMsg *sarama.ConsumerMes log.NewError(msgFromMQ.OperationID, "msg_transfer Unmarshal msg err", "msg", string(msg), "err", err.Error()) return } + log.Debug(msgFromMQ.OperationID, "proto.Unmarshal MsgDataToMQ", msgFromMQ.String()) //Control whether to store history messages (mysql) isPersist := utils.GetSwitchFromOptions(msgFromMQ.MsgData.Options, constant.IsPersistent) //Only process receiver data @@ -73,8 +74,12 @@ func (PersistentConsumerHandler) Cleanup(_ sarama.ConsumerGroupSession) error { func (pc *PersistentConsumerHandler) ConsumeClaim(sess sarama.ConsumerGroupSession, claim sarama.ConsumerGroupClaim) error { for msg := range claim.Messages() { - log.NewDebug("", "kafka get info to mysql", "msgTopic", msg.Topic, "msgPartition", msg.Partition, "msg", string(msg.Value)) - pc.msgHandle[msg.Topic](msg, string(msg.Key), sess) + log.NewDebug("", "kafka get info to mysql", "msgTopic", msg.Topic, "msgPartition", msg.Partition, "msg", string(msg.Value), "key", string(msg.Key)) + if len(msg.Value) != 0 { + pc.msgHandle[msg.Topic](msg, string(msg.Key), sess) + } else { + log.Error("", "msg get from kafka but is nil", msg.Key) + } sess.MarkMessage(msg, "") } return nil diff --git a/internal/push/logic/push_to_client.go b/internal/push/logic/push_to_client.go index a82560c84..909a97d8c 100644 --- a/internal/push/logic/push_to_client.go +++ b/internal/push/logic/push_to_client.go @@ -10,6 +10,7 @@ import ( "Open_IM/internal/push" "Open_IM/pkg/common/config" "Open_IM/pkg/common/constant" + "Open_IM/pkg/common/db" "Open_IM/pkg/common/log" "Open_IM/pkg/grpc-etcdv3/getcdv3" pbCache "Open_IM/pkg/proto/cache" @@ -62,11 +63,15 @@ func MsgToUser(pushMsg *pbPush.PushMsgReq) { log.NewInfo(pushMsg.OperationID, "push_result", wsResult, "sendData", pushMsg.MsgData) successCount++ if isOfflinePush && pushMsg.PushToUserID != pushMsg.MsgData.SendID { + // save invitation info for offline push for _, v := range wsResult { if v.OnlinePush { return } } + if err := db.DB.HandleSignalInfo(pushMsg.OperationID, pushMsg.MsgData); err != nil { + log.NewError(pushMsg.OperationID, utils.GetSelfFuncName(), err.Error(), pushMsg.MsgData) + } //Use offline push messaging var UIDList []string UIDList = append(UIDList, pushMsg.PushToUserID) @@ -246,9 +251,7 @@ func MsgToSuperGroupUser(pushMsg *pbPush.PushMsgReq) { } else { log.NewDebug(pushMsg.OperationID, "offline push return result is ", pushResult, pushMsg.MsgData) } - } - } func GetOfflinePushOpts(pushMsg *pbPush.PushMsgReq) (opts push.PushOpts, err error) { @@ -267,3 +270,45 @@ func GetOfflinePushOpts(pushMsg *pbPush.PushMsgReq) (opts push.PushOpts, err err } return opts, nil } + +//func SendMsgByWS(m *pbChat.WSToMsgSvrChatMsg) { +// m.MsgID = rpcChat.GetMsgID(m.SendID) +// m.ClientMsgID = m.MsgID +// switch m.SessionType { +// case constant.SingleChatType: +// sendMsgToKafka(m, m.SendID, "msgKey--sendID") +// sendMsgToKafka(m, m.RecvID, "msgKey--recvID") +// case constant.GroupChatType: +// etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName) +// client := pbGroup.NewGroupClient(etcdConn) +// req := &pbGroup.Req{ +// GroupID: m.RecvID, +// Token: config.Config.Secret, +// OperationID: m.OperationID, +// } +// reply, err := client.(context.Background(), req) +// if err != nil { +// log.Error(m.Token, m.OperationID, "rpc getGroupInfo failed, err = %s", err.Error()) +// return +// } +// if reply.ErrorCode != 0 { +// log.Error(m.Token, m.OperationID, "rpc getGroupInfo failed, err = %s", reply.ErrorMsg) +// return +// } +// groupID := m.RecvID +// for i, v := range reply.MemberList { +// m.RecvID = v.UserId + " " + groupID +// sendMsgToKafka(m, utils.IntToString(i), "msgKey--recvID+\" \"+groupID") +// } +// default: +// +// } +//} +// +//func sendMsgToKafka(m *pbChat.WSToMsgSvrChatMsg, key string, flag string) { +// pid, offset, err := producer.SendMessage(m, key) +// if err != nil { +// log.ErrorByKv("kafka send failed", m.OperationID, "send data", m.String(), "pid", pid, "offset", offset, "err", err.Error(), flag, key) +// } +// +//} diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index e9f9c5958..aa6506f7c 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -113,7 +113,6 @@ func userRelationshipVerification(data *pbChat.SendMsgReq) (bool, int32, string) } else { return true, 0, "" } - } func (rpc *rpcChat) encapsulateMsgData(msg *sdk_ws.MsgData) { msg.ServerMsgID = GetMsgID(msg.SendID) diff --git a/pkg/base_info/third_api_struct.go b/pkg/base_info/third_api_struct.go index 758c3494c..e59e03940 100644 --- a/pkg/base_info/third_api_struct.go +++ b/pkg/base_info/third_api_struct.go @@ -75,6 +75,9 @@ type GetRTCInvitationInfoResp struct { Timeout int32 `json:"timeout"` MediaType string `json:"mediaType"` SessionType int32 `json:"sessionType"` + InitiateTime int32 `json:"initiateTime"` + PlatformID int32 `json:"platformID"` + CustomData string `json:"customData"` } `json:"invitation"` OfflinePushInfo struct{} `json:"offlinePushInfo"` } `json:"data"` diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index fe7dbc9f5..324e4e8bc 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -230,7 +230,7 @@ var ContentType2PushContent = map[int64]string{ AtText: "[有人@你]", GroupMsg: "你收到一条群聊消息", Common: "你收到一条新消息", - SignalMsg: "音視頻通話邀請", + SignalMsg: "音视频通话邀请", } const ( diff --git a/pkg/common/db/newRedisModel.go b/pkg/common/db/newRedisModel.go index 9223cf1ef..fec8ad0d1 100644 --- a/pkg/common/db/newRedisModel.go +++ b/pkg/common/db/newRedisModel.go @@ -95,42 +95,50 @@ func (d *DataBases) CleanUpOneUserAllMsgFromRedis(userID string, operationID str return nil } -func (d *DataBases) NewCacheSignalInfo(msg *pbCommon.MsgData) error { +func (d *DataBases) HandleSignalInfo(operationID string, msg *pbCommon.MsgData) error { req := &pbRtc.SignalReq{} if err := proto.Unmarshal(msg.Content, req); err != nil { return err } //log.NewDebug(pushMsg.OperationID, utils.GetSelfFuncName(), "SignalReq: ", req.String()) var inviteeUserIDList []string - switch invitationInfo := req.Payload.(type) { + var isInviteSignal bool + switch signalInfo := req.Payload.(type) { case *pbRtc.SignalReq_Invite: - inviteeUserIDList = invitationInfo.Invite.Invitation.InviteeUserIDList + inviteeUserIDList = signalInfo.Invite.Invitation.InviteeUserIDList + isInviteSignal = true case *pbRtc.SignalReq_InviteInGroup: - inviteeUserIDList = invitationInfo.InviteInGroup.Invitation.InviteeUserIDList + inviteeUserIDList = signalInfo.InviteInGroup.Invitation.InviteeUserIDList + isInviteSignal = true + case *pbRtc.SignalReq_HungUp, *pbRtc.SignalReq_Cancel, *pbRtc.SignalReq_Reject, *pbRtc.SignalReq_Accept: + return errors.New("signalInfo do not need offlinePush") default: - log2.NewDebug("", utils.GetSelfFuncName(), "req type not invite", string(msg.Content)) + log2.NewDebug(operationID, utils.GetSelfFuncName(), "req invalid type", string(msg.Content)) return nil } - for _, userID := range inviteeUserIDList { - timeout, err := strconv.Atoi(config.Config.Rtc.SignalTimeout) - if err != nil { - return err - } - keyList := SignalListCache + userID - err = d.rdb.LPush(context.Background(), keyList, msg.ClientMsgID).Err() - if err != nil { - return err - } - err = d.rdb.Expire(context.Background(), keyList, time.Duration(timeout)*time.Second).Err() - if err != nil { - return err - } - key := SignalCache + msg.ClientMsgID - err = d.rdb.Set(context.Background(), key, msg.Content, time.Duration(timeout)*time.Second).Err() - if err != nil { - return err + if isInviteSignal { + log2.NewInfo(operationID, utils.GetSelfFuncName(), "invite userID list:", inviteeUserIDList) + for _, userID := range inviteeUserIDList { + log2.NewInfo(operationID, utils.GetSelfFuncName(), "invite userID:", userID) + timeout, err := strconv.Atoi(config.Config.Rtc.SignalTimeout) + if err != nil { + return err + } + keyList := SignalListCache + userID + err = d.rdb.LPush(context.Background(), keyList, msg.ClientMsgID).Err() + if err != nil { + return err + } + err = d.rdb.Expire(context.Background(), keyList, time.Duration(timeout)*time.Second).Err() + if err != nil { + return err + } + key := SignalCache + msg.ClientMsgID + err = d.rdb.Set(context.Background(), key, msg.Content, time.Duration(timeout)*time.Second).Err() + if err != nil { + return err + } } - return err } return nil } @@ -149,15 +157,17 @@ func (d *DataBases) GetSignalInfoFromCacheByClientMsgID(clientMsgID string) (inv switch req2 := req.Payload.(type) { case *pbRtc.SignalReq_Invite: invitationInfo.Invitation = req2.Invite.Invitation + invitationInfo.OpUserID = req2.Invite.OpUserID case *pbRtc.SignalReq_InviteInGroup: invitationInfo.Invitation = req2.InviteInGroup.Invitation + invitationInfo.OpUserID = req2.InviteInGroup.OpUserID } return invitationInfo, err } func (d *DataBases) GetAvailableSignalInvitationInfo(userID string) (invitationInfo *pbRtc.SignalInviteReq, err error) { keyList := SignalListCache + userID - result := d.rdb.RPop(context.Background(), keyList) + result := d.rdb.LPop(context.Background(), keyList) if err = result.Err(); err != nil { return nil, utils.Wrap(err, "GetAvailableSignalInvitationInfo failed") } @@ -170,14 +180,14 @@ func (d *DataBases) GetAvailableSignalInvitationInfo(userID string) (invitationI if err != nil { return nil, utils.Wrap(err, "GetSignalInfoFromCacheByClientMsgID") } - err = d.delUserSingalList(userID) + err = d.DelUserSignalList(userID) if err != nil { return nil, utils.Wrap(err, "GetSignalInfoFromCacheByClientMsgID") } return invitationInfo, nil } -func (d *DataBases) delUserSingalList(userID string) error { +func (d *DataBases) DelUserSignalList(userID string) error { keyList := SignalListCache + userID err := d.rdb.Del(context.Background(), keyList).Err() return err diff --git a/pkg/common/kafka/producer.go b/pkg/common/kafka/producer.go index 98ad92209..3d8ca02f5 100644 --- a/pkg/common/kafka/producer.go +++ b/pkg/common/kafka/producer.go @@ -2,6 +2,7 @@ package kafka import ( log2 "Open_IM/pkg/common/log" + "errors" "github.com/Shopify/sarama" "github.com/golang/protobuf/proto" ) @@ -32,18 +33,22 @@ func NewKafkaProducer(addr []string, topic string) *Producer { return &p } -func (p *Producer) SendMessage(m proto.Message, key ...string) (int32, int64, error) { +func (p *Producer) SendMessage(m proto.Message, key string, operationID string) (int32, int64, error) { + log2.Info(operationID, "SendMessage", "key ", key, m.String(), p.producer) kMsg := &sarama.ProducerMessage{} kMsg.Topic = p.topic - if len(key) == 1 { - kMsg.Key = sarama.StringEncoder(key[0]) - } + kMsg.Key = sarama.StringEncoder(key) bMsg, err := proto.Marshal(m) if err != nil { - log2.Error("", "", "proto marshal err = %s", err.Error()) + log2.Error(operationID, "", "proto marshal err = %s", err.Error()) return -1, -1, err } + if len(bMsg) == 0 { + return 0, 0, errors.New("msg content is nil") + } kMsg.Value = sarama.ByteEncoder(bMsg) - - return p.producer.SendMessage(kMsg) + log2.Info(operationID, "ByteEncoder SendMessage begin", "key ", kMsg, p.producer) + a, b, c := p.producer.SendMessage(kMsg) + log2.Info(operationID, "ByteEncoder SendMessage end", "key ", kMsg, p.producer) + return a, b, c } diff --git a/pkg/proto/rtc/rtc.pb.go b/pkg/proto/rtc/rtc.pb.go index a546f0f12..1a13ddc6f 100644 --- a/pkg/proto/rtc/rtc.pb.go +++ b/pkg/proto/rtc/rtc.pb.go @@ -1,923 +1,862 @@ // Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.27.1 -// protoc v3.15.5 -// source: proto/rtc.proto +// source: rtc/rtc.proto -package proto +package rtc // import "./rtc" + +import proto "github.com/golang/protobuf/proto" +import fmt "fmt" +import math "math" import ( - context "context" + context "golang.org/x/net/context" grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" ) -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf -type CommonResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package - ErrCode int32 `protobuf:"varint,1,opt,name=errCode,proto3" json:"errCode,omitempty"` - ErrMsg string `protobuf:"bytes,2,opt,name=errMsg,proto3" json:"errMsg,omitempty"` +type CommonResp struct { + ErrCode int32 `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"` + ErrMsg string `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *CommonResp) Reset() { - *x = CommonResp{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *CommonResp) Reset() { *m = CommonResp{} } +func (m *CommonResp) String() string { return proto.CompactTextString(m) } +func (*CommonResp) ProtoMessage() {} +func (*CommonResp) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{0} } - -func (x *CommonResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *CommonResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CommonResp.Unmarshal(m, b) } - -func (*CommonResp) ProtoMessage() {} - -func (x *CommonResp) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *CommonResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CommonResp.Marshal(b, m, deterministic) } - -// Deprecated: Use CommonResp.ProtoReflect.Descriptor instead. -func (*CommonResp) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{0} +func (dst *CommonResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_CommonResp.Merge(dst, src) +} +func (m *CommonResp) XXX_Size() int { + return xxx_messageInfo_CommonResp.Size(m) } +func (m *CommonResp) XXX_DiscardUnknown() { + xxx_messageInfo_CommonResp.DiscardUnknown(m) +} + +var xxx_messageInfo_CommonResp proto.InternalMessageInfo -func (x *CommonResp) GetErrCode() int32 { - if x != nil { - return x.ErrCode +func (m *CommonResp) GetErrCode() int32 { + if m != nil { + return m.ErrCode } return 0 } -func (x *CommonResp) GetErrMsg() string { - if x != nil { - return x.ErrMsg +func (m *CommonResp) GetErrMsg() string { + if m != nil { + return m.ErrMsg } return "" } type MsgData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID,omitempty"` - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID,omitempty"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID,omitempty"` - ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID,proto3" json:"clientMsgID,omitempty"` - ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID,proto3" json:"serverMsgID,omitempty"` - SenderPlatformID int32 `protobuf:"varint,6,opt,name=senderPlatformID,proto3" json:"senderPlatformID,omitempty"` - SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname,proto3" json:"senderNickname,omitempty"` - SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL,proto3" json:"senderFaceURL,omitempty"` - SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType,omitempty"` - MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom,proto3" json:"msgFrom,omitempty"` - ContentType int32 `protobuf:"varint,11,opt,name=contentType,proto3" json:"contentType,omitempty"` - Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content,omitempty"` - Seq uint32 `protobuf:"varint,14,opt,name=seq,proto3" json:"seq,omitempty"` - SendTime int64 `protobuf:"varint,15,opt,name=sendTime,proto3" json:"sendTime,omitempty"` - CreateTime int64 `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime,omitempty"` - Status int32 `protobuf:"varint,17,opt,name=status,proto3" json:"status,omitempty"` - Options map[string]bool `protobuf:"bytes,18,rep,name=options,proto3" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,19,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` -} - -func (x *MsgData) Reset() { - *x = MsgData{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgData) ProtoMessage() {} - -func (x *MsgData) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MsgData.ProtoReflect.Descriptor instead. + SendID string `protobuf:"bytes,1,opt,name=sendID" json:"sendID,omitempty"` + RecvID string `protobuf:"bytes,2,opt,name=recvID" json:"recvID,omitempty"` + GroupID string `protobuf:"bytes,3,opt,name=groupID" json:"groupID,omitempty"` + ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID" json:"clientMsgID,omitempty"` + ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID" json:"serverMsgID,omitempty"` + SenderPlatformID int32 `protobuf:"varint,6,opt,name=senderPlatformID" json:"senderPlatformID,omitempty"` + SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname" json:"senderNickname,omitempty"` + SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL" json:"senderFaceURL,omitempty"` + SessionType int32 `protobuf:"varint,9,opt,name=sessionType" json:"sessionType,omitempty"` + MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom" json:"msgFrom,omitempty"` + ContentType int32 `protobuf:"varint,11,opt,name=contentType" json:"contentType,omitempty"` + Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content,omitempty"` + Seq uint32 `protobuf:"varint,14,opt,name=seq" json:"seq,omitempty"` + SendTime int64 `protobuf:"varint,15,opt,name=sendTime" json:"sendTime,omitempty"` + CreateTime int64 `protobuf:"varint,16,opt,name=createTime" json:"createTime,omitempty"` + Status int32 `protobuf:"varint,17,opt,name=status" json:"status,omitempty"` + Options map[string]bool `protobuf:"bytes,18,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,19,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MsgData) Reset() { *m = MsgData{} } +func (m *MsgData) String() string { return proto.CompactTextString(m) } +func (*MsgData) ProtoMessage() {} func (*MsgData) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{1} + return fileDescriptor_rtc_2059f33abbeeea7e, []int{1} } +func (m *MsgData) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MsgData.Unmarshal(m, b) +} +func (m *MsgData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MsgData.Marshal(b, m, deterministic) +} +func (dst *MsgData) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgData.Merge(dst, src) +} +func (m *MsgData) XXX_Size() int { + return xxx_messageInfo_MsgData.Size(m) +} +func (m *MsgData) XXX_DiscardUnknown() { + xxx_messageInfo_MsgData.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgData proto.InternalMessageInfo -func (x *MsgData) GetSendID() string { - if x != nil { - return x.SendID +func (m *MsgData) GetSendID() string { + if m != nil { + return m.SendID } return "" } -func (x *MsgData) GetRecvID() string { - if x != nil { - return x.RecvID +func (m *MsgData) GetRecvID() string { + if m != nil { + return m.RecvID } return "" } -func (x *MsgData) GetGroupID() string { - if x != nil { - return x.GroupID +func (m *MsgData) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *MsgData) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID +func (m *MsgData) GetClientMsgID() string { + if m != nil { + return m.ClientMsgID } return "" } -func (x *MsgData) GetServerMsgID() string { - if x != nil { - return x.ServerMsgID +func (m *MsgData) GetServerMsgID() string { + if m != nil { + return m.ServerMsgID } return "" } -func (x *MsgData) GetSenderPlatformID() int32 { - if x != nil { - return x.SenderPlatformID +func (m *MsgData) GetSenderPlatformID() int32 { + if m != nil { + return m.SenderPlatformID } return 0 } -func (x *MsgData) GetSenderNickname() string { - if x != nil { - return x.SenderNickname +func (m *MsgData) GetSenderNickname() string { + if m != nil { + return m.SenderNickname } return "" } -func (x *MsgData) GetSenderFaceURL() string { - if x != nil { - return x.SenderFaceURL +func (m *MsgData) GetSenderFaceURL() string { + if m != nil { + return m.SenderFaceURL } return "" } -func (x *MsgData) GetSessionType() int32 { - if x != nil { - return x.SessionType +func (m *MsgData) GetSessionType() int32 { + if m != nil { + return m.SessionType } return 0 } -func (x *MsgData) GetMsgFrom() int32 { - if x != nil { - return x.MsgFrom +func (m *MsgData) GetMsgFrom() int32 { + if m != nil { + return m.MsgFrom } return 0 } -func (x *MsgData) GetContentType() int32 { - if x != nil { - return x.ContentType +func (m *MsgData) GetContentType() int32 { + if m != nil { + return m.ContentType } return 0 } -func (x *MsgData) GetContent() []byte { - if x != nil { - return x.Content +func (m *MsgData) GetContent() []byte { + if m != nil { + return m.Content } return nil } -func (x *MsgData) GetSeq() uint32 { - if x != nil { - return x.Seq +func (m *MsgData) GetSeq() uint32 { + if m != nil { + return m.Seq } return 0 } -func (x *MsgData) GetSendTime() int64 { - if x != nil { - return x.SendTime +func (m *MsgData) GetSendTime() int64 { + if m != nil { + return m.SendTime } return 0 } -func (x *MsgData) GetCreateTime() int64 { - if x != nil { - return x.CreateTime +func (m *MsgData) GetCreateTime() int64 { + if m != nil { + return m.CreateTime } return 0 } -func (x *MsgData) GetStatus() int32 { - if x != nil { - return x.Status +func (m *MsgData) GetStatus() int32 { + if m != nil { + return m.Status } return 0 } -func (x *MsgData) GetOptions() map[string]bool { - if x != nil { - return x.Options +func (m *MsgData) GetOptions() map[string]bool { + if m != nil { + return m.Options } return nil } -func (x *MsgData) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *MsgData) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } type GroupInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID,omitempty"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName,omitempty"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification,omitempty"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction,omitempty"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL,omitempty"` - OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID,proto3" json:"ownerUserID,omitempty"` - CreateTime uint32 `protobuf:"varint,7,opt,name=createTime,proto3" json:"createTime,omitempty"` - MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount,proto3" json:"memberCount,omitempty"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex,omitempty"` - Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status,omitempty"` - CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID,proto3" json:"creatorUserID,omitempty"` - GroupType int32 `protobuf:"varint,12,opt,name=groupType,proto3" json:"groupType,omitempty"` + GroupID string `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"` + GroupName string `protobuf:"bytes,2,opt,name=groupName" json:"groupName,omitempty"` + Notification string `protobuf:"bytes,3,opt,name=notification" json:"notification,omitempty"` + Introduction string `protobuf:"bytes,4,opt,name=introduction" json:"introduction,omitempty"` + FaceURL string `protobuf:"bytes,5,opt,name=faceURL" json:"faceURL,omitempty"` + OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID" json:"ownerUserID,omitempty"` + CreateTime uint32 `protobuf:"varint,7,opt,name=createTime" json:"createTime,omitempty"` + MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount" json:"memberCount,omitempty"` + Ex string `protobuf:"bytes,9,opt,name=ex" json:"ex,omitempty"` + Status int32 `protobuf:"varint,10,opt,name=status" json:"status,omitempty"` + CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID" json:"creatorUserID,omitempty"` + GroupType int32 `protobuf:"varint,12,opt,name=groupType" json:"groupType,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GroupInfo) Reset() { *m = GroupInfo{} } +func (m *GroupInfo) String() string { return proto.CompactTextString(m) } +func (*GroupInfo) ProtoMessage() {} +func (*GroupInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{2} } - -func (x *GroupInfo) Reset() { - *x = GroupInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GroupInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupInfo.Unmarshal(m, b) } - -func (x *GroupInfo) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GroupInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupInfo.Marshal(b, m, deterministic) } - -func (*GroupInfo) ProtoMessage() {} - -func (x *GroupInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *GroupInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupInfo.Merge(dst, src) } - -// Deprecated: Use GroupInfo.ProtoReflect.Descriptor instead. -func (*GroupInfo) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{2} +func (m *GroupInfo) XXX_Size() int { + return xxx_messageInfo_GroupInfo.Size(m) +} +func (m *GroupInfo) XXX_DiscardUnknown() { + xxx_messageInfo_GroupInfo.DiscardUnknown(m) } -func (x *GroupInfo) GetGroupID() string { - if x != nil { - return x.GroupID +var xxx_messageInfo_GroupInfo proto.InternalMessageInfo + +func (m *GroupInfo) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *GroupInfo) GetGroupName() string { - if x != nil { - return x.GroupName +func (m *GroupInfo) GetGroupName() string { + if m != nil { + return m.GroupName } return "" } -func (x *GroupInfo) GetNotification() string { - if x != nil { - return x.Notification +func (m *GroupInfo) GetNotification() string { + if m != nil { + return m.Notification } return "" } -func (x *GroupInfo) GetIntroduction() string { - if x != nil { - return x.Introduction +func (m *GroupInfo) GetIntroduction() string { + if m != nil { + return m.Introduction } return "" } -func (x *GroupInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL +func (m *GroupInfo) GetFaceURL() string { + if m != nil { + return m.FaceURL } return "" } -func (x *GroupInfo) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +func (m *GroupInfo) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *GroupInfo) GetCreateTime() uint32 { - if x != nil { - return x.CreateTime +func (m *GroupInfo) GetCreateTime() uint32 { + if m != nil { + return m.CreateTime } return 0 } -func (x *GroupInfo) GetMemberCount() uint32 { - if x != nil { - return x.MemberCount +func (m *GroupInfo) GetMemberCount() uint32 { + if m != nil { + return m.MemberCount } return 0 } -func (x *GroupInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *GroupInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } -func (x *GroupInfo) GetStatus() int32 { - if x != nil { - return x.Status +func (m *GroupInfo) GetStatus() int32 { + if m != nil { + return m.Status } return 0 } -func (x *GroupInfo) GetCreatorUserID() string { - if x != nil { - return x.CreatorUserID +func (m *GroupInfo) GetCreatorUserID() string { + if m != nil { + return m.CreatorUserID } return "" } -func (x *GroupInfo) GetGroupType() int32 { - if x != nil { - return x.GroupType +func (m *GroupInfo) GetGroupType() int32 { + if m != nil { + return m.GroupType } return 0 } type GroupMemberFullInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID,omitempty"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID,omitempty"` - RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel,proto3" json:"roleLevel,omitempty"` - JoinTime int32 `protobuf:"varint,4,opt,name=joinTime,proto3" json:"joinTime,omitempty"` - Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname,omitempty"` - FaceURL string `protobuf:"bytes,6,opt,name=faceURL,proto3" json:"faceURL,omitempty"` - AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel,proto3" json:"appMangerLevel,omitempty"` //if >0 - JoinSource int32 `protobuf:"varint,8,opt,name=joinSource,proto3" json:"joinSource,omitempty"` - OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID,proto3" json:"operatorUserID,omitempty"` - Ex string `protobuf:"bytes,10,opt,name=ex,proto3" json:"ex,omitempty"` + GroupID string `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"` + UserID string `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"` + RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel" json:"roleLevel,omitempty"` + JoinTime int32 `protobuf:"varint,4,opt,name=joinTime" json:"joinTime,omitempty"` + Nickname string `protobuf:"bytes,5,opt,name=nickname" json:"nickname,omitempty"` + FaceURL string `protobuf:"bytes,6,opt,name=faceURL" json:"faceURL,omitempty"` + AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel" json:"appMangerLevel,omitempty"` + JoinSource int32 `protobuf:"varint,8,opt,name=joinSource" json:"joinSource,omitempty"` + OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID" json:"operatorUserID,omitempty"` + Ex string `protobuf:"bytes,10,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} } +func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } +func (*GroupMemberFullInfo) ProtoMessage() {} +func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{3} } - -func (x *GroupMemberFullInfo) Reset() { - *x = GroupMemberFullInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) } - -func (x *GroupMemberFullInfo) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GroupMemberFullInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupMemberFullInfo.Marshal(b, m, deterministic) } - -func (*GroupMemberFullInfo) ProtoMessage() {} - -func (x *GroupMemberFullInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *GroupMemberFullInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupMemberFullInfo.Merge(dst, src) } - -// Deprecated: Use GroupMemberFullInfo.ProtoReflect.Descriptor instead. -func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{3} +func (m *GroupMemberFullInfo) XXX_Size() int { + return xxx_messageInfo_GroupMemberFullInfo.Size(m) } +func (m *GroupMemberFullInfo) XXX_DiscardUnknown() { + xxx_messageInfo_GroupMemberFullInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_GroupMemberFullInfo proto.InternalMessageInfo -func (x *GroupMemberFullInfo) GetGroupID() string { - if x != nil { - return x.GroupID +func (m *GroupMemberFullInfo) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *GroupMemberFullInfo) GetUserID() string { - if x != nil { - return x.UserID +func (m *GroupMemberFullInfo) GetUserID() string { + if m != nil { + return m.UserID } return "" } -func (x *GroupMemberFullInfo) GetRoleLevel() int32 { - if x != nil { - return x.RoleLevel +func (m *GroupMemberFullInfo) GetRoleLevel() int32 { + if m != nil { + return m.RoleLevel } return 0 } -func (x *GroupMemberFullInfo) GetJoinTime() int32 { - if x != nil { - return x.JoinTime +func (m *GroupMemberFullInfo) GetJoinTime() int32 { + if m != nil { + return m.JoinTime } return 0 } -func (x *GroupMemberFullInfo) GetNickname() string { - if x != nil { - return x.Nickname +func (m *GroupMemberFullInfo) GetNickname() string { + if m != nil { + return m.Nickname } return "" } -func (x *GroupMemberFullInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL +func (m *GroupMemberFullInfo) GetFaceURL() string { + if m != nil { + return m.FaceURL } return "" } -func (x *GroupMemberFullInfo) GetAppMangerLevel() int32 { - if x != nil { - return x.AppMangerLevel +func (m *GroupMemberFullInfo) GetAppMangerLevel() int32 { + if m != nil { + return m.AppMangerLevel } return 0 } -func (x *GroupMemberFullInfo) GetJoinSource() int32 { - if x != nil { - return x.JoinSource +func (m *GroupMemberFullInfo) GetJoinSource() int32 { + if m != nil { + return m.JoinSource } return 0 } -func (x *GroupMemberFullInfo) GetOperatorUserID() string { - if x != nil { - return x.OperatorUserID +func (m *GroupMemberFullInfo) GetOperatorUserID() string { + if m != nil { + return m.OperatorUserID } return "" } -func (x *GroupMemberFullInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *GroupMemberFullInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } type ParticipantMetaData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupInfo *GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo,omitempty"` - GroupMemberInfo *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=groupMemberInfo,proto3" json:"groupMemberInfo,omitempty"` - UserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=userInfo,proto3" json:"userInfo,omitempty"` + GroupInfo *GroupInfo `protobuf:"bytes,1,opt,name=groupInfo" json:"groupInfo,omitempty"` + GroupMemberInfo *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=groupMemberInfo" json:"groupMemberInfo,omitempty"` + UserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=userInfo" json:"userInfo,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *ParticipantMetaData) Reset() { - *x = ParticipantMetaData{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *ParticipantMetaData) Reset() { *m = ParticipantMetaData{} } +func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) } +func (*ParticipantMetaData) ProtoMessage() {} +func (*ParticipantMetaData) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{4} } - -func (x *ParticipantMetaData) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b) } - -func (*ParticipantMetaData) ProtoMessage() {} - -func (x *ParticipantMetaData) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *ParticipantMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ParticipantMetaData.Marshal(b, m, deterministic) } - -// Deprecated: Use ParticipantMetaData.ProtoReflect.Descriptor instead. -func (*ParticipantMetaData) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{4} +func (dst *ParticipantMetaData) XXX_Merge(src proto.Message) { + xxx_messageInfo_ParticipantMetaData.Merge(dst, src) +} +func (m *ParticipantMetaData) XXX_Size() int { + return xxx_messageInfo_ParticipantMetaData.Size(m) +} +func (m *ParticipantMetaData) XXX_DiscardUnknown() { + xxx_messageInfo_ParticipantMetaData.DiscardUnknown(m) } -func (x *ParticipantMetaData) GetGroupInfo() *GroupInfo { - if x != nil { - return x.GroupInfo +var xxx_messageInfo_ParticipantMetaData proto.InternalMessageInfo + +func (m *ParticipantMetaData) GetGroupInfo() *GroupInfo { + if m != nil { + return m.GroupInfo } return nil } -func (x *ParticipantMetaData) GetGroupMemberInfo() *GroupMemberFullInfo { - if x != nil { - return x.GroupMemberInfo +func (m *ParticipantMetaData) GetGroupMemberInfo() *GroupMemberFullInfo { + if m != nil { + return m.GroupMemberInfo } return nil } -func (x *ParticipantMetaData) GetUserInfo() *PublicUserInfo { - if x != nil { - return x.UserInfo +func (m *ParticipantMetaData) GetUserInfo() *PublicUserInfo { + if m != nil { + return m.UserInfo } return nil } type PublicUserInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"` - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL,omitempty"` - Gender int32 `protobuf:"varint,4,opt,name=gender,proto3" json:"gender,omitempty"` - Ex string `protobuf:"bytes,5,opt,name=ex,proto3" json:"ex,omitempty"` + UserID string `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"` + Nickname string `protobuf:"bytes,2,opt,name=nickname" json:"nickname,omitempty"` + FaceURL string `protobuf:"bytes,3,opt,name=faceURL" json:"faceURL,omitempty"` + Gender int32 `protobuf:"varint,4,opt,name=gender" json:"gender,omitempty"` + Ex string `protobuf:"bytes,5,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} } +func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } +func (*PublicUserInfo) ProtoMessage() {} +func (*PublicUserInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{5} } - -func (x *PublicUserInfo) Reset() { - *x = PublicUserInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) } - -func (x *PublicUserInfo) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *PublicUserInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_PublicUserInfo.Marshal(b, m, deterministic) } - -func (*PublicUserInfo) ProtoMessage() {} - -func (x *PublicUserInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *PublicUserInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_PublicUserInfo.Merge(dst, src) } - -// Deprecated: Use PublicUserInfo.ProtoReflect.Descriptor instead. -func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{5} +func (m *PublicUserInfo) XXX_Size() int { + return xxx_messageInfo_PublicUserInfo.Size(m) +} +func (m *PublicUserInfo) XXX_DiscardUnknown() { + xxx_messageInfo_PublicUserInfo.DiscardUnknown(m) } -func (x *PublicUserInfo) GetUserID() string { - if x != nil { - return x.UserID +var xxx_messageInfo_PublicUserInfo proto.InternalMessageInfo + +func (m *PublicUserInfo) GetUserID() string { + if m != nil { + return m.UserID } return "" } -func (x *PublicUserInfo) GetNickname() string { - if x != nil { - return x.Nickname +func (m *PublicUserInfo) GetNickname() string { + if m != nil { + return m.Nickname } return "" } -func (x *PublicUserInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL +func (m *PublicUserInfo) GetFaceURL() string { + if m != nil { + return m.FaceURL } return "" } -func (x *PublicUserInfo) GetGender() int32 { - if x != nil { - return x.Gender +func (m *PublicUserInfo) GetGender() int32 { + if m != nil { + return m.Gender } return 0 } -func (x *PublicUserInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *PublicUserInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } type GetJoinTokenReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Room string `protobuf:"bytes,1,opt,name=room,proto3" json:"room,omitempty"` - Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` - MetaData *ParticipantMetaData `protobuf:"bytes,3,opt,name=metaData,proto3" json:"metaData,omitempty"` - OperationID string `protobuf:"bytes,4,opt,name=operationID,proto3" json:"operationID,omitempty"` + Room string `protobuf:"bytes,1,opt,name=room" json:"room,omitempty"` + Identity string `protobuf:"bytes,2,opt,name=identity" json:"identity,omitempty"` + MetaData *ParticipantMetaData `protobuf:"bytes,3,opt,name=metaData" json:"metaData,omitempty"` + OperationID string `protobuf:"bytes,4,opt,name=operationID" json:"operationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetJoinTokenReq) Reset() { *m = GetJoinTokenReq{} } +func (m *GetJoinTokenReq) String() string { return proto.CompactTextString(m) } +func (*GetJoinTokenReq) ProtoMessage() {} +func (*GetJoinTokenReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{6} } - -func (x *GetJoinTokenReq) Reset() { - *x = GetJoinTokenReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetJoinTokenReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetJoinTokenReq.Unmarshal(m, b) } - -func (x *GetJoinTokenReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetJoinTokenReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetJoinTokenReq.Marshal(b, m, deterministic) } - -func (*GetJoinTokenReq) ProtoMessage() {} - -func (x *GetJoinTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *GetJoinTokenReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetJoinTokenReq.Merge(dst, src) } - -// Deprecated: Use GetJoinTokenReq.ProtoReflect.Descriptor instead. -func (*GetJoinTokenReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{6} +func (m *GetJoinTokenReq) XXX_Size() int { + return xxx_messageInfo_GetJoinTokenReq.Size(m) +} +func (m *GetJoinTokenReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetJoinTokenReq.DiscardUnknown(m) } -func (x *GetJoinTokenReq) GetRoom() string { - if x != nil { - return x.Room +var xxx_messageInfo_GetJoinTokenReq proto.InternalMessageInfo + +func (m *GetJoinTokenReq) GetRoom() string { + if m != nil { + return m.Room } return "" } -func (x *GetJoinTokenReq) GetIdentity() string { - if x != nil { - return x.Identity +func (m *GetJoinTokenReq) GetIdentity() string { + if m != nil { + return m.Identity } return "" } -func (x *GetJoinTokenReq) GetMetaData() *ParticipantMetaData { - if x != nil { - return x.MetaData +func (m *GetJoinTokenReq) GetMetaData() *ParticipantMetaData { + if m != nil { + return m.MetaData } return nil } -func (x *GetJoinTokenReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetJoinTokenReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetJoinTokenResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` - Jwt string `protobuf:"bytes,2,opt,name=jwt,proto3" json:"jwt,omitempty"` - LiveURL string `protobuf:"bytes,3,opt,name=liveURL,proto3" json:"liveURL,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + Jwt string `protobuf:"bytes,2,opt,name=jwt" json:"jwt,omitempty"` + LiveURL string `protobuf:"bytes,3,opt,name=liveURL" json:"liveURL,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetJoinTokenResp) Reset() { - *x = GetJoinTokenResp{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetJoinTokenResp) Reset() { *m = GetJoinTokenResp{} } +func (m *GetJoinTokenResp) String() string { return proto.CompactTextString(m) } +func (*GetJoinTokenResp) ProtoMessage() {} +func (*GetJoinTokenResp) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{7} } - -func (x *GetJoinTokenResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetJoinTokenResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetJoinTokenResp.Unmarshal(m, b) } - -func (*GetJoinTokenResp) ProtoMessage() {} - -func (x *GetJoinTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetJoinTokenResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetJoinTokenResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetJoinTokenResp.ProtoReflect.Descriptor instead. -func (*GetJoinTokenResp) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{7} +func (dst *GetJoinTokenResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetJoinTokenResp.Merge(dst, src) +} +func (m *GetJoinTokenResp) XXX_Size() int { + return xxx_messageInfo_GetJoinTokenResp.Size(m) } +func (m *GetJoinTokenResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetJoinTokenResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetJoinTokenResp proto.InternalMessageInfo -func (x *GetJoinTokenResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetJoinTokenResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetJoinTokenResp) GetJwt() string { - if x != nil { - return x.Jwt +func (m *GetJoinTokenResp) GetJwt() string { + if m != nil { + return m.Jwt } return "" } -func (x *GetJoinTokenResp) GetLiveURL() string { - if x != nil { - return x.LiveURL +func (m *GetJoinTokenResp) GetLiveURL() string { + if m != nil { + return m.LiveURL } return "" } type OfflinePushInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - Desc string `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc,omitempty"` - Ex string `protobuf:"bytes,3,opt,name=ex,proto3" json:"ex,omitempty"` - IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound,proto3" json:"iOSPushSound,omitempty"` - IOSBadgeCount bool `protobuf:"varint,5,opt,name=iOSBadgeCount,proto3" json:"iOSBadgeCount,omitempty"` + Title string `protobuf:"bytes,1,opt,name=title" json:"title,omitempty"` + Desc string `protobuf:"bytes,2,opt,name=desc" json:"desc,omitempty"` + Ex string `protobuf:"bytes,3,opt,name=ex" json:"ex,omitempty"` + IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound" json:"iOSPushSound,omitempty"` + IOSBadgeCount bool `protobuf:"varint,5,opt,name=iOSBadgeCount" json:"iOSBadgeCount,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} } +func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } +func (*OfflinePushInfo) ProtoMessage() {} +func (*OfflinePushInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{8} } - -func (x *OfflinePushInfo) Reset() { - *x = OfflinePushInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) } - -func (x *OfflinePushInfo) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *OfflinePushInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_OfflinePushInfo.Marshal(b, m, deterministic) } - -func (*OfflinePushInfo) ProtoMessage() {} - -func (x *OfflinePushInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *OfflinePushInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_OfflinePushInfo.Merge(dst, src) } - -// Deprecated: Use OfflinePushInfo.ProtoReflect.Descriptor instead. -func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{8} +func (m *OfflinePushInfo) XXX_Size() int { + return xxx_messageInfo_OfflinePushInfo.Size(m) } +func (m *OfflinePushInfo) XXX_DiscardUnknown() { + xxx_messageInfo_OfflinePushInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_OfflinePushInfo proto.InternalMessageInfo -func (x *OfflinePushInfo) GetTitle() string { - if x != nil { - return x.Title +func (m *OfflinePushInfo) GetTitle() string { + if m != nil { + return m.Title } return "" } -func (x *OfflinePushInfo) GetDesc() string { - if x != nil { - return x.Desc +func (m *OfflinePushInfo) GetDesc() string { + if m != nil { + return m.Desc } return "" } -func (x *OfflinePushInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *OfflinePushInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } -func (x *OfflinePushInfo) GetIOSPushSound() string { - if x != nil { - return x.IOSPushSound +func (m *OfflinePushInfo) GetIOSPushSound() string { + if m != nil { + return m.IOSPushSound } return "" } -func (x *OfflinePushInfo) GetIOSBadgeCount() bool { - if x != nil { - return x.IOSBadgeCount +func (m *OfflinePushInfo) GetIOSBadgeCount() bool { + if m != nil { + return m.IOSBadgeCount } return false } type SignalReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Payload: + // Types that are valid to be assigned to Payload: // *SignalReq_Invite // *SignalReq_InviteInGroup // *SignalReq_Cancel // *SignalReq_Accept // *SignalReq_HungUp // *SignalReq_Reject - Payload isSignalReq_Payload `protobuf_oneof:"payload"` + Payload isSignalReq_Payload `protobuf_oneof:"payload"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalReq) Reset() { - *x = SignalReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalReq) Reset() { *m = SignalReq{} } +func (m *SignalReq) String() string { return proto.CompactTextString(m) } +func (*SignalReq) ProtoMessage() {} +func (*SignalReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{9} } - -func (x *SignalReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalReq.Unmarshal(m, b) +} +func (m *SignalReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalReq.Marshal(b, m, deterministic) +} +func (dst *SignalReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalReq.Merge(dst, src) +} +func (m *SignalReq) XXX_Size() int { + return xxx_messageInfo_SignalReq.Size(m) +} +func (m *SignalReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalReq.DiscardUnknown(m) } -func (*SignalReq) ProtoMessage() {} +var xxx_messageInfo_SignalReq proto.InternalMessageInfo -func (x *SignalReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +type isSignalReq_Payload interface { + isSignalReq_Payload() } -// Deprecated: Use SignalReq.ProtoReflect.Descriptor instead. -func (*SignalReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{9} +type SignalReq_Invite struct { + Invite *SignalInviteReq `protobuf:"bytes,1,opt,name=invite,oneof"` +} +type SignalReq_InviteInGroup struct { + InviteInGroup *SignalInviteInGroupReq `protobuf:"bytes,2,opt,name=inviteInGroup,oneof"` +} +type SignalReq_Cancel struct { + Cancel *SignalCancelReq `protobuf:"bytes,3,opt,name=cancel,oneof"` +} +type SignalReq_Accept struct { + Accept *SignalAcceptReq `protobuf:"bytes,4,opt,name=accept,oneof"` +} +type SignalReq_HungUp struct { + HungUp *SignalHungUpReq `protobuf:"bytes,5,opt,name=hungUp,oneof"` +} +type SignalReq_Reject struct { + Reject *SignalRejectReq `protobuf:"bytes,6,opt,name=reject,oneof"` } +func (*SignalReq_Invite) isSignalReq_Payload() {} +func (*SignalReq_InviteInGroup) isSignalReq_Payload() {} +func (*SignalReq_Cancel) isSignalReq_Payload() {} +func (*SignalReq_Accept) isSignalReq_Payload() {} +func (*SignalReq_HungUp) isSignalReq_Payload() {} +func (*SignalReq_Reject) isSignalReq_Payload() {} + func (m *SignalReq) GetPayload() isSignalReq_Payload { if m != nil { return m.Payload @@ -925,134 +864,265 @@ func (m *SignalReq) GetPayload() isSignalReq_Payload { return nil } -func (x *SignalReq) GetInvite() *SignalInviteReq { - if x, ok := x.GetPayload().(*SignalReq_Invite); ok { +func (m *SignalReq) GetInvite() *SignalInviteReq { + if x, ok := m.GetPayload().(*SignalReq_Invite); ok { return x.Invite } return nil } -func (x *SignalReq) GetInviteInGroup() *SignalInviteInGroupReq { - if x, ok := x.GetPayload().(*SignalReq_InviteInGroup); ok { +func (m *SignalReq) GetInviteInGroup() *SignalInviteInGroupReq { + if x, ok := m.GetPayload().(*SignalReq_InviteInGroup); ok { return x.InviteInGroup } return nil } -func (x *SignalReq) GetCancel() *SignalCancelReq { - if x, ok := x.GetPayload().(*SignalReq_Cancel); ok { +func (m *SignalReq) GetCancel() *SignalCancelReq { + if x, ok := m.GetPayload().(*SignalReq_Cancel); ok { return x.Cancel } return nil } -func (x *SignalReq) GetAccept() *SignalAcceptReq { - if x, ok := x.GetPayload().(*SignalReq_Accept); ok { +func (m *SignalReq) GetAccept() *SignalAcceptReq { + if x, ok := m.GetPayload().(*SignalReq_Accept); ok { return x.Accept } return nil } -func (x *SignalReq) GetHungUp() *SignalHungUpReq { - if x, ok := x.GetPayload().(*SignalReq_HungUp); ok { +func (m *SignalReq) GetHungUp() *SignalHungUpReq { + if x, ok := m.GetPayload().(*SignalReq_HungUp); ok { return x.HungUp } return nil } -func (x *SignalReq) GetReject() *SignalRejectReq { - if x, ok := x.GetPayload().(*SignalReq_Reject); ok { +func (m *SignalReq) GetReject() *SignalRejectReq { + if x, ok := m.GetPayload().(*SignalReq_Reject); ok { return x.Reject } return nil } -type isSignalReq_Payload interface { - isSignalReq_Payload() -} - -type SignalReq_Invite struct { - Invite *SignalInviteReq `protobuf:"bytes,1,opt,name=invite,proto3,oneof"` -} - -type SignalReq_InviteInGroup struct { - InviteInGroup *SignalInviteInGroupReq `protobuf:"bytes,2,opt,name=inviteInGroup,proto3,oneof"` -} - -type SignalReq_Cancel struct { - Cancel *SignalCancelReq `protobuf:"bytes,3,opt,name=cancel,proto3,oneof"` -} - -type SignalReq_Accept struct { - Accept *SignalAcceptReq `protobuf:"bytes,4,opt,name=accept,proto3,oneof"` +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SignalReq) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SignalReq_OneofMarshaler, _SignalReq_OneofUnmarshaler, _SignalReq_OneofSizer, []interface{}{ + (*SignalReq_Invite)(nil), + (*SignalReq_InviteInGroup)(nil), + (*SignalReq_Cancel)(nil), + (*SignalReq_Accept)(nil), + (*SignalReq_HungUp)(nil), + (*SignalReq_Reject)(nil), + } } -type SignalReq_HungUp struct { - HungUp *SignalHungUpReq `protobuf:"bytes,5,opt,name=hungUp,proto3,oneof"` +func _SignalReq_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SignalReq) + // payload + switch x := m.Payload.(type) { + case *SignalReq_Invite: + b.EncodeVarint(1<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Invite); err != nil { + return err + } + case *SignalReq_InviteInGroup: + b.EncodeVarint(2<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.InviteInGroup); err != nil { + return err + } + case *SignalReq_Cancel: + b.EncodeVarint(3<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Cancel); err != nil { + return err + } + case *SignalReq_Accept: + b.EncodeVarint(4<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Accept); err != nil { + return err + } + case *SignalReq_HungUp: + b.EncodeVarint(5<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.HungUp); err != nil { + return err + } + case *SignalReq_Reject: + b.EncodeVarint(6<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Reject); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SignalReq.Payload has unexpected type %T", x) + } + return nil } -type SignalReq_Reject struct { - Reject *SignalRejectReq `protobuf:"bytes,6,opt,name=reject,proto3,oneof"` +func _SignalReq_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SignalReq) + switch tag { + case 1: // payload.invite + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalInviteReq) + err := b.DecodeMessage(msg) + m.Payload = &SignalReq_Invite{msg} + return true, err + case 2: // payload.inviteInGroup + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalInviteInGroupReq) + err := b.DecodeMessage(msg) + m.Payload = &SignalReq_InviteInGroup{msg} + return true, err + case 3: // payload.cancel + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalCancelReq) + err := b.DecodeMessage(msg) + m.Payload = &SignalReq_Cancel{msg} + return true, err + case 4: // payload.accept + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalAcceptReq) + err := b.DecodeMessage(msg) + m.Payload = &SignalReq_Accept{msg} + return true, err + case 5: // payload.hungUp + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalHungUpReq) + err := b.DecodeMessage(msg) + m.Payload = &SignalReq_HungUp{msg} + return true, err + case 6: // payload.reject + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalRejectReq) + err := b.DecodeMessage(msg) + m.Payload = &SignalReq_Reject{msg} + return true, err + default: + return false, nil + } +} + +func _SignalReq_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SignalReq) + // payload + switch x := m.Payload.(type) { + case *SignalReq_Invite: + s := proto.Size(x.Invite) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalReq_InviteInGroup: + s := proto.Size(x.InviteInGroup) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalReq_Cancel: + s := proto.Size(x.Cancel) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalReq_Accept: + s := proto.Size(x.Accept) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalReq_HungUp: + s := proto.Size(x.HungUp) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalReq_Reject: + s := proto.Size(x.Reject) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n } -func (*SignalReq_Invite) isSignalReq_Payload() {} - -func (*SignalReq_InviteInGroup) isSignalReq_Payload() {} - -func (*SignalReq_Cancel) isSignalReq_Payload() {} - -func (*SignalReq_Accept) isSignalReq_Payload() {} - -func (*SignalReq_HungUp) isSignalReq_Payload() {} - -func (*SignalReq_Reject) isSignalReq_Payload() {} - type SignalResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Payload: + // Types that are valid to be assigned to Payload: // *SignalResp_Invite // *SignalResp_InviteInGroup // *SignalResp_Cancel // *SignalResp_Accept // *SignalResp_HungUp // *SignalResp_Reject - Payload isSignalResp_Payload `protobuf_oneof:"payload"` + Payload isSignalResp_Payload `protobuf_oneof:"payload"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalResp) Reset() { - *x = SignalResp{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalResp) Reset() { *m = SignalResp{} } +func (m *SignalResp) String() string { return proto.CompactTextString(m) } +func (*SignalResp) ProtoMessage() {} +func (*SignalResp) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{10} } - -func (x *SignalResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalResp.Unmarshal(m, b) +} +func (m *SignalResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalResp.Marshal(b, m, deterministic) +} +func (dst *SignalResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalResp.Merge(dst, src) +} +func (m *SignalResp) XXX_Size() int { + return xxx_messageInfo_SignalResp.Size(m) +} +func (m *SignalResp) XXX_DiscardUnknown() { + xxx_messageInfo_SignalResp.DiscardUnknown(m) } -func (*SignalResp) ProtoMessage() {} - -func (x *SignalResp) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +var xxx_messageInfo_SignalResp proto.InternalMessageInfo + +type isSignalResp_Payload interface { + isSignalResp_Payload() } -// Deprecated: Use SignalResp.ProtoReflect.Descriptor instead. -func (*SignalResp) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{10} +type SignalResp_Invite struct { + Invite *SignalInviteReply `protobuf:"bytes,1,opt,name=invite,oneof"` } +type SignalResp_InviteInGroup struct { + InviteInGroup *SignalInviteInGroupReply `protobuf:"bytes,2,opt,name=inviteInGroup,oneof"` +} +type SignalResp_Cancel struct { + Cancel *SignalCancelReply `protobuf:"bytes,3,opt,name=cancel,oneof"` +} +type SignalResp_Accept struct { + Accept *SignalAcceptReply `protobuf:"bytes,4,opt,name=accept,oneof"` +} +type SignalResp_HungUp struct { + HungUp *SignalHungUpReply `protobuf:"bytes,5,opt,name=hungUp,oneof"` +} +type SignalResp_Reject struct { + Reject *SignalRejectReply `protobuf:"bytes,6,opt,name=reject,oneof"` +} + +func (*SignalResp_Invite) isSignalResp_Payload() {} +func (*SignalResp_InviteInGroup) isSignalResp_Payload() {} +func (*SignalResp_Cancel) isSignalResp_Payload() {} +func (*SignalResp_Accept) isSignalResp_Payload() {} +func (*SignalResp_HungUp) isSignalResp_Payload() {} +func (*SignalResp_Reject) isSignalResp_Payload() {} func (m *SignalResp) GetPayload() isSignalResp_Payload { if m != nil { @@ -1061,1899 +1131,1115 @@ func (m *SignalResp) GetPayload() isSignalResp_Payload { return nil } -func (x *SignalResp) GetInvite() *SignalInviteReply { - if x, ok := x.GetPayload().(*SignalResp_Invite); ok { +func (m *SignalResp) GetInvite() *SignalInviteReply { + if x, ok := m.GetPayload().(*SignalResp_Invite); ok { return x.Invite } return nil } -func (x *SignalResp) GetInviteInGroup() *SignalInviteInGroupReply { - if x, ok := x.GetPayload().(*SignalResp_InviteInGroup); ok { +func (m *SignalResp) GetInviteInGroup() *SignalInviteInGroupReply { + if x, ok := m.GetPayload().(*SignalResp_InviteInGroup); ok { return x.InviteInGroup } return nil } -func (x *SignalResp) GetCancel() *SignalCancelReply { - if x, ok := x.GetPayload().(*SignalResp_Cancel); ok { +func (m *SignalResp) GetCancel() *SignalCancelReply { + if x, ok := m.GetPayload().(*SignalResp_Cancel); ok { return x.Cancel } return nil } -func (x *SignalResp) GetAccept() *SignalAcceptReply { - if x, ok := x.GetPayload().(*SignalResp_Accept); ok { +func (m *SignalResp) GetAccept() *SignalAcceptReply { + if x, ok := m.GetPayload().(*SignalResp_Accept); ok { return x.Accept } return nil } -func (x *SignalResp) GetHungUp() *SignalHungUpReply { - if x, ok := x.GetPayload().(*SignalResp_HungUp); ok { +func (m *SignalResp) GetHungUp() *SignalHungUpReply { + if x, ok := m.GetPayload().(*SignalResp_HungUp); ok { return x.HungUp } return nil } -func (x *SignalResp) GetReject() *SignalRejectReply { - if x, ok := x.GetPayload().(*SignalResp_Reject); ok { +func (m *SignalResp) GetReject() *SignalRejectReply { + if x, ok := m.GetPayload().(*SignalResp_Reject); ok { return x.Reject } return nil } -type isSignalResp_Payload interface { - isSignalResp_Payload() -} - -type SignalResp_Invite struct { - Invite *SignalInviteReply `protobuf:"bytes,1,opt,name=invite,proto3,oneof"` -} - -type SignalResp_InviteInGroup struct { - InviteInGroup *SignalInviteInGroupReply `protobuf:"bytes,2,opt,name=inviteInGroup,proto3,oneof"` +// XXX_OneofFuncs is for the internal use of the proto package. +func (*SignalResp) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { + return _SignalResp_OneofMarshaler, _SignalResp_OneofUnmarshaler, _SignalResp_OneofSizer, []interface{}{ + (*SignalResp_Invite)(nil), + (*SignalResp_InviteInGroup)(nil), + (*SignalResp_Cancel)(nil), + (*SignalResp_Accept)(nil), + (*SignalResp_HungUp)(nil), + (*SignalResp_Reject)(nil), + } } -type SignalResp_Cancel struct { - Cancel *SignalCancelReply `protobuf:"bytes,3,opt,name=cancel,proto3,oneof"` +func _SignalResp_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { + m := msg.(*SignalResp) + // payload + switch x := m.Payload.(type) { + case *SignalResp_Invite: + b.EncodeVarint(1<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Invite); err != nil { + return err + } + case *SignalResp_InviteInGroup: + b.EncodeVarint(2<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.InviteInGroup); err != nil { + return err + } + case *SignalResp_Cancel: + b.EncodeVarint(3<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Cancel); err != nil { + return err + } + case *SignalResp_Accept: + b.EncodeVarint(4<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Accept); err != nil { + return err + } + case *SignalResp_HungUp: + b.EncodeVarint(5<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.HungUp); err != nil { + return err + } + case *SignalResp_Reject: + b.EncodeVarint(6<<3 | proto.WireBytes) + if err := b.EncodeMessage(x.Reject); err != nil { + return err + } + case nil: + default: + return fmt.Errorf("SignalResp.Payload has unexpected type %T", x) + } + return nil } -type SignalResp_Accept struct { - Accept *SignalAcceptReply `protobuf:"bytes,4,opt,name=accept,proto3,oneof"` +func _SignalResp_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { + m := msg.(*SignalResp) + switch tag { + case 1: // payload.invite + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalInviteReply) + err := b.DecodeMessage(msg) + m.Payload = &SignalResp_Invite{msg} + return true, err + case 2: // payload.inviteInGroup + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalInviteInGroupReply) + err := b.DecodeMessage(msg) + m.Payload = &SignalResp_InviteInGroup{msg} + return true, err + case 3: // payload.cancel + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalCancelReply) + err := b.DecodeMessage(msg) + m.Payload = &SignalResp_Cancel{msg} + return true, err + case 4: // payload.accept + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalAcceptReply) + err := b.DecodeMessage(msg) + m.Payload = &SignalResp_Accept{msg} + return true, err + case 5: // payload.hungUp + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalHungUpReply) + err := b.DecodeMessage(msg) + m.Payload = &SignalResp_HungUp{msg} + return true, err + case 6: // payload.reject + if wire != proto.WireBytes { + return true, proto.ErrInternalBadWireType + } + msg := new(SignalRejectReply) + err := b.DecodeMessage(msg) + m.Payload = &SignalResp_Reject{msg} + return true, err + default: + return false, nil + } +} + +func _SignalResp_OneofSizer(msg proto.Message) (n int) { + m := msg.(*SignalResp) + // payload + switch x := m.Payload.(type) { + case *SignalResp_Invite: + s := proto.Size(x.Invite) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalResp_InviteInGroup: + s := proto.Size(x.InviteInGroup) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalResp_Cancel: + s := proto.Size(x.Cancel) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalResp_Accept: + s := proto.Size(x.Accept) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalResp_HungUp: + s := proto.Size(x.HungUp) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case *SignalResp_Reject: + s := proto.Size(x.Reject) + n += 1 // tag and wire + n += proto.SizeVarint(uint64(s)) + n += s + case nil: + default: + panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) + } + return n } -type SignalResp_HungUp struct { - HungUp *SignalHungUpReply `protobuf:"bytes,5,opt,name=hungUp,proto3,oneof"` +type InvitationInfo struct { + InviterUserID string `protobuf:"bytes,1,opt,name=inviterUserID" json:"inviterUserID,omitempty"` + InviteeUserIDList []string `protobuf:"bytes,2,rep,name=inviteeUserIDList" json:"inviteeUserIDList,omitempty"` + CustomData string `protobuf:"bytes,3,opt,name=customData" json:"customData,omitempty"` + GroupID string `protobuf:"bytes,4,opt,name=groupID" json:"groupID,omitempty"` + RoomID string `protobuf:"bytes,5,opt,name=roomID" json:"roomID,omitempty"` + Timeout int32 `protobuf:"varint,6,opt,name=timeout" json:"timeout,omitempty"` + MediaType string `protobuf:"bytes,7,opt,name=mediaType" json:"mediaType,omitempty"` + PlatformID int32 `protobuf:"varint,8,opt,name=platformID" json:"platformID,omitempty"` + SessionType int32 `protobuf:"varint,9,opt,name=sessionType" json:"sessionType,omitempty"` + InitiateTime int32 `protobuf:"varint,10,opt,name=initiateTime" json:"initiateTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *InvitationInfo) Reset() { *m = InvitationInfo{} } +func (m *InvitationInfo) String() string { return proto.CompactTextString(m) } +func (*InvitationInfo) ProtoMessage() {} +func (*InvitationInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{11} } - -type SignalResp_Reject struct { - Reject *SignalRejectReply `protobuf:"bytes,6,opt,name=reject,proto3,oneof"` +func (m *InvitationInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_InvitationInfo.Unmarshal(m, b) } - -func (*SignalResp_Invite) isSignalResp_Payload() {} - -func (*SignalResp_InviteInGroup) isSignalResp_Payload() {} - -func (*SignalResp_Cancel) isSignalResp_Payload() {} - -func (*SignalResp_Accept) isSignalResp_Payload() {} - -func (*SignalResp_HungUp) isSignalResp_Payload() {} - -func (*SignalResp_Reject) isSignalResp_Payload() {} - -type InvitationInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InviterUserID string `protobuf:"bytes,1,opt,name=inviterUserID,proto3" json:"inviterUserID,omitempty"` - InviteeUserIDList []string `protobuf:"bytes,2,rep,name=inviteeUserIDList,proto3" json:"inviteeUserIDList,omitempty"` - CustomData string `protobuf:"bytes,3,opt,name=customData,proto3" json:"customData,omitempty"` - GroupID string `protobuf:"bytes,4,opt,name=groupID,proto3" json:"groupID,omitempty"` - RoomID string `protobuf:"bytes,5,opt,name=roomID,proto3" json:"roomID,omitempty"` - Timeout int32 `protobuf:"varint,6,opt,name=timeout,proto3" json:"timeout,omitempty"` - MediaType string `protobuf:"bytes,7,opt,name=mediaType,proto3" json:"mediaType,omitempty"` - PlatformID int32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID,omitempty"` - SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType,omitempty"` +func (m *InvitationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_InvitationInfo.Marshal(b, m, deterministic) } - -func (x *InvitationInfo) Reset() { - *x = InvitationInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (dst *InvitationInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_InvitationInfo.Merge(dst, src) } - -func (x *InvitationInfo) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *InvitationInfo) XXX_Size() int { + return xxx_messageInfo_InvitationInfo.Size(m) } - -func (*InvitationInfo) ProtoMessage() {} - -func (x *InvitationInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *InvitationInfo) XXX_DiscardUnknown() { + xxx_messageInfo_InvitationInfo.DiscardUnknown(m) } -// Deprecated: Use InvitationInfo.ProtoReflect.Descriptor instead. -func (*InvitationInfo) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{11} -} +var xxx_messageInfo_InvitationInfo proto.InternalMessageInfo -func (x *InvitationInfo) GetInviterUserID() string { - if x != nil { - return x.InviterUserID +func (m *InvitationInfo) GetInviterUserID() string { + if m != nil { + return m.InviterUserID } return "" } -func (x *InvitationInfo) GetInviteeUserIDList() []string { - if x != nil { - return x.InviteeUserIDList +func (m *InvitationInfo) GetInviteeUserIDList() []string { + if m != nil { + return m.InviteeUserIDList } return nil } -func (x *InvitationInfo) GetCustomData() string { - if x != nil { - return x.CustomData +func (m *InvitationInfo) GetCustomData() string { + if m != nil { + return m.CustomData } return "" } -func (x *InvitationInfo) GetGroupID() string { - if x != nil { - return x.GroupID +func (m *InvitationInfo) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *InvitationInfo) GetRoomID() string { - if x != nil { - return x.RoomID +func (m *InvitationInfo) GetRoomID() string { + if m != nil { + return m.RoomID } return "" } -func (x *InvitationInfo) GetTimeout() int32 { - if x != nil { - return x.Timeout +func (m *InvitationInfo) GetTimeout() int32 { + if m != nil { + return m.Timeout } return 0 } -func (x *InvitationInfo) GetMediaType() string { - if x != nil { - return x.MediaType +func (m *InvitationInfo) GetMediaType() string { + if m != nil { + return m.MediaType } return "" } -func (x *InvitationInfo) GetPlatformID() int32 { - if x != nil { - return x.PlatformID +func (m *InvitationInfo) GetPlatformID() int32 { + if m != nil { + return m.PlatformID } return 0 } -func (x *InvitationInfo) GetSessionType() int32 { - if x != nil { - return x.SessionType +func (m *InvitationInfo) GetSessionType() int32 { + if m != nil { + return m.SessionType } return 0 } -type SignalInviteReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID,omitempty"` - Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation,proto3" json:"invitation,omitempty"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` - Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"` -} - -func (x *SignalInviteReq) Reset() { - *x = SignalInviteReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (m *InvitationInfo) GetInitiateTime() int32 { + if m != nil { + return m.InitiateTime } + return 0 } -func (x *SignalInviteReq) String() string { - return protoimpl.X.MessageStringOf(x) +type SignalInviteReq struct { + OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"` + Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignalInviteReq) Reset() { *m = SignalInviteReq{} } +func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) } +func (*SignalInviteReq) ProtoMessage() {} +func (*SignalInviteReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{12} } - -func (*SignalInviteReq) ProtoMessage() {} - -func (x *SignalInviteReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b) } - -// Deprecated: Use SignalInviteReq.ProtoReflect.Descriptor instead. -func (*SignalInviteReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{12} +func (m *SignalInviteReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalInviteReq.Marshal(b, m, deterministic) +} +func (dst *SignalInviteReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalInviteReq.Merge(dst, src) +} +func (m *SignalInviteReq) XXX_Size() int { + return xxx_messageInfo_SignalInviteReq.Size(m) } +func (m *SignalInviteReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalInviteReq.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalInviteReq proto.InternalMessageInfo -func (x *SignalInviteReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *SignalInviteReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *SignalInviteReq) GetInvitation() *InvitationInfo { - if x != nil { - return x.Invitation +func (m *SignalInviteReq) GetInvitation() *InvitationInfo { + if m != nil { + return m.Invitation } return nil } -func (x *SignalInviteReq) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *SignalInviteReq) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } -func (x *SignalInviteReq) GetParticipant() *ParticipantMetaData { - if x != nil { - return x.Participant +func (m *SignalInviteReq) GetParticipant() *ParticipantMetaData { + if m != nil { + return m.Participant } return nil } type SignalInviteReply struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` - RoomID string `protobuf:"bytes,2,opt,name=roomID,proto3" json:"roomID,omitempty"` - LiveURL string `protobuf:"bytes,3,opt,name=liveURL,proto3" json:"liveURL,omitempty"` + Token string `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"` + RoomID string `protobuf:"bytes,2,opt,name=roomID" json:"roomID,omitempty"` + LiveURL string `protobuf:"bytes,3,opt,name=liveURL" json:"liveURL,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalInviteReply) Reset() { - *x = SignalInviteReply{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalInviteReply) Reset() { *m = SignalInviteReply{} } +func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) } +func (*SignalInviteReply) ProtoMessage() {} +func (*SignalInviteReply) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{13} } - -func (x *SignalInviteReply) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b) } - -func (*SignalInviteReply) ProtoMessage() {} - -func (x *SignalInviteReply) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalInviteReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalInviteReply.Marshal(b, m, deterministic) } - -// Deprecated: Use SignalInviteReply.ProtoReflect.Descriptor instead. -func (*SignalInviteReply) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{13} +func (dst *SignalInviteReply) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalInviteReply.Merge(dst, src) +} +func (m *SignalInviteReply) XXX_Size() int { + return xxx_messageInfo_SignalInviteReply.Size(m) } +func (m *SignalInviteReply) XXX_DiscardUnknown() { + xxx_messageInfo_SignalInviteReply.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalInviteReply proto.InternalMessageInfo -func (x *SignalInviteReply) GetToken() string { - if x != nil { - return x.Token +func (m *SignalInviteReply) GetToken() string { + if m != nil { + return m.Token } return "" } -func (x *SignalInviteReply) GetRoomID() string { - if x != nil { - return x.RoomID +func (m *SignalInviteReply) GetRoomID() string { + if m != nil { + return m.RoomID } return "" } -func (x *SignalInviteReply) GetLiveURL() string { - if x != nil { - return x.LiveURL +func (m *SignalInviteReply) GetLiveURL() string { + if m != nil { + return m.LiveURL } return "" } type SignalInviteInGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID,omitempty"` - Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation,proto3" json:"invitation,omitempty"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` - Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"` + OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"` + Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignalInviteInGroupReq) Reset() { *m = SignalInviteInGroupReq{} } +func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) } +func (*SignalInviteInGroupReq) ProtoMessage() {} +func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{14} } - -func (x *SignalInviteInGroupReq) Reset() { - *x = SignalInviteInGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b) } - -func (x *SignalInviteInGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalInviteInGroupReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalInviteInGroupReq.Marshal(b, m, deterministic) } - -func (*SignalInviteInGroupReq) ProtoMessage() {} - -func (x *SignalInviteInGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *SignalInviteInGroupReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalInviteInGroupReq.Merge(dst, src) } - -// Deprecated: Use SignalInviteInGroupReq.ProtoReflect.Descriptor instead. -func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{14} +func (m *SignalInviteInGroupReq) XXX_Size() int { + return xxx_messageInfo_SignalInviteInGroupReq.Size(m) } +func (m *SignalInviteInGroupReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalInviteInGroupReq.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalInviteInGroupReq proto.InternalMessageInfo -func (x *SignalInviteInGroupReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *SignalInviteInGroupReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *SignalInviteInGroupReq) GetInvitation() *InvitationInfo { - if x != nil { - return x.Invitation +func (m *SignalInviteInGroupReq) GetInvitation() *InvitationInfo { + if m != nil { + return m.Invitation } return nil } -func (x *SignalInviteInGroupReq) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *SignalInviteInGroupReq) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } -func (x *SignalInviteInGroupReq) GetParticipant() *ParticipantMetaData { - if x != nil { - return x.Participant +func (m *SignalInviteInGroupReq) GetParticipant() *ParticipantMetaData { + if m != nil { + return m.Participant } return nil } type SignalInviteInGroupReply struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` - RoomID string `protobuf:"bytes,2,opt,name=roomID,proto3" json:"roomID,omitempty"` - LiveURL string `protobuf:"bytes,3,opt,name=liveURL,proto3" json:"liveURL,omitempty"` + Token string `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"` + RoomID string `protobuf:"bytes,2,opt,name=roomID" json:"roomID,omitempty"` + LiveURL string `protobuf:"bytes,3,opt,name=liveURL" json:"liveURL,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalInviteInGroupReply) Reset() { - *x = SignalInviteInGroupReply{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalInviteInGroupReply) Reset() { *m = SignalInviteInGroupReply{} } +func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) } +func (*SignalInviteInGroupReply) ProtoMessage() {} +func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{15} } - -func (x *SignalInviteInGroupReply) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b) } - -func (*SignalInviteInGroupReply) ProtoMessage() {} - -func (x *SignalInviteInGroupReply) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalInviteInGroupReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalInviteInGroupReply.Marshal(b, m, deterministic) } - -// Deprecated: Use SignalInviteInGroupReply.ProtoReflect.Descriptor instead. -func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{15} +func (dst *SignalInviteInGroupReply) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalInviteInGroupReply.Merge(dst, src) +} +func (m *SignalInviteInGroupReply) XXX_Size() int { + return xxx_messageInfo_SignalInviteInGroupReply.Size(m) +} +func (m *SignalInviteInGroupReply) XXX_DiscardUnknown() { + xxx_messageInfo_SignalInviteInGroupReply.DiscardUnknown(m) } -func (x *SignalInviteInGroupReply) GetToken() string { - if x != nil { - return x.Token +var xxx_messageInfo_SignalInviteInGroupReply proto.InternalMessageInfo + +func (m *SignalInviteInGroupReply) GetToken() string { + if m != nil { + return m.Token } return "" } -func (x *SignalInviteInGroupReply) GetRoomID() string { - if x != nil { - return x.RoomID +func (m *SignalInviteInGroupReply) GetRoomID() string { + if m != nil { + return m.RoomID } return "" } -func (x *SignalInviteInGroupReply) GetLiveURL() string { - if x != nil { - return x.LiveURL +func (m *SignalInviteInGroupReply) GetLiveURL() string { + if m != nil { + return m.LiveURL } return "" } type SignalCancelReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID,omitempty"` - Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation,proto3" json:"invitation,omitempty"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` - Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"` + OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"` + Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignalCancelReq) Reset() { *m = SignalCancelReq{} } +func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) } +func (*SignalCancelReq) ProtoMessage() {} +func (*SignalCancelReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{16} } - -func (x *SignalCancelReq) Reset() { - *x = SignalCancelReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b) } - -func (x *SignalCancelReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalCancelReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalCancelReq.Marshal(b, m, deterministic) } - -func (*SignalCancelReq) ProtoMessage() {} - -func (x *SignalCancelReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *SignalCancelReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalCancelReq.Merge(dst, src) } - -// Deprecated: Use SignalCancelReq.ProtoReflect.Descriptor instead. -func (*SignalCancelReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{16} +func (m *SignalCancelReq) XXX_Size() int { + return xxx_messageInfo_SignalCancelReq.Size(m) +} +func (m *SignalCancelReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalCancelReq.DiscardUnknown(m) } -func (x *SignalCancelReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +var xxx_messageInfo_SignalCancelReq proto.InternalMessageInfo + +func (m *SignalCancelReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *SignalCancelReq) GetInvitation() *InvitationInfo { - if x != nil { - return x.Invitation +func (m *SignalCancelReq) GetInvitation() *InvitationInfo { + if m != nil { + return m.Invitation } return nil } -func (x *SignalCancelReq) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *SignalCancelReq) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } -func (x *SignalCancelReq) GetParticipant() *ParticipantMetaData { - if x != nil { - return x.Participant +func (m *SignalCancelReq) GetParticipant() *ParticipantMetaData { + if m != nil { + return m.Participant } return nil } type SignalCancelReply struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalCancelReply) Reset() { - *x = SignalCancelReply{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalCancelReply) Reset() { *m = SignalCancelReply{} } +func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) } +func (*SignalCancelReply) ProtoMessage() {} +func (*SignalCancelReply) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{17} } - -func (x *SignalCancelReply) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b) } - -func (*SignalCancelReply) ProtoMessage() {} - -func (x *SignalCancelReply) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalCancelReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalCancelReply.Marshal(b, m, deterministic) } - -// Deprecated: Use SignalCancelReply.ProtoReflect.Descriptor instead. -func (*SignalCancelReply) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{17} +func (dst *SignalCancelReply) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalCancelReply.Merge(dst, src) +} +func (m *SignalCancelReply) XXX_Size() int { + return xxx_messageInfo_SignalCancelReply.Size(m) +} +func (m *SignalCancelReply) XXX_DiscardUnknown() { + xxx_messageInfo_SignalCancelReply.DiscardUnknown(m) } -type SignalAcceptReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +var xxx_messageInfo_SignalCancelReply proto.InternalMessageInfo - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID,omitempty"` - Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation,proto3" json:"invitation,omitempty"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` - Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"` - OpUserPlatformID int32 `protobuf:"varint,5,opt,name=opUserPlatformID,proto3" json:"opUserPlatformID,omitempty"` +type SignalAcceptReq struct { + OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"` + Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"` + OpUserPlatformID int32 `protobuf:"varint,5,opt,name=opUserPlatformID" json:"opUserPlatformID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignalAcceptReq) Reset() { *m = SignalAcceptReq{} } +func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) } +func (*SignalAcceptReq) ProtoMessage() {} +func (*SignalAcceptReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{18} } - -func (x *SignalAcceptReq) Reset() { - *x = SignalAcceptReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b) } - -func (x *SignalAcceptReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalAcceptReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalAcceptReq.Marshal(b, m, deterministic) } - -func (*SignalAcceptReq) ProtoMessage() {} - -func (x *SignalAcceptReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *SignalAcceptReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalAcceptReq.Merge(dst, src) } - -// Deprecated: Use SignalAcceptReq.ProtoReflect.Descriptor instead. -func (*SignalAcceptReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{18} +func (m *SignalAcceptReq) XXX_Size() int { + return xxx_messageInfo_SignalAcceptReq.Size(m) +} +func (m *SignalAcceptReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalAcceptReq.DiscardUnknown(m) } -func (x *SignalAcceptReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +var xxx_messageInfo_SignalAcceptReq proto.InternalMessageInfo + +func (m *SignalAcceptReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *SignalAcceptReq) GetInvitation() *InvitationInfo { - if x != nil { - return x.Invitation +func (m *SignalAcceptReq) GetInvitation() *InvitationInfo { + if m != nil { + return m.Invitation } return nil } -func (x *SignalAcceptReq) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *SignalAcceptReq) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } -func (x *SignalAcceptReq) GetParticipant() *ParticipantMetaData { - if x != nil { - return x.Participant +func (m *SignalAcceptReq) GetParticipant() *ParticipantMetaData { + if m != nil { + return m.Participant } return nil } -func (x *SignalAcceptReq) GetOpUserPlatformID() int32 { - if x != nil { - return x.OpUserPlatformID +func (m *SignalAcceptReq) GetOpUserPlatformID() int32 { + if m != nil { + return m.OpUserPlatformID } return 0 } type SignalAcceptReply struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` - RoomID string `protobuf:"bytes,2,opt,name=roomID,proto3" json:"roomID,omitempty"` - LiveURL string `protobuf:"bytes,3,opt,name=liveURL,proto3" json:"liveURL,omitempty"` + Token string `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"` + RoomID string `protobuf:"bytes,2,opt,name=roomID" json:"roomID,omitempty"` + LiveURL string `protobuf:"bytes,3,opt,name=liveURL" json:"liveURL,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalAcceptReply) Reset() { - *x = SignalAcceptReply{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalAcceptReply) Reset() { *m = SignalAcceptReply{} } +func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) } +func (*SignalAcceptReply) ProtoMessage() {} +func (*SignalAcceptReply) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{19} } - -func (x *SignalAcceptReply) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b) } - -func (*SignalAcceptReply) ProtoMessage() {} - -func (x *SignalAcceptReply) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalAcceptReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalAcceptReply.Marshal(b, m, deterministic) } - -// Deprecated: Use SignalAcceptReply.ProtoReflect.Descriptor instead. -func (*SignalAcceptReply) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{19} +func (dst *SignalAcceptReply) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalAcceptReply.Merge(dst, src) } +func (m *SignalAcceptReply) XXX_Size() int { + return xxx_messageInfo_SignalAcceptReply.Size(m) +} +func (m *SignalAcceptReply) XXX_DiscardUnknown() { + xxx_messageInfo_SignalAcceptReply.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalAcceptReply proto.InternalMessageInfo -func (x *SignalAcceptReply) GetToken() string { - if x != nil { - return x.Token +func (m *SignalAcceptReply) GetToken() string { + if m != nil { + return m.Token } return "" } -func (x *SignalAcceptReply) GetRoomID() string { - if x != nil { - return x.RoomID +func (m *SignalAcceptReply) GetRoomID() string { + if m != nil { + return m.RoomID } return "" } -func (x *SignalAcceptReply) GetLiveURL() string { - if x != nil { - return x.LiveURL +func (m *SignalAcceptReply) GetLiveURL() string { + if m != nil { + return m.LiveURL } return "" } type SignalHungUpReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID,omitempty"` - Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation,proto3" json:"invitation,omitempty"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` + OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"` + Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalHungUpReq) Reset() { - *x = SignalHungUpReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalHungUpReq) Reset() { *m = SignalHungUpReq{} } +func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) } +func (*SignalHungUpReq) ProtoMessage() {} +func (*SignalHungUpReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{20} } - -func (x *SignalHungUpReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b) } - -func (*SignalHungUpReq) ProtoMessage() {} - -func (x *SignalHungUpReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalHungUpReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalHungUpReq.Marshal(b, m, deterministic) } - -// Deprecated: Use SignalHungUpReq.ProtoReflect.Descriptor instead. -func (*SignalHungUpReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{20} +func (dst *SignalHungUpReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalHungUpReq.Merge(dst, src) +} +func (m *SignalHungUpReq) XXX_Size() int { + return xxx_messageInfo_SignalHungUpReq.Size(m) } +func (m *SignalHungUpReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalHungUpReq.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalHungUpReq proto.InternalMessageInfo -func (x *SignalHungUpReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *SignalHungUpReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *SignalHungUpReq) GetInvitation() *InvitationInfo { - if x != nil { - return x.Invitation +func (m *SignalHungUpReq) GetInvitation() *InvitationInfo { + if m != nil { + return m.Invitation } return nil } -func (x *SignalHungUpReq) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *SignalHungUpReq) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } type SignalHungUpReply struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalHungUpReply) Reset() { - *x = SignalHungUpReply{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalHungUpReply) Reset() { *m = SignalHungUpReply{} } +func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) } +func (*SignalHungUpReply) ProtoMessage() {} +func (*SignalHungUpReply) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{21} } - -func (x *SignalHungUpReply) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b) } - -func (*SignalHungUpReply) ProtoMessage() {} - -func (x *SignalHungUpReply) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalHungUpReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalHungUpReply.Marshal(b, m, deterministic) } - -// Deprecated: Use SignalHungUpReply.ProtoReflect.Descriptor instead. -func (*SignalHungUpReply) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{21} +func (dst *SignalHungUpReply) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalHungUpReply.Merge(dst, src) +} +func (m *SignalHungUpReply) XXX_Size() int { + return xxx_messageInfo_SignalHungUpReply.Size(m) +} +func (m *SignalHungUpReply) XXX_DiscardUnknown() { + xxx_messageInfo_SignalHungUpReply.DiscardUnknown(m) } -type SignalRejectReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +var xxx_messageInfo_SignalHungUpReply proto.InternalMessageInfo - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID,omitempty"` - Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation,proto3" json:"invitation,omitempty"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` - Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"` - OpUserPlatformID int32 `protobuf:"varint,5,opt,name=opUserPlatformID,proto3" json:"opUserPlatformID,omitempty"` +type SignalRejectReq struct { + OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"` + Invitation *InvitationInfo `protobuf:"bytes,2,opt,name=invitation" json:"invitation,omitempty"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,3,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + Participant *ParticipantMetaData `protobuf:"bytes,4,opt,name=participant" json:"participant,omitempty"` + OpUserPlatformID int32 `protobuf:"varint,5,opt,name=opUserPlatformID" json:"opUserPlatformID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignalRejectReq) Reset() { *m = SignalRejectReq{} } +func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) } +func (*SignalRejectReq) ProtoMessage() {} +func (*SignalRejectReq) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{22} } - -func (x *SignalRejectReq) Reset() { - *x = SignalRejectReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b) } - -func (x *SignalRejectReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalRejectReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalRejectReq.Marshal(b, m, deterministic) } - -func (*SignalRejectReq) ProtoMessage() {} - -func (x *SignalRejectReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *SignalRejectReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalRejectReq.Merge(dst, src) } - -// Deprecated: Use SignalRejectReq.ProtoReflect.Descriptor instead. -func (*SignalRejectReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{22} +func (m *SignalRejectReq) XXX_Size() int { + return xxx_messageInfo_SignalRejectReq.Size(m) } +func (m *SignalRejectReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalRejectReq.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalRejectReq proto.InternalMessageInfo -func (x *SignalRejectReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *SignalRejectReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *SignalRejectReq) GetInvitation() *InvitationInfo { - if x != nil { - return x.Invitation +func (m *SignalRejectReq) GetInvitation() *InvitationInfo { + if m != nil { + return m.Invitation } return nil } -func (x *SignalRejectReq) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *SignalRejectReq) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } -func (x *SignalRejectReq) GetParticipant() *ParticipantMetaData { - if x != nil { - return x.Participant +func (m *SignalRejectReq) GetParticipant() *ParticipantMetaData { + if m != nil { + return m.Participant } return nil } -func (x *SignalRejectReq) GetOpUserPlatformID() int32 { - if x != nil { - return x.OpUserPlatformID +func (m *SignalRejectReq) GetOpUserPlatformID() int32 { + if m != nil { + return m.OpUserPlatformID } return 0 } type SignalRejectReply struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SignalRejectReply) Reset() { - *x = SignalRejectReply{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SignalRejectReply) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalRejectReply) Reset() { *m = SignalRejectReply{} } +func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) } +func (*SignalRejectReply) ProtoMessage() {} +func (*SignalRejectReply) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{23} } - -func (*SignalRejectReply) ProtoMessage() {} - -func (x *SignalRejectReply) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b) } - -// Deprecated: Use SignalRejectReply.ProtoReflect.Descriptor instead. -func (*SignalRejectReply) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{23} +func (m *SignalRejectReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalRejectReply.Marshal(b, m, deterministic) } - -type SignalMessageAssembleReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SignalReq *SignalReq `protobuf:"bytes,1,opt,name=signalReq,proto3" json:"signalReq,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=operationID,proto3" json:"operationID,omitempty"` +func (dst *SignalRejectReply) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalRejectReply.Merge(dst, src) } - -func (x *SignalMessageAssembleReq) Reset() { - *x = SignalMessageAssembleReq{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalRejectReply) XXX_Size() int { + return xxx_messageInfo_SignalRejectReply.Size(m) } - -func (x *SignalMessageAssembleReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalRejectReply) XXX_DiscardUnknown() { + xxx_messageInfo_SignalRejectReply.DiscardUnknown(m) } -func (*SignalMessageAssembleReq) ProtoMessage() {} +var xxx_messageInfo_SignalRejectReply proto.InternalMessageInfo -func (x *SignalMessageAssembleReq) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +type SignalMessageAssembleReq struct { + SignalReq *SignalReq `protobuf:"bytes,1,opt,name=signalReq" json:"signalReq,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=operationID" json:"operationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -// Deprecated: Use SignalMessageAssembleReq.ProtoReflect.Descriptor instead. +func (m *SignalMessageAssembleReq) Reset() { *m = SignalMessageAssembleReq{} } +func (m *SignalMessageAssembleReq) String() string { return proto.CompactTextString(m) } +func (*SignalMessageAssembleReq) ProtoMessage() {} func (*SignalMessageAssembleReq) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{24} + return fileDescriptor_rtc_2059f33abbeeea7e, []int{24} +} +func (m *SignalMessageAssembleReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalMessageAssembleReq.Unmarshal(m, b) +} +func (m *SignalMessageAssembleReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalMessageAssembleReq.Marshal(b, m, deterministic) +} +func (dst *SignalMessageAssembleReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalMessageAssembleReq.Merge(dst, src) } +func (m *SignalMessageAssembleReq) XXX_Size() int { + return xxx_messageInfo_SignalMessageAssembleReq.Size(m) +} +func (m *SignalMessageAssembleReq) XXX_DiscardUnknown() { + xxx_messageInfo_SignalMessageAssembleReq.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalMessageAssembleReq proto.InternalMessageInfo -func (x *SignalMessageAssembleReq) GetSignalReq() *SignalReq { - if x != nil { - return x.SignalReq +func (m *SignalMessageAssembleReq) GetSignalReq() *SignalReq { + if m != nil { + return m.SignalReq } return nil } -func (x *SignalMessageAssembleReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *SignalMessageAssembleReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type SignalMessageAssembleResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` - IsPass bool `protobuf:"varint,2,opt,name=isPass,proto3" json:"isPass,omitempty"` - SignalResp *SignalResp `protobuf:"bytes,3,opt,name=signalResp,proto3" json:"signalResp,omitempty"` - MsgData *MsgData `protobuf:"bytes,4,opt,name=msgData,proto3" json:"msgData,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + IsPass bool `protobuf:"varint,2,opt,name=isPass" json:"isPass,omitempty"` + SignalResp *SignalResp `protobuf:"bytes,3,opt,name=signalResp" json:"signalResp,omitempty"` + MsgData *MsgData `protobuf:"bytes,4,opt,name=msgData" json:"msgData,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignalMessageAssembleResp) Reset() { *m = SignalMessageAssembleResp{} } +func (m *SignalMessageAssembleResp) String() string { return proto.CompactTextString(m) } +func (*SignalMessageAssembleResp) ProtoMessage() {} +func (*SignalMessageAssembleResp) Descriptor() ([]byte, []int) { + return fileDescriptor_rtc_2059f33abbeeea7e, []int{25} } - -func (x *SignalMessageAssembleResp) Reset() { - *x = SignalMessageAssembleResp{} - if protoimpl.UnsafeEnabled { - mi := &file_proto_rtc_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SignalMessageAssembleResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignalMessageAssembleResp.Unmarshal(m, b) } - -func (x *SignalMessageAssembleResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SignalMessageAssembleResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignalMessageAssembleResp.Marshal(b, m, deterministic) } - -func (*SignalMessageAssembleResp) ProtoMessage() {} - -func (x *SignalMessageAssembleResp) ProtoReflect() protoreflect.Message { - mi := &file_proto_rtc_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *SignalMessageAssembleResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignalMessageAssembleResp.Merge(dst, src) } - -// Deprecated: Use SignalMessageAssembleResp.ProtoReflect.Descriptor instead. -func (*SignalMessageAssembleResp) Descriptor() ([]byte, []int) { - return file_proto_rtc_proto_rawDescGZIP(), []int{25} +func (m *SignalMessageAssembleResp) XXX_Size() int { + return xxx_messageInfo_SignalMessageAssembleResp.Size(m) } +func (m *SignalMessageAssembleResp) XXX_DiscardUnknown() { + xxx_messageInfo_SignalMessageAssembleResp.DiscardUnknown(m) +} + +var xxx_messageInfo_SignalMessageAssembleResp proto.InternalMessageInfo -func (x *SignalMessageAssembleResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *SignalMessageAssembleResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *SignalMessageAssembleResp) GetIsPass() bool { - if x != nil { - return x.IsPass +func (m *SignalMessageAssembleResp) GetIsPass() bool { + if m != nil { + return m.IsPass } return false } -func (x *SignalMessageAssembleResp) GetSignalResp() *SignalResp { - if x != nil { - return x.SignalResp +func (m *SignalMessageAssembleResp) GetSignalResp() *SignalResp { + if m != nil { + return m.SignalResp } return nil } -func (x *SignalMessageAssembleResp) GetMsgData() *MsgData { - if x != nil { - return x.MsgData +func (m *SignalMessageAssembleResp) GetMsgData() *MsgData { + if m != nil { + return m.MsgData } return nil } -var File_proto_rtc_proto protoreflect.FileDescriptor - -var file_proto_rtc_proto_rawDesc = []byte{ - 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x72, 0x74, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x05, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3e, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x72, 0x43, 0x6f, 0x64, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x72, 0x72, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xa4, 0x05, 0x0a, 0x07, 0x4d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, - 0x63, 0x76, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x20, - 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, - 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x26, - 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, - 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x20, 0x0a, 0x0b, - 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x6d, 0x73, 0x67, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x40, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, - 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, - 0x6e, 0x66, 0x6f, 0x1a, 0x3a, 0x0a, 0x0c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, - 0xf5, 0x02, 0x0a, 0x09, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x6f, 0x74, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, - 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, - 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x65, - 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x22, 0xb7, 0x02, 0x0a, 0x13, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, - 0x1a, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, - 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, - 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, - 0x52, 0x4c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, - 0x4c, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x61, 0x70, 0x70, 0x4d, 0x61, - 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6a, 0x6f, 0x69, - 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6a, - 0x6f, 0x69, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, - 0x78, 0x22, 0xbe, 0x01, 0x0a, 0x13, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, - 0x74, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x0a, 0x09, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x44, 0x0a, 0x0f, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x31, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, - 0x66, 0x6f, 0x22, 0x86, 0x01, 0x0a, 0x0e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, - 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, - 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, - 0x55, 0x52, 0x4c, 0x12, 0x16, 0x0a, 0x06, 0x67, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x67, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x65, - 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0x9b, 0x01, 0x0a, 0x0f, - 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, - 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, - 0x6f, 0x6f, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, - 0x36, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, - 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x71, 0x0a, 0x10, 0x47, 0x65, 0x74, - 0x4a, 0x6f, 0x69, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x31, 0x0a, - 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x10, 0x0a, 0x03, 0x6a, 0x77, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6a, - 0x77, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x22, 0x95, 0x01, 0x0a, - 0x0f, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x63, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x65, 0x73, 0x63, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x4f, - 0x53, 0x50, 0x75, 0x73, 0x68, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x69, 0x4f, 0x53, 0x50, 0x75, 0x73, 0x68, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x24, - 0x0a, 0x0d, 0x69, 0x4f, 0x53, 0x42, 0x61, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x4f, 0x53, 0x42, 0x61, 0x64, 0x67, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd7, 0x02, 0x0a, 0x09, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, - 0x65, 0x71, 0x12, 0x30, 0x0a, 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, - 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52, 0x06, 0x69, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x12, 0x45, 0x0a, 0x0d, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52, 0x0d, 0x69, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x30, 0x0a, 0x06, 0x63, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, - 0x52, 0x65, 0x71, 0x48, 0x00, 0x52, 0x06, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x30, 0x0a, - 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x65, - 0x70, 0x74, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x12, - 0x30, 0x0a, 0x06, 0x68, 0x75, 0x6e, 0x67, 0x55, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x48, 0x75, - 0x6e, 0x67, 0x55, 0x70, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52, 0x06, 0x68, 0x75, 0x6e, 0x67, 0x55, - 0x70, 0x12, 0x30, 0x0a, 0x06, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, - 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x6a, - 0x65, 0x63, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xe4, - 0x02, 0x0a, 0x0a, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x32, 0x0a, - 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x48, 0x00, 0x52, 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x12, 0x47, 0x0a, 0x0d, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x48, 0x00, 0x52, 0x0d, 0x69, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x32, 0x0a, 0x06, 0x63, 0x61, - 0x6e, 0x63, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, - 0x65, 0x70, 0x6c, 0x79, 0x48, 0x00, 0x52, 0x06, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x32, - 0x0a, 0x06, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x41, 0x63, 0x63, - 0x65, 0x70, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x48, 0x00, 0x52, 0x06, 0x61, 0x63, 0x63, 0x65, - 0x70, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x68, 0x75, 0x6e, 0x67, 0x55, 0x70, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, - 0x6c, 0x48, 0x75, 0x6e, 0x67, 0x55, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x48, 0x00, 0x52, 0x06, - 0x68, 0x75, 0x6e, 0x67, 0x55, 0x70, 0x12, 0x32, 0x0a, 0x06, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, - 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, - 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, - 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xb0, 0x02, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x2c, - 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, - 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x69, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x44, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x44, 0x12, 0x18, - 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, - 0x61, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0xe4, 0x01, 0x0a, 0x0f, 0x53, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x35, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x40, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, - 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x3c, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, - 0x5b, 0x0a, 0x11, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, - 0x65, 0x70, 0x6c, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, - 0x6f, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, - 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x22, 0xeb, 0x01, 0x0a, - 0x16, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x12, 0x35, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, - 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0f, 0x6f, 0x66, - 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4f, 0x66, 0x66, 0x6c, - 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x6f, 0x66, 0x66, - 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3c, 0x0a, 0x0b, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0b, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0x62, 0x0a, 0x18, 0x53, 0x69, - 0x67, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, - 0x6f, 0x6d, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x22, 0xe4, - 0x01, 0x0a, 0x0f, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, - 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x35, - 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, - 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, - 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, - 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3c, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, - 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0x13, 0x0a, 0x11, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x90, 0x02, 0x0a, 0x0f, 0x53, - 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1a, - 0x0a, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x35, 0x0a, 0x0a, 0x69, 0x6e, - 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x40, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, - 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x3c, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, - 0x44, 0x61, 0x74, 0x61, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, - 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6f, 0x70, 0x55, - 0x73, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x5b, 0x0a, - 0x11, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x70, - 0x6c, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, - 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x44, - 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x55, 0x52, 0x4c, 0x22, 0xa6, 0x01, 0x0a, 0x0f, 0x53, - 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x48, 0x75, 0x6e, 0x67, 0x55, 0x70, 0x52, 0x65, 0x71, 0x12, 0x1a, - 0x0a, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x35, 0x0a, 0x0a, 0x69, 0x6e, - 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x40, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, - 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, - 0x6e, 0x66, 0x6f, 0x22, 0x13, 0x0a, 0x11, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x48, 0x75, 0x6e, - 0x67, 0x55, 0x70, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x90, 0x02, 0x0a, 0x0f, 0x53, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x35, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x40, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, - 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x3c, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, - 0x2a, 0x0a, 0x10, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6f, 0x70, 0x55, 0x73, 0x65, - 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x13, 0x0a, 0x11, 0x53, - 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, - 0x22, 0x6c, 0x0a, 0x18, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x41, 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12, 0x2e, 0x0a, 0x09, - 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, - 0x71, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0xc3, - 0x01, 0x0a, 0x19, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x41, 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x31, 0x0a, 0x0a, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x16, 0x0a, 0x06, 0x69, 0x73, 0x50, 0x61, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x06, 0x69, 0x73, 0x50, 0x61, 0x73, 0x73, 0x12, 0x31, 0x0a, 0x0a, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x6c, 0x52, 0x65, 0x73, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, - 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x28, 0x0a, 0x07, 0x6d, 0x73, - 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x32, 0x68, 0x0a, 0x0a, 0x52, 0x74, 0x63, 0x53, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x12, 0x5a, 0x0a, 0x15, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x41, 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x12, 0x1f, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x41, 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x41, 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x42, 0x0b, - 0x5a, 0x09, 0x2e, 0x2f, 0x72, 0x74, 0x63, 0x3b, 0x72, 0x74, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, -} - -var ( - file_proto_rtc_proto_rawDescOnce sync.Once - file_proto_rtc_proto_rawDescData = file_proto_rtc_proto_rawDesc -) - -func file_proto_rtc_proto_rawDescGZIP() []byte { - file_proto_rtc_proto_rawDescOnce.Do(func() { - file_proto_rtc_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_rtc_proto_rawDescData) - }) - return file_proto_rtc_proto_rawDescData -} - -var file_proto_rtc_proto_msgTypes = make([]protoimpl.MessageInfo, 27) -var file_proto_rtc_proto_goTypes = []interface{}{ - (*CommonResp)(nil), // 0: proto.CommonResp - (*MsgData)(nil), // 1: proto.MsgData - (*GroupInfo)(nil), // 2: proto.GroupInfo - (*GroupMemberFullInfo)(nil), // 3: proto.GroupMemberFullInfo - (*ParticipantMetaData)(nil), // 4: proto.ParticipantMetaData - (*PublicUserInfo)(nil), // 5: proto.PublicUserInfo - (*GetJoinTokenReq)(nil), // 6: proto.GetJoinTokenReq - (*GetJoinTokenResp)(nil), // 7: proto.GetJoinTokenResp - (*OfflinePushInfo)(nil), // 8: proto.OfflinePushInfo - (*SignalReq)(nil), // 9: proto.SignalReq - (*SignalResp)(nil), // 10: proto.SignalResp - (*InvitationInfo)(nil), // 11: proto.InvitationInfo - (*SignalInviteReq)(nil), // 12: proto.SignalInviteReq - (*SignalInviteReply)(nil), // 13: proto.SignalInviteReply - (*SignalInviteInGroupReq)(nil), // 14: proto.SignalInviteInGroupReq - (*SignalInviteInGroupReply)(nil), // 15: proto.SignalInviteInGroupReply - (*SignalCancelReq)(nil), // 16: proto.SignalCancelReq - (*SignalCancelReply)(nil), // 17: proto.SignalCancelReply - (*SignalAcceptReq)(nil), // 18: proto.SignalAcceptReq - (*SignalAcceptReply)(nil), // 19: proto.SignalAcceptReply - (*SignalHungUpReq)(nil), // 20: proto.SignalHungUpReq - (*SignalHungUpReply)(nil), // 21: proto.SignalHungUpReply - (*SignalRejectReq)(nil), // 22: proto.SignalRejectReq - (*SignalRejectReply)(nil), // 23: proto.SignalRejectReply - (*SignalMessageAssembleReq)(nil), // 24: proto.SignalMessageAssembleReq - (*SignalMessageAssembleResp)(nil), // 25: proto.SignalMessageAssembleResp - nil, // 26: proto.MsgData.OptionsEntry -} -var file_proto_rtc_proto_depIdxs = []int32{ - 26, // 0: proto.MsgData.options:type_name -> proto.MsgData.OptionsEntry - 8, // 1: proto.MsgData.offlinePushInfo:type_name -> proto.OfflinePushInfo - 2, // 2: proto.ParticipantMetaData.groupInfo:type_name -> proto.GroupInfo - 3, // 3: proto.ParticipantMetaData.groupMemberInfo:type_name -> proto.GroupMemberFullInfo - 5, // 4: proto.ParticipantMetaData.userInfo:type_name -> proto.PublicUserInfo - 4, // 5: proto.GetJoinTokenReq.metaData:type_name -> proto.ParticipantMetaData - 0, // 6: proto.GetJoinTokenResp.CommonResp:type_name -> proto.CommonResp - 12, // 7: proto.SignalReq.invite:type_name -> proto.SignalInviteReq - 14, // 8: proto.SignalReq.inviteInGroup:type_name -> proto.SignalInviteInGroupReq - 16, // 9: proto.SignalReq.cancel:type_name -> proto.SignalCancelReq - 18, // 10: proto.SignalReq.accept:type_name -> proto.SignalAcceptReq - 20, // 11: proto.SignalReq.hungUp:type_name -> proto.SignalHungUpReq - 22, // 12: proto.SignalReq.reject:type_name -> proto.SignalRejectReq - 13, // 13: proto.SignalResp.invite:type_name -> proto.SignalInviteReply - 15, // 14: proto.SignalResp.inviteInGroup:type_name -> proto.SignalInviteInGroupReply - 17, // 15: proto.SignalResp.cancel:type_name -> proto.SignalCancelReply - 19, // 16: proto.SignalResp.accept:type_name -> proto.SignalAcceptReply - 21, // 17: proto.SignalResp.hungUp:type_name -> proto.SignalHungUpReply - 23, // 18: proto.SignalResp.reject:type_name -> proto.SignalRejectReply - 11, // 19: proto.SignalInviteReq.invitation:type_name -> proto.InvitationInfo - 8, // 20: proto.SignalInviteReq.offlinePushInfo:type_name -> proto.OfflinePushInfo - 4, // 21: proto.SignalInviteReq.participant:type_name -> proto.ParticipantMetaData - 11, // 22: proto.SignalInviteInGroupReq.invitation:type_name -> proto.InvitationInfo - 8, // 23: proto.SignalInviteInGroupReq.offlinePushInfo:type_name -> proto.OfflinePushInfo - 4, // 24: proto.SignalInviteInGroupReq.participant:type_name -> proto.ParticipantMetaData - 11, // 25: proto.SignalCancelReq.invitation:type_name -> proto.InvitationInfo - 8, // 26: proto.SignalCancelReq.offlinePushInfo:type_name -> proto.OfflinePushInfo - 4, // 27: proto.SignalCancelReq.participant:type_name -> proto.ParticipantMetaData - 11, // 28: proto.SignalAcceptReq.invitation:type_name -> proto.InvitationInfo - 8, // 29: proto.SignalAcceptReq.offlinePushInfo:type_name -> proto.OfflinePushInfo - 4, // 30: proto.SignalAcceptReq.participant:type_name -> proto.ParticipantMetaData - 11, // 31: proto.SignalHungUpReq.invitation:type_name -> proto.InvitationInfo - 8, // 32: proto.SignalHungUpReq.offlinePushInfo:type_name -> proto.OfflinePushInfo - 11, // 33: proto.SignalRejectReq.invitation:type_name -> proto.InvitationInfo - 8, // 34: proto.SignalRejectReq.offlinePushInfo:type_name -> proto.OfflinePushInfo - 4, // 35: proto.SignalRejectReq.participant:type_name -> proto.ParticipantMetaData - 9, // 36: proto.SignalMessageAssembleReq.signalReq:type_name -> proto.SignalReq - 0, // 37: proto.SignalMessageAssembleResp.commonResp:type_name -> proto.CommonResp - 10, // 38: proto.SignalMessageAssembleResp.signalResp:type_name -> proto.SignalResp - 1, // 39: proto.SignalMessageAssembleResp.msgData:type_name -> proto.MsgData - 24, // 40: proto.RtcService.SignalMessageAssemble:input_type -> proto.SignalMessageAssembleReq - 25, // 41: proto.RtcService.SignalMessageAssemble:output_type -> proto.SignalMessageAssembleResp - 41, // [41:42] is the sub-list for method output_type - 40, // [40:41] is the sub-list for method input_type - 40, // [40:40] is the sub-list for extension type_name - 40, // [40:40] is the sub-list for extension extendee - 0, // [0:40] is the sub-list for field type_name -} - -func init() { file_proto_rtc_proto_init() } -func file_proto_rtc_proto_init() { - if File_proto_rtc_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_proto_rtc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CommonResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgData); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMemberFullInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ParticipantMetaData); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublicUserInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetJoinTokenReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetJoinTokenResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OfflinePushInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InvitationInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalInviteReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalInviteReply); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalInviteInGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalInviteInGroupReply); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalCancelReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalCancelReply); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalAcceptReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalAcceptReply); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalHungUpReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalHungUpReply); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalRejectReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalRejectReply); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalMessageAssembleReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_proto_rtc_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignalMessageAssembleResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_proto_rtc_proto_msgTypes[9].OneofWrappers = []interface{}{ - (*SignalReq_Invite)(nil), - (*SignalReq_InviteInGroup)(nil), - (*SignalReq_Cancel)(nil), - (*SignalReq_Accept)(nil), - (*SignalReq_HungUp)(nil), - (*SignalReq_Reject)(nil), - } - file_proto_rtc_proto_msgTypes[10].OneofWrappers = []interface{}{ - (*SignalResp_Invite)(nil), - (*SignalResp_InviteInGroup)(nil), - (*SignalResp_Cancel)(nil), - (*SignalResp_Accept)(nil), - (*SignalResp_HungUp)(nil), - (*SignalResp_Reject)(nil), - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_proto_rtc_proto_rawDesc, - NumEnums: 0, - NumMessages: 27, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_proto_rtc_proto_goTypes, - DependencyIndexes: file_proto_rtc_proto_depIdxs, - MessageInfos: file_proto_rtc_proto_msgTypes, - }.Build() - File_proto_rtc_proto = out.File - file_proto_rtc_proto_rawDesc = nil - file_proto_rtc_proto_goTypes = nil - file_proto_rtc_proto_depIdxs = nil +func init() { + proto.RegisterType((*CommonResp)(nil), "proto.CommonResp") + proto.RegisterType((*MsgData)(nil), "proto.MsgData") + proto.RegisterMapType((map[string]bool)(nil), "proto.MsgData.OptionsEntry") + proto.RegisterType((*GroupInfo)(nil), "proto.GroupInfo") + proto.RegisterType((*GroupMemberFullInfo)(nil), "proto.GroupMemberFullInfo") + proto.RegisterType((*ParticipantMetaData)(nil), "proto.ParticipantMetaData") + proto.RegisterType((*PublicUserInfo)(nil), "proto.PublicUserInfo") + proto.RegisterType((*GetJoinTokenReq)(nil), "proto.GetJoinTokenReq") + proto.RegisterType((*GetJoinTokenResp)(nil), "proto.GetJoinTokenResp") + proto.RegisterType((*OfflinePushInfo)(nil), "proto.OfflinePushInfo") + proto.RegisterType((*SignalReq)(nil), "proto.SignalReq") + proto.RegisterType((*SignalResp)(nil), "proto.SignalResp") + proto.RegisterType((*InvitationInfo)(nil), "proto.InvitationInfo") + proto.RegisterType((*SignalInviteReq)(nil), "proto.SignalInviteReq") + proto.RegisterType((*SignalInviteReply)(nil), "proto.SignalInviteReply") + proto.RegisterType((*SignalInviteInGroupReq)(nil), "proto.SignalInviteInGroupReq") + proto.RegisterType((*SignalInviteInGroupReply)(nil), "proto.SignalInviteInGroupReply") + proto.RegisterType((*SignalCancelReq)(nil), "proto.SignalCancelReq") + proto.RegisterType((*SignalCancelReply)(nil), "proto.SignalCancelReply") + proto.RegisterType((*SignalAcceptReq)(nil), "proto.SignalAcceptReq") + proto.RegisterType((*SignalAcceptReply)(nil), "proto.SignalAcceptReply") + proto.RegisterType((*SignalHungUpReq)(nil), "proto.SignalHungUpReq") + proto.RegisterType((*SignalHungUpReply)(nil), "proto.SignalHungUpReply") + proto.RegisterType((*SignalRejectReq)(nil), "proto.SignalRejectReq") + proto.RegisterType((*SignalRejectReply)(nil), "proto.SignalRejectReply") + proto.RegisterType((*SignalMessageAssembleReq)(nil), "proto.SignalMessageAssembleReq") + proto.RegisterType((*SignalMessageAssembleResp)(nil), "proto.SignalMessageAssembleResp") } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context -var _ grpc.ClientConnInterface +var _ grpc.ClientConn // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion6 +const _ = grpc.SupportPackageIsVersion4 + +// Client API for RtcService service -// RtcServiceClient is the client API for RtcService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type RtcServiceClient interface { SignalMessageAssemble(ctx context.Context, in *SignalMessageAssembleReq, opts ...grpc.CallOption) (*SignalMessageAssembleResp, error) } type rtcServiceClient struct { - cc grpc.ClientConnInterface + cc *grpc.ClientConn } -func NewRtcServiceClient(cc grpc.ClientConnInterface) RtcServiceClient { +func NewRtcServiceClient(cc *grpc.ClientConn) RtcServiceClient { return &rtcServiceClient{cc} } func (c *rtcServiceClient) SignalMessageAssemble(ctx context.Context, in *SignalMessageAssembleReq, opts ...grpc.CallOption) (*SignalMessageAssembleResp, error) { out := new(SignalMessageAssembleResp) - err := c.cc.Invoke(ctx, "/proto.RtcService/SignalMessageAssemble", in, out, opts...) + err := grpc.Invoke(ctx, "/proto.RtcService/SignalMessageAssemble", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } -// RtcServiceServer is the server API for RtcService service. +// Server API for RtcService service + type RtcServiceServer interface { SignalMessageAssemble(context.Context, *SignalMessageAssembleReq) (*SignalMessageAssembleResp, error) } -// UnimplementedRtcServiceServer can be embedded to have forward compatible implementations. -type UnimplementedRtcServiceServer struct { -} - -func (*UnimplementedRtcServiceServer) SignalMessageAssemble(context.Context, *SignalMessageAssembleReq) (*SignalMessageAssembleResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SignalMessageAssemble not implemented") -} - func RegisterRtcServiceServer(s *grpc.Server, srv RtcServiceServer) { s.RegisterService(&_RtcService_serviceDesc, srv) } @@ -2986,5 +2272,110 @@ var _RtcService_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "proto/rtc.proto", + Metadata: "rtc/rtc.proto", +} + +func init() { proto.RegisterFile("rtc/rtc.proto", fileDescriptor_rtc_2059f33abbeeea7e) } + +var fileDescriptor_rtc_2059f33abbeeea7e = []byte{ + // 1579 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0xcd, 0x6e, 0xdb, 0xc6, + 0x16, 0xbe, 0x94, 0x2c, 0xdb, 0x3a, 0xf2, 0xef, 0xf8, 0xc6, 0xe0, 0xf5, 0xfd, 0x13, 0x84, 0x20, + 0x10, 0x82, 0x0b, 0xe7, 0x46, 0x45, 0x8a, 0x22, 0x2d, 0x8a, 0x26, 0x76, 0x7e, 0x54, 0xc4, 0xb1, + 0x31, 0x8e, 0x37, 0xe9, 0x8a, 0xa6, 0xc6, 0xca, 0x24, 0x24, 0x87, 0x1e, 0x0e, 0x9d, 0xf8, 0x05, + 0xba, 0xee, 0xa6, 0xab, 0x6e, 0x8b, 0xbe, 0x42, 0x77, 0xdd, 0xf4, 0x15, 0x0a, 0xf4, 0x05, 0xb2, + 0xeb, 0xba, 0xfb, 0x62, 0xce, 0x0c, 0xc9, 0x21, 0x2d, 0xa7, 0x29, 0x90, 0x45, 0x91, 0xae, 0xc4, + 0xf3, 0x37, 0x33, 0xfc, 0xce, 0x37, 0xe7, 0x1c, 0x11, 0x96, 0xa5, 0x0a, 0x6f, 0x48, 0x15, 0x6e, + 0xa7, 0x52, 0x28, 0x41, 0x3a, 0xf8, 0x33, 0xf8, 0x14, 0x60, 0x47, 0xc4, 0xb1, 0x48, 0x28, 0xcb, + 0x52, 0xe2, 0xc3, 0x02, 0x93, 0x72, 0x47, 0x4c, 0x98, 0xef, 0xf5, 0xbd, 0x61, 0x87, 0x16, 0x22, + 0xd9, 0x84, 0x79, 0x26, 0xe5, 0x5e, 0x36, 0xf5, 0x5b, 0x7d, 0x6f, 0xd8, 0xa5, 0x56, 0x1a, 0x7c, + 0xdb, 0x81, 0x85, 0xbd, 0x6c, 0xba, 0x1b, 0xa8, 0x40, 0xfb, 0x64, 0x2c, 0x99, 0x8c, 0x77, 0x31, + 0xb8, 0x4b, 0xad, 0xa4, 0xf5, 0x92, 0x85, 0x67, 0xe3, 0xdd, 0x22, 0xd6, 0x48, 0x7a, 0xb7, 0xa9, + 0x14, 0x79, 0x3a, 0xde, 0xf5, 0xdb, 0x68, 0x28, 0x44, 0xd2, 0x87, 0x5e, 0x18, 0x71, 0x96, 0xa8, + 0xbd, 0x6c, 0x3a, 0xde, 0xf5, 0xe7, 0xd0, 0xea, 0xaa, 0xb4, 0x47, 0xc6, 0xe4, 0x19, 0x93, 0xc6, + 0xa3, 0x63, 0x3c, 0x1c, 0x15, 0xb9, 0x0e, 0x6b, 0x7a, 0x7f, 0x26, 0x0f, 0xa2, 0x40, 0x9d, 0x08, + 0x19, 0x8f, 0x77, 0xfd, 0x79, 0x7c, 0xa9, 0x0b, 0x7a, 0x72, 0x0d, 0x56, 0x8c, 0xee, 0x31, 0x0f, + 0x5f, 0x24, 0x41, 0xcc, 0xfc, 0x05, 0x5c, 0xb0, 0xa1, 0x25, 0x57, 0x61, 0xd9, 0x68, 0xee, 0x07, + 0x21, 0x3b, 0xa2, 0x8f, 0xfc, 0x45, 0x74, 0xab, 0x2b, 0xcd, 0xd9, 0xb2, 0x8c, 0x8b, 0xe4, 0xc9, + 0x79, 0xca, 0xfc, 0x2e, 0x6e, 0xea, 0xaa, 0xf4, 0x9b, 0xc7, 0xd9, 0xf4, 0xbe, 0x14, 0xb1, 0x0f, + 0x06, 0x67, 0x2b, 0xe2, 0x9b, 0x8b, 0x44, 0xb1, 0x44, 0x61, 0x6c, 0xcf, 0xc4, 0x3a, 0x2a, 0x1d, + 0x6b, 0x45, 0x7f, 0xa9, 0xef, 0x0d, 0x97, 0x68, 0x21, 0x92, 0x35, 0x68, 0x67, 0xec, 0xd4, 0x5f, + 0xe9, 0x7b, 0xc3, 0x65, 0xaa, 0x1f, 0xc9, 0x16, 0x2c, 0xea, 0xa3, 0x3d, 0xe1, 0x31, 0xf3, 0x57, + 0xfb, 0xde, 0xb0, 0x4d, 0x4b, 0x99, 0xfc, 0x07, 0x20, 0x94, 0x2c, 0x50, 0x0c, 0xad, 0x6b, 0x68, + 0x75, 0x34, 0x98, 0x4d, 0x15, 0xa8, 0x3c, 0xf3, 0xd7, 0xf1, 0x10, 0x56, 0x22, 0xb7, 0x60, 0x41, + 0xa4, 0x8a, 0x8b, 0x24, 0xf3, 0x49, 0xbf, 0x3d, 0xec, 0x8d, 0xfe, 0x69, 0x18, 0xb5, 0x6d, 0x69, + 0xb0, 0xbd, 0x6f, 0xac, 0xf7, 0x12, 0x25, 0xcf, 0x69, 0xe1, 0x4b, 0x3e, 0x83, 0x55, 0x71, 0x72, + 0x12, 0xf1, 0x84, 0x1d, 0xe4, 0xd9, 0xb3, 0x71, 0x72, 0x22, 0xfc, 0x8d, 0xbe, 0x37, 0xec, 0x8d, + 0x36, 0x6d, 0xf8, 0x7e, 0xdd, 0x4a, 0x9b, 0xee, 0x5b, 0xb7, 0x61, 0xc9, 0x5d, 0x5a, 0xbf, 0xee, + 0x0b, 0x76, 0x6e, 0xb9, 0xa6, 0x1f, 0xc9, 0xdf, 0xa1, 0x73, 0x16, 0x44, 0x39, 0x43, 0x9e, 0x2d, + 0x52, 0x23, 0xdc, 0x6e, 0x7d, 0xe4, 0x0d, 0x7e, 0x6d, 0x41, 0xf7, 0x01, 0x92, 0x2b, 0x39, 0x11, + 0x2e, 0xf1, 0xbc, 0x3a, 0xf1, 0xfe, 0x05, 0x5d, 0x7c, 0x7c, 0xac, 0x39, 0x60, 0xd8, 0x5a, 0x29, + 0xc8, 0x00, 0x96, 0x12, 0xa1, 0xf8, 0x09, 0x0f, 0x03, 0x7d, 0x0e, 0xcb, 0xda, 0x9a, 0x4e, 0xfb, + 0xf0, 0x44, 0x49, 0x31, 0xc9, 0x43, 0xf4, 0x31, 0xdc, 0xad, 0xe9, 0xf4, 0xfe, 0x27, 0x96, 0x40, + 0x86, 0xb8, 0x85, 0xa8, 0xd3, 0x2f, 0x5e, 0x26, 0x4c, 0x1e, 0x65, 0x4c, 0x5a, 0xbe, 0x76, 0xa9, + 0xab, 0x6a, 0xa4, 0x6d, 0x01, 0x73, 0xed, 0xa6, 0xad, 0x0f, 0xbd, 0x98, 0xc5, 0xc7, 0x4c, 0xee, + 0x88, 0x3c, 0x51, 0x48, 0xd0, 0x65, 0xea, 0xaa, 0xc8, 0x0a, 0xb4, 0xd8, 0x2b, 0x64, 0x65, 0x97, + 0xb6, 0xd8, 0x2b, 0x27, 0xd1, 0x50, 0x4b, 0xf4, 0x55, 0x58, 0xc6, 0x75, 0x45, 0x71, 0x9a, 0x9e, + 0x21, 0x7b, 0x4d, 0x59, 0x22, 0x86, 0x74, 0x5d, 0xc2, 0x05, 0x2a, 0xc5, 0xe0, 0xfb, 0x16, 0x6c, + 0x20, 0xee, 0x7b, 0x78, 0x80, 0xfb, 0x79, 0x14, 0xfd, 0x4e, 0x06, 0x36, 0x61, 0x3e, 0x37, 0xdb, + 0xd9, 0x62, 0x91, 0x97, 0xfb, 0x48, 0x11, 0xb1, 0x47, 0xec, 0x8c, 0x45, 0x08, 0x7c, 0x87, 0x56, + 0x0a, 0x4d, 0xf4, 0xe7, 0x82, 0x27, 0x88, 0xc9, 0x1c, 0x1a, 0x4b, 0x59, 0xdb, 0x92, 0xe2, 0x5a, + 0x1b, 0xb8, 0x4b, 0xd9, 0xcd, 0xc4, 0x7c, 0x3d, 0x13, 0xd7, 0x60, 0x25, 0x48, 0xd3, 0xbd, 0x20, + 0x99, 0x32, 0x69, 0x36, 0x5d, 0xc0, 0x75, 0x1b, 0x5a, 0x9d, 0x0f, 0xbd, 0xd3, 0xa1, 0xc8, 0x65, + 0xc8, 0x10, 0xee, 0x0e, 0x75, 0x34, 0x7a, 0x1d, 0x91, 0x32, 0xe9, 0xc0, 0x68, 0x90, 0x6f, 0x68, + 0x6d, 0x56, 0xa0, 0xc8, 0xca, 0xe0, 0x07, 0x0f, 0x36, 0x0e, 0x02, 0xa9, 0x78, 0xc8, 0xd3, 0x20, + 0x51, 0x7b, 0x4c, 0x05, 0x58, 0x64, 0xb7, 0x2d, 0xde, 0x78, 0x83, 0x3c, 0xbc, 0x41, 0x6b, 0xf6, + 0x06, 0x95, 0x04, 0xa7, 0x95, 0x0b, 0xd9, 0x85, 0xd5, 0x69, 0x95, 0x00, 0x8c, 0x6a, 0x61, 0xd4, + 0x96, 0x1b, 0x55, 0x4f, 0x0f, 0x6d, 0x86, 0x90, 0x9b, 0xb0, 0x88, 0x79, 0xd0, 0xe1, 0x6d, 0x0c, + 0xbf, 0x62, 0xc3, 0x0f, 0xf2, 0xe3, 0x88, 0x87, 0x47, 0xd6, 0x48, 0x4b, 0xb7, 0xc1, 0x97, 0x1e, + 0xac, 0xd4, 0x8d, 0x4e, 0x6e, 0xbd, 0x5a, 0x6e, 0xdd, 0x0c, 0xb5, 0x2e, 0xcf, 0x50, 0xbb, 0x9e, + 0xa1, 0x4d, 0x98, 0x9f, 0x62, 0xdd, 0xb5, 0x19, 0xb7, 0x92, 0x45, 0xb2, 0x53, 0x22, 0xf9, 0x8d, + 0x07, 0xab, 0x0f, 0x98, 0xfa, 0x5c, 0xf3, 0x41, 0xbc, 0x60, 0x09, 0x65, 0xa7, 0x84, 0xc0, 0x9c, + 0x14, 0x22, 0xb6, 0xe7, 0xc0, 0x67, 0x7d, 0x0a, 0x3e, 0x61, 0x89, 0xe2, 0xea, 0xbc, 0x38, 0x45, + 0x21, 0x93, 0x0f, 0x61, 0x31, 0xb6, 0x19, 0xb0, 0xef, 0x5f, 0xc0, 0x37, 0x23, 0x47, 0xb4, 0xf4, + 0xc5, 0xfb, 0x8c, 0x79, 0xe6, 0x22, 0xa9, 0x1a, 0x99, 0xa3, 0x1a, 0x9c, 0xc2, 0x5a, 0xfd, 0x70, + 0x59, 0x4a, 0x6e, 0xba, 0x4d, 0xd9, 0x26, 0x79, 0xdd, 0xee, 0x57, 0x19, 0xa8, 0xdb, 0xb9, 0xd7, + 0xa0, 0xfd, 0xfc, 0xa5, 0xb2, 0xe7, 0xd6, 0x8f, 0x1a, 0xb8, 0x88, 0x9f, 0xb9, 0xc0, 0x59, 0x71, + 0xf0, 0xb5, 0x07, 0xab, 0x8d, 0x6a, 0xab, 0x4b, 0xa7, 0xe2, 0x2a, 0x62, 0x16, 0x11, 0x23, 0x68, + 0x98, 0x26, 0x2c, 0x0b, 0xed, 0xb2, 0xf8, 0x6c, 0xe1, 0x6d, 0x97, 0xe5, 0x43, 0x17, 0xbc, 0xfd, + 0x43, 0xbd, 0xd0, 0xa1, 0xc8, 0x93, 0x49, 0x59, 0xf0, 0x1c, 0x9d, 0x2e, 0x25, 0x7c, 0xff, 0xf0, + 0x6e, 0x30, 0x99, 0x32, 0x53, 0x96, 0x3a, 0x58, 0xa0, 0xeb, 0xca, 0xc1, 0xcf, 0x2d, 0xe8, 0x1e, + 0xf2, 0x69, 0x12, 0x44, 0x3a, 0x45, 0xff, 0x87, 0x79, 0x9e, 0x9c, 0x71, 0xc5, 0x2c, 0x00, 0x45, + 0x9f, 0x30, 0x1e, 0x63, 0x34, 0x51, 0x76, 0xfa, 0xf0, 0x6f, 0xd4, 0xfa, 0x91, 0x7b, 0xb0, 0x6c, + 0x9e, 0xc6, 0x09, 0x92, 0xda, 0x12, 0xfd, 0xdf, 0x33, 0x02, 0xad, 0x87, 0x89, 0xaf, 0x47, 0xe9, + 0x8d, 0xc3, 0x20, 0x09, 0x6d, 0x99, 0x69, 0x6e, 0xbc, 0x83, 0x26, 0xbb, 0xb1, 0xf1, 0xd3, 0x11, + 0x41, 0x18, 0xb2, 0x54, 0xe1, 0xcb, 0x37, 0x23, 0xee, 0xa0, 0xc9, 0x46, 0x18, 0x3f, 0x1d, 0xf1, + 0x2c, 0x4f, 0xa6, 0x47, 0x29, 0x22, 0xd1, 0x8c, 0x78, 0x88, 0x26, 0x1b, 0x61, 0xfc, 0x74, 0x84, + 0x64, 0xcf, 0x59, 0xa8, 0xb0, 0x50, 0x35, 0x23, 0x28, 0x9a, 0x6c, 0x84, 0xf1, 0xbb, 0xdb, 0x85, + 0x85, 0x34, 0x38, 0x8f, 0x44, 0x30, 0x19, 0xbc, 0x6e, 0x01, 0x14, 0x8e, 0x59, 0x4a, 0x46, 0x0d, + 0x68, 0xfd, 0x99, 0xd0, 0xa6, 0xd1, 0xb9, 0x03, 0xee, 0x83, 0xd9, 0xe0, 0xfe, 0xf7, 0x4d, 0xe0, + 0x9a, 0x15, 0x1a, 0xf0, 0x8e, 0x1a, 0xf0, 0xfa, 0x33, 0xe1, 0xb5, 0x9b, 0x5b, 0x80, 0x47, 0x0d, + 0x80, 0xfd, 0x99, 0x00, 0xdb, 0x18, 0x0b, 0xf1, 0xa8, 0x01, 0xb1, 0x3f, 0x13, 0x62, 0x1b, 0x63, + 0x41, 0x1e, 0x35, 0x40, 0xf6, 0x67, 0x82, 0x6c, 0x63, 0x2e, 0xc2, 0xfc, 0x53, 0x0b, 0x56, 0x10, + 0x02, 0x73, 0xb9, 0xf5, 0xbd, 0xba, 0x5a, 0xc0, 0x56, 0x54, 0x7f, 0x73, 0xbf, 0xea, 0x4a, 0xf2, + 0x3f, 0x58, 0x37, 0x0a, 0x66, 0x14, 0x8f, 0x78, 0xa6, 0xef, 0x72, 0x7b, 0xd8, 0xa5, 0x17, 0x0d, + 0x38, 0x02, 0xe4, 0x99, 0x12, 0x71, 0x59, 0x8e, 0xba, 0xd4, 0xd1, 0xb8, 0xcd, 0x75, 0xee, 0x42, + 0x73, 0xd5, 0xa5, 0xae, 0x1c, 0x98, 0xad, 0xa4, 0x23, 0x14, 0x8f, 0x99, 0xc8, 0x95, 0x1d, 0x91, + 0x0b, 0x51, 0xb7, 0xdd, 0x98, 0x4d, 0x78, 0x80, 0xed, 0xdd, 0x0c, 0xc5, 0x95, 0x42, 0x9f, 0x24, + 0xad, 0xa6, 0x6b, 0xdb, 0xfc, 0x2a, 0xcd, 0x5b, 0x4c, 0xc2, 0x38, 0x2e, 0x71, 0xc5, 0x8b, 0x81, + 0xc6, 0x8c, 0x20, 0x35, 0xdd, 0xe0, 0xb5, 0x07, 0xab, 0x8d, 0x5b, 0xaf, 0x8b, 0xb5, 0x48, 0x6b, + 0x90, 0x96, 0x32, 0xb9, 0x05, 0xc0, 0xcb, 0x2c, 0x58, 0x9e, 0x16, 0xed, 0xaa, 0x9e, 0x1e, 0xea, + 0x38, 0xce, 0x9a, 0x50, 0xdb, 0x7f, 0x68, 0x42, 0x25, 0x9f, 0x40, 0x2f, 0xad, 0xda, 0x81, 0xe5, + 0xea, 0x9b, 0x1a, 0x85, 0xeb, 0x3e, 0xf8, 0x02, 0xd6, 0x2f, 0x5c, 0x40, 0xac, 0xcb, 0xba, 0x2f, + 0x94, 0x75, 0x59, 0x0b, 0x4e, 0x1e, 0x5b, 0xcd, 0x3c, 0x5e, 0x52, 0xf3, 0x7f, 0xf1, 0x60, 0x73, + 0x76, 0x01, 0x7c, 0x1f, 0xa1, 0x3c, 0x06, 0xff, 0xb2, 0x82, 0xf4, 0xce, 0x10, 0xad, 0x58, 0x59, + 0xb6, 0x84, 0xf7, 0x11, 0xca, 0x8d, 0x82, 0x95, 0x4e, 0x65, 0x1e, 0x7c, 0xd5, 0x2a, 0xde, 0xbd, + 0x6c, 0x6e, 0xef, 0xe1, 0xbb, 0x93, 0xeb, 0xb0, 0x66, 0x5e, 0xc1, 0xf9, 0x84, 0xd0, 0x31, 0x9f, + 0x10, 0x9a, 0xfa, 0xea, 0xf6, 0x3a, 0xdd, 0xe8, 0x9d, 0x71, 0xed, 0xbb, 0x92, 0x6b, 0xe5, 0x68, + 0xf0, 0xa7, 0xc4, 0xbb, 0x62, 0x8b, 0xd3, 0x5f, 0x1d, 0xb6, 0x94, 0x63, 0xca, 0x5f, 0x9d, 0x2d, + 0x25, 0x4e, 0xce, 0x4c, 0x31, 0x88, 0x8a, 0xaa, 0xb5, 0xc7, 0xb2, 0x2c, 0x98, 0xb2, 0x3b, 0x59, + 0xc6, 0xe2, 0xe3, 0x08, 0xfb, 0xdd, 0x36, 0x74, 0xb3, 0x62, 0x34, 0x6e, 0xfc, 0xed, 0x2b, 0x47, + 0x66, 0x5a, 0xb9, 0x34, 0xff, 0x78, 0xb4, 0x2e, 0xfe, 0xf1, 0xf8, 0xd1, 0x83, 0x7f, 0x5c, 0xb2, + 0x9d, 0xf9, 0x0b, 0x12, 0xbe, 0xcd, 0x5f, 0x90, 0xca, 0x49, 0xd3, 0x9a, 0x67, 0x07, 0x41, 0x96, + 0xd9, 0xcf, 0x2f, 0x56, 0xd2, 0x4b, 0x65, 0xe5, 0xec, 0x69, 0x53, 0xb2, 0xde, 0x38, 0xbb, 0x5e, + 0xaa, 0x72, 0x22, 0x43, 0xfc, 0x3e, 0x86, 0xe3, 0x8d, 0x49, 0xc2, 0x4a, 0xfd, 0x1b, 0x13, 0x2d, + 0xcc, 0xa3, 0x67, 0x00, 0x54, 0x85, 0x87, 0x4c, 0x9e, 0xf1, 0x90, 0x91, 0xa7, 0x70, 0x65, 0xe6, + 0x2b, 0x91, 0xfa, 0x98, 0x7a, 0x11, 0xdf, 0xad, 0xfe, 0x9b, 0x1d, 0xb2, 0xf4, 0x6e, 0xef, 0x69, + 0x77, 0xfb, 0x86, 0x54, 0xe1, 0xc7, 0x52, 0x85, 0xc7, 0xf3, 0xe8, 0xfd, 0xc1, 0x6f, 0x01, 0x00, + 0x00, 0xff, 0xff, 0xcb, 0x87, 0xc7, 0x8b, 0x55, 0x15, 0x00, 0x00, } diff --git a/pkg/proto/rtc/rtc.proto b/pkg/proto/rtc/rtc.proto index ce9ca472b..cb99f9b84 100644 --- a/pkg/proto/rtc/rtc.proto +++ b/pkg/proto/rtc/rtc.proto @@ -122,8 +122,9 @@ message InvitationInfo { string roomID = 5; int32 timeout = 6; string mediaType = 7; - int32 platformID = 8; - int32 sessionType = 9; + int32 platformID = 8; + int32 sessionType = 9; + int32 initiateTime = 10; } diff --git a/pkg/proto/sdk_ws/ws.pb.go b/pkg/proto/sdk_ws/ws.pb.go index 583f7a319..73adc0319 100644 --- a/pkg/proto/sdk_ws/ws.pb.go +++ b/pkg/proto/sdk_ws/ws.pb.go @@ -40,7 +40,7 @@ func (m *GroupInfo) Reset() { *m = GroupInfo{} } func (m *GroupInfo) String() string { return proto.CompactTextString(m) } func (*GroupInfo) ProtoMessage() {} func (*GroupInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{0} + return fileDescriptor_ws_da68f45d757be640, []int{0} } func (m *GroupInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfo.Unmarshal(m, b) @@ -165,7 +165,7 @@ func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} } func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } func (*GroupMemberFullInfo) ProtoMessage() {} func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{1} + return fileDescriptor_ws_da68f45d757be640, []int{1} } func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) @@ -277,7 +277,7 @@ func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} } func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } func (*PublicUserInfo) ProtoMessage() {} func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{2} + return fileDescriptor_ws_da68f45d757be640, []int{2} } func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) @@ -343,7 +343,6 @@ type UserInfo struct { Ex string `protobuf:"bytes,8,opt,name=ex" json:"ex,omitempty"` CreateTime uint32 `protobuf:"varint,9,opt,name=createTime" json:"createTime,omitempty"` AppMangerLevel int32 `protobuf:"varint,10,opt,name=appMangerLevel" json:"appMangerLevel,omitempty"` - GlobalRecvMsgOpt int32 `protobuf:"varint,11,opt,name=globalRecvMsgOpt" json:"globalRecvMsgOpt,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -353,7 +352,7 @@ func (m *UserInfo) Reset() { *m = UserInfo{} } func (m *UserInfo) String() string { return proto.CompactTextString(m) } func (*UserInfo) ProtoMessage() {} func (*UserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{3} + return fileDescriptor_ws_da68f45d757be640, []int{3} } func (m *UserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfo.Unmarshal(m, b) @@ -443,13 +442,6 @@ func (m *UserInfo) GetAppMangerLevel() int32 { return 0 } -func (m *UserInfo) GetGlobalRecvMsgOpt() int32 { - if m != nil { - return m.GlobalRecvMsgOpt - } - return 0 -} - type FriendInfo struct { OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID" json:"ownerUserID,omitempty"` Remark string `protobuf:"bytes,2,opt,name=remark" json:"remark,omitempty"` @@ -467,7 +459,7 @@ func (m *FriendInfo) Reset() { *m = FriendInfo{} } func (m *FriendInfo) String() string { return proto.CompactTextString(m) } func (*FriendInfo) ProtoMessage() {} func (*FriendInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{4} + return fileDescriptor_ws_da68f45d757be640, []int{4} } func (m *FriendInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfo.Unmarshal(m, b) @@ -552,7 +544,7 @@ func (m *BlackInfo) Reset() { *m = BlackInfo{} } func (m *BlackInfo) String() string { return proto.CompactTextString(m) } func (*BlackInfo) ProtoMessage() {} func (*BlackInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{5} + return fileDescriptor_ws_da68f45d757be640, []int{5} } func (m *BlackInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackInfo.Unmarshal(m, b) @@ -633,7 +625,7 @@ func (m *GroupRequest) Reset() { *m = GroupRequest{} } func (m *GroupRequest) String() string { return proto.CompactTextString(m) } func (*GroupRequest) ProtoMessage() {} func (*GroupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{6} + return fileDescriptor_ws_da68f45d757be640, []int{6} } func (m *GroupRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupRequest.Unmarshal(m, b) @@ -741,7 +733,7 @@ func (m *FriendRequest) Reset() { *m = FriendRequest{} } func (m *FriendRequest) String() string { return proto.CompactTextString(m) } func (*FriendRequest) ProtoMessage() {} func (*FriendRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{7} + return fileDescriptor_ws_da68f45d757be640, []int{7} } func (m *FriendRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendRequest.Unmarshal(m, b) @@ -886,7 +878,7 @@ func (m *Department) Reset() { *m = Department{} } func (m *Department) String() string { return proto.CompactTextString(m) } func (*Department) ProtoMessage() {} func (*Department) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{8} + return fileDescriptor_ws_da68f45d757be640, []int{8} } func (m *Department) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Department.Unmarshal(m, b) @@ -997,7 +989,7 @@ func (m *OrganizationUser) Reset() { *m = OrganizationUser{} } func (m *OrganizationUser) String() string { return proto.CompactTextString(m) } func (*OrganizationUser) ProtoMessage() {} func (*OrganizationUser) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{9} + return fileDescriptor_ws_da68f45d757be640, []int{9} } func (m *OrganizationUser) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OrganizationUser.Unmarshal(m, b) @@ -1111,7 +1103,7 @@ func (m *DepartmentMember) Reset() { *m = DepartmentMember{} } func (m *DepartmentMember) String() string { return proto.CompactTextString(m) } func (*DepartmentMember) ProtoMessage() {} func (*DepartmentMember) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{10} + return fileDescriptor_ws_da68f45d757be640, []int{10} } func (m *DepartmentMember) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DepartmentMember.Unmarshal(m, b) @@ -1192,7 +1184,7 @@ func (m *UserDepartmentMember) Reset() { *m = UserDepartmentMember{} } func (m *UserDepartmentMember) String() string { return proto.CompactTextString(m) } func (*UserDepartmentMember) ProtoMessage() {} func (*UserDepartmentMember) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{11} + return fileDescriptor_ws_da68f45d757be640, []int{11} } func (m *UserDepartmentMember) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserDepartmentMember.Unmarshal(m, b) @@ -1238,7 +1230,7 @@ func (m *UserInDepartment) Reset() { *m = UserInDepartment{} } func (m *UserInDepartment) String() string { return proto.CompactTextString(m) } func (*UserInDepartment) ProtoMessage() {} func (*UserInDepartment) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{12} + return fileDescriptor_ws_da68f45d757be640, []int{12} } func (m *UserInDepartment) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInDepartment.Unmarshal(m, b) @@ -1287,7 +1279,7 @@ func (m *PullMessageBySeqListReq) Reset() { *m = PullMessageBySeqListReq func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListReq) ProtoMessage() {} func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{13} + return fileDescriptor_ws_da68f45d757be640, []int{13} } func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b) @@ -1346,7 +1338,7 @@ func (m *SeqList) Reset() { *m = SeqList{} } func (m *SeqList) String() string { return proto.CompactTextString(m) } func (*SeqList) ProtoMessage() {} func (*SeqList) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{14} + return fileDescriptor_ws_da68f45d757be640, []int{14} } func (m *SeqList) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SeqList.Unmarshal(m, b) @@ -1384,7 +1376,7 @@ func (m *MsgDataList) Reset() { *m = MsgDataList{} } func (m *MsgDataList) String() string { return proto.CompactTextString(m) } func (*MsgDataList) ProtoMessage() {} func (*MsgDataList) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{15} + return fileDescriptor_ws_da68f45d757be640, []int{15} } func (m *MsgDataList) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MsgDataList.Unmarshal(m, b) @@ -1425,7 +1417,7 @@ func (m *PullMessageBySeqListResp) Reset() { *m = PullMessageBySeqListRe func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListResp) ProtoMessage() {} func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{16} + return fileDescriptor_ws_da68f45d757be640, []int{16} } func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b) @@ -1486,7 +1478,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} } func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqReq) ProtoMessage() {} func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{17} + return fileDescriptor_ws_da68f45d757be640, []int{17} } func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b) @@ -1539,7 +1531,7 @@ func (m *MaxAndMinSeq) Reset() { *m = MaxAndMinSeq{} } func (m *MaxAndMinSeq) String() string { return proto.CompactTextString(m) } func (*MaxAndMinSeq) ProtoMessage() {} func (*MaxAndMinSeq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{18} + return fileDescriptor_ws_da68f45d757be640, []int{18} } func (m *MaxAndMinSeq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MaxAndMinSeq.Unmarshal(m, b) @@ -1588,7 +1580,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} } func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqResp) ProtoMessage() {} func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{19} + return fileDescriptor_ws_da68f45d757be640, []int{19} } func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b) @@ -1656,7 +1648,7 @@ func (m *UserSendMsgResp) Reset() { *m = UserSendMsgResp{} } func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) } func (*UserSendMsgResp) ProtoMessage() {} func (*UserSendMsgResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{20} + return fileDescriptor_ws_da68f45d757be640, []int{20} } func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b) @@ -1727,7 +1719,7 @@ func (m *MsgData) Reset() { *m = MsgData{} } func (m *MsgData) String() string { return proto.CompactTextString(m) } func (*MsgData) ProtoMessage() {} func (*MsgData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{21} + return fileDescriptor_ws_da68f45d757be640, []int{21} } func (m *MsgData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MsgData.Unmarshal(m, b) @@ -1902,7 +1894,7 @@ func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} } func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } func (*OfflinePushInfo) ProtoMessage() {} func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{22} + return fileDescriptor_ws_da68f45d757be640, []int{22} } func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) @@ -1970,7 +1962,7 @@ func (m *TipsComm) Reset() { *m = TipsComm{} } func (m *TipsComm) String() string { return proto.CompactTextString(m) } func (*TipsComm) ProtoMessage() {} func (*TipsComm) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{23} + return fileDescriptor_ws_da68f45d757be640, []int{23} } func (m *TipsComm) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TipsComm.Unmarshal(m, b) @@ -2027,7 +2019,7 @@ func (m *GroupCreatedTips) Reset() { *m = GroupCreatedTips{} } func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) } func (*GroupCreatedTips) ProtoMessage() {} func (*GroupCreatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{24} + return fileDescriptor_ws_da68f45d757be640, []int{24} } func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b) @@ -2096,7 +2088,7 @@ func (m *GroupInfoSetTips) Reset() { *m = GroupInfoSetTips{} } func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) } func (*GroupInfoSetTips) ProtoMessage() {} func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{25} + return fileDescriptor_ws_da68f45d757be640, []int{25} } func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b) @@ -2151,7 +2143,7 @@ func (m *JoinGroupApplicationTips) Reset() { *m = JoinGroupApplicationTi func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) } func (*JoinGroupApplicationTips) ProtoMessage() {} func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{26} + return fileDescriptor_ws_da68f45d757be640, []int{26} } func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b) @@ -2207,7 +2199,7 @@ func (m *MemberQuitTips) Reset() { *m = MemberQuitTips{} } func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) } func (*MemberQuitTips) ProtoMessage() {} func (*MemberQuitTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{27} + return fileDescriptor_ws_da68f45d757be640, []int{27} } func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b) @@ -2262,7 +2254,7 @@ func (m *GroupApplicationAcceptedTips) Reset() { *m = GroupApplicationAc func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationAcceptedTips) ProtoMessage() {} func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{28} + return fileDescriptor_ws_da68f45d757be640, []int{28} } func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b) @@ -2317,7 +2309,7 @@ func (m *GroupApplicationRejectedTips) Reset() { *m = GroupApplicationRe func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationRejectedTips) ProtoMessage() {} func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{29} + return fileDescriptor_ws_da68f45d757be640, []int{29} } func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b) @@ -2373,7 +2365,7 @@ func (m *GroupOwnerTransferredTips) Reset() { *m = GroupOwnerTransferred func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) } func (*GroupOwnerTransferredTips) ProtoMessage() {} func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{30} + return fileDescriptor_ws_da68f45d757be640, []int{30} } func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b) @@ -2436,7 +2428,7 @@ func (m *MemberKickedTips) Reset() { *m = MemberKickedTips{} } func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) } func (*MemberKickedTips) ProtoMessage() {} func (*MemberKickedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{31} + return fileDescriptor_ws_da68f45d757be640, []int{31} } func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b) @@ -2499,7 +2491,7 @@ func (m *MemberInvitedTips) Reset() { *m = MemberInvitedTips{} } func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) } func (*MemberInvitedTips) ProtoMessage() {} func (*MemberInvitedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{32} + return fileDescriptor_ws_da68f45d757be640, []int{32} } func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b) @@ -2561,7 +2553,7 @@ func (m *MemberEnterTips) Reset() { *m = MemberEnterTips{} } func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) } func (*MemberEnterTips) ProtoMessage() {} func (*MemberEnterTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{33} + return fileDescriptor_ws_da68f45d757be640, []int{33} } func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b) @@ -2615,7 +2607,7 @@ func (m *GroupDismissedTips) Reset() { *m = GroupDismissedTips{} } func (m *GroupDismissedTips) String() string { return proto.CompactTextString(m) } func (*GroupDismissedTips) ProtoMessage() {} func (*GroupDismissedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{34} + return fileDescriptor_ws_da68f45d757be640, []int{34} } func (m *GroupDismissedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupDismissedTips.Unmarshal(m, b) @@ -2671,7 +2663,7 @@ func (m *GroupMemberMutedTips) Reset() { *m = GroupMemberMutedTips{} } func (m *GroupMemberMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupMemberMutedTips) ProtoMessage() {} func (*GroupMemberMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{35} + return fileDescriptor_ws_da68f45d757be640, []int{35} } func (m *GroupMemberMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberMutedTips.Unmarshal(m, b) @@ -2740,7 +2732,7 @@ func (m *GroupMemberCancelMutedTips) Reset() { *m = GroupMemberCancelMut func (m *GroupMemberCancelMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupMemberCancelMutedTips) ProtoMessage() {} func (*GroupMemberCancelMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{36} + return fileDescriptor_ws_da68f45d757be640, []int{36} } func (m *GroupMemberCancelMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberCancelMutedTips.Unmarshal(m, b) @@ -2801,7 +2793,7 @@ func (m *GroupMutedTips) Reset() { *m = GroupMutedTips{} } func (m *GroupMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupMutedTips) ProtoMessage() {} func (*GroupMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{37} + return fileDescriptor_ws_da68f45d757be640, []int{37} } func (m *GroupMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMutedTips.Unmarshal(m, b) @@ -2855,7 +2847,7 @@ func (m *GroupCancelMutedTips) Reset() { *m = GroupCancelMutedTips{} } func (m *GroupCancelMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupCancelMutedTips) ProtoMessage() {} func (*GroupCancelMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{38} + return fileDescriptor_ws_da68f45d757be640, []int{38} } func (m *GroupCancelMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupCancelMutedTips.Unmarshal(m, b) @@ -2910,7 +2902,7 @@ func (m *GroupMemberInfoSetTips) Reset() { *m = GroupMemberInfoSetTips{} func (m *GroupMemberInfoSetTips) String() string { return proto.CompactTextString(m) } func (*GroupMemberInfoSetTips) ProtoMessage() {} func (*GroupMemberInfoSetTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{39} + return fileDescriptor_ws_da68f45d757be640, []int{39} } func (m *GroupMemberInfoSetTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberInfoSetTips.Unmarshal(m, b) @@ -2970,7 +2962,7 @@ func (m *OrganizationChangedTips) Reset() { *m = OrganizationChangedTips func (m *OrganizationChangedTips) String() string { return proto.CompactTextString(m) } func (*OrganizationChangedTips) ProtoMessage() {} func (*OrganizationChangedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{40} + return fileDescriptor_ws_da68f45d757be640, []int{40} } func (m *OrganizationChangedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OrganizationChangedTips.Unmarshal(m, b) @@ -3017,7 +3009,7 @@ func (m *FriendApplication) Reset() { *m = FriendApplication{} } func (m *FriendApplication) String() string { return proto.CompactTextString(m) } func (*FriendApplication) ProtoMessage() {} func (*FriendApplication) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{41} + return fileDescriptor_ws_da68f45d757be640, []int{41} } func (m *FriendApplication) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplication.Unmarshal(m, b) @@ -3070,7 +3062,7 @@ func (m *FromToUserID) Reset() { *m = FromToUserID{} } func (m *FromToUserID) String() string { return proto.CompactTextString(m) } func (*FromToUserID) ProtoMessage() {} func (*FromToUserID) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{42} + return fileDescriptor_ws_da68f45d757be640, []int{42} } func (m *FromToUserID) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FromToUserID.Unmarshal(m, b) @@ -3116,7 +3108,7 @@ func (m *FriendApplicationTips) Reset() { *m = FriendApplicationTips{} } func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationTips) ProtoMessage() {} func (*FriendApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{43} + return fileDescriptor_ws_da68f45d757be640, []int{43} } func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b) @@ -3156,7 +3148,7 @@ func (m *FriendApplicationApprovedTips) Reset() { *m = FriendApplication func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationApprovedTips) ProtoMessage() {} func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{44} + return fileDescriptor_ws_da68f45d757be640, []int{44} } func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b) @@ -3203,7 +3195,7 @@ func (m *FriendApplicationRejectedTips) Reset() { *m = FriendApplication func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationRejectedTips) ProtoMessage() {} func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{45} + return fileDescriptor_ws_da68f45d757be640, []int{45} } func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b) @@ -3251,7 +3243,7 @@ func (m *FriendAddedTips) Reset() { *m = FriendAddedTips{} } func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) } func (*FriendAddedTips) ProtoMessage() {} func (*FriendAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{46} + return fileDescriptor_ws_da68f45d757be640, []int{46} } func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b) @@ -3304,7 +3296,7 @@ func (m *FriendDeletedTips) Reset() { *m = FriendDeletedTips{} } func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) } func (*FriendDeletedTips) ProtoMessage() {} func (*FriendDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{47} + return fileDescriptor_ws_da68f45d757be640, []int{47} } func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b) @@ -3342,7 +3334,7 @@ func (m *BlackAddedTips) Reset() { *m = BlackAddedTips{} } func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) } func (*BlackAddedTips) ProtoMessage() {} func (*BlackAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{48} + return fileDescriptor_ws_da68f45d757be640, []int{48} } func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b) @@ -3380,7 +3372,7 @@ func (m *BlackDeletedTips) Reset() { *m = BlackDeletedTips{} } func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) } func (*BlackDeletedTips) ProtoMessage() {} func (*BlackDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{49} + return fileDescriptor_ws_da68f45d757be640, []int{49} } func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b) @@ -3418,7 +3410,7 @@ func (m *FriendInfoChangedTips) Reset() { *m = FriendInfoChangedTips{} } func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) } func (*FriendInfoChangedTips) ProtoMessage() {} func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{50} + return fileDescriptor_ws_da68f45d757be640, []int{50} } func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b) @@ -3457,7 +3449,7 @@ func (m *UserInfoUpdatedTips) Reset() { *m = UserInfoUpdatedTips{} } func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) } func (*UserInfoUpdatedTips) ProtoMessage() {} func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{51} + return fileDescriptor_ws_da68f45d757be640, []int{51} } func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b) @@ -3496,7 +3488,7 @@ func (m *ConversationUpdateTips) Reset() { *m = ConversationUpdateTips{} func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) } func (*ConversationUpdateTips) ProtoMessage() {} func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{52} + return fileDescriptor_ws_da68f45d757be640, []int{52} } func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b) @@ -3536,7 +3528,7 @@ func (m *ConversationSetPrivateTips) Reset() { *m = ConversationSetPriva func (m *ConversationSetPrivateTips) String() string { return proto.CompactTextString(m) } func (*ConversationSetPrivateTips) ProtoMessage() {} func (*ConversationSetPrivateTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{53} + return fileDescriptor_ws_da68f45d757be640, []int{53} } func (m *ConversationSetPrivateTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversationSetPrivateTips.Unmarshal(m, b) @@ -3591,7 +3583,7 @@ func (m *DeleteMessageTips) Reset() { *m = DeleteMessageTips{} } func (m *DeleteMessageTips) String() string { return proto.CompactTextString(m) } func (*DeleteMessageTips) ProtoMessage() {} func (*DeleteMessageTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{54} + return fileDescriptor_ws_da68f45d757be640, []int{54} } func (m *DeleteMessageTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteMessageTips.Unmarshal(m, b) @@ -3645,7 +3637,7 @@ func (m *RequestPagination) Reset() { *m = RequestPagination{} } func (m *RequestPagination) String() string { return proto.CompactTextString(m) } func (*RequestPagination) ProtoMessage() {} func (*RequestPagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{55} + return fileDescriptor_ws_da68f45d757be640, []int{55} } func (m *RequestPagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RequestPagination.Unmarshal(m, b) @@ -3691,7 +3683,7 @@ func (m *ResponsePagination) Reset() { *m = ResponsePagination{} } func (m *ResponsePagination) String() string { return proto.CompactTextString(m) } func (*ResponsePagination) ProtoMessage() {} func (*ResponsePagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{56} + return fileDescriptor_ws_da68f45d757be640, []int{56} } func (m *ResponsePagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ResponsePagination.Unmarshal(m, b) @@ -3744,7 +3736,7 @@ func (m *SignalReq) Reset() { *m = SignalReq{} } func (m *SignalReq) String() string { return proto.CompactTextString(m) } func (*SignalReq) ProtoMessage() {} func (*SignalReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{57} + return fileDescriptor_ws_da68f45d757be640, []int{57} } func (m *SignalReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalReq.Unmarshal(m, b) @@ -4011,7 +4003,7 @@ func (m *SignalResp) Reset() { *m = SignalResp{} } func (m *SignalResp) String() string { return proto.CompactTextString(m) } func (*SignalResp) ProtoMessage() {} func (*SignalResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{58} + return fileDescriptor_ws_da68f45d757be640, []int{58} } func (m *SignalResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalResp.Unmarshal(m, b) @@ -4270,6 +4262,7 @@ type InvitationInfo struct { MediaType string `protobuf:"bytes,7,opt,name=mediaType" json:"mediaType,omitempty"` PlatformID int32 `protobuf:"varint,8,opt,name=platformID" json:"platformID,omitempty"` SessionType int32 `protobuf:"varint,9,opt,name=sessionType" json:"sessionType,omitempty"` + InitiateTime int32 `protobuf:"varint,10,opt,name=initiateTime" json:"initiateTime,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -4279,7 +4272,7 @@ func (m *InvitationInfo) Reset() { *m = InvitationInfo{} } func (m *InvitationInfo) String() string { return proto.CompactTextString(m) } func (*InvitationInfo) ProtoMessage() {} func (*InvitationInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{59} + return fileDescriptor_ws_da68f45d757be640, []int{59} } func (m *InvitationInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_InvitationInfo.Unmarshal(m, b) @@ -4362,6 +4355,13 @@ func (m *InvitationInfo) GetSessionType() int32 { return 0 } +func (m *InvitationInfo) GetInitiateTime() int32 { + if m != nil { + return m.InitiateTime + } + return 0 +} + type ParticipantMetaData struct { GroupInfo *GroupInfo `protobuf:"bytes,1,opt,name=groupInfo" json:"groupInfo,omitempty"` GroupMemberInfo *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=groupMemberInfo" json:"groupMemberInfo,omitempty"` @@ -4375,7 +4375,7 @@ func (m *ParticipantMetaData) Reset() { *m = ParticipantMetaData{} } func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) } func (*ParticipantMetaData) ProtoMessage() {} func (*ParticipantMetaData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{60} + return fileDescriptor_ws_da68f45d757be640, []int{60} } func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b) @@ -4430,7 +4430,7 @@ func (m *SignalInviteReq) Reset() { *m = SignalInviteReq{} } func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteReq) ProtoMessage() {} func (*SignalInviteReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{61} + return fileDescriptor_ws_da68f45d757be640, []int{61} } func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b) @@ -4491,7 +4491,7 @@ func (m *SignalInviteReply) Reset() { *m = SignalInviteReply{} } func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteReply) ProtoMessage() {} func (*SignalInviteReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{62} + return fileDescriptor_ws_da68f45d757be640, []int{62} } func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b) @@ -4546,7 +4546,7 @@ func (m *SignalInviteInGroupReq) Reset() { *m = SignalInviteInGroupReq{} func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReq) ProtoMessage() {} func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{63} + return fileDescriptor_ws_da68f45d757be640, []int{63} } func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b) @@ -4607,7 +4607,7 @@ func (m *SignalInviteInGroupReply) Reset() { *m = SignalInviteInGroupRep func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReply) ProtoMessage() {} func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{64} + return fileDescriptor_ws_da68f45d757be640, []int{64} } func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b) @@ -4662,7 +4662,7 @@ func (m *SignalCancelReq) Reset() { *m = SignalCancelReq{} } func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) } func (*SignalCancelReq) ProtoMessage() {} func (*SignalCancelReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{65} + return fileDescriptor_ws_da68f45d757be640, []int{65} } func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b) @@ -4720,7 +4720,7 @@ func (m *SignalCancelReply) Reset() { *m = SignalCancelReply{} } func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) } func (*SignalCancelReply) ProtoMessage() {} func (*SignalCancelReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{66} + return fileDescriptor_ws_da68f45d757be640, []int{66} } func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b) @@ -4755,7 +4755,7 @@ func (m *SignalAcceptReq) Reset() { *m = SignalAcceptReq{} } func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReq) ProtoMessage() {} func (*SignalAcceptReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{67} + return fileDescriptor_ws_da68f45d757be640, []int{67} } func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b) @@ -4823,7 +4823,7 @@ func (m *SignalAcceptReply) Reset() { *m = SignalAcceptReply{} } func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReply) ProtoMessage() {} func (*SignalAcceptReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{68} + return fileDescriptor_ws_da68f45d757be640, []int{68} } func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b) @@ -4877,7 +4877,7 @@ func (m *SignalHungUpReq) Reset() { *m = SignalHungUpReq{} } func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReq) ProtoMessage() {} func (*SignalHungUpReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{69} + return fileDescriptor_ws_da68f45d757be640, []int{69} } func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b) @@ -4928,7 +4928,7 @@ func (m *SignalHungUpReply) Reset() { *m = SignalHungUpReply{} } func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReply) ProtoMessage() {} func (*SignalHungUpReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{70} + return fileDescriptor_ws_da68f45d757be640, []int{70} } func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b) @@ -4963,7 +4963,7 @@ func (m *SignalRejectReq) Reset() { *m = SignalRejectReq{} } func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) } func (*SignalRejectReq) ProtoMessage() {} func (*SignalRejectReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{71} + return fileDescriptor_ws_da68f45d757be640, []int{71} } func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b) @@ -5028,7 +5028,7 @@ func (m *SignalRejectReply) Reset() { *m = SignalRejectReply{} } func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) } func (*SignalRejectReply) ProtoMessage() {} func (*SignalRejectReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{72} + return fileDescriptor_ws_da68f45d757be640, []int{72} } func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b) @@ -5062,7 +5062,7 @@ func (m *DelMsgListReq) Reset() { *m = DelMsgListReq{} } func (m *DelMsgListReq) String() string { return proto.CompactTextString(m) } func (*DelMsgListReq) ProtoMessage() {} func (*DelMsgListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{73} + return fileDescriptor_ws_da68f45d757be640, []int{73} } func (m *DelMsgListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListReq.Unmarshal(m, b) @@ -5122,7 +5122,7 @@ func (m *DelMsgListResp) Reset() { *m = DelMsgListResp{} } func (m *DelMsgListResp) String() string { return proto.CompactTextString(m) } func (*DelMsgListResp) ProtoMessage() {} func (*DelMsgListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_17c9ab6c274be9ad, []int{74} + return fileDescriptor_ws_da68f45d757be640, []int{74} } func (m *DelMsgListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListResp.Unmarshal(m, b) @@ -5238,214 +5238,213 @@ func init() { proto.RegisterType((*DelMsgListResp)(nil), "server_api_params.DelMsgListResp") } -func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_17c9ab6c274be9ad) } +func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_da68f45d757be640) } -var fileDescriptor_ws_17c9ab6c274be9ad = []byte{ - // 3285 bytes of a gzipped FileDescriptorProto +var fileDescriptor_ws_da68f45d757be640 = []byte{ + // 3274 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5b, 0x4d, 0x6c, 0x24, 0x57, - 0xf1, 0xff, 0x77, 0x8f, 0x67, 0xec, 0xa9, 0xf1, 0x67, 0xef, 0xc6, 0x99, 0xbf, 0xff, 0x9b, 0xfd, - 0x9b, 0x8e, 0x15, 0x42, 0x80, 0x4d, 0x94, 0x10, 0x09, 0xf2, 0xb1, 0xc8, 0x1f, 0xd9, 0x8f, 0x64, - 0xc7, 0x76, 0x7a, 0x76, 0x09, 0x22, 0x48, 0xa1, 0x3d, 0xfd, 0x3c, 0xee, 0xb8, 0xa7, 0xbb, 0xdd, - 0x1f, 0xde, 0x5d, 0x2e, 0x48, 0x41, 0x42, 0xdc, 0x38, 0x71, 0xe1, 0x82, 0xc4, 0x05, 0x81, 0xa2, - 0x28, 0x42, 0x20, 0x71, 0x40, 0x08, 0x21, 0x6e, 0x5c, 0xe0, 0x88, 0xb8, 0x71, 0xe6, 0xca, 0x01, - 0x09, 0x09, 0xf4, 0xaa, 0x5e, 0x77, 0xbf, 0xd7, 0xdd, 0x63, 0xcf, 0x5a, 0x56, 0x76, 0xa3, 0xe5, - 0x36, 0x55, 0xfd, 0xaa, 0x5e, 0xbd, 0xfa, 0xd5, 0x7b, 0x55, 0xef, 0x63, 0x60, 0x21, 0x76, 0x0e, - 0xdf, 0xbb, 0x1b, 0x3f, 0x7f, 0x37, 0xbe, 0x12, 0x46, 0x41, 0x12, 0x18, 0x4b, 0x31, 0x8b, 0x8e, - 0x59, 0xf4, 0x9e, 0x1d, 0xba, 0xef, 0x85, 0x76, 0x64, 0x8f, 0x62, 0xf3, 0x1f, 0x3a, 0xb4, 0xaf, - 0x47, 0x41, 0x1a, 0xde, 0xf4, 0xf7, 0x03, 0xa3, 0x0b, 0xd3, 0x43, 0x24, 0xb6, 0xba, 0xda, 0xaa, - 0xf6, 0x6c, 0xdb, 0xca, 0x48, 0xe3, 0x12, 0xb4, 0xf1, 0xe7, 0xb6, 0x3d, 0x62, 0x5d, 0x1d, 0xbf, - 0x15, 0x0c, 0xc3, 0x84, 0x59, 0x3f, 0x48, 0xdc, 0x7d, 0x77, 0x60, 0x27, 0x6e, 0xe0, 0x77, 0x1b, - 0xd8, 0x40, 0xe1, 0xf1, 0x36, 0xae, 0x9f, 0x44, 0x81, 0x93, 0x0e, 0xb0, 0xcd, 0x14, 0xb5, 0x91, - 0x79, 0xbc, 0xff, 0x7d, 0x7b, 0xc0, 0xee, 0x58, 0xb7, 0xba, 0x4d, 0xea, 0x5f, 0x90, 0xc6, 0x2a, - 0x74, 0x82, 0xbb, 0x3e, 0x8b, 0xee, 0xc4, 0x2c, 0xba, 0xb9, 0xd5, 0x6d, 0xe1, 0x57, 0x99, 0x65, - 0x5c, 0x06, 0x18, 0x44, 0xcc, 0x4e, 0xd8, 0x6d, 0x77, 0xc4, 0xba, 0xd3, 0xab, 0xda, 0xb3, 0x73, - 0x96, 0xc4, 0xe1, 0x1a, 0x46, 0x6c, 0xb4, 0xc7, 0xa2, 0xcd, 0x20, 0xf5, 0x93, 0xee, 0x0c, 0x36, - 0x90, 0x59, 0xc6, 0x3c, 0xe8, 0xec, 0x5e, 0xb7, 0x8d, 0xaa, 0x75, 0x76, 0xcf, 0x58, 0x86, 0x56, - 0x9c, 0xd8, 0x49, 0x1a, 0x77, 0x61, 0x55, 0x7b, 0xb6, 0x69, 0x09, 0xca, 0x58, 0x83, 0x39, 0xd4, - 0x1b, 0x64, 0xd6, 0x74, 0x50, 0x44, 0x65, 0xe6, 0x1e, 0xbb, 0x7d, 0x3f, 0x64, 0xdd, 0x59, 0x54, - 0x50, 0x30, 0xcc, 0xbf, 0xe8, 0x70, 0x01, 0xfd, 0xde, 0x43, 0x03, 0xae, 0xa5, 0x9e, 0x77, 0x0a, - 0x02, 0xcb, 0xd0, 0x4a, 0xa9, 0x3b, 0x72, 0xbf, 0xa0, 0x78, 0x3f, 0x51, 0xe0, 0xb1, 0x5b, 0xec, - 0x98, 0x79, 0xe8, 0xf8, 0xa6, 0x55, 0x30, 0x8c, 0x15, 0x98, 0x79, 0x3f, 0x70, 0x7d, 0xf4, 0xc9, - 0x14, 0x7e, 0xcc, 0x69, 0xfe, 0xcd, 0x77, 0x07, 0x87, 0x3e, 0x87, 0x94, 0xdc, 0x9d, 0xd3, 0x32, - 0x12, 0x2d, 0x15, 0x89, 0x67, 0x60, 0xde, 0x0e, 0xc3, 0x9e, 0xed, 0x0f, 0x59, 0x44, 0x9d, 0x4e, - 0xa3, 0xde, 0x12, 0x97, 0xe3, 0xc1, 0x7b, 0xea, 0x07, 0x69, 0x34, 0x60, 0xe8, 0xee, 0xa6, 0x25, - 0x71, 0xb8, 0x9e, 0x20, 0x64, 0x91, 0xe4, 0x46, 0xf2, 0x7c, 0x89, 0x2b, 0x50, 0x81, 0x1c, 0x15, - 0x8e, 0x63, 0x9a, 0xb0, 0x37, 0x7c, 0x07, 0x07, 0xd5, 0x11, 0x38, 0x16, 0x2c, 0xf3, 0x7b, 0x1a, - 0xcc, 0xef, 0xa6, 0x7b, 0x9e, 0x3b, 0x40, 0x15, 0xdc, 0xad, 0x85, 0xf3, 0x34, 0xc5, 0x79, 0xb2, - 0x0b, 0xf4, 0xf1, 0x2e, 0x68, 0xa8, 0x2e, 0x58, 0x86, 0xd6, 0x90, 0xf9, 0x0e, 0x8b, 0x84, 0x4b, - 0x05, 0x25, 0x4c, 0x6d, 0x66, 0xa6, 0x9a, 0xbf, 0xd7, 0x61, 0xe6, 0x13, 0x36, 0x61, 0x15, 0x3a, - 0xe1, 0x41, 0xe0, 0xb3, 0xed, 0x94, 0x87, 0x95, 0xb0, 0x45, 0x66, 0x19, 0x17, 0xa1, 0xb9, 0xe7, - 0x46, 0xc9, 0x01, 0xe2, 0x3a, 0x67, 0x11, 0xc1, 0xb9, 0x6c, 0x64, 0xbb, 0x04, 0x66, 0xdb, 0x22, - 0x42, 0x0c, 0x68, 0x26, 0xf7, 0xbd, 0x3a, 0xc7, 0xda, 0x95, 0x39, 0x56, 0x8d, 0x0d, 0xa8, 0x8d, - 0x8d, 0xe7, 0x60, 0x71, 0xe8, 0x05, 0x7b, 0xb6, 0x67, 0xb1, 0xc1, 0x71, 0x2f, 0x1e, 0xee, 0x84, - 0x09, 0x02, 0xd9, 0xb4, 0x2a, 0x7c, 0xf3, 0x9f, 0x1a, 0xc0, 0xb5, 0xc8, 0x65, 0xbe, 0x83, 0x6e, - 0x2c, 0x2d, 0x04, 0x5a, 0x75, 0x21, 0x58, 0x86, 0x56, 0xc4, 0x46, 0x76, 0x74, 0x98, 0x4d, 0x14, - 0xa2, 0x4a, 0xc6, 0x37, 0x2a, 0xc6, 0xbf, 0x0a, 0xb0, 0x8f, 0xfd, 0x70, 0x3d, 0xe8, 0xd6, 0xce, - 0x8b, 0xff, 0x77, 0xa5, 0xb2, 0x64, 0x5e, 0xc9, 0x10, 0xb5, 0xa4, 0xe6, 0x7c, 0x16, 0xda, 0x8e, - 0x23, 0x82, 0xbd, 0x49, 0xb3, 0x30, 0x67, 0xd4, 0xc4, 0x7a, 0xeb, 0x84, 0x58, 0x9f, 0xce, 0x03, - 0xe8, 0xef, 0x1a, 0xb4, 0x37, 0x3c, 0x7b, 0x70, 0x38, 0xe1, 0xd0, 0xd5, 0x21, 0xea, 0x95, 0x21, - 0x5e, 0x87, 0xb9, 0x3d, 0xae, 0x2e, 0x1b, 0x02, 0x7a, 0xa1, 0xf3, 0xe2, 0x67, 0x6a, 0x46, 0xa9, - 0x4e, 0x20, 0x4b, 0x95, 0x53, 0x87, 0x3b, 0x75, 0xfa, 0x70, 0x9b, 0x27, 0x0c, 0xb7, 0x95, 0x0f, - 0xf7, 0xcf, 0x3a, 0xcc, 0xe2, 0xa2, 0x68, 0xb1, 0xa3, 0x94, 0xc5, 0x89, 0xf1, 0x3a, 0xcc, 0xa4, - 0x99, 0xa9, 0xda, 0xa4, 0xa6, 0xe6, 0x22, 0xc6, 0x2b, 0x62, 0x09, 0x46, 0x79, 0x1d, 0xe5, 0x2f, - 0xd5, 0xc8, 0xe7, 0xf9, 0xcf, 0x2a, 0x9a, 0xf3, 0x74, 0x75, 0x60, 0xfb, 0x8e, 0xc7, 0x2c, 0x16, - 0xa7, 0x5e, 0x22, 0x56, 0x56, 0x85, 0x47, 0x91, 0x76, 0xd4, 0x8b, 0x87, 0x22, 0x99, 0x09, 0x8a, - 0x7b, 0x87, 0xda, 0xf1, 0x4f, 0x34, 0xf4, 0x82, 0xc1, 0x27, 0x75, 0xc4, 0x8e, 0x10, 0x21, 0x9a, - 0x82, 0x19, 0x59, 0xf4, 0x29, 0xbc, 0x46, 0x81, 0xa0, 0xf0, 0x38, 0xc4, 0x44, 0xa3, 0x02, 0xca, - 0x62, 0x12, 0xa7, 0x9c, 0xc4, 0xcc, 0xbf, 0x36, 0x60, 0x8e, 0xa6, 0x4f, 0xe6, 0xd4, 0xcb, 0x3c, - 0xce, 0x83, 0x91, 0x12, 0x45, 0x12, 0x87, 0x5b, 0xc1, 0xa9, 0x6d, 0x75, 0x51, 0x52, 0x78, 0x3c, - 0x14, 0x39, 0x7d, 0x4d, 0x59, 0x9c, 0x64, 0x56, 0xd6, 0xcb, 0x75, 0x79, 0x91, 0x92, 0x38, 0x7c, - 0xd9, 0x4b, 0x02, 0x25, 0x3a, 0x72, 0x9a, 0xcb, 0x26, 0x41, 0xde, 0x3f, 0xc5, 0x87, 0xc4, 0xe1, - 0xfe, 0x4d, 0x82, 0xac, 0x6f, 0x72, 0x52, 0xc1, 0x20, 0xcd, 0xa2, 0x5f, 0x4a, 0x3b, 0x39, 0x5d, - 0x41, 0xb5, 0x7d, 0x22, 0xaa, 0xa0, 0xa0, 0xaa, 0x4e, 0xae, 0x4e, 0x65, 0x72, 0xad, 0xc1, 0x1c, - 0xe9, 0xc9, 0x82, 0x7e, 0x96, 0xca, 0x02, 0x85, 0xa9, 0xc6, 0xc6, 0x5c, 0x39, 0x36, 0x54, 0x74, - 0xe7, 0xc7, 0xa0, 0xbb, 0x90, 0xa3, 0xfb, 0x0b, 0x1d, 0x60, 0x8b, 0x85, 0x76, 0x94, 0x8c, 0x98, - 0x9f, 0xf0, 0xe1, 0x39, 0x39, 0x95, 0x83, 0xab, 0xf0, 0xe4, 0x9c, 0xa2, 0xab, 0x39, 0xc5, 0x80, - 0x29, 0x74, 0x38, 0xa1, 0x89, 0xbf, 0xb9, 0x33, 0x43, 0x3b, 0x22, 0x6d, 0x14, 0xe4, 0x39, 0xcd, - 0x73, 0x46, 0x10, 0x39, 0x22, 0xcb, 0x34, 0x2d, 0x22, 0xf8, 0xe4, 0x2f, 0xfa, 0xc3, 0xe2, 0xa7, - 0x45, 0x39, 0x40, 0xe5, 0x9e, 0x5a, 0xaf, 0x3d, 0x07, 0x8b, 0x71, 0xba, 0x57, 0x0c, 0x6e, 0x3b, - 0x1d, 0x89, 0x70, 0xaf, 0xf0, 0xb9, 0x53, 0xa9, 0x90, 0xe3, 0x8d, 0x28, 0x2d, 0x15, 0x8c, 0x72, - 0x05, 0x61, 0x7e, 0xa8, 0xc3, 0xe2, 0x4e, 0x34, 0xb4, 0x7d, 0xf7, 0xdb, 0x58, 0x9a, 0xe2, 0x02, - 0x7e, 0x96, 0xf4, 0xbc, 0x0a, 0x1d, 0xe6, 0x0f, 0x3d, 0x37, 0x3e, 0xd8, 0x2e, 0xfc, 0x26, 0xb3, - 0x64, 0x67, 0x4f, 0x8d, 0x4b, 0xe0, 0x4d, 0x25, 0x81, 0x2f, 0x43, 0x6b, 0x14, 0xec, 0xb9, 0x5e, - 0x16, 0xf7, 0x82, 0xc2, 0x98, 0x67, 0x1e, 0xc3, 0x4c, 0x9e, 0xc7, 0x7c, 0xc6, 0x28, 0x92, 0xfa, - 0x4c, 0x6d, 0x52, 0x6f, 0xcb, 0x49, 0x5d, 0x75, 0x3c, 0x54, 0x1c, 0x4f, 0xee, 0xea, 0xe4, 0xee, - 0xfa, 0x9d, 0x06, 0x8b, 0x85, 0xbb, 0xa9, 0x5e, 0x1d, 0xeb, 0xae, 0x72, 0x04, 0xea, 0x35, 0x11, - 0x98, 0xc7, 0x4d, 0x43, 0x8e, 0x1b, 0x1e, 0x69, 0x41, 0xec, 0x4a, 0x7b, 0x83, 0x9c, 0xe6, 0xbd, - 0x79, 0xcc, 0x96, 0x9c, 0x45, 0x94, 0x54, 0xa1, 0xb7, 0x94, 0x0a, 0xbd, 0x9c, 0x47, 0x7f, 0xad, - 0xc1, 0x45, 0x8e, 0x72, 0x65, 0x18, 0x3b, 0xb0, 0x18, 0x94, 0x22, 0x41, 0x24, 0x9a, 0xa7, 0x6b, - 0x12, 0x45, 0x39, 0x68, 0xac, 0x8a, 0x30, 0x57, 0xe8, 0x94, 0x3a, 0x11, 0x99, 0xa7, 0x4e, 0x61, - 0xd9, 0x1e, 0xab, 0x22, 0x6c, 0xfe, 0x46, 0x83, 0x45, 0x4a, 0x6d, 0xd2, 0x3c, 0x3f, 0x77, 0xb3, - 0xdf, 0x81, 0x8b, 0xe5, 0x9e, 0x6f, 0xb9, 0x71, 0xd2, 0xd5, 0x57, 0x1b, 0x93, 0x9a, 0x5e, 0xab, - 0x80, 0xcf, 0xb5, 0x27, 0x77, 0x53, 0xcf, 0xeb, 0xb1, 0x38, 0xb6, 0x87, 0x6c, 0xe3, 0x7e, 0x9f, - 0x1d, 0xf1, 0x0f, 0x16, 0x3b, 0x1a, 0x1b, 0x43, 0xbc, 0xce, 0xc1, 0x42, 0xc1, 0x0d, 0xfc, 0x3c, - 0x84, 0x64, 0x16, 0x9f, 0x56, 0x31, 0xe9, 0xe9, 0x36, 0x56, 0x1b, 0x3c, 0x85, 0x0a, 0xd2, 0xf8, - 0x16, 0xcc, 0x62, 0x0e, 0x17, 0xdd, 0x74, 0xa7, 0x70, 0x00, 0xaf, 0xd5, 0x56, 0x0d, 0xb5, 0x56, - 0x51, 0x35, 0x20, 0xe8, 0x37, 0xfc, 0x24, 0xba, 0x6f, 0x29, 0x1a, 0x57, 0xde, 0x85, 0xa5, 0x4a, - 0x13, 0x63, 0x11, 0x1a, 0x87, 0xec, 0xbe, 0x18, 0x07, 0xff, 0x69, 0xbc, 0x00, 0xcd, 0x63, 0xdb, - 0x4b, 0x99, 0x40, 0x7f, 0xa5, 0xc6, 0x02, 0x61, 0xb3, 0x45, 0x0d, 0x5f, 0xd1, 0xbf, 0xac, 0x99, - 0x4f, 0xe7, 0x03, 0x93, 0xc7, 0xa8, 0x29, 0x63, 0x34, 0xdf, 0x82, 0x4e, 0x2f, 0x1e, 0x6e, 0xd9, - 0x89, 0x8d, 0x0d, 0x5f, 0x83, 0xce, 0xa8, 0x20, 0xb1, 0x71, 0x7d, 0x7f, 0x42, 0xc8, 0x92, 0x9b, - 0x9b, 0x7f, 0xd2, 0xa1, 0x5b, 0xef, 0x8a, 0x38, 0xe4, 0x36, 0xb0, 0x28, 0xda, 0x0c, 0x1c, 0x86, - 0x43, 0x6b, 0x5a, 0x19, 0xc9, 0xb1, 0x63, 0x51, 0xc4, 0x73, 0x98, 0x28, 0xb2, 0x89, 0x32, 0xae, - 0xc0, 0x94, 0x97, 0xc1, 0x72, 0xb2, 0x15, 0xd8, 0xce, 0x18, 0xc1, 0x22, 0x7a, 0x57, 0x1a, 0x90, - 0xc0, 0x6c, 0x7d, 0x62, 0xcc, 0xe2, 0x90, 0x40, 0x93, 0x74, 0x10, 0x70, 0x15, 0xd5, 0x2b, 0x03, - 0x78, 0xa2, 0xb6, 0x69, 0x0d, 0x80, 0x5f, 0x52, 0x01, 0xbc, 0x3c, 0x7e, 0x28, 0x65, 0x10, 0x43, - 0x30, 0xae, 0xb3, 0xa4, 0x67, 0xdf, 0x5b, 0xf7, 0x9d, 0x9e, 0xeb, 0xf7, 0xd9, 0x11, 0x8f, 0xf6, - 0x55, 0xe8, 0x88, 0xad, 0x7c, 0x0e, 0x53, 0xdb, 0x92, 0x59, 0x63, 0x77, 0xf8, 0xa5, 0xf9, 0xd0, - 0xa8, 0xcc, 0x07, 0xf3, 0x2a, 0xcc, 0xca, 0xdd, 0x61, 0x12, 0xb1, 0xef, 0xf5, 0xd9, 0x11, 0x0e, - 0x68, 0xce, 0x12, 0x14, 0xf2, 0xb1, 0x85, 0xd8, 0x1b, 0x08, 0xca, 0xfc, 0xa3, 0x0e, 0x17, 0x2a, - 0x26, 0xc7, 0xe1, 0x83, 0xea, 0x91, 0xe3, 0xa5, 0x31, 0x2e, 0x5e, 0xa6, 0x94, 0x78, 0x39, 0x84, - 0x25, 0x02, 0x49, 0xea, 0xba, 0xdb, 0xc4, 0x00, 0x78, 0xbd, 0xae, 0x54, 0xaf, 0x1a, 0x29, 0xb0, - 0x97, 0xb8, 0x04, 0x7e, 0x55, 0xef, 0x0a, 0x83, 0xe5, 0xfa, 0xc6, 0x35, 0xf0, 0xbf, 0xac, 0xc2, - 0xff, 0xff, 0x75, 0xf0, 0xcb, 0x96, 0x48, 0xf8, 0x1f, 0xc1, 0x02, 0x5f, 0x54, 0xfb, 0xcc, 0x77, - 0x7a, 0xf1, 0x10, 0x1d, 0xb9, 0x0a, 0x1d, 0x92, 0xef, 0xc5, 0xc3, 0x62, 0xeb, 0x26, 0xb1, 0x78, - 0x8b, 0x81, 0xe7, 0xf2, 0xc5, 0x13, 0x5b, 0x88, 0x45, 0x4f, 0x62, 0xf1, 0x04, 0x19, 0x33, 0x71, - 0xea, 0xc1, 0xbd, 0xdb, 0xb0, 0x72, 0xda, 0xfc, 0xa0, 0x05, 0xd3, 0x22, 0x1a, 0x31, 0x29, 0xf2, - 0xdd, 0x72, 0xbe, 0xac, 0x12, 0x45, 0x75, 0xed, 0xe0, 0xb8, 0x08, 0x2f, 0xa2, 0xe4, 0x23, 0xa7, - 0x86, 0x7a, 0xe4, 0x54, 0xb2, 0x69, 0xaa, 0x6a, 0x53, 0x69, 0x5c, 0xcd, 0xea, 0xb8, 0x78, 0x19, - 0x87, 0x95, 0xcd, 0xae, 0x67, 0x27, 0xfb, 0x41, 0x34, 0x12, 0x9b, 0xdf, 0xa6, 0x55, 0xe1, 0xf3, - 0xd2, 0x91, 0x78, 0x79, 0xed, 0x4f, 0x29, 0xbc, 0xc4, 0xe5, 0x95, 0x36, 0x71, 0xb2, 0x3d, 0x00, - 0x9d, 0x50, 0xa8, 0x4c, 0xb2, 0x2d, 0x8e, 0xdd, 0xc0, 0xc7, 0x2a, 0x94, 0x4a, 0x7d, 0x99, 0xc5, - 0x47, 0x3e, 0x8a, 0x87, 0xd7, 0xa2, 0x60, 0x24, 0xce, 0x29, 0x32, 0x12, 0x47, 0x1e, 0xf8, 0x49, - 0x56, 0xc1, 0xd2, 0xd9, 0x84, 0xcc, 0xe2, 0xb2, 0x82, 0xc4, 0x3a, 0x7f, 0xd6, 0xca, 0x48, 0x1e, - 0x4b, 0x31, 0x3b, 0x12, 0xc5, 0x3b, 0xff, 0xa9, 0x20, 0xb7, 0xa0, 0x22, 0x57, 0xaa, 0xc6, 0x16, - 0xf1, 0xab, 0x5c, 0x8d, 0x15, 0x25, 0xce, 0x92, 0x52, 0xe2, 0xac, 0xc3, 0x74, 0x10, 0xf2, 0xe9, - 0x1f, 0x77, 0x0d, 0x9c, 0x2e, 0x9f, 0x1d, 0xbf, 0x40, 0x5d, 0xd9, 0xa1, 0x96, 0x34, 0x31, 0x32, - 0x39, 0xe3, 0x16, 0x2c, 0x04, 0xfb, 0xfb, 0x9e, 0xeb, 0xb3, 0xdd, 0x34, 0x3e, 0xc0, 0x4d, 0xf2, - 0x05, 0x0c, 0x76, 0xb3, 0xae, 0x88, 0x50, 0x5b, 0x5a, 0x65, 0x51, 0x5e, 0xf9, 0xd9, 0x09, 0x6d, - 0x72, 0x70, 0x81, 0xbb, 0x88, 0x0b, 0x9c, 0xc2, 0xc3, 0xb3, 0x3b, 0x69, 0xa1, 0x7f, 0x02, 0x1d, - 0x27, 0xb3, 0x56, 0x5e, 0x81, 0x59, 0xd9, 0xd8, 0x9a, 0x89, 0x79, 0x51, 0x9e, 0x98, 0x33, 0xf2, - 0xbc, 0xfb, 0xa1, 0x06, 0x0b, 0x25, 0x33, 0x79, 0xeb, 0xc4, 0x4d, 0x3c, 0x26, 0x34, 0x10, 0xc1, - 0x77, 0x3a, 0x0e, 0x8b, 0x07, 0x62, 0x22, 0xe0, 0x6f, 0x51, 0x33, 0x36, 0xf2, 0xb3, 0x2e, 0x13, - 0x66, 0xdd, 0x9d, 0x3e, 0x57, 0xd4, 0x0f, 0x52, 0xdf, 0xc9, 0xcf, 0xab, 0x25, 0x1e, 0x0f, 0x44, - 0x77, 0xa7, 0xbf, 0x61, 0x3b, 0x43, 0x46, 0xa7, 0xca, 0x4d, 0xb4, 0x49, 0x65, 0x9a, 0x0e, 0xcc, - 0xdc, 0x76, 0xc3, 0x78, 0x33, 0x18, 0x8d, 0x38, 0x9c, 0x0e, 0x4b, 0x78, 0x4d, 0xae, 0xe1, 0xe0, - 0x05, 0xc5, 0x3d, 0xe3, 0xb0, 0x7d, 0x3b, 0xf5, 0x12, 0xde, 0x34, 0x9b, 0xfe, 0x12, 0x0b, 0xcf, - 0x53, 0xe3, 0xc0, 0xdf, 0x22, 0x69, 0xb2, 0x53, 0xe2, 0x98, 0x7f, 0xd0, 0x61, 0x11, 0x57, 0xb7, - 0x4d, 0x0c, 0x1e, 0x07, 0x85, 0x5e, 0x84, 0x26, 0x4e, 0x66, 0x51, 0x1d, 0x9e, 0x7c, 0xfa, 0x41, - 0x4d, 0x8d, 0xab, 0xd0, 0x0a, 0x42, 0x2c, 0x29, 0x69, 0xe9, 0x7b, 0x66, 0x9c, 0x90, 0x7a, 0x74, - 0x6d, 0x09, 0x29, 0xe3, 0x1a, 0xc0, 0xa8, 0xa8, 0x20, 0xa9, 0x10, 0x98, 0x54, 0x87, 0x24, 0xc9, - 0x9d, 0x9b, 0xe7, 0xb8, 0xfc, 0xfc, 0xba, 0x61, 0xa9, 0x4c, 0x63, 0x1b, 0xe6, 0xd1, 0xec, 0x9d, - 0xec, 0x18, 0x0c, 0x31, 0x98, 0xbc, 0xc7, 0x92, 0xb4, 0xf9, 0x13, 0x4d, 0xb8, 0x91, 0x7f, 0xed, - 0x33, 0xf2, 0x7d, 0xe1, 0x12, 0xed, 0x4c, 0x2e, 0x59, 0x81, 0x99, 0x51, 0x2a, 0x9d, 0xca, 0x35, - 0xac, 0x9c, 0x2e, 0x20, 0x6a, 0x4c, 0x0c, 0x91, 0xf9, 0x53, 0x0d, 0xba, 0x6f, 0x06, 0xae, 0x8f, - 0x1f, 0xd6, 0xc3, 0xd0, 0x13, 0x97, 0x2c, 0x67, 0xc6, 0xfc, 0xab, 0xd0, 0xb6, 0x49, 0x8d, 0x9f, - 0x08, 0xd8, 0x27, 0x38, 0x69, 0x2b, 0x64, 0xa4, 0x43, 0x93, 0x86, 0x7c, 0x68, 0x62, 0x7e, 0xa4, - 0xc1, 0x3c, 0x39, 0xe5, 0xed, 0xd4, 0x4d, 0xce, 0x6c, 0xdf, 0x06, 0xcc, 0x1c, 0xa5, 0x6e, 0x72, - 0x86, 0xa8, 0xcc, 0xe5, 0xaa, 0xf1, 0xd4, 0xa8, 0x89, 0x27, 0xf3, 0x63, 0x0d, 0x2e, 0x95, 0xdd, - 0xba, 0x3e, 0x18, 0xb0, 0xf0, 0x61, 0x4e, 0x29, 0xe5, 0xd0, 0x68, 0xaa, 0x74, 0x68, 0x54, 0x6b, - 0xb2, 0xc5, 0xde, 0x67, 0x83, 0x47, 0xd7, 0xe4, 0xef, 0xea, 0xf0, 0xbf, 0xd7, 0xf3, 0x89, 0x77, - 0x3b, 0xb2, 0xfd, 0x78, 0x9f, 0x45, 0xd1, 0x43, 0xb4, 0xf7, 0x16, 0xcc, 0xf9, 0xec, 0x6e, 0x61, - 0x93, 0x98, 0x8e, 0x93, 0xaa, 0x51, 0x85, 0x27, 0x5b, 0xbb, 0xcc, 0x7f, 0x69, 0xb0, 0x48, 0x7a, - 0xde, 0x72, 0x07, 0x87, 0x0f, 0x71, 0xf0, 0xdb, 0x30, 0x7f, 0x88, 0x16, 0x70, 0xea, 0x0c, 0xcb, - 0x76, 0x49, 0x7a, 0xc2, 0xe1, 0xff, 0x5b, 0x83, 0x25, 0x52, 0x74, 0xd3, 0x3f, 0x76, 0x1f, 0x66, - 0xb0, 0xee, 0xc2, 0x82, 0x4b, 0x26, 0x9c, 0xd1, 0x01, 0x65, 0xf1, 0x09, 0x3d, 0xf0, 0x2b, 0x0d, - 0x16, 0x48, 0xd3, 0x1b, 0x7e, 0xc2, 0xa2, 0x33, 0x8f, 0xff, 0x06, 0x74, 0x98, 0x9f, 0x44, 0xb6, - 0x7f, 0x96, 0x15, 0x52, 0x16, 0x9d, 0x70, 0x91, 0xfc, 0x48, 0x03, 0x03, 0x55, 0x6d, 0xb9, 0xf1, - 0xc8, 0x8d, 0xe3, 0x87, 0x08, 0xdd, 0x64, 0x06, 0xff, 0x48, 0x87, 0x8b, 0x92, 0x96, 0x5e, 0x9a, - 0x3c, 0xea, 0x26, 0x1b, 0x5b, 0xd0, 0xe6, 0x35, 0x82, 0x7c, 0x1b, 0x39, 0x69, 0x47, 0x85, 0x20, - 0xaf, 0x62, 0x91, 0xe8, 0xb3, 0x41, 0xe0, 0x3b, 0x31, 0x16, 0x47, 0x73, 0x96, 0xc2, 0xe3, 0xcb, - 0xd0, 0x8a, 0xa4, 0x66, 0xd3, 0xf6, 0x07, 0xcc, 0x7b, 0x6c, 0x5c, 0x64, 0xfe, 0x5c, 0x83, 0x79, - 0x6a, 0xf2, 0xe8, 0x0f, 0x99, 0xe7, 0x7a, 0x0a, 0xe4, 0x4f, 0x0d, 0x4a, 0x3c, 0xbc, 0x96, 0x25, - 0x2d, 0x72, 0x5d, 0xfd, 0xe8, 0x86, 0xd6, 0x0d, 0xe8, 0x0c, 0x0e, 0x6c, 0x7f, 0x78, 0xa6, 0xe0, - 0x92, 0x45, 0xcd, 0x04, 0x9e, 0x94, 0x0f, 0xe0, 0x37, 0xe9, 0x13, 0x0e, 0xff, 0xa5, 0xd2, 0x50, - 0x4e, 0x7c, 0x6d, 0xf0, 0x60, 0x4e, 0x3f, 0x84, 0x25, 0xba, 0xf5, 0x95, 0x6a, 0x42, 0xa3, 0x0b, - 0xd3, 0xb6, 0x43, 0xc7, 0x10, 0x1a, 0x0a, 0x65, 0xa4, 0x7a, 0x9f, 0x2f, 0x9e, 0x77, 0x15, 0xf7, - 0xf9, 0x97, 0x01, 0x6c, 0xc7, 0x79, 0x27, 0x88, 0x1c, 0xd7, 0xcf, 0x0a, 0x7c, 0x89, 0x63, 0xbe, - 0x09, 0xb3, 0xd7, 0xa2, 0x60, 0x74, 0x5b, 0xba, 0xbf, 0x3d, 0xf1, 0x86, 0x59, 0xbe, 0xfb, 0xd5, - 0xd5, 0xbb, 0x5f, 0xf3, 0x9b, 0xf0, 0x44, 0xc5, 0x70, 0x74, 0xd6, 0x26, 0x5d, 0x4b, 0x67, 0x9d, - 0x88, 0x90, 0xa9, 0x3b, 0x97, 0x93, 0x6d, 0xb1, 0x14, 0x21, 0xf3, 0x03, 0x0d, 0x9e, 0xaa, 0xa8, - 0x5f, 0x0f, 0xc3, 0x28, 0x38, 0x16, 0x98, 0x9c, 0x47, 0x37, 0x6a, 0xf1, 0xab, 0x97, 0x8b, 0xdf, - 0x5a, 0x23, 0x94, 0x82, 0xfd, 0x13, 0x30, 0xe2, 0x67, 0x1a, 0x2c, 0x08, 0x23, 0x1c, 0x47, 0x74, - 0xfb, 0x32, 0xb4, 0xe8, 0x49, 0x8b, 0xe8, 0xf0, 0xa9, 0xda, 0x0e, 0xb3, 0xa7, 0x38, 0x96, 0x68, - 0x5c, 0x8d, 0x48, 0xbd, 0x6e, 0x46, 0x7d, 0x25, 0x0f, 0xf6, 0x89, 0x1f, 0x9d, 0x08, 0x01, 0xf3, - 0xeb, 0x59, 0x30, 0x6f, 0x31, 0x8f, 0x9d, 0xa7, 0x8f, 0xcc, 0x3b, 0x30, 0x8f, 0xef, 0x6b, 0x0a, - 0x1f, 0x9c, 0x8b, 0xda, 0x77, 0x60, 0x11, 0xd5, 0x9e, 0xbb, 0xbd, 0xf9, 0xec, 0xe0, 0xfe, 0x91, - 0x97, 0x92, 0x73, 0xd1, 0xfe, 0x45, 0xb8, 0x90, 0xf9, 0xfe, 0x4e, 0xe8, 0xe4, 0x87, 0x48, 0x63, - 0xee, 0xe9, 0xcc, 0x17, 0x60, 0x79, 0x33, 0xf0, 0x8f, 0x59, 0x14, 0xd3, 0x45, 0x22, 0x8a, 0x64, - 0x12, 0xca, 0xe4, 0x17, 0x94, 0xf9, 0x3e, 0xac, 0xc8, 0x12, 0x7d, 0x96, 0xec, 0x46, 0xee, 0xb1, - 0x24, 0x25, 0x0e, 0xa8, 0x35, 0xe5, 0x80, 0xba, 0x38, 0xd0, 0xd6, 0x95, 0x03, 0xed, 0x4b, 0xd0, - 0x76, 0x63, 0xa1, 0x00, 0x83, 0x6a, 0xc6, 0x2a, 0x18, 0xa6, 0x0d, 0x4b, 0xe4, 0x7e, 0x71, 0x61, - 0x84, 0x5d, 0xac, 0xc0, 0x0c, 0xc5, 0x54, 0xde, 0x49, 0x4e, 0x8f, 0xbd, 0x7e, 0x19, 0x7b, 0xd9, - 0x68, 0xf6, 0x61, 0x49, 0x3c, 0xaa, 0xd9, 0xb5, 0x87, 0xae, 0x4f, 0x8b, 0xec, 0x65, 0x80, 0xd0, - 0x1e, 0x66, 0x0f, 0xf0, 0xe8, 0xda, 0x4c, 0xe2, 0xf0, 0xef, 0xf1, 0x41, 0x70, 0x57, 0x7c, 0xd7, - 0xe9, 0x7b, 0xc1, 0x31, 0xbf, 0x06, 0x86, 0xc5, 0xe2, 0x30, 0xf0, 0x63, 0x26, 0x69, 0x5d, 0x85, - 0xce, 0x66, 0x1a, 0x45, 0xcc, 0xe7, 0x5d, 0x65, 0x2f, 0xcc, 0x64, 0x16, 0xd7, 0xdb, 0x2f, 0xf4, - 0xd2, 0x11, 0xbb, 0xc4, 0x31, 0x7f, 0xdc, 0x80, 0x76, 0xdf, 0x1d, 0xfa, 0xb6, 0x67, 0xb1, 0x23, - 0xe3, 0x35, 0x68, 0xd1, 0x96, 0x45, 0x44, 0x4a, 0xdd, 0x91, 0x2f, 0xb5, 0xa6, 0xbd, 0x99, 0xc5, - 0x8e, 0x6e, 0xfc, 0x8f, 0x25, 0x64, 0x8c, 0xb7, 0x61, 0x8e, 0x7e, 0xdd, 0xa4, 0x23, 0x28, 0x91, - 0xbf, 0x3e, 0x77, 0x8a, 0x12, 0xd1, 0x9a, 0x74, 0xa9, 0x1a, 0xb8, 0x41, 0x03, 0x2c, 0x69, 0xc4, - 0xf2, 0x30, 0xde, 0x20, 0xaa, 0x7c, 0x84, 0x41, 0x24, 0xc3, 0xa5, 0x6d, 0x3c, 0xa4, 0x11, 0x99, - 0x7a, 0xbc, 0x34, 0x9d, 0xe5, 0x08, 0x69, 0x92, 0xe1, 0xd2, 0x07, 0xa9, 0x3f, 0xbc, 0x13, 0x8a, - 0xb3, 0xc3, 0xf1, 0xd2, 0x37, 0xb0, 0x99, 0x90, 0x26, 0x19, 0x2e, 0x1d, 0xe1, 0xe2, 0x8d, 0x4e, - 0x3f, 0x49, 0x9a, 0xd6, 0x78, 0x21, 0x4d, 0x32, 0x1b, 0x6d, 0x98, 0x0e, 0xed, 0xfb, 0x5e, 0x60, - 0x3b, 0xe6, 0x87, 0x0d, 0x80, 0xac, 0x61, 0x8c, 0x85, 0x8e, 0x02, 0xd1, 0xda, 0xa9, 0x10, 0x85, - 0xde, 0x7d, 0x09, 0xa4, 0x7e, 0x3d, 0x48, 0x9f, 0x9f, 0x14, 0x24, 0xd2, 0x56, 0x82, 0xe9, 0x6a, - 0x09, 0xa6, 0xb5, 0x53, 0x61, 0x12, 0x46, 0x09, 0xa0, 0xae, 0x96, 0x80, 0x5a, 0x3b, 0x15, 0x28, - 0x21, 0x2f, 0xa0, 0xba, 0x5a, 0x82, 0x6a, 0xed, 0x54, 0xa8, 0x84, 0xbc, 0x00, 0xeb, 0x6a, 0x09, - 0xac, 0xb5, 0x53, 0xc1, 0x12, 0xf2, 0x55, 0xb8, 0x3e, 0xd6, 0x61, 0x1e, 0x5d, 0x46, 0xb7, 0xb0, - 0xfe, 0x7e, 0x80, 0xf7, 0x01, 0xe8, 0x2e, 0xf5, 0x8d, 0xa6, 0xca, 0x34, 0xbe, 0x00, 0x4b, 0xc4, - 0x60, 0xd2, 0x75, 0x89, 0x8e, 0xd7, 0x25, 0xd5, 0x0f, 0x78, 0x41, 0x94, 0xc6, 0x49, 0x30, 0xda, - 0xb2, 0x13, 0x3b, 0x2b, 0xbe, 0x0a, 0x8e, 0x7c, 0x7d, 0x37, 0x55, 0x79, 0x31, 0x1e, 0x05, 0xc1, - 0x28, 0xbf, 0x97, 0x13, 0x14, 0x97, 0x48, 0xdc, 0x11, 0x0b, 0xd2, 0x44, 0x2c, 0x13, 0x19, 0x49, - 0xef, 0xa8, 0x1c, 0xd7, 0xc6, 0x4b, 0x2f, 0xf1, 0xc8, 0x28, 0x67, 0xe0, 0xca, 0x56, 0x5c, 0xe2, - 0x89, 0x17, 0xdd, 0x05, 0xe7, 0xf4, 0x0b, 0x37, 0xf3, 0x6f, 0x1a, 0x5c, 0xd8, 0xb5, 0xa3, 0xc4, - 0x1d, 0xb8, 0xa1, 0xed, 0x27, 0x3d, 0x96, 0xd8, 0x38, 0x06, 0xe5, 0xa1, 0xa6, 0xf6, 0x60, 0x0f, - 0x35, 0x77, 0x61, 0x61, 0xa8, 0xee, 0x2e, 0x1e, 0x70, 0x63, 0x50, 0x16, 0x57, 0x5e, 0x9d, 0x36, - 0x1e, 0xf8, 0xd5, 0xa9, 0xf9, 0x7d, 0x1d, 0x16, 0x4a, 0x4b, 0xe7, 0x89, 0x79, 0x67, 0x1d, 0xc0, - 0xcd, 0xc3, 0xe8, 0x84, 0xc3, 0x77, 0x35, 0xd6, 0x2c, 0x49, 0xa8, 0xee, 0x26, 0xaf, 0x71, 0xf6, - 0x9b, 0xbc, 0x1b, 0xd0, 0x09, 0x0b, 0x90, 0x4e, 0xd8, 0xfb, 0xd4, 0x40, 0x69, 0xc9, 0xa2, 0xe6, - 0xbb, 0xb0, 0x54, 0x59, 0xa1, 0xf0, 0x4a, 0x2e, 0x38, 0x64, 0x7e, 0x7e, 0x25, 0xc7, 0x09, 0x29, - 0x58, 0xf5, 0x72, 0xb0, 0x7a, 0xee, 0xb1, 0xfc, 0x04, 0x5e, 0x90, 0xe6, 0x0f, 0x74, 0x58, 0xae, - 0xcf, 0x2e, 0x8f, 0xab, 0xbb, 0xf7, 0xa0, 0x3b, 0x6e, 0x25, 0x3f, 0x37, 0xaf, 0x17, 0xd1, 0x9d, - 0xe7, 0xe1, 0xc7, 0xd5, 0xdd, 0x17, 0xb2, 0xe8, 0x96, 0x52, 0x9d, 0xf9, 0xcb, 0xdc, 0x3f, 0x79, - 0xa5, 0xf1, 0x98, 0xfa, 0xc7, 0x78, 0x0e, 0x16, 0x69, 0x98, 0xd2, 0xd3, 0x0f, 0x2a, 0x5c, 0x2b, - 0xfc, 0x62, 0xa5, 0x90, 0xd2, 0xfe, 0xb9, 0xc5, 0xec, 0x6f, 0xb5, 0x0c, 0x93, 0xbc, 0x7e, 0xfb, - 0x54, 0x61, 0x52, 0x44, 0x9a, 0x54, 0xd4, 0x48, 0x91, 0x96, 0xd7, 0x95, 0xff, 0x8d, 0xb4, 0xd3, - 0x23, 0x2d, 0xf7, 0xa5, 0x54, 0xe0, 0x99, 0xdf, 0x81, 0xb9, 0x2d, 0xe6, 0xf5, 0xe2, 0x61, 0xf6, - 0x36, 0xf5, 0x5c, 0x37, 0x8a, 0xe5, 0x17, 0x7c, 0x53, 0xd5, 0x17, 0x7c, 0x1b, 0x30, 0x2f, 0x1b, - 0x70, 0x96, 0xb7, 0x97, 0x1b, 0x97, 0xbe, 0xb1, 0x72, 0xe5, 0x79, 0xfa, 0xcf, 0xe7, 0xab, 0x15, - 0x27, 0xee, 0xb5, 0xf0, 0x3f, 0xa0, 0x2f, 0xfd, 0x27, 0x00, 0x00, 0xff, 0xff, 0x43, 0x77, 0x44, - 0x0c, 0x16, 0x3a, 0x00, 0x00, + 0x11, 0xa6, 0x7b, 0x3c, 0x63, 0x4f, 0x8d, 0x7f, 0x7b, 0x37, 0xce, 0x60, 0x36, 0x8b, 0xe9, 0x58, + 0x21, 0x04, 0xd8, 0x44, 0x09, 0x91, 0x20, 0x3f, 0x8b, 0xfc, 0x93, 0xfd, 0x49, 0xd6, 0x5e, 0xa7, + 0x67, 0x97, 0x20, 0x82, 0x14, 0xda, 0xd3, 0xcf, 0xe3, 0x5e, 0xf7, 0x74, 0xb7, 0xfb, 0xc7, 0xbb, + 0xcb, 0x05, 0x29, 0x48, 0x88, 0x1b, 0x27, 0x38, 0x70, 0x41, 0xe2, 0x82, 0x40, 0x51, 0x84, 0x10, + 0x48, 0x1c, 0x10, 0xe2, 0xc0, 0x8d, 0x0b, 0x48, 0x5c, 0x10, 0x37, 0xce, 0x5c, 0x39, 0x20, 0x21, + 0x81, 0x5e, 0xd5, 0xeb, 0xee, 0xf7, 0xba, 0x7b, 0xec, 0xd9, 0x91, 0x95, 0xdd, 0x68, 0xb9, 0x4d, + 0x55, 0xbf, 0xaa, 0x57, 0xaf, 0xbe, 0x7a, 0xaf, 0xea, 0xfd, 0x0c, 0x2c, 0xc4, 0xce, 0xe1, 0x7b, + 0x77, 0xe3, 0xe7, 0xef, 0xc6, 0x97, 0xc2, 0x28, 0x48, 0x02, 0x63, 0x29, 0x66, 0xd1, 0x31, 0x8b, + 0xde, 0xb3, 0x43, 0xf7, 0xbd, 0xd0, 0x8e, 0xec, 0x61, 0x6c, 0xfe, 0x4b, 0x87, 0xf6, 0xd5, 0x28, + 0x48, 0xc3, 0xeb, 0xfe, 0x7e, 0x60, 0x74, 0x61, 0x7a, 0x80, 0xc4, 0x56, 0x57, 0x5b, 0xd5, 0x9e, + 0x6d, 0x5b, 0x19, 0x69, 0x5c, 0x80, 0x36, 0xfe, 0xdc, 0xb1, 0x87, 0xac, 0xab, 0xe3, 0xb7, 0x82, + 0x61, 0x98, 0x30, 0xeb, 0x07, 0x89, 0xbb, 0xef, 0xf6, 0xed, 0xc4, 0x0d, 0xfc, 0x6e, 0x03, 0x1b, + 0x28, 0x3c, 0xde, 0xc6, 0xf5, 0x93, 0x28, 0x70, 0xd2, 0x3e, 0xb6, 0x99, 0xa2, 0x36, 0x32, 0x8f, + 0xf7, 0xbf, 0x6f, 0xf7, 0xd9, 0x6d, 0xeb, 0x46, 0xb7, 0x49, 0xfd, 0x0b, 0xd2, 0x58, 0x85, 0x4e, + 0x70, 0xd7, 0x67, 0xd1, 0xed, 0x98, 0x45, 0xd7, 0xb7, 0xba, 0x2d, 0xfc, 0x2a, 0xb3, 0x8c, 0x8b, + 0x00, 0xfd, 0x88, 0xd9, 0x09, 0xbb, 0xe5, 0x0e, 0x59, 0x77, 0x7a, 0x55, 0x7b, 0x76, 0xce, 0x92, + 0x38, 0x5c, 0xc3, 0x90, 0x0d, 0xf7, 0x58, 0xb4, 0x19, 0xa4, 0x7e, 0xd2, 0x9d, 0xc1, 0x06, 0x32, + 0xcb, 0x98, 0x07, 0x9d, 0xdd, 0xeb, 0xb6, 0x51, 0xb5, 0xce, 0xee, 0x19, 0xcb, 0xd0, 0x8a, 0x13, + 0x3b, 0x49, 0xe3, 0x2e, 0xac, 0x6a, 0xcf, 0x36, 0x2d, 0x41, 0x19, 0x6b, 0x30, 0x87, 0x7a, 0x83, + 0xcc, 0x9a, 0x0e, 0x8a, 0xa8, 0xcc, 0xdc, 0x63, 0xb7, 0xee, 0x87, 0xac, 0x3b, 0x8b, 0x0a, 0x0a, + 0x86, 0xf9, 0x37, 0x1d, 0xce, 0xa1, 0xdf, 0xb7, 0xd1, 0x80, 0x2b, 0xa9, 0xe7, 0x9d, 0x82, 0xc0, + 0x32, 0xb4, 0x52, 0xea, 0x8e, 0xdc, 0x2f, 0x28, 0xde, 0x4f, 0x14, 0x78, 0xec, 0x06, 0x3b, 0x66, + 0x1e, 0x3a, 0xbe, 0x69, 0x15, 0x0c, 0x63, 0x05, 0x66, 0xee, 0x04, 0xae, 0x8f, 0x3e, 0x99, 0xc2, + 0x8f, 0x39, 0xcd, 0xbf, 0xf9, 0x6e, 0xff, 0xd0, 0xe7, 0x90, 0x92, 0xbb, 0x73, 0x5a, 0x46, 0xa2, + 0xa5, 0x22, 0xf1, 0x0c, 0xcc, 0xdb, 0x61, 0xb8, 0x6d, 0xfb, 0x03, 0x16, 0x51, 0xa7, 0xd3, 0xa8, + 0xb7, 0xc4, 0xe5, 0x78, 0xf0, 0x9e, 0x7a, 0x41, 0x1a, 0xf5, 0x19, 0xba, 0xbb, 0x69, 0x49, 0x1c, + 0xae, 0x27, 0x08, 0x59, 0x24, 0xb9, 0x91, 0x3c, 0x5f, 0xe2, 0x0a, 0x54, 0x20, 0x47, 0x85, 0xe3, + 0x98, 0x26, 0xec, 0x0d, 0xdf, 0xc1, 0x41, 0x75, 0x04, 0x8e, 0x05, 0xcb, 0xfc, 0x9e, 0x06, 0xf3, + 0xbb, 0xe9, 0x9e, 0xe7, 0xf6, 0x51, 0x05, 0x77, 0x6b, 0xe1, 0x3c, 0x4d, 0x71, 0x9e, 0xec, 0x02, + 0x7d, 0xb4, 0x0b, 0x1a, 0xaa, 0x0b, 0x96, 0xa1, 0x35, 0x60, 0xbe, 0xc3, 0x22, 0xe1, 0x52, 0x41, + 0x09, 0x53, 0x9b, 0x99, 0xa9, 0xe6, 0x8f, 0x74, 0x98, 0xf9, 0x88, 0x4d, 0x58, 0x85, 0x4e, 0x78, + 0x10, 0xf8, 0x6c, 0x27, 0xe5, 0x61, 0x25, 0x6c, 0x91, 0x59, 0xc6, 0x79, 0x68, 0xee, 0xb9, 0x51, + 0x72, 0x80, 0xb8, 0xce, 0x59, 0x44, 0x70, 0x2e, 0x1b, 0xda, 0x2e, 0x81, 0xd9, 0xb6, 0x88, 0x10, + 0x03, 0x9a, 0xc9, 0x7d, 0xaf, 0xce, 0xb1, 0x76, 0x65, 0x8e, 0x55, 0x63, 0x03, 0xea, 0x62, 0xc3, + 0xfc, 0xb7, 0x06, 0x70, 0x25, 0x72, 0x99, 0xef, 0xa0, 0x6b, 0x4a, 0x93, 0x5b, 0xab, 0x4e, 0xee, + 0x65, 0x68, 0x45, 0x6c, 0x68, 0x47, 0x87, 0x59, 0xf0, 0x13, 0x55, 0x32, 0xa8, 0x51, 0x31, 0xe8, + 0x55, 0x80, 0x7d, 0xec, 0x87, 0xeb, 0x41, 0x57, 0x75, 0x5e, 0xfc, 0xd4, 0xa5, 0xca, 0x32, 0x78, + 0x29, 0x43, 0xc9, 0x92, 0x9a, 0xf3, 0x99, 0x65, 0x3b, 0x8e, 0x08, 0xe0, 0x26, 0xcd, 0xac, 0x9c, + 0x51, 0x13, 0xbf, 0xad, 0x13, 0xe2, 0x77, 0x3a, 0x0f, 0x8a, 0x7f, 0x6a, 0xd0, 0xde, 0xf0, 0xec, + 0xfe, 0xe1, 0x98, 0x43, 0x57, 0x87, 0xa8, 0x57, 0x86, 0x78, 0x15, 0xe6, 0xf6, 0xb8, 0xba, 0x6c, + 0x08, 0xe8, 0x85, 0xce, 0x8b, 0x9f, 0xa9, 0x19, 0xa5, 0x3a, 0x29, 0x2c, 0x55, 0x4e, 0x1d, 0xee, + 0xd4, 0xe9, 0xc3, 0x6d, 0x9e, 0x30, 0xdc, 0x56, 0x3e, 0xdc, 0xbf, 0xe8, 0x30, 0x8b, 0x0b, 0x9d, + 0xc5, 0x8e, 0x52, 0x16, 0x27, 0xc6, 0xeb, 0x30, 0x93, 0x66, 0xa6, 0x6a, 0xe3, 0x9a, 0x9a, 0x8b, + 0x18, 0xaf, 0x88, 0x65, 0x15, 0xe5, 0x75, 0x94, 0xbf, 0x50, 0x23, 0x9f, 0xe7, 0x34, 0xab, 0x68, + 0xce, 0x53, 0xd0, 0x81, 0xed, 0x3b, 0x1e, 0xb3, 0x58, 0x9c, 0x7a, 0x89, 0x58, 0x2d, 0x15, 0x1e, + 0x45, 0xda, 0xd1, 0x76, 0x3c, 0x10, 0x09, 0x4a, 0x50, 0xdc, 0x3b, 0xd4, 0x8e, 0x7f, 0xa2, 0xa1, + 0x17, 0x0c, 0x3e, 0x51, 0x23, 0x76, 0x84, 0x08, 0xd1, 0xb4, 0xca, 0xc8, 0xa2, 0x4f, 0xe1, 0x35, + 0x0a, 0x04, 0x85, 0xc7, 0x21, 0x26, 0x1a, 0x15, 0x50, 0x66, 0x92, 0x38, 0xe5, 0xc4, 0x64, 0xfe, + 0xbd, 0x01, 0x73, 0x34, 0x7d, 0x32, 0xa7, 0x5e, 0xe4, 0x71, 0x1e, 0x0c, 0x95, 0x28, 0x92, 0x38, + 0xdc, 0x0a, 0x4e, 0xed, 0xa8, 0x0b, 0x8d, 0xc2, 0xe3, 0xa1, 0xc8, 0xe9, 0x2b, 0xca, 0x82, 0x23, + 0xb3, 0xb2, 0x5e, 0xae, 0xca, 0x0b, 0x8f, 0xc4, 0xe1, 0x4b, 0x59, 0x12, 0x28, 0xd1, 0x91, 0xd3, + 0x5c, 0x36, 0x09, 0xf2, 0xfe, 0x29, 0x3e, 0x24, 0x0e, 0xf7, 0x6f, 0x12, 0x64, 0x7d, 0x93, 0x93, + 0x0a, 0x06, 0x69, 0x16, 0xfd, 0x52, 0x2a, 0xc9, 0xe9, 0x0a, 0xaa, 0xed, 0x13, 0x51, 0x05, 0x05, + 0x55, 0x75, 0x72, 0x75, 0x2a, 0x93, 0x6b, 0x0d, 0xe6, 0x48, 0x4f, 0x16, 0xf4, 0xb3, 0x94, 0xea, + 0x15, 0xa6, 0x1a, 0x1b, 0x73, 0xe5, 0xd8, 0x50, 0xd1, 0x9d, 0x1f, 0x81, 0xee, 0x42, 0x8e, 0xee, + 0xaf, 0x74, 0x80, 0x2d, 0x16, 0xda, 0x51, 0x32, 0x64, 0x7e, 0xc2, 0x87, 0xe7, 0xe4, 0x54, 0x0e, + 0xae, 0xc2, 0x93, 0xf3, 0x84, 0xae, 0xe6, 0x09, 0x03, 0xa6, 0xd0, 0xe1, 0x84, 0x26, 0xfe, 0xe6, + 0xce, 0x0c, 0xed, 0x88, 0xb4, 0x51, 0x90, 0xe7, 0x34, 0xcf, 0x03, 0x41, 0xe4, 0x88, 0xcc, 0xd1, + 0xb4, 0x88, 0xe0, 0x93, 0xbf, 0xe8, 0x0f, 0x0b, 0x9a, 0x16, 0xad, 0xeb, 0x2a, 0xf7, 0xd4, 0x1a, + 0xec, 0x39, 0x58, 0x8c, 0xd3, 0xbd, 0x62, 0x70, 0x3b, 0xe9, 0x50, 0x84, 0x7b, 0x85, 0xcf, 0x9d, + 0x4a, 0xc5, 0x19, 0x6f, 0x44, 0xa9, 0xa6, 0x60, 0x94, 0xab, 0x02, 0xf3, 0x03, 0x1d, 0x16, 0x6f, + 0x46, 0x03, 0xdb, 0x77, 0xbf, 0x8d, 0xe5, 0x26, 0x2e, 0xe0, 0x93, 0xa4, 0xdc, 0x55, 0xe8, 0x30, + 0x7f, 0xe0, 0xb9, 0xf1, 0xc1, 0x4e, 0xe1, 0x37, 0x99, 0x25, 0x3b, 0x7b, 0x6a, 0x54, 0x52, 0x6e, + 0x2a, 0x49, 0x79, 0x19, 0x5a, 0xc3, 0x60, 0xcf, 0xf5, 0xb2, 0xb8, 0x17, 0x14, 0xc6, 0x3c, 0xf3, + 0x18, 0x66, 0xe7, 0x3c, 0xe6, 0x33, 0x46, 0x91, 0xa8, 0x67, 0x6a, 0x13, 0x75, 0x5b, 0x4e, 0xd4, + 0xaa, 0xe3, 0xa1, 0xe2, 0x78, 0x72, 0x57, 0x27, 0x77, 0xd7, 0x1f, 0x34, 0x58, 0x2c, 0xdc, 0x4d, + 0x35, 0xe8, 0x48, 0x77, 0x95, 0x23, 0x50, 0xaf, 0x89, 0xc0, 0x3c, 0x6e, 0x1a, 0x72, 0xdc, 0xf0, + 0x48, 0x0b, 0x62, 0x57, 0xaa, 0xf7, 0x73, 0x9a, 0xf7, 0xe6, 0x31, 0x5b, 0x72, 0x16, 0x51, 0x52, + 0xd5, 0xdd, 0x52, 0xaa, 0xee, 0x72, 0x1e, 0xfd, 0xad, 0x06, 0xe7, 0x39, 0xca, 0x95, 0x61, 0xdc, + 0x84, 0xc5, 0xa0, 0x14, 0x09, 0x22, 0xd1, 0x3c, 0x5d, 0x93, 0x28, 0xca, 0x41, 0x63, 0x55, 0x84, + 0xb9, 0x42, 0xa7, 0xd4, 0x89, 0xc8, 0x3c, 0x75, 0x0a, 0xcb, 0xf6, 0x58, 0x15, 0x61, 0xf3, 0x77, + 0x1a, 0x2c, 0x52, 0x6a, 0x93, 0xe6, 0xf9, 0x99, 0x9b, 0xfd, 0x0e, 0x9c, 0x2f, 0xf7, 0x7c, 0xc3, + 0x8d, 0x93, 0xae, 0xbe, 0xda, 0x18, 0xd7, 0xf4, 0x5a, 0x05, 0x7c, 0xae, 0x3d, 0xb9, 0x9b, 0x7a, + 0xde, 0x36, 0x8b, 0x63, 0x7b, 0xc0, 0x36, 0xee, 0xf7, 0xd8, 0x11, 0xff, 0x60, 0xb1, 0xa3, 0x91, + 0x31, 0xc4, 0xeb, 0x1c, 0x2c, 0x14, 0xdc, 0xc0, 0xcf, 0x43, 0x48, 0x66, 0xf1, 0x69, 0x15, 0x93, + 0x9e, 0x6e, 0x63, 0xb5, 0xc1, 0x53, 0xa8, 0x20, 0x8d, 0x6f, 0xc1, 0x2c, 0xe6, 0x70, 0xd1, 0x4d, + 0x77, 0x0a, 0x07, 0xf0, 0x5a, 0x6d, 0xd5, 0x50, 0x6b, 0x15, 0x55, 0x03, 0x82, 0x7e, 0xc3, 0x4f, + 0xa2, 0xfb, 0x96, 0xa2, 0x71, 0xe5, 0x5d, 0x58, 0xaa, 0x34, 0x31, 0x16, 0xa1, 0x71, 0xc8, 0xee, + 0x8b, 0x71, 0xf0, 0x9f, 0xc6, 0x0b, 0xd0, 0x3c, 0xb6, 0xbd, 0x94, 0x09, 0xf4, 0x57, 0x6a, 0x2c, + 0x10, 0x36, 0x5b, 0xd4, 0xf0, 0x15, 0xfd, 0xcb, 0x9a, 0xf9, 0x74, 0x3e, 0x30, 0x79, 0x8c, 0x9a, + 0x32, 0x46, 0xf3, 0x2d, 0xe8, 0x6c, 0xc7, 0x83, 0x2d, 0x3b, 0xb1, 0xb1, 0xe1, 0x6b, 0xd0, 0x19, + 0x16, 0x24, 0x36, 0xae, 0xef, 0x4f, 0x08, 0x59, 0x72, 0x73, 0xf3, 0xcf, 0x3a, 0x74, 0xeb, 0x5d, + 0x11, 0x87, 0xdc, 0x06, 0x16, 0x45, 0x9b, 0x81, 0xc3, 0x70, 0x68, 0x4d, 0x2b, 0x23, 0x39, 0x76, + 0x2c, 0x8a, 0x78, 0x0e, 0x13, 0x45, 0x36, 0x51, 0xc6, 0x25, 0x98, 0xf2, 0x32, 0x58, 0x4e, 0xb6, + 0x02, 0xdb, 0x19, 0x43, 0x58, 0x44, 0xef, 0x4a, 0x03, 0x12, 0x98, 0xad, 0x8f, 0x8d, 0x59, 0x1c, + 0x12, 0x68, 0x92, 0x0e, 0x02, 0xae, 0xa2, 0x7a, 0xa5, 0x0f, 0x4f, 0xd4, 0x36, 0xad, 0x01, 0xf0, + 0x4b, 0x2a, 0x80, 0x17, 0x47, 0x0f, 0xa5, 0x0c, 0x62, 0x08, 0xc6, 0x55, 0x96, 0x6c, 0xdb, 0xf7, + 0xd6, 0x7d, 0x67, 0xdb, 0xf5, 0x7b, 0xec, 0x88, 0x47, 0xfb, 0x2a, 0x74, 0xc4, 0xf6, 0x3c, 0x87, + 0xa9, 0x6d, 0xc9, 0xac, 0x91, 0xbb, 0xf6, 0xd2, 0x7c, 0x68, 0x54, 0xe6, 0x83, 0x79, 0x19, 0x66, + 0xe5, 0xee, 0x30, 0x89, 0xd8, 0xf7, 0x7a, 0xec, 0x08, 0x07, 0x34, 0x67, 0x09, 0x0a, 0xf9, 0xd8, + 0x42, 0xec, 0x0d, 0x04, 0x65, 0xfe, 0x49, 0x87, 0x73, 0x15, 0x93, 0xe3, 0xf0, 0x41, 0xf5, 0xc8, + 0xf1, 0xd2, 0x18, 0x15, 0x2f, 0x53, 0x4a, 0xbc, 0x1c, 0xc2, 0x12, 0x81, 0x24, 0x75, 0xdd, 0x6d, + 0x62, 0x00, 0xbc, 0x5e, 0x57, 0xaa, 0x57, 0x8d, 0x14, 0xd8, 0x4b, 0x5c, 0x02, 0xbf, 0xaa, 0x77, + 0x85, 0xc1, 0x72, 0x7d, 0xe3, 0x1a, 0xf8, 0x5f, 0x56, 0xe1, 0xff, 0x74, 0x1d, 0xfc, 0xb2, 0x25, + 0x12, 0xfe, 0x47, 0xb0, 0xc0, 0x17, 0xd5, 0x1e, 0xf3, 0x9d, 0xed, 0x78, 0x80, 0x8e, 0x5c, 0x85, + 0x0e, 0xc9, 0x6f, 0xc7, 0x83, 0x62, 0xeb, 0x26, 0xb1, 0x78, 0x8b, 0xbe, 0xe7, 0xf2, 0xc5, 0x13, + 0x5b, 0x88, 0x45, 0x4f, 0x62, 0xf1, 0x04, 0x19, 0x33, 0x71, 0x92, 0xc1, 0xbd, 0xdb, 0xb0, 0x72, + 0xda, 0x7c, 0xbf, 0x05, 0xd3, 0x22, 0x1a, 0x31, 0x29, 0xf2, 0xdd, 0x72, 0xbe, 0xac, 0x12, 0x45, + 0x75, 0x6d, 0xff, 0xb8, 0x08, 0x2f, 0xa2, 0xe4, 0x63, 0xa4, 0x86, 0x7a, 0x8c, 0x54, 0xb2, 0x69, + 0xaa, 0x6a, 0x53, 0x69, 0x5c, 0xcd, 0xea, 0xb8, 0x78, 0x19, 0x87, 0x95, 0xcd, 0xae, 0x67, 0x27, + 0xfb, 0x41, 0x34, 0x14, 0x9b, 0xdf, 0xa6, 0x55, 0xe1, 0xf3, 0xd2, 0x91, 0x78, 0x79, 0xed, 0x4f, + 0x29, 0xbc, 0xc4, 0xe5, 0x95, 0x36, 0x71, 0xb2, 0x3d, 0x00, 0x9d, 0x3a, 0xa8, 0x4c, 0xb2, 0x2d, + 0x8e, 0xdd, 0xc0, 0xc7, 0x2a, 0x94, 0x4a, 0x7d, 0x99, 0xc5, 0x47, 0x3e, 0x8c, 0x07, 0x57, 0xa2, + 0x60, 0x28, 0xce, 0x1e, 0x32, 0x12, 0x47, 0x1e, 0xf8, 0x49, 0x56, 0xc1, 0x76, 0x48, 0x56, 0x62, + 0x71, 0x59, 0x41, 0x62, 0x9d, 0x3f, 0x6b, 0x65, 0x24, 0x8f, 0xa5, 0x98, 0x1d, 0x89, 0xe2, 0x9d, + 0xff, 0x54, 0x90, 0x5b, 0x50, 0x91, 0x2b, 0x55, 0x63, 0x8b, 0xf8, 0x55, 0xae, 0xc6, 0x8a, 0x12, + 0x67, 0x49, 0x29, 0x71, 0xd6, 0x61, 0x3a, 0x08, 0xf9, 0xf4, 0x8f, 0xbb, 0x06, 0x4e, 0x97, 0xcf, + 0x8e, 0x5e, 0xa0, 0x2e, 0xdd, 0xa4, 0x96, 0x34, 0x31, 0x32, 0x39, 0xe3, 0x06, 0x2c, 0x04, 0xfb, + 0xfb, 0x9e, 0xeb, 0xb3, 0xdd, 0x34, 0x3e, 0xc0, 0x4d, 0xf2, 0x39, 0x0c, 0x76, 0xb3, 0xae, 0x88, + 0x50, 0x5b, 0x5a, 0x65, 0x51, 0x5e, 0xf9, 0xd9, 0x09, 0x6d, 0x72, 0x70, 0x81, 0x3b, 0x8f, 0x0b, + 0x9c, 0xc2, 0xc3, 0xf3, 0x38, 0x69, 0xa1, 0x7f, 0x02, 0x1d, 0x27, 0xb3, 0x56, 0x5e, 0x81, 0x59, + 0xd9, 0xd8, 0x9a, 0x89, 0x79, 0x5e, 0x9e, 0x98, 0x33, 0xf2, 0xbc, 0xfb, 0xa1, 0x06, 0x0b, 0x25, + 0x33, 0x79, 0xeb, 0xc4, 0x4d, 0x3c, 0x26, 0x34, 0x10, 0xc1, 0x77, 0x3a, 0x0e, 0x8b, 0xfb, 0x62, + 0x22, 0xe0, 0x6f, 0x51, 0x33, 0x36, 0xf2, 0xf3, 0x2b, 0x13, 0x66, 0xdd, 0x9b, 0x3d, 0xae, 0xa8, + 0x17, 0xa4, 0xbe, 0x93, 0x9f, 0x41, 0x4b, 0x3c, 0x1e, 0x88, 0xee, 0xcd, 0xde, 0x86, 0xed, 0x0c, + 0x18, 0x9d, 0x14, 0x37, 0xd1, 0x26, 0x95, 0x69, 0x3a, 0x30, 0x73, 0xcb, 0x0d, 0xe3, 0xcd, 0x60, + 0x38, 0xe4, 0x70, 0x3a, 0x2c, 0xe1, 0x35, 0xb9, 0x86, 0x83, 0x17, 0x14, 0xf7, 0x8c, 0xc3, 0xf6, + 0xed, 0xd4, 0x4b, 0x78, 0xd3, 0x6c, 0xfa, 0x4b, 0x2c, 0x3c, 0x23, 0x8d, 0x03, 0x7f, 0x8b, 0xa4, + 0xc9, 0x4e, 0x89, 0x63, 0xfe, 0x51, 0x87, 0x45, 0x5c, 0xdd, 0x36, 0x31, 0x78, 0x1c, 0x14, 0x7a, + 0x11, 0x9a, 0x38, 0x99, 0x45, 0x75, 0x78, 0xf2, 0xe9, 0x07, 0x35, 0x35, 0x2e, 0x43, 0x2b, 0x08, + 0xb1, 0xa4, 0xa4, 0xa5, 0xef, 0x99, 0x51, 0x42, 0xea, 0x71, 0xb4, 0x25, 0xa4, 0x8c, 0x2b, 0x00, + 0xc3, 0xa2, 0x82, 0xa4, 0x42, 0x60, 0x5c, 0x1d, 0x92, 0x24, 0x77, 0x6e, 0x9e, 0xe3, 0xf2, 0x33, + 0xe9, 0x86, 0xa5, 0x32, 0x8d, 0x1d, 0x98, 0x47, 0xb3, 0x6f, 0x66, 0xc7, 0x60, 0x88, 0xc1, 0xf8, + 0x3d, 0x96, 0xa4, 0xcd, 0x9f, 0x6a, 0xc2, 0x8d, 0xfc, 0x6b, 0x8f, 0x91, 0xef, 0x0b, 0x97, 0x68, + 0x13, 0xb9, 0x64, 0x05, 0x66, 0x86, 0xa9, 0x74, 0x2a, 0xd7, 0xb0, 0x72, 0xba, 0x80, 0xa8, 0x31, + 0x36, 0x44, 0xe6, 0xcf, 0x34, 0xe8, 0xbe, 0x19, 0xb8, 0x3e, 0x7e, 0x58, 0x0f, 0x43, 0x4f, 0x5c, + 0x9c, 0x4c, 0x8c, 0xf9, 0x57, 0xa1, 0x6d, 0x93, 0x1a, 0x3f, 0x11, 0xb0, 0x8f, 0x71, 0xd2, 0x56, + 0xc8, 0x48, 0x87, 0x26, 0x0d, 0xf9, 0xd0, 0xc4, 0xfc, 0x50, 0x83, 0x79, 0x72, 0xca, 0xdb, 0xa9, + 0x9b, 0x4c, 0x6c, 0xdf, 0x06, 0xcc, 0x1c, 0xa5, 0x6e, 0x32, 0x41, 0x54, 0xe6, 0x72, 0xd5, 0x78, + 0x6a, 0xd4, 0xc4, 0x93, 0xf9, 0x4b, 0x0d, 0x2e, 0x94, 0xdd, 0xba, 0xde, 0xef, 0xb3, 0xf0, 0x61, + 0x4e, 0x29, 0xe5, 0xd0, 0x68, 0xaa, 0x74, 0x68, 0x54, 0x6b, 0xb2, 0xc5, 0xee, 0xb0, 0xfe, 0xa3, + 0x6b, 0xf2, 0x77, 0x75, 0xf8, 0xe4, 0xd5, 0x7c, 0xe2, 0xdd, 0x8a, 0x6c, 0x3f, 0xde, 0x67, 0x51, + 0xf4, 0x10, 0xed, 0xbd, 0x01, 0x73, 0x3e, 0xbb, 0x5b, 0xd8, 0x24, 0xa6, 0xe3, 0xb8, 0x6a, 0x54, + 0xe1, 0xf1, 0xd6, 0x2e, 0xf3, 0x3f, 0x1a, 0x2c, 0x92, 0x9e, 0xb7, 0xdc, 0xfe, 0xe1, 0x43, 0x1c, + 0xfc, 0x0e, 0xcc, 0x1f, 0xa2, 0x05, 0x9c, 0x9a, 0x60, 0xd9, 0x2e, 0x49, 0x8f, 0x39, 0xfc, 0xff, + 0x6a, 0xb0, 0x44, 0x8a, 0xae, 0xfb, 0xc7, 0xee, 0xc3, 0x0c, 0xd6, 0x5d, 0x58, 0x70, 0xc9, 0x84, + 0x09, 0x1d, 0x50, 0x16, 0x1f, 0xd3, 0x03, 0xbf, 0xd1, 0x60, 0x81, 0x34, 0xbd, 0xe1, 0x27, 0x2c, + 0x9a, 0x78, 0xfc, 0xd7, 0xa0, 0xc3, 0xfc, 0x24, 0xb2, 0xfd, 0x49, 0x56, 0x48, 0x59, 0x74, 0xcc, + 0x45, 0xf2, 0x43, 0x0d, 0x0c, 0x54, 0xb5, 0xe5, 0xc6, 0x43, 0x37, 0x8e, 0x1f, 0x22, 0x74, 0xe3, + 0x19, 0xfc, 0x63, 0x1d, 0xce, 0x4b, 0x5a, 0xb6, 0xd3, 0xe4, 0x51, 0x37, 0xd9, 0xd8, 0x82, 0x36, + 0xaf, 0x11, 0xe4, 0xdb, 0xc8, 0x71, 0x3b, 0x2a, 0x04, 0x79, 0x15, 0x8b, 0x44, 0x8f, 0xf5, 0x03, + 0xdf, 0x89, 0xb1, 0x38, 0x9a, 0xb3, 0x14, 0x1e, 0x5f, 0x86, 0x56, 0x24, 0x35, 0x9b, 0xb6, 0xdf, + 0x67, 0xde, 0x63, 0xe3, 0x22, 0xf3, 0x17, 0x1a, 0xcc, 0x53, 0x93, 0x47, 0x7f, 0xc8, 0x3c, 0xd7, + 0x53, 0x20, 0x7f, 0x6c, 0x50, 0xe2, 0xe1, 0xb5, 0x2c, 0x69, 0x91, 0xeb, 0xea, 0x47, 0x37, 0xb4, + 0xae, 0x41, 0xa7, 0x7f, 0x60, 0xfb, 0x83, 0x89, 0x82, 0x4b, 0x16, 0x35, 0x13, 0x78, 0x52, 0x3e, + 0x80, 0xdf, 0xa4, 0x4f, 0x38, 0xfc, 0x97, 0x4a, 0x43, 0x39, 0xf1, 0xb5, 0xc1, 0x83, 0x39, 0xfd, + 0x10, 0x96, 0xe8, 0xd6, 0x57, 0xaa, 0x09, 0x8d, 0x2e, 0x4c, 0xdb, 0x0e, 0x1d, 0x43, 0x68, 0x28, + 0x94, 0x91, 0xea, 0x7d, 0xbe, 0x78, 0xb2, 0x55, 0xdc, 0xe7, 0x5f, 0x04, 0xb0, 0x1d, 0xe7, 0x9d, + 0x20, 0x72, 0x5c, 0x3f, 0x2b, 0xf0, 0x25, 0x8e, 0xf9, 0x26, 0xcc, 0x5e, 0x89, 0x82, 0xe1, 0x2d, + 0xe9, 0xfe, 0xf6, 0xc4, 0x1b, 0x66, 0xf9, 0xee, 0x57, 0x57, 0xef, 0x7e, 0xcd, 0x6f, 0xc2, 0x13, + 0x15, 0xc3, 0xd1, 0x59, 0x9b, 0x74, 0x2d, 0x9d, 0x75, 0x22, 0x42, 0xa6, 0xee, 0x5c, 0x4e, 0xb6, + 0xc5, 0x52, 0x84, 0xcc, 0xf7, 0x35, 0x78, 0xaa, 0xa2, 0x7e, 0x3d, 0x0c, 0xa3, 0xe0, 0x58, 0x60, + 0x72, 0x16, 0xdd, 0xa8, 0xc5, 0xaf, 0x5e, 0x2e, 0x7e, 0x6b, 0x8d, 0x50, 0x0a, 0xf6, 0x8f, 0xc0, + 0x88, 0x9f, 0x6b, 0xb0, 0x20, 0x8c, 0x70, 0x1c, 0xd1, 0xed, 0xcb, 0xd0, 0xa2, 0x27, 0x2d, 0xa2, + 0xc3, 0xa7, 0x6a, 0x3b, 0xcc, 0x9e, 0xe2, 0x58, 0xa2, 0x71, 0x35, 0x22, 0xf5, 0xba, 0x19, 0xf5, + 0x95, 0x3c, 0xd8, 0xc7, 0x7e, 0x74, 0x22, 0x04, 0xcc, 0xaf, 0x67, 0xc1, 0xbc, 0xc5, 0x3c, 0x76, + 0x96, 0x3e, 0x32, 0x6f, 0xc3, 0x3c, 0xbe, 0xaf, 0x29, 0x7c, 0x70, 0x26, 0x6a, 0xdf, 0x81, 0x45, + 0x54, 0x7b, 0xe6, 0xf6, 0xe6, 0xb3, 0x83, 0xfb, 0x47, 0x5e, 0x4a, 0xce, 0x44, 0xfb, 0x17, 0xe1, + 0x5c, 0xe6, 0xfb, 0xdb, 0xa1, 0x93, 0x1f, 0x22, 0x8d, 0xb8, 0xa7, 0x33, 0x5f, 0x80, 0xe5, 0xcd, + 0xc0, 0x3f, 0x66, 0x51, 0x4c, 0x17, 0x89, 0x28, 0x92, 0x49, 0x28, 0x93, 0x5f, 0x50, 0xe6, 0x1d, + 0x58, 0x91, 0x25, 0x7a, 0x2c, 0xd9, 0x8d, 0xdc, 0x63, 0x49, 0x4a, 0x1c, 0x50, 0x6b, 0xca, 0x01, + 0x75, 0x71, 0xa0, 0xad, 0x2b, 0x07, 0xda, 0x17, 0xa0, 0xed, 0xc6, 0x42, 0x01, 0x06, 0xd5, 0x8c, + 0x55, 0x30, 0x4c, 0x1b, 0x96, 0xc8, 0xfd, 0xe2, 0xc2, 0x08, 0xbb, 0x58, 0x81, 0x19, 0x8a, 0xa9, + 0xbc, 0x93, 0x9c, 0x1e, 0x79, 0xfd, 0x32, 0xf2, 0xb2, 0xd1, 0xec, 0xc1, 0x92, 0x78, 0x54, 0xb3, + 0x6b, 0x0f, 0x5c, 0x9f, 0x16, 0xd9, 0x8b, 0x00, 0xa1, 0x3d, 0xc8, 0x1e, 0xd5, 0xd1, 0xb5, 0x99, + 0xc4, 0xe1, 0xdf, 0xe3, 0x83, 0xe0, 0xae, 0xf8, 0xae, 0xd3, 0xf7, 0x82, 0x63, 0x7e, 0x0d, 0x0c, + 0x8b, 0xc5, 0x61, 0xe0, 0xc7, 0x4c, 0xd2, 0xba, 0x0a, 0x9d, 0xcd, 0x34, 0x8a, 0x98, 0xcf, 0xbb, + 0xca, 0x5e, 0x98, 0xc9, 0x2c, 0xae, 0xb7, 0x57, 0xe8, 0xa5, 0x23, 0x76, 0x89, 0x63, 0xfe, 0xa4, + 0x01, 0xed, 0x9e, 0x3b, 0xf0, 0x6d, 0xcf, 0x62, 0x47, 0xc6, 0x6b, 0xd0, 0xa2, 0x2d, 0x8b, 0x88, + 0x94, 0xba, 0x23, 0x5f, 0x6a, 0x4d, 0x7b, 0x33, 0x8b, 0x1d, 0x5d, 0xfb, 0x84, 0x25, 0x64, 0x8c, + 0xb7, 0x61, 0x8e, 0x7e, 0x5d, 0xa7, 0x23, 0x28, 0x91, 0xbf, 0x3e, 0x77, 0x8a, 0x12, 0xd1, 0x9a, + 0x74, 0xa9, 0x1a, 0xb8, 0x41, 0x7d, 0x2c, 0x69, 0xc4, 0xf2, 0x30, 0xda, 0x20, 0xaa, 0x7c, 0x84, + 0x41, 0x24, 0xc3, 0xa5, 0x6d, 0x3c, 0xa4, 0x11, 0x99, 0x7a, 0xb4, 0x34, 0x9d, 0xe5, 0x08, 0x69, + 0x92, 0xe1, 0xd2, 0x07, 0xa9, 0x3f, 0xb8, 0x1d, 0x8a, 0xb3, 0xc3, 0xd1, 0xd2, 0xd7, 0xb0, 0x99, + 0x90, 0x26, 0x19, 0x2e, 0x1d, 0xe1, 0xe2, 0x8d, 0x4e, 0x3f, 0x49, 0x9a, 0xd6, 0x78, 0x21, 0x4d, + 0x32, 0x1b, 0x6d, 0x98, 0x0e, 0xed, 0xfb, 0x5e, 0x60, 0x3b, 0xe6, 0x07, 0x0d, 0x80, 0xac, 0x61, + 0x8c, 0x85, 0x8e, 0x02, 0xd1, 0xda, 0xa9, 0x10, 0x85, 0xde, 0x7d, 0x09, 0xa4, 0x5e, 0x3d, 0x48, + 0x9f, 0x1f, 0x17, 0x24, 0xd2, 0x56, 0x82, 0xe9, 0x72, 0x09, 0xa6, 0xb5, 0x53, 0x61, 0x12, 0x46, + 0x09, 0xa0, 0x2e, 0x97, 0x80, 0x5a, 0x3b, 0x15, 0x28, 0x21, 0x2f, 0xa0, 0xba, 0x5c, 0x82, 0x6a, + 0xed, 0x54, 0xa8, 0x84, 0xbc, 0x00, 0xeb, 0x72, 0x09, 0xac, 0xb5, 0x53, 0xc1, 0x12, 0xf2, 0x55, + 0xb8, 0xfe, 0xaa, 0xc3, 0x3c, 0xba, 0x8c, 0x6e, 0x61, 0xfd, 0xfd, 0x00, 0xef, 0x03, 0xd0, 0x5d, + 0xea, 0x1b, 0x4d, 0x95, 0x69, 0x7c, 0x01, 0x96, 0x88, 0xc1, 0xa4, 0xeb, 0x12, 0x1d, 0xaf, 0x4b, + 0xaa, 0x1f, 0xf0, 0x82, 0x28, 0x8d, 0x93, 0x60, 0xb8, 0x65, 0x27, 0x76, 0x56, 0x7c, 0x15, 0x1c, + 0xf9, 0xfa, 0x6e, 0xaa, 0xf2, 0x0a, 0x3c, 0x0a, 0x82, 0x61, 0x7e, 0x2f, 0x27, 0x28, 0x2e, 0x91, + 0xb8, 0x43, 0x16, 0xa4, 0x89, 0x58, 0x26, 0x32, 0x92, 0xde, 0x51, 0x39, 0xae, 0x8d, 0x97, 0x5e, + 0xe2, 0x91, 0x51, 0xce, 0xc0, 0x95, 0xad, 0xb8, 0xc4, 0x13, 0xaf, 0xb4, 0x0b, 0xce, 0x18, 0x17, + 0x6e, 0xf8, 0xae, 0xdf, 0x4d, 0x5c, 0xf9, 0xf1, 0x51, 0xd3, 0x52, 0x78, 0xe6, 0x3f, 0x34, 0x38, + 0xb7, 0x6b, 0x47, 0x89, 0xdb, 0x77, 0x43, 0xdb, 0x4f, 0xb6, 0x59, 0x62, 0xe3, 0x38, 0x95, 0xc7, + 0x9c, 0xda, 0x83, 0x3d, 0xe6, 0xdc, 0x85, 0x85, 0x81, 0xba, 0x03, 0x79, 0xc0, 0xcd, 0x43, 0x59, + 0x5c, 0x79, 0x99, 0xda, 0x78, 0xe0, 0x97, 0xa9, 0xe6, 0xf7, 0x75, 0x58, 0x28, 0x2d, 0xaf, 0x27, + 0xe6, 0xa6, 0x75, 0x00, 0x37, 0x0f, 0xb5, 0x13, 0x0e, 0xe8, 0xd5, 0x78, 0xb4, 0x24, 0xa1, 0xba, + 0xdb, 0xbe, 0xc6, 0xe4, 0xb7, 0x7d, 0xd7, 0xa0, 0x13, 0x16, 0x20, 0x9d, 0xb0, 0x3f, 0xaa, 0x81, + 0xd2, 0x92, 0x45, 0xcd, 0x77, 0x61, 0xa9, 0xb2, 0x8a, 0xe1, 0xb5, 0x5d, 0x70, 0xc8, 0xfc, 0xfc, + 0xda, 0x8e, 0x13, 0x52, 0x40, 0xeb, 0xe5, 0x80, 0xf6, 0xdc, 0x63, 0xf9, 0xe9, 0xbb, 0x20, 0xcd, + 0x1f, 0xe8, 0xb0, 0x5c, 0x9f, 0x81, 0x1e, 0x57, 0x77, 0xef, 0x41, 0x77, 0xd4, 0x6a, 0x7f, 0x66, + 0x5e, 0x2f, 0xa2, 0x3b, 0xcf, 0xd5, 0x8f, 0xab, 0xbb, 0xcf, 0x65, 0xd1, 0x2d, 0xa5, 0x43, 0xf3, + 0xd7, 0xb9, 0x7f, 0xf2, 0x6a, 0xe4, 0x31, 0xf5, 0x8f, 0xf1, 0x1c, 0x2c, 0xd2, 0x30, 0xa5, 0xe7, + 0x21, 0x54, 0xdc, 0x56, 0xf8, 0xc5, 0x4a, 0x21, 0x95, 0x06, 0x67, 0x16, 0xb3, 0xbf, 0xd7, 0x32, + 0x4c, 0xf2, 0x1a, 0xef, 0x63, 0x85, 0x49, 0x11, 0x69, 0x52, 0xe1, 0x23, 0x45, 0x5a, 0x5e, 0x7b, + 0xfe, 0x3f, 0xd2, 0x4e, 0x8f, 0xb4, 0xdc, 0x97, 0x52, 0x11, 0x68, 0x7e, 0x07, 0xe6, 0xb6, 0x98, + 0xb7, 0x1d, 0x0f, 0xb2, 0xf7, 0xab, 0x67, 0xba, 0x99, 0x2c, 0xbf, 0xf2, 0x9b, 0xaa, 0xbe, 0xf2, + 0xdb, 0x80, 0x79, 0xd9, 0x80, 0x49, 0xde, 0x67, 0x6e, 0x5c, 0xf8, 0xc6, 0xca, 0xa5, 0xe7, 0xe9, + 0xbf, 0x9e, 0xaf, 0x56, 0x9c, 0xb8, 0xd7, 0xc2, 0xff, 0x7e, 0xbe, 0xf4, 0xbf, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x77, 0x5b, 0x05, 0x8d, 0x0e, 0x3a, 0x00, 0x00, } diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index a1a9fa274..c82785aac 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -520,8 +520,9 @@ message InvitationInfo { string roomID = 5; int32 timeout = 6; string mediaType = 7; - int32 platformID = 8; - int32 sessionType = 9; + int32 platformID = 8; + int32 sessionType = 9; + int32 initiateTime = 10; } message ParticipantMetaData{