// Code generated by protoc-gen-go. DO NOT EDIT.
// source: rtc/rtc.proto

package rtc // import "./rtc"

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"

import (
	context "golang.org/x/net/context"
	grpc "google.golang.org/grpc"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// 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

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 (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_62dedd07770ec854, []int{0}
}
func (m *CommonResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CommonResp.Unmarshal(m, b)
}
func (m *CommonResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CommonResp.Marshal(b, m, deterministic)
}
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 (m *CommonResp) GetErrCode() int32 {
	if m != nil {
		return m.ErrCode
	}
	return 0
}

func (m *CommonResp) GetErrMsg() string {
	if m != nil {
		return m.ErrMsg
	}
	return ""
}

type MsgData struct {
	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 fileDescriptor_rtc_62dedd07770ec854, []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 (m *MsgData) GetSendID() string {
	if m != nil {
		return m.SendID
	}
	return ""
}

func (m *MsgData) GetRecvID() string {
	if m != nil {
		return m.RecvID
	}
	return ""
}

func (m *MsgData) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *MsgData) GetClientMsgID() string {
	if m != nil {
		return m.ClientMsgID
	}
	return ""
}

func (m *MsgData) GetServerMsgID() string {
	if m != nil {
		return m.ServerMsgID
	}
	return ""
}

func (m *MsgData) GetSenderPlatformID() int32 {
	if m != nil {
		return m.SenderPlatformID
	}
	return 0
}

func (m *MsgData) GetSenderNickname() string {
	if m != nil {
		return m.SenderNickname
	}
	return ""
}

func (m *MsgData) GetSenderFaceURL() string {
	if m != nil {
		return m.SenderFaceURL
	}
	return ""
}

func (m *MsgData) GetSessionType() int32 {
	if m != nil {
		return m.SessionType
	}
	return 0
}

func (m *MsgData) GetMsgFrom() int32 {
	if m != nil {
		return m.MsgFrom
	}
	return 0
}

func (m *MsgData) GetContentType() int32 {
	if m != nil {
		return m.ContentType
	}
	return 0
}

func (m *MsgData) GetContent() []byte {
	if m != nil {
		return m.Content
	}
	return nil
}

func (m *MsgData) GetSeq() uint32 {
	if m != nil {
		return m.Seq
	}
	return 0
}

func (m *MsgData) GetSendTime() int64 {
	if m != nil {
		return m.SendTime
	}
	return 0
}

func (m *MsgData) GetCreateTime() int64 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *MsgData) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *MsgData) GetOptions() map[string]bool {
	if m != nil {
		return m.Options
	}
	return nil
}

func (m *MsgData) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

type GroupInfo struct {
	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_62dedd07770ec854, []int{2}
}
func (m *GroupInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupInfo.Unmarshal(m, b)
}
func (m *GroupInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupInfo.Marshal(b, m, deterministic)
}
func (dst *GroupInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupInfo.Merge(dst, src)
}
func (m *GroupInfo) XXX_Size() int {
	return xxx_messageInfo_GroupInfo.Size(m)
}
func (m *GroupInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_GroupInfo.DiscardUnknown(m)
}

var xxx_messageInfo_GroupInfo proto.InternalMessageInfo

func (m *GroupInfo) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *GroupInfo) GetGroupName() string {
	if m != nil {
		return m.GroupName
	}
	return ""
}

func (m *GroupInfo) GetNotification() string {
	if m != nil {
		return m.Notification
	}
	return ""
}

func (m *GroupInfo) GetIntroduction() string {
	if m != nil {
		return m.Introduction
	}
	return ""
}

func (m *GroupInfo) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *GroupInfo) GetOwnerUserID() string {
	if m != nil {
		return m.OwnerUserID
	}
	return ""
}

func (m *GroupInfo) GetCreateTime() uint32 {
	if m != nil {
		return m.CreateTime
	}
	return 0
}

func (m *GroupInfo) GetMemberCount() uint32 {
	if m != nil {
		return m.MemberCount
	}
	return 0
}

func (m *GroupInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

func (m *GroupInfo) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *GroupInfo) GetCreatorUserID() string {
	if m != nil {
		return m.CreatorUserID
	}
	return ""
}

func (m *GroupInfo) GetGroupType() int32 {
	if m != nil {
		return m.GroupType
	}
	return 0
}

type GroupMemberFullInfo struct {
	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_62dedd07770ec854, []int{3}
}
func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b)
}
func (m *GroupMemberFullInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GroupMemberFullInfo.Marshal(b, m, deterministic)
}
func (dst *GroupMemberFullInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GroupMemberFullInfo.Merge(dst, src)
}
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 (m *GroupMemberFullInfo) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *GroupMemberFullInfo) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *GroupMemberFullInfo) GetRoleLevel() int32 {
	if m != nil {
		return m.RoleLevel
	}
	return 0
}

func (m *GroupMemberFullInfo) GetJoinTime() int32 {
	if m != nil {
		return m.JoinTime
	}
	return 0
}

func (m *GroupMemberFullInfo) GetNickname() string {
	if m != nil {
		return m.Nickname
	}
	return ""
}

func (m *GroupMemberFullInfo) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *GroupMemberFullInfo) GetAppMangerLevel() int32 {
	if m != nil {
		return m.AppMangerLevel
	}
	return 0
}

func (m *GroupMemberFullInfo) GetJoinSource() int32 {
	if m != nil {
		return m.JoinSource
	}
	return 0
}

func (m *GroupMemberFullInfo) GetOperatorUserID() string {
	if m != nil {
		return m.OperatorUserID
	}
	return ""
}

func (m *GroupMemberFullInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

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"`
	UserInfo             *PublicUserInfo      `protobuf:"bytes,3,opt,name=userInfo" json:"userInfo,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

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_62dedd07770ec854, []int{4}
}
func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b)
}
func (m *ParticipantMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ParticipantMetaData.Marshal(b, m, deterministic)
}
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)
}

var xxx_messageInfo_ParticipantMetaData proto.InternalMessageInfo

func (m *ParticipantMetaData) GetGroupInfo() *GroupInfo {
	if m != nil {
		return m.GroupInfo
	}
	return nil
}

func (m *ParticipantMetaData) GetGroupMemberInfo() *GroupMemberFullInfo {
	if m != nil {
		return m.GroupMemberInfo
	}
	return nil
}

func (m *ParticipantMetaData) GetUserInfo() *PublicUserInfo {
	if m != nil {
		return m.UserInfo
	}
	return nil
}

type PublicUserInfo struct {
	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_62dedd07770ec854, []int{5}
}
func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b)
}
func (m *PublicUserInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PublicUserInfo.Marshal(b, m, deterministic)
}
func (dst *PublicUserInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PublicUserInfo.Merge(dst, src)
}
func (m *PublicUserInfo) XXX_Size() int {
	return xxx_messageInfo_PublicUserInfo.Size(m)
}
func (m *PublicUserInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_PublicUserInfo.DiscardUnknown(m)
}

var xxx_messageInfo_PublicUserInfo proto.InternalMessageInfo

func (m *PublicUserInfo) GetUserID() string {
	if m != nil {
		return m.UserID
	}
	return ""
}

func (m *PublicUserInfo) GetNickname() string {
	if m != nil {
		return m.Nickname
	}
	return ""
}

func (m *PublicUserInfo) GetFaceURL() string {
	if m != nil {
		return m.FaceURL
	}
	return ""
}

func (m *PublicUserInfo) GetGender() int32 {
	if m != nil {
		return m.Gender
	}
	return 0
}

func (m *PublicUserInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

type GetJoinTokenReq struct {
	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_62dedd07770ec854, []int{6}
}
func (m *GetJoinTokenReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetJoinTokenReq.Unmarshal(m, b)
}
func (m *GetJoinTokenReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetJoinTokenReq.Marshal(b, m, deterministic)
}
func (dst *GetJoinTokenReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetJoinTokenReq.Merge(dst, src)
}
func (m *GetJoinTokenReq) XXX_Size() int {
	return xxx_messageInfo_GetJoinTokenReq.Size(m)
}
func (m *GetJoinTokenReq) XXX_DiscardUnknown() {
	xxx_messageInfo_GetJoinTokenReq.DiscardUnknown(m)
}

var xxx_messageInfo_GetJoinTokenReq proto.InternalMessageInfo

func (m *GetJoinTokenReq) GetRoom() string {
	if m != nil {
		return m.Room
	}
	return ""
}

func (m *GetJoinTokenReq) GetIdentity() string {
	if m != nil {
		return m.Identity
	}
	return ""
}

func (m *GetJoinTokenReq) GetMetaData() *ParticipantMetaData {
	if m != nil {
		return m.MetaData
	}
	return nil
}

func (m *GetJoinTokenReq) GetOperationID() string {
	if m != nil {
		return m.OperationID
	}
	return ""
}

type GetJoinTokenResp struct {
	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 (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_62dedd07770ec854, []int{7}
}
func (m *GetJoinTokenResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetJoinTokenResp.Unmarshal(m, b)
}
func (m *GetJoinTokenResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetJoinTokenResp.Marshal(b, m, deterministic)
}
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 (m *GetJoinTokenResp) GetCommonResp() *CommonResp {
	if m != nil {
		return m.CommonResp
	}
	return nil
}

func (m *GetJoinTokenResp) GetJwt() string {
	if m != nil {
		return m.Jwt
	}
	return ""
}

func (m *GetJoinTokenResp) GetLiveURL() string {
	if m != nil {
		return m.LiveURL
	}
	return ""
}

type OfflinePushInfo struct {
	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_62dedd07770ec854, []int{8}
}
func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b)
}
func (m *OfflinePushInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OfflinePushInfo.Marshal(b, m, deterministic)
}
func (dst *OfflinePushInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OfflinePushInfo.Merge(dst, src)
}
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 (m *OfflinePushInfo) GetTitle() string {
	if m != nil {
		return m.Title
	}
	return ""
}

func (m *OfflinePushInfo) GetDesc() string {
	if m != nil {
		return m.Desc
	}
	return ""
}

func (m *OfflinePushInfo) GetEx() string {
	if m != nil {
		return m.Ex
	}
	return ""
}

func (m *OfflinePushInfo) GetIOSPushSound() string {
	if m != nil {
		return m.IOSPushSound
	}
	return ""
}

func (m *OfflinePushInfo) GetIOSBadgeCount() bool {
	if m != nil {
		return m.IOSBadgeCount
	}
	return false
}

type SignalReq struct {
	// 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"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

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_62dedd07770ec854, []int{9}
}
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)
}

var xxx_messageInfo_SignalReq proto.InternalMessageInfo

type isSignalReq_Payload interface {
	isSignalReq_Payload()
}

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
	}
	return nil
}

func (m *SignalReq) GetInvite() *SignalInviteReq {
	if x, ok := m.GetPayload().(*SignalReq_Invite); ok {
		return x.Invite
	}
	return nil
}

func (m *SignalReq) GetInviteInGroup() *SignalInviteInGroupReq {
	if x, ok := m.GetPayload().(*SignalReq_InviteInGroup); ok {
		return x.InviteInGroup
	}
	return nil
}

func (m *SignalReq) GetCancel() *SignalCancelReq {
	if x, ok := m.GetPayload().(*SignalReq_Cancel); ok {
		return x.Cancel
	}
	return nil
}

func (m *SignalReq) GetAccept() *SignalAcceptReq {
	if x, ok := m.GetPayload().(*SignalReq_Accept); ok {
		return x.Accept
	}
	return nil
}

func (m *SignalReq) GetHungUp() *SignalHungUpReq {
	if x, ok := m.GetPayload().(*SignalReq_HungUp); ok {
		return x.HungUp
	}
	return nil
}

func (m *SignalReq) GetReject() *SignalRejectReq {
	if x, ok := m.GetPayload().(*SignalReq_Reject); ok {
		return x.Reject
	}
	return nil
}

// 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),
	}
}

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
}

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
}

type SignalResp struct {
	// 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"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

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_62dedd07770ec854, []int{10}
}
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)
}

var xxx_messageInfo_SignalResp proto.InternalMessageInfo

type isSignalResp_Payload interface {
	isSignalResp_Payload()
}

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 {
		return m.Payload
	}
	return nil
}

func (m *SignalResp) GetInvite() *SignalInviteReply {
	if x, ok := m.GetPayload().(*SignalResp_Invite); ok {
		return x.Invite
	}
	return nil
}

func (m *SignalResp) GetInviteInGroup() *SignalInviteInGroupReply {
	if x, ok := m.GetPayload().(*SignalResp_InviteInGroup); ok {
		return x.InviteInGroup
	}
	return nil
}

func (m *SignalResp) GetCancel() *SignalCancelReply {
	if x, ok := m.GetPayload().(*SignalResp_Cancel); ok {
		return x.Cancel
	}
	return nil
}

func (m *SignalResp) GetAccept() *SignalAcceptReply {
	if x, ok := m.GetPayload().(*SignalResp_Accept); ok {
		return x.Accept
	}
	return nil
}

func (m *SignalResp) GetHungUp() *SignalHungUpReply {
	if x, ok := m.GetPayload().(*SignalResp_HungUp); ok {
		return x.HungUp
	}
	return nil
}

func (m *SignalResp) GetReject() *SignalRejectReply {
	if x, ok := m.GetPayload().(*SignalResp_Reject); ok {
		return x.Reject
	}
	return nil
}

// 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),
	}
}

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
}

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 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"`
	InitiateTime         int32    `protobuf:"varint,6,opt,name=initiateTime" json:"initiateTime,omitempty"`
	Timeout              int32    `protobuf:"varint,7,opt,name=timeout" json:"timeout,omitempty"`
	MediaType            string   `protobuf:"bytes,8,opt,name=mediaType" json:"mediaType,omitempty"`
	PlatformID           int32    `protobuf:"varint,9,opt,name=platformID" json:"platformID,omitempty"`
	SessionType          int32    `protobuf:"varint,10,opt,name=sessionType" json:"sessionType,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_62dedd07770ec854, []int{11}
}
func (m *InvitationInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_InvitationInfo.Unmarshal(m, b)
}
func (m *InvitationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_InvitationInfo.Marshal(b, m, deterministic)
}
func (dst *InvitationInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_InvitationInfo.Merge(dst, src)
}
func (m *InvitationInfo) XXX_Size() int {
	return xxx_messageInfo_InvitationInfo.Size(m)
}
func (m *InvitationInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_InvitationInfo.DiscardUnknown(m)
}

var xxx_messageInfo_InvitationInfo proto.InternalMessageInfo

func (m *InvitationInfo) GetInviterUserID() string {
	if m != nil {
		return m.InviterUserID
	}
	return ""
}

func (m *InvitationInfo) GetInviteeUserIDList() []string {
	if m != nil {
		return m.InviteeUserIDList
	}
	return nil
}

func (m *InvitationInfo) GetCustomData() string {
	if m != nil {
		return m.CustomData
	}
	return ""
}

func (m *InvitationInfo) GetGroupID() string {
	if m != nil {
		return m.GroupID
	}
	return ""
}

func (m *InvitationInfo) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *InvitationInfo) GetInitiateTime() int32 {
	if m != nil {
		return m.InitiateTime
	}
	return 0
}

func (m *InvitationInfo) GetTimeout() int32 {
	if m != nil {
		return m.Timeout
	}
	return 0
}

func (m *InvitationInfo) GetMediaType() string {
	if m != nil {
		return m.MediaType
	}
	return ""
}

func (m *InvitationInfo) GetPlatformID() int32 {
	if m != nil {
		return m.PlatformID
	}
	return 0
}

func (m *InvitationInfo) GetSessionType() int32 {
	if m != nil {
		return m.SessionType
	}
	return 0
}

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_62dedd07770ec854, []int{12}
}
func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b)
}
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 (m *SignalInviteReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalInviteReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalInviteReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalInviteReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

type SignalInviteReply struct {
	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 (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_62dedd07770ec854, []int{13}
}
func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b)
}
func (m *SignalInviteReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalInviteReply.Marshal(b, m, deterministic)
}
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 (m *SignalInviteReply) GetToken() string {
	if m != nil {
		return m.Token
	}
	return ""
}

func (m *SignalInviteReply) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *SignalInviteReply) GetLiveURL() string {
	if m != nil {
		return m.LiveURL
	}
	return ""
}

type SignalInviteInGroupReq 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 *SignalInviteInGroupReq) Reset()         { *m = SignalInviteInGroupReq{} }
func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) }
func (*SignalInviteInGroupReq) ProtoMessage()    {}
func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_rtc_62dedd07770ec854, []int{14}
}
func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b)
}
func (m *SignalInviteInGroupReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalInviteInGroupReq.Marshal(b, m, deterministic)
}
func (dst *SignalInviteInGroupReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalInviteInGroupReq.Merge(dst, src)
}
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 (m *SignalInviteInGroupReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalInviteInGroupReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalInviteInGroupReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalInviteInGroupReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

type SignalInviteInGroupReply struct {
	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 (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_62dedd07770ec854, []int{15}
}
func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b)
}
func (m *SignalInviteInGroupReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalInviteInGroupReply.Marshal(b, m, deterministic)
}
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)
}

var xxx_messageInfo_SignalInviteInGroupReply proto.InternalMessageInfo

func (m *SignalInviteInGroupReply) GetToken() string {
	if m != nil {
		return m.Token
	}
	return ""
}

func (m *SignalInviteInGroupReply) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *SignalInviteInGroupReply) GetLiveURL() string {
	if m != nil {
		return m.LiveURL
	}
	return ""
}

type SignalCancelReq 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 *SignalCancelReq) Reset()         { *m = SignalCancelReq{} }
func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) }
func (*SignalCancelReq) ProtoMessage()    {}
func (*SignalCancelReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_rtc_62dedd07770ec854, []int{16}
}
func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b)
}
func (m *SignalCancelReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalCancelReq.Marshal(b, m, deterministic)
}
func (dst *SignalCancelReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalCancelReq.Merge(dst, src)
}
func (m *SignalCancelReq) XXX_Size() int {
	return xxx_messageInfo_SignalCancelReq.Size(m)
}
func (m *SignalCancelReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalCancelReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalCancelReq proto.InternalMessageInfo

func (m *SignalCancelReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalCancelReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalCancelReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalCancelReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

type SignalCancelReply struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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_62dedd07770ec854, []int{17}
}
func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b)
}
func (m *SignalCancelReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalCancelReply.Marshal(b, m, deterministic)
}
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)
}

var xxx_messageInfo_SignalCancelReply proto.InternalMessageInfo

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_62dedd07770ec854, []int{18}
}
func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b)
}
func (m *SignalAcceptReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalAcceptReq.Marshal(b, m, deterministic)
}
func (dst *SignalAcceptReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalAcceptReq.Merge(dst, src)
}
func (m *SignalAcceptReq) XXX_Size() int {
	return xxx_messageInfo_SignalAcceptReq.Size(m)
}
func (m *SignalAcceptReq) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalAcceptReq.DiscardUnknown(m)
}

var xxx_messageInfo_SignalAcceptReq proto.InternalMessageInfo

func (m *SignalAcceptReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalAcceptReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalAcceptReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalAcceptReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

func (m *SignalAcceptReq) GetOpUserPlatformID() int32 {
	if m != nil {
		return m.OpUserPlatformID
	}
	return 0
}

type SignalAcceptReply struct {
	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 (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_62dedd07770ec854, []int{19}
}
func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b)
}
func (m *SignalAcceptReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalAcceptReply.Marshal(b, m, deterministic)
}
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 (m *SignalAcceptReply) GetToken() string {
	if m != nil {
		return m.Token
	}
	return ""
}

func (m *SignalAcceptReply) GetRoomID() string {
	if m != nil {
		return m.RoomID
	}
	return ""
}

func (m *SignalAcceptReply) GetLiveURL() string {
	if m != nil {
		return m.LiveURL
	}
	return ""
}

type SignalHungUpReq 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"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

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_62dedd07770ec854, []int{20}
}
func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b)
}
func (m *SignalHungUpReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalHungUpReq.Marshal(b, m, deterministic)
}
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 (m *SignalHungUpReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalHungUpReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalHungUpReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

type SignalHungUpReply struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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_62dedd07770ec854, []int{21}
}
func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b)
}
func (m *SignalHungUpReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalHungUpReply.Marshal(b, m, deterministic)
}
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)
}

var xxx_messageInfo_SignalHungUpReply proto.InternalMessageInfo

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_62dedd07770ec854, []int{22}
}
func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b)
}
func (m *SignalRejectReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalRejectReq.Marshal(b, m, deterministic)
}
func (dst *SignalRejectReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalRejectReq.Merge(dst, src)
}
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 (m *SignalRejectReq) GetOpUserID() string {
	if m != nil {
		return m.OpUserID
	}
	return ""
}

func (m *SignalRejectReq) GetInvitation() *InvitationInfo {
	if m != nil {
		return m.Invitation
	}
	return nil
}

func (m *SignalRejectReq) GetOfflinePushInfo() *OfflinePushInfo {
	if m != nil {
		return m.OfflinePushInfo
	}
	return nil
}

func (m *SignalRejectReq) GetParticipant() *ParticipantMetaData {
	if m != nil {
		return m.Participant
	}
	return nil
}

func (m *SignalRejectReq) GetOpUserPlatformID() int32 {
	if m != nil {
		return m.OpUserPlatformID
	}
	return 0
}

type SignalRejectReply struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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_62dedd07770ec854, []int{23}
}
func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b)
}
func (m *SignalRejectReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalRejectReply.Marshal(b, m, deterministic)
}
func (dst *SignalRejectReply) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalRejectReply.Merge(dst, src)
}
func (m *SignalRejectReply) XXX_Size() int {
	return xxx_messageInfo_SignalRejectReply.Size(m)
}
func (m *SignalRejectReply) XXX_DiscardUnknown() {
	xxx_messageInfo_SignalRejectReply.DiscardUnknown(m)
}

var xxx_messageInfo_SignalRejectReply proto.InternalMessageInfo

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:"-"`
}

func (m *SignalMessageAssembleReq) Reset()         { *m = SignalMessageAssembleReq{} }
func (m *SignalMessageAssembleReq) String() string { return proto.CompactTextString(m) }
func (*SignalMessageAssembleReq) ProtoMessage()    {}
func (*SignalMessageAssembleReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_rtc_62dedd07770ec854, []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 (m *SignalMessageAssembleReq) GetSignalReq() *SignalReq {
	if m != nil {
		return m.SignalReq
	}
	return nil
}

func (m *SignalMessageAssembleReq) GetOperationID() string {
	if m != nil {
		return m.OperationID
	}
	return ""
}

type SignalMessageAssembleResp struct {
	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_62dedd07770ec854, []int{25}
}
func (m *SignalMessageAssembleResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SignalMessageAssembleResp.Unmarshal(m, b)
}
func (m *SignalMessageAssembleResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SignalMessageAssembleResp.Marshal(b, m, deterministic)
}
func (dst *SignalMessageAssembleResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SignalMessageAssembleResp.Merge(dst, src)
}
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 (m *SignalMessageAssembleResp) GetCommonResp() *CommonResp {
	if m != nil {
		return m.CommonResp
	}
	return nil
}

func (m *SignalMessageAssembleResp) GetIsPass() bool {
	if m != nil {
		return m.IsPass
	}
	return false
}

func (m *SignalMessageAssembleResp) GetSignalResp() *SignalResp {
	if m != nil {
		return m.SignalResp
	}
	return nil
}

func (m *SignalMessageAssembleResp) GetMsgData() *MsgData {
	if m != nil {
		return m.MsgData
	}
	return 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.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.SupportPackageIsVersion4

// Client API for RtcService service

type RtcServiceClient interface {
	SignalMessageAssemble(ctx context.Context, in *SignalMessageAssembleReq, opts ...grpc.CallOption) (*SignalMessageAssembleResp, error)
}

type rtcServiceClient struct {
	cc *grpc.ClientConn
}

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 := grpc.Invoke(ctx, "/proto.RtcService/SignalMessageAssemble", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Server API for RtcService service

type RtcServiceServer interface {
	SignalMessageAssemble(context.Context, *SignalMessageAssembleReq) (*SignalMessageAssembleResp, error)
}

func RegisterRtcServiceServer(s *grpc.Server, srv RtcServiceServer) {
	s.RegisterService(&_RtcService_serviceDesc, srv)
}

func _RtcService_SignalMessageAssemble_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SignalMessageAssembleReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RtcServiceServer).SignalMessageAssemble(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/proto.RtcService/SignalMessageAssemble",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RtcServiceServer).SignalMessageAssemble(ctx, req.(*SignalMessageAssembleReq))
	}
	return interceptor(ctx, in, info, handler)
}

var _RtcService_serviceDesc = grpc.ServiceDesc{
	ServiceName: "proto.RtcService",
	HandlerType: (*RtcServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "SignalMessageAssemble",
			Handler:    _RtcService_SignalMessageAssemble_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "rtc/rtc.proto",
}

func init() { proto.RegisterFile("rtc/rtc.proto", fileDescriptor_rtc_62dedd07770ec854) }

var fileDescriptor_rtc_62dedd07770ec854 = []byte{
	// 1579 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0x4f, 0x6f, 0x1b, 0x45,
	0x14, 0x67, 0xed, 0x38, 0x89, 0x9f, 0xf3, 0x77, 0x42, 0xa3, 0x25, 0xfc, 0xb3, 0xac, 0xaa, 0xb2,
	0x2a, 0x94, 0x52, 0xa3, 0x22, 0x54, 0x10, 0xa2, 0x4d, 0xfa, 0xc7, 0xa8, 0x69, 0xa2, 0x49, 0x73,
	0x29, 0xa7, 0xcd, 0x7a, 0xe2, 0x4e, 0xbb, 0xde, 0xd9, 0xcc, 0xce, 0xa6, 0xcd, 0x17, 0xe0, 0xcc,
	0x85, 0x13, 0x57, 0xc4, 0x57, 0xe0, 0xc6, 0x85, 0xaf, 0x80, 0xc4, 0x17, 0xe8, 0x8d, 0x33, 0x77,
	0x34, 0x6f, 0x66, 0x77, 0x67, 0xd7, 0x4e, 0x01, 0xa9, 0x07, 0x54, 0x4e, 0xde, 0xf7, 0x6f, 0x66,
	0xf6, 0xf7, 0x7e, 0xf3, 0xde, 0xf3, 0xc2, 0xb2, 0x54, 0xe1, 0x35, 0xa9, 0xc2, 0xed, 0x44, 0x0a,
	0x25, 0x48, 0x0b, 0x7f, 0x7a, 0x5f, 0x02, 0xec, 0x88, 0xc9, 0x44, 0xc4, 0x94, 0xa5, 0x09, 0xf1,
	0x61, 0x81, 0x49, 0xb9, 0x23, 0x46, 0xcc, 0xf7, 0xba, 0x5e, 0xbf, 0x45, 0x73, 0x91, 0x6c, 0xc2,
	0x3c, 0x93, 0x72, 0x2f, 0x1d, 0xfb, 0x8d, 0xae, 0xd7, 0x6f, 0x53, 0x2b, 0xf5, 0x7e, 0x6c, 0xc1,
	0xc2, 0x5e, 0x3a, 0xde, 0x0d, 0x54, 0xa0, 0x7d, 0x52, 0x16, 0x8f, 0x86, 0xbb, 0x18, 0xdc, 0xa6,
	0x56, 0xd2, 0x7a, 0xc9, 0xc2, 0xb3, 0xe1, 0x6e, 0x1e, 0x6b, 0x24, 0xbd, 0xdb, 0x58, 0x8a, 0x2c,
	0x19, 0xee, 0xfa, 0x4d, 0x34, 0xe4, 0x22, 0xe9, 0x42, 0x27, 0x8c, 0x38, 0x8b, 0xd5, 0x5e, 0x3a,
	0x1e, 0xee, 0xfa, 0x73, 0x68, 0x75, 0x55, 0xda, 0x23, 0x65, 0xf2, 0x8c, 0x49, 0xe3, 0xd1, 0x32,
	0x1e, 0x8e, 0x8a, 0x5c, 0x85, 0x35, 0xbd, 0x3f, 0x93, 0x07, 0x51, 0xa0, 0x4e, 0x84, 0x9c, 0x0c,
	0x77, 0xfd, 0x79, 0x7c, 0xa9, 0x29, 0x3d, 0xb9, 0x02, 0x2b, 0x46, 0xf7, 0x90, 0x87, 0xcf, 0xe2,
	0x60, 0xc2, 0xfc, 0x05, 0x5c, 0xb0, 0xa6, 0x25, 0x97, 0x61, 0xd9, 0x68, 0xee, 0x06, 0x21, 0x3b,
	0xa2, 0x0f, 0xfc, 0x45, 0x74, 0xab, 0x2a, 0xcd, 0xd9, 0xd2, 0x94, 0x8b, 0xf8, 0xd1, 0x79, 0xc2,
	0xfc, 0x36, 0x6e, 0xea, 0xaa, 0xf4, 0x9b, 0x4f, 0xd2, 0xf1, 0x5d, 0x29, 0x26, 0x3e, 0x18, 0x9c,
	0xad, 0x88, 0x6f, 0x2e, 0x62, 0xc5, 0x62, 0x85, 0xb1, 0x1d, 0x13, 0xeb, 0xa8, 0x74, 0xac, 0x15,
	0xfd, 0xa5, 0xae, 0xd7, 0x5f, 0xa2, 0xb9, 0x48, 0xd6, 0xa0, 0x99, 0xb2, 0x53, 0x7f, 0xa5, 0xeb,
	0xf5, 0x97, 0xa9, 0x7e, 0x24, 0x5b, 0xb0, 0xa8, 0x8f, 0xf6, 0x88, 0x4f, 0x98, 0xbf, 0xda, 0xf5,
	0xfa, 0x4d, 0x5a, 0xc8, 0xe4, 0x03, 0x80, 0x50, 0xb2, 0x40, 0x31, 0xb4, 0xae, 0xa1, 0xd5, 0xd1,
	0x60, 0x36, 0x55, 0xa0, 0xb2, 0xd4, 0x5f, 0xc7, 0x43, 0x58, 0x89, 0xdc, 0x80, 0x05, 0x91, 0x28,
	0x2e, 0xe2, 0xd4, 0x27, 0xdd, 0x66, 0xbf, 0x33, 0x78, 0xd7, 0x30, 0x6a, 0xdb, 0xd2, 0x60, 0x7b,
	0xdf, 0x58, 0xef, 0xc4, 0x4a, 0x9e, 0xd3, 0xdc, 0x97, 0x7c, 0x05, 0xab, 0xe2, 0xe4, 0x24, 0xe2,
	0x31, 0x3b, 0xc8, 0xd2, 0x27, 0xc3, 0xf8, 0x44, 0xf8, 0x1b, 0x5d, 0xaf, 0xdf, 0x19, 0x6c, 0xda,
	0xf0, 0xfd, 0xaa, 0x95, 0xd6, 0xdd, 0xb7, 0x6e, 0xc2, 0x92, 0xbb, 0xb4, 0x7e, 0xdd, 0x67, 0xec,
	0xdc, 0x72, 0x4d, 0x3f, 0x92, 0xb7, 0xa1, 0x75, 0x16, 0x44, 0x19, 0x43, 0x9e, 0x2d, 0x52, 0x23,
	0xdc, 0x6c, 0x7c, 0xe6, 0xf5, 0xfe, 0x6c, 0x40, 0xfb, 0x1e, 0x92, 0x2b, 0x3e, 0x11, 0x2e, 0xf1,
	0xbc, 0x2a, 0xf1, 0xde, 0x83, 0x36, 0x3e, 0x3e, 0xd4, 0x1c, 0x30, 0x6c, 0x2d, 0x15, 0xa4, 0x07,
	0x4b, 0xb1, 0x50, 0xfc, 0x84, 0x87, 0x81, 0x3e, 0x87, 0x65, 0x6d, 0x45, 0xa7, 0x7d, 0x78, 0xac,
	0xa4, 0x18, 0x65, 0x21, 0xfa, 0x18, 0xee, 0x56, 0x74, 0x7a, 0xff, 0x13, 0x4b, 0x20, 0x43, 0xdc,
	0x5c, 0xd4, 0xe9, 0x17, 0xcf, 0x63, 0x26, 0x8f, 0x52, 0x26, 0x2d, 0x5f, 0xdb, 0xd4, 0x55, 0xd5,
	0xd2, 0xb6, 0x80, 0xb9, 0x76, 0xd3, 0xd6, 0x85, 0xce, 0x84, 0x4d, 0x8e, 0x99, 0xdc, 0x11, 0x59,
	0xac, 0x90, 0xa0, 0xcb, 0xd4, 0x55, 0x91, 0x15, 0x68, 0xb0, 0x17, 0xc8, 0xca, 0x36, 0x6d, 0xb0,
	0x17, 0x4e, 0xa2, 0xa1, 0x92, 0xe8, 0xcb, 0xb0, 0x8c, 0xeb, 0x8a, 0xfc, 0x34, 0x1d, 0x43, 0xf6,
	0x8a, 0xb2, 0x40, 0x0c, 0xe9, 0xba, 0x84, 0x0b, 0x94, 0x8a, 0xde, 0xcf, 0x0d, 0xd8, 0x40, 0xdc,
	0xf7, 0xf0, 0x00, 0x77, 0xb3, 0x28, 0xfa, 0x9b, 0x0c, 0x6c, 0xc2, 0x7c, 0x66, 0xb6, 0xb3, 0xc5,
	0x22, 0x2b, 0xf6, 0x91, 0x22, 0x62, 0x0f, 0xd8, 0x19, 0x8b, 0x10, 0xf8, 0x16, 0x2d, 0x15, 0x9a,
	0xe8, 0x4f, 0x05, 0x8f, 0x11, 0x93, 0x39, 0x34, 0x16, 0xb2, 0xb6, 0xc5, 0xf9, 0xb5, 0x36, 0x70,
	0x17, 0xb2, 0x9b, 0x89, 0xf9, 0x6a, 0x26, 0xae, 0xc0, 0x4a, 0x90, 0x24, 0x7b, 0x41, 0x3c, 0x66,
	0xd2, 0x6c, 0xba, 0x80, 0xeb, 0xd6, 0xb4, 0x3a, 0x1f, 0x7a, 0xa7, 0x43, 0x91, 0xc9, 0x90, 0x21,
	0xdc, 0x2d, 0xea, 0x68, 0xf4, 0x3a, 0x22, 0x61, 0xd2, 0x81, 0xd1, 0x20, 0x5f, 0xd3, 0xda, 0xac,
	0x40, 0x9e, 0x95, 0xde, 0x2f, 0x1e, 0x6c, 0x1c, 0x04, 0x52, 0xf1, 0x90, 0x27, 0x41, 0xac, 0xf6,
	0x98, 0x0a, 0xb0, 0xc8, 0x6e, 0x5b, 0xbc, 0xf1, 0x06, 0x79, 0x78, 0x83, 0xd6, 0xec, 0x0d, 0x2a,
	0x08, 0x4e, 0x4b, 0x17, 0xb2, 0x0b, 0xab, 0xe3, 0x32, 0x01, 0x18, 0xd5, 0xc0, 0xa8, 0x2d, 0x37,
	0xaa, 0x9a, 0x1e, 0x5a, 0x0f, 0x21, 0xd7, 0x61, 0x11, 0xf3, 0xa0, 0xc3, 0x9b, 0x18, 0x7e, 0xc9,
	0x86, 0x1f, 0x64, 0xc7, 0x11, 0x0f, 0x8f, 0xac, 0x91, 0x16, 0x6e, 0xbd, 0x6f, 0x3d, 0x58, 0xa9,
	0x1a, 0x9d, 0xdc, 0x7a, 0x95, 0xdc, 0xba, 0x19, 0x6a, 0x5c, 0x9c, 0xa1, 0x66, 0x35, 0x43, 0x9b,
	0x30, 0x3f, 0xc6, 0xba, 0x6b, 0x33, 0x6e, 0x25, 0x8b, 0x64, 0xab, 0x40, 0xf2, 0x07, 0x0f, 0x56,
	0xef, 0x31, 0xf5, 0xb5, 0xe6, 0x83, 0x78, 0xc6, 0x62, 0xca, 0x4e, 0x09, 0x81, 0x39, 0x29, 0xc4,
	0xc4, 0x9e, 0x03, 0x9f, 0xf5, 0x29, 0xf8, 0x88, 0xc5, 0x8a, 0xab, 0xf3, 0xfc, 0x14, 0xb9, 0x4c,
	0x3e, 0x85, 0xc5, 0x89, 0xcd, 0x80, 0x7d, 0xff, 0x1c, 0xbe, 0x19, 0x39, 0xa2, 0x85, 0x2f, 0xde,
	0x67, 0xcc, 0x33, 0x17, 0x71, 0xd9, 0xc8, 0x1c, 0x55, 0xef, 0x14, 0xd6, 0xaa, 0x87, 0x4b, 0x13,
	0x72, 0xdd, 0x6d, 0xca, 0x36, 0xc9, 0xeb, 0x76, 0xbf, 0xd2, 0x40, 0xdd, 0xce, 0xbd, 0x06, 0xcd,
	0xa7, 0xcf, 0x95, 0x3d, 0xb7, 0x7e, 0xd4, 0xc0, 0x45, 0xfc, 0xcc, 0x05, 0xce, 0x8a, 0xbd, 0xef,
	0x3d, 0x58, 0xad, 0x55, 0x5b, 0x5d, 0x3a, 0x15, 0x57, 0x11, 0xb3, 0x88, 0x18, 0x41, 0xc3, 0x34,
	0x62, 0x69, 0x68, 0x97, 0xc5, 0x67, 0x0b, 0x6f, 0xb3, 0x28, 0x1f, 0xba, 0xe0, 0xed, 0x1f, 0xea,
	0x85, 0x0e, 0x45, 0x16, 0x8f, 0x8a, 0x82, 0xe7, 0xe8, 0x74, 0x29, 0xe1, 0xfb, 0x87, 0xb7, 0x83,
	0xd1, 0x98, 0x99, 0xb2, 0xd4, 0xc2, 0x02, 0x5d, 0x55, 0xf6, 0x7e, 0x6f, 0x40, 0xfb, 0x90, 0x8f,
	0xe3, 0x20, 0xd2, 0x29, 0xfa, 0x18, 0xe6, 0x79, 0x7c, 0xc6, 0x15, 0xb3, 0x00, 0xe4, 0x7d, 0xc2,
	0x78, 0x0c, 0xd1, 0x44, 0xd9, 0xe9, 0xfd, 0xb7, 0xa8, 0xf5, 0x23, 0x77, 0x60, 0xd9, 0x3c, 0x0d,
	0x63, 0x24, 0xb5, 0x25, 0xfa, 0xfb, 0x33, 0x02, 0xad, 0x87, 0x89, 0xaf, 0x46, 0xe9, 0x8d, 0xc3,
	0x20, 0x0e, 0x6d, 0x99, 0xa9, 0x6f, 0xbc, 0x83, 0x26, 0xbb, 0xb1, 0xf1, 0xd3, 0x11, 0x41, 0x18,
	0xb2, 0x44, 0xe1, 0xcb, 0xd7, 0x23, 0x6e, 0xa1, 0xc9, 0x46, 0x18, 0x3f, 0x1d, 0xf1, 0x24, 0x8b,
	0xc7, 0x47, 0x09, 0x22, 0x51, 0x8f, 0xb8, 0x8f, 0x26, 0x1b, 0x61, 0xfc, 0x74, 0x84, 0x64, 0x4f,
	0x59, 0xa8, 0xb0, 0x50, 0xd5, 0x23, 0x28, 0x9a, 0x6c, 0x84, 0xf1, 0xbb, 0xdd, 0x86, 0x85, 0x24,
	0x38, 0x8f, 0x44, 0x30, 0xea, 0xbd, 0x6c, 0x00, 0xe4, 0x8e, 0x69, 0x42, 0x06, 0x35, 0x68, 0xfd,
	0x99, 0xd0, 0x26, 0xd1, 0xb9, 0x03, 0xee, 0xbd, 0xd9, 0xe0, 0x7e, 0xf8, 0x2a, 0x70, 0xcd, 0x0a,
	0x35, 0x78, 0x07, 0x35, 0x78, 0xfd, 0x99, 0xf0, 0xda, 0xcd, 0x2d, 0xc0, 0x83, 0x1a, 0xc0, 0xfe,
	0x4c, 0x80, 0x6d, 0x8c, 0x85, 0x78, 0x50, 0x83, 0xd8, 0x9f, 0x09, 0xb1, 0x8d, 0xb1, 0x20, 0x0f,
	0x6a, 0x20, 0xfb, 0x33, 0x41, 0xb6, 0x31, 0xd3, 0x30, 0xff, 0xd6, 0x80, 0x15, 0x84, 0xc0, 0x5c,
	0x6e, 0x7d, 0xaf, 0x2e, 0xe7, 0xb0, 0xe5, 0xd5, 0xdf, 0xdc, 0xaf, 0xaa, 0x92, 0x7c, 0x04, 0xeb,
	0x46, 0xc1, 0x8c, 0xe2, 0x01, 0x4f, 0xf5, 0x5d, 0x6e, 0xf6, 0xdb, 0x74, 0xda, 0x80, 0x23, 0x40,
	0x96, 0x2a, 0x31, 0x29, 0xca, 0x51, 0x9b, 0x3a, 0x1a, 0xb7, 0xb9, 0xce, 0x4d, 0x35, 0x57, 0x5d,
	0xea, 0x8a, 0x81, 0xd9, 0x4a, 0x66, 0x68, 0xe1, 0x8a, 0xe7, 0x63, 0x85, 0x99, 0x93, 0x2b, 0x3a,
	0xbd, 0xaa, 0xe2, 0x13, 0x26, 0x32, 0x65, 0x3b, 0x61, 0x2e, 0xea, 0xd6, 0x3c, 0x61, 0x23, 0x1e,
	0xe0, 0x08, 0x60, 0x26, 0xe2, 0x52, 0xa1, 0x4f, 0x9b, 0x94, 0x13, 0xb8, 0x19, 0x86, 0x1d, 0x4d,
	0x7d, 0x5a, 0x86, 0xa9, 0x69, 0xb9, 0xf7, 0xd2, 0x83, 0xd5, 0xda, 0xad, 0xd7, 0xc5, 0x5a, 0x24,
	0x15, 0x48, 0x0b, 0x99, 0xdc, 0x00, 0xe0, 0x45, 0x16, 0x2c, 0x4f, 0xf3, 0x76, 0x55, 0x4d, 0x0f,
	0x75, 0x1c, 0x67, 0x4d, 0xa8, 0xcd, 0x7f, 0x35, 0xa1, 0x92, 0x2f, 0xa0, 0x93, 0x94, 0xed, 0xc0,
	0x72, 0xf5, 0x55, 0x8d, 0xc2, 0x75, 0xef, 0x7d, 0x03, 0xeb, 0x53, 0x17, 0x10, 0xeb, 0xb2, 0xee,
	0x0b, 0x45, 0x5d, 0xd6, 0x82, 0x93, 0xc7, 0x46, 0x25, 0x8f, 0x17, 0xd7, 0xfc, 0x3f, 0x3c, 0xd8,
	0x9c, 0x5d, 0x00, 0xdf, 0x44, 0x28, 0x8f, 0xc1, 0xbf, 0xa8, 0x20, 0xbd, 0x36, 0x44, 0x4b, 0x56,
	0x16, 0x2d, 0xe1, 0x4d, 0x84, 0x72, 0x23, 0x67, 0xa5, 0x53, 0x99, 0x7b, 0xdf, 0x35, 0xf2, 0x77,
	0x2f, 0x9a, 0xdb, 0x1b, 0xf8, 0xee, 0xe4, 0x2a, 0xac, 0x99, 0x57, 0x70, 0x3e, 0x21, 0xb4, 0xcc,
	0x27, 0x84, 0xba, 0xbe, 0xbc, 0xbd, 0x4e, 0x37, 0x7a, 0x6d, 0x5c, 0xfb, 0xa9, 0xe0, 0x5a, 0x31,
	0x1a, 0xfc, 0x27, 0xf1, 0x2e, 0xd9, 0xe2, 0xf4, 0x57, 0x87, 0x2d, 0xc5, 0x98, 0xf2, 0x7f, 0x67,
	0x4b, 0x81, 0x93, 0x33, 0x53, 0xf4, 0xa2, 0xbc, 0x6a, 0xed, 0xb1, 0x34, 0x0d, 0xc6, 0xec, 0x56,
	0x9a, 0xb2, 0xc9, 0x71, 0x84, 0xfd, 0x6e, 0x1b, 0xda, 0x69, 0x3e, 0x1a, 0xd7, 0xfe, 0xf6, 0x15,
	0x23, 0x33, 0x2d, 0x5d, 0xea, 0x7f, 0x3c, 0x1a, 0xd3, 0x7f, 0x3c, 0x7e, 0xf5, 0xe0, 0x9d, 0x0b,
	0xb6, 0x33, 0x7f, 0x41, 0xc2, 0x7f, 0xf2, 0x17, 0xa4, 0x74, 0xd2, 0xb4, 0xe6, 0xe9, 0x41, 0x90,
	0xa6, 0xf6, 0xf3, 0x8b, 0x95, 0xf4, 0x52, 0x69, 0x31, 0x7b, 0xda, 0x94, 0xac, 0xd7, 0xce, 0xae,
	0x97, 0x2a, 0x9d, 0x48, 0x1f, 0xbf, 0x8f, 0xe1, 0x78, 0x63, 0x92, 0xb0, 0x52, 0xfd, 0xc6, 0x44,
	0x73, 0xf3, 0xe0, 0x09, 0x00, 0x55, 0xe1, 0x21, 0x93, 0x67, 0x3c, 0x64, 0xe4, 0x31, 0x5c, 0x9a,
	0xf9, 0x4a, 0xa4, 0x3a, 0xa6, 0x4e, 0xe3, 0xbb, 0xd5, 0x7d, 0xb5, 0x43, 0x9a, 0xdc, 0xee, 0x3c,
	0x6e, 0x6f, 0x5f, 0x93, 0x2a, 0xfc, 0x5c, 0xaa, 0xf0, 0x78, 0x1e, 0xbd, 0x3f, 0xf9, 0x2b, 0x00,
	0x00, 0xff, 0xff, 0x83, 0xb9, 0x80, 0xa7, 0x55, 0x15, 0x00, 0x00,
}