diff --git a/danmu/danmaku/yqs.proto b/danmu/danmaku/yqs.proto new file mode 100644 index 0000000..e653ffe --- /dev/null +++ b/danmu/danmaku/yqs.proto @@ -0,0 +1,139 @@ +syntax = "proto2"; +package YiQishanPack; + +message CSHead { + optional uint32 command = 1; + optional uint32 subcmd = 2; + optional uint32 seq = 3; + optional bytes uuid = 4; + optional uint32 clientType = 5; + optional uint32 headFlag = 6; + optional uint32 clientVer = 7; + optional bytes signature = 8; + optional uint32 routeKey = 9; +} + +message TCPAccessReq { + optional bytes AccessToken = 1; + optional bytes MachineCode = 2; +} + +message TcpHelloReq { + optional string uuid = 1; +} + +message EnterRoomReq { + optional bytes uuid = 1; + optional bytes roomid = 2; + optional uint32 neednum = 3; + optional bool isfake = 4; + optional bool needbroadcast = 5; + optional bytes nick = 6; + optional bytes clientip = 7; + optional bytes subroomid = 8; + optional uint32 gameid = 10; +} + +message RoomHelloReq { + optional bytes uuid = 1; + optional bytes roomid = 2; + optional bytes roomsig = 3; + optional uint32 connsvrip = 4; + optional bool isinternal = 5; + optional bytes subroomid = 6; +} + +message Token { + optional string uuid = 1; + optional bytes gtkey = 2; + optional uint32 ip = 3; + optional uint32 expiresstime = 4; + optional uint32 gentime = 5; +} + +message PublicChatNotify { + optional bytes roomid = 1; + optional bytes uuid = 2; + optional bytes nick = 3; + optional ChatInfo info = 4; + optional bytes touuid = 5; + optional bytes tonick = 6; + optional uint32 privilege = 7; + optional uint32 rank = 8; + optional uint32 fromgame = 9; + optional bytes gameid = 10; + repeated BadgeType badges = 11; + optional RoomUserInfo userinfo = 12; + optional bool isnoble = 13; + optional uint32 noblelevelid = 14; + optional string noblelevelname = 15; + optional bool isnoblemessage = 16; +} + +enum BadgeType { + NOBARRAGE = 0; + FIRST_CHARGE_BADGE = 1; + FIRST_CHARGE_COPPER = 2; + FIRST_CHARGE_SLIVER = 3; + FIRST_CHARGE_GOLD = 4; +} + +message ChatInfo { + optional uint32 chattype = 1; + optional bytes textmsg = 2; +} + +message RoomUserInfo { + optional bytes uuid = 1; + optional bytes nick = 2; + optional uint32 weekartistconsume = 3; + optional uint32 artisttotalconsume = 4; + optional uint32 totalconsume = 5; + optional uint32 guardendtime = 6; + optional uint32 peerageid = 7; +} + +message GiftNotyInfo { + optional bytes roomid = 1; + optional bytes giftid = 2; + optional uint32 giftcnt = 3; + optional bytes fromuuid = 4; + optional bytes fromnick = 5; + optional bytes touuid = 6; + optional bytes tonick = 7; + optional uint32 consume = 8; + optional bytes sessid = 9; + optional uint32 hits = 10; + optional uint32 hitsall = 11; + optional uint32 flag = 12; + optional uint32 fromviplevel = 13; + optional uint32 fanslevel = 14; + optional bool fromisnoble = 15; + optional uint32 fromnoblelevelid = 16; +} + +message NotifyFreeGift { + optional bytes uuid = 1; + optional bytes fromnick = 2; + optional bytes touuid = 3; + optional bytes tonick = 4; + optional bytes roomid = 5; + optional uint32 giftid = 6; + optional uint32 giftcnt = 7; + optional uint32 fromviplevel = 8; + optional uint32 fanslevel = 9; + optional bool fromisnoble = 11; + optional uint32 fromnoblelevelid = 12; +} + +message SendBroadcastPkg { + optional bytes uuid = 1; + repeated BroadcastMsg broadcastmsg = 2; + + message BroadcastMsg { + optional uint32 businesstype = 1; + optional bytes title = 2; + optional bytes content = 3; + optional uint32 msgseq = 4; + } +} diff --git a/danmu/danmaku/yqs.py b/danmu/danmaku/yqs.py new file mode 100644 index 0000000..3250f7f --- /dev/null +++ b/danmu/danmaku/yqs.py @@ -0,0 +1,137 @@ +import binascii +import struct + +import requests +from Crypto.Cipher import DES +from Crypto.Util.Padding import pad + +from . import yqs_pb2 as pb + + +class YiQiShan: + ws_url = 'wss://websocket.173.com/' + + def __init__(self, rid): + self.rid = str(rid) + self.key = b'e#>&*m16' + with requests.Session() as se: + res = se.get('http://www.173.com/{}'.format(rid)) + try: + self.uuid, _, token, _ = res.cookies.values() + except ValueError: + raise Exception('房间不存在') + self.accesstoken = binascii.a2b_hex(token) + s = YiQiShan.des_decode(self.accesstoken, self.key) + p = pb.Token() + p.ParseFromString(s) + self.gtkey = p.gtkey[:8] + + @staticmethod + def des_encode(t, key): + t = pad(t, DES.block_size) + c = DES.new(key, DES.MODE_ECB) + res = c.encrypt(t) + return res + + @staticmethod + def des_decode(t, key): + c = DES.new(key, DES.MODE_ECB) + res = c.decrypt(t) + length = len(res) + padding = res[length - 1] + res = res[0:length - padding] + return res + + def startup(self): + p = pb.TCPAccessReq() + p.AccessToken = self.accesstoken + return p.SerializeToString() + + def tcphelloreq(self): + p = pb.TcpHelloReq() + p.uuid = self.uuid + return p.SerializeToString() + + def enterroomreq(self): + p = pb.EnterRoomReq() + p.uuid = self.uuid.encode() + p.roomid = self.rid.encode() + return p.SerializeToString() + + def roomhelloreq(self): + p = pb.RoomHelloReq() + p.uuid = self.uuid.encode() + p.roomid = self.rid.encode() + return p.SerializeToString() + + def pack(self, paylod_type): + command = { + 'startup': 123, + 'tcphelloreq': 122, + 'enterroomreq': 601, + 'roomhelloreq': 600 + } + subcmd = { + 'startup': 0, + 'tcphelloreq': 0, + 'enterroomreq': 1, + 'roomhelloreq': 1 + } + p = pb.CSHead() + p.command = command[paylod_type] + p.subcmd = subcmd[paylod_type] + p.uuid = self.uuid.encode() + p.clientType = 4 + p.routeKey = int(self.rid) + n = p.SerializeToString() + + key = self.key if paylod_type == 'startup' else self.gtkey + payload = getattr(self, paylod_type)() + s = YiQiShan.des_encode(payload, key) + + buf = struct.pack('!HcH', len(n) + len(s) + 8, b'W', len(n)) + buf += n + buf += struct.pack('!H', len(s)) + buf += s + b'M' + return buf + + def unpack(self, data): + msgs = [{'name': '', 'content': '', 'msg_type': 'other'}] + + s, = struct.unpack_from('!h', data, 3) + p, = struct.unpack_from('!h', data, 5 + s) + u = data[7 + s:7 + s + p] + + a = pb.CSHead() + a.ParseFromString(data[5:5 + s]) + cmd = a.command + key = self.key if cmd == 123 else self.gtkey + t = u if cmd == 102 else YiQiShan.des_decode(u, key) + + o = cmd + # r = a.subcmd + if o == 102: + p = pb.SendBroadcastPkg() + p.ParseFromString(t) + for i in p.broadcastmsg: + # PublicChatNotify = 1 + # BUSINESS_TYPE_FREE_GIFT = 2 + # BUSINESS_TYPE_PAY_GIFT = 3 + if i.businesstype == 1: # 发言 + q = pb.PublicChatNotify() + q.ParseFromString(i.content) + user = q.nick.decode() + content = q.info.textmsg.decode() + # elif i.businesstype == 2: # 免费礼物 + # print(i.businesstype) + # q = pb.NotifyFreeGift() + # q.ParseFromString(i.content) + # elif i.businesstype == 3: # 收费礼物 + # print(i.businesstype) + # q = pb.GiftNotyInfo() + # q.ParseFromString(i.content) + # else: + # pass + msg = {'name': user, 'content': content, 'msg_type': 'danmaku'} + msgs.append(msg.copy()) + return msgs diff --git a/danmu/danmaku/yqs_pb2.py b/danmu/danmaku/yqs_pb2.py new file mode 100644 index 0000000..9b373c3 --- /dev/null +++ b/danmu/danmaku/yqs_pb2.py @@ -0,0 +1,1141 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: yqs.proto + +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='yqs.proto', + package='YiQishanPack', + syntax='proto2', + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n\tyqs.proto\x12\x0cYiQishanPack\"\xa2\x01\n\x06\x43SHead\x12\x0f\n\x07\x63ommand\x18\x01 \x01(\r\x12\x0e\n\x06subcmd\x18\x02 \x01(\r\x12\x0b\n\x03seq\x18\x03 \x01(\r\x12\x0c\n\x04uuid\x18\x04 \x01(\x0c\x12\x12\n\nclientType\x18\x05 \x01(\r\x12\x10\n\x08headFlag\x18\x06 \x01(\r\x12\x11\n\tclientVer\x18\x07 \x01(\r\x12\x11\n\tsignature\x18\x08 \x01(\x0c\x12\x10\n\x08routeKey\x18\t \x01(\r\"8\n\x0cTCPAccessReq\x12\x13\n\x0b\x41\x63\x63\x65ssToken\x18\x01 \x01(\x0c\x12\x13\n\x0bMachineCode\x18\x02 \x01(\x0c\"\x1b\n\x0bTcpHelloReq\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"\xa7\x01\n\x0c\x45nterRoomReq\x12\x0c\n\x04uuid\x18\x01 \x01(\x0c\x12\x0e\n\x06roomid\x18\x02 \x01(\x0c\x12\x0f\n\x07neednum\x18\x03 \x01(\r\x12\x0e\n\x06isfake\x18\x04 \x01(\x08\x12\x15\n\rneedbroadcast\x18\x05 \x01(\x08\x12\x0c\n\x04nick\x18\x06 \x01(\x0c\x12\x10\n\x08\x63lientip\x18\x07 \x01(\x0c\x12\x11\n\tsubroomid\x18\x08 \x01(\x0c\x12\x0e\n\x06gameid\x18\n \x01(\r\"w\n\x0cRoomHelloReq\x12\x0c\n\x04uuid\x18\x01 \x01(\x0c\x12\x0e\n\x06roomid\x18\x02 \x01(\x0c\x12\x0f\n\x07roomsig\x18\x03 \x01(\x0c\x12\x11\n\tconnsvrip\x18\x04 \x01(\r\x12\x12\n\nisinternal\x18\x05 \x01(\x08\x12\x11\n\tsubroomid\x18\x06 \x01(\x0c\"W\n\x05Token\x12\x0c\n\x04uuid\x18\x01 \x01(\t\x12\r\n\x05gtkey\x18\x02 \x01(\x0c\x12\n\n\x02ip\x18\x03 \x01(\r\x12\x14\n\x0c\x65xpiresstime\x18\x04 \x01(\r\x12\x0f\n\x07gentime\x18\x05 \x01(\r\"\xf5\x02\n\x10PublicChatNotify\x12\x0e\n\x06roomid\x18\x01 \x01(\x0c\x12\x0c\n\x04uuid\x18\x02 \x01(\x0c\x12\x0c\n\x04nick\x18\x03 \x01(\x0c\x12$\n\x04info\x18\x04 \x01(\x0b\x32\x16.YiQishanPack.ChatInfo\x12\x0e\n\x06touuid\x18\x05 \x01(\x0c\x12\x0e\n\x06tonick\x18\x06 \x01(\x0c\x12\x11\n\tprivilege\x18\x07 \x01(\r\x12\x0c\n\x04rank\x18\x08 \x01(\r\x12\x10\n\x08\x66romgame\x18\t \x01(\r\x12\x0e\n\x06gameid\x18\n \x01(\x0c\x12\'\n\x06\x62\x61\x64ges\x18\x0b \x03(\x0e\x32\x17.YiQishanPack.BadgeType\x12,\n\x08userinfo\x18\x0c \x01(\x0b\x32\x1a.YiQishanPack.RoomUserInfo\x12\x0f\n\x07isnoble\x18\r \x01(\x08\x12\x14\n\x0cnoblelevelid\x18\x0e \x01(\r\x12\x16\n\x0enoblelevelname\x18\x0f \x01(\t\x12\x16\n\x0eisnoblemessage\x18\x10 \x01(\x08\"-\n\x08\x43hatInfo\x12\x10\n\x08\x63hattype\x18\x01 \x01(\r\x12\x0f\n\x07textmsg\x18\x02 \x01(\x0c\"\xa0\x01\n\x0cRoomUserInfo\x12\x0c\n\x04uuid\x18\x01 \x01(\x0c\x12\x0c\n\x04nick\x18\x02 \x01(\x0c\x12\x19\n\x11weekartistconsume\x18\x03 \x01(\r\x12\x1a\n\x12\x61rtisttotalconsume\x18\x04 \x01(\r\x12\x14\n\x0ctotalconsume\x18\x05 \x01(\r\x12\x14\n\x0cguardendtime\x18\x06 \x01(\r\x12\x11\n\tpeerageid\x18\x07 \x01(\r\"\xa9\x02\n\x0cGiftNotyInfo\x12\x0e\n\x06roomid\x18\x01 \x01(\x0c\x12\x0e\n\x06giftid\x18\x02 \x01(\x0c\x12\x0f\n\x07giftcnt\x18\x03 \x01(\r\x12\x10\n\x08\x66romuuid\x18\x04 \x01(\x0c\x12\x10\n\x08\x66romnick\x18\x05 \x01(\x0c\x12\x0e\n\x06touuid\x18\x06 \x01(\x0c\x12\x0e\n\x06tonick\x18\x07 \x01(\x0c\x12\x0f\n\x07\x63onsume\x18\x08 \x01(\r\x12\x0e\n\x06sessid\x18\t \x01(\x0c\x12\x0c\n\x04hits\x18\n \x01(\r\x12\x0f\n\x07hitsall\x18\x0b \x01(\r\x12\x0c\n\x04\x66lag\x18\x0c \x01(\r\x12\x14\n\x0c\x66romviplevel\x18\r \x01(\r\x12\x11\n\tfanslevel\x18\x0e \x01(\r\x12\x13\n\x0b\x66romisnoble\x18\x0f \x01(\x08\x12\x18\n\x10\x66romnoblelevelid\x18\x10 \x01(\r\"\xd9\x01\n\x0eNotifyFreeGift\x12\x0c\n\x04uuid\x18\x01 \x01(\x0c\x12\x10\n\x08\x66romnick\x18\x02 \x01(\x0c\x12\x0e\n\x06touuid\x18\x03 \x01(\x0c\x12\x0e\n\x06tonick\x18\x04 \x01(\x0c\x12\x0e\n\x06roomid\x18\x05 \x01(\x0c\x12\x0e\n\x06giftid\x18\x06 \x01(\r\x12\x0f\n\x07giftcnt\x18\x07 \x01(\r\x12\x14\n\x0c\x66romviplevel\x18\x08 \x01(\r\x12\x11\n\tfanslevel\x18\t \x01(\r\x12\x13\n\x0b\x66romisnoble\x18\x0b \x01(\x08\x12\x18\n\x10\x66romnoblelevelid\x18\x0c \x01(\r\"\xb9\x01\n\x10SendBroadcastPkg\x12\x0c\n\x04uuid\x18\x01 \x01(\x0c\x12\x41\n\x0c\x62roadcastmsg\x18\x02 \x03(\x0b\x32+.YiQishanPack.SendBroadcastPkg.BroadcastMsg\x1aT\n\x0c\x42roadcastMsg\x12\x14\n\x0c\x62usinesstype\x18\x01 \x01(\r\x12\r\n\x05title\x18\x02 \x01(\x0c\x12\x0f\n\x07\x63ontent\x18\x03 \x01(\x0c\x12\x0e\n\x06msgseq\x18\x04 \x01(\r*{\n\tBadgeType\x12\r\n\tNOBARRAGE\x10\x00\x12\x16\n\x12\x46IRST_CHARGE_BADGE\x10\x01\x12\x17\n\x13\x46IRST_CHARGE_COPPER\x10\x02\x12\x17\n\x13\x46IRST_CHARGE_SLIVER\x10\x03\x12\x15\n\x11\x46IRST_CHARGE_GOLD\x10\x04' +) + +_BADGETYPE = _descriptor.EnumDescriptor( + name='BadgeType', + full_name='YiQishanPack.BadgeType', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='NOBARRAGE', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FIRST_CHARGE_BADGE', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FIRST_CHARGE_COPPER', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FIRST_CHARGE_SLIVER', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FIRST_CHARGE_GOLD', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=1953, + serialized_end=2076, +) +_sym_db.RegisterEnumDescriptor(_BADGETYPE) + +BadgeType = enum_type_wrapper.EnumTypeWrapper(_BADGETYPE) +NOBARRAGE = 0 +FIRST_CHARGE_BADGE = 1 +FIRST_CHARGE_COPPER = 2 +FIRST_CHARGE_SLIVER = 3 +FIRST_CHARGE_GOLD = 4 + + + +_CSHEAD = _descriptor.Descriptor( + name='CSHead', + full_name='YiQishanPack.CSHead', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='command', full_name='YiQishanPack.CSHead.command', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='subcmd', full_name='YiQishanPack.CSHead.subcmd', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='seq', full_name='YiQishanPack.CSHead.seq', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.CSHead.uuid', index=3, + number=4, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='clientType', full_name='YiQishanPack.CSHead.clientType', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='headFlag', full_name='YiQishanPack.CSHead.headFlag', index=5, + number=6, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='clientVer', full_name='YiQishanPack.CSHead.clientVer', index=6, + number=7, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='signature', full_name='YiQishanPack.CSHead.signature', index=7, + number=8, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='routeKey', full_name='YiQishanPack.CSHead.routeKey', index=8, + number=9, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=28, + serialized_end=190, +) + + +_TCPACCESSREQ = _descriptor.Descriptor( + name='TCPAccessReq', + full_name='YiQishanPack.TCPAccessReq', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='AccessToken', full_name='YiQishanPack.TCPAccessReq.AccessToken', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='MachineCode', full_name='YiQishanPack.TCPAccessReq.MachineCode', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=192, + serialized_end=248, +) + + +_TCPHELLOREQ = _descriptor.Descriptor( + name='TcpHelloReq', + full_name='YiQishanPack.TcpHelloReq', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.TcpHelloReq.uuid', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=250, + serialized_end=277, +) + + +_ENTERROOMREQ = _descriptor.Descriptor( + name='EnterRoomReq', + full_name='YiQishanPack.EnterRoomReq', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.EnterRoomReq.uuid', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='roomid', full_name='YiQishanPack.EnterRoomReq.roomid', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='neednum', full_name='YiQishanPack.EnterRoomReq.neednum', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='isfake', full_name='YiQishanPack.EnterRoomReq.isfake', index=3, + number=4, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='needbroadcast', full_name='YiQishanPack.EnterRoomReq.needbroadcast', index=4, + number=5, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='nick', full_name='YiQishanPack.EnterRoomReq.nick', index=5, + number=6, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='clientip', full_name='YiQishanPack.EnterRoomReq.clientip', index=6, + number=7, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='subroomid', full_name='YiQishanPack.EnterRoomReq.subroomid', index=7, + number=8, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='gameid', full_name='YiQishanPack.EnterRoomReq.gameid', index=8, + number=10, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=280, + serialized_end=447, +) + + +_ROOMHELLOREQ = _descriptor.Descriptor( + name='RoomHelloReq', + full_name='YiQishanPack.RoomHelloReq', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.RoomHelloReq.uuid', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='roomid', full_name='YiQishanPack.RoomHelloReq.roomid', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='roomsig', full_name='YiQishanPack.RoomHelloReq.roomsig', index=2, + number=3, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='connsvrip', full_name='YiQishanPack.RoomHelloReq.connsvrip', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='isinternal', full_name='YiQishanPack.RoomHelloReq.isinternal', index=4, + number=5, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='subroomid', full_name='YiQishanPack.RoomHelloReq.subroomid', index=5, + number=6, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=449, + serialized_end=568, +) + + +_TOKEN = _descriptor.Descriptor( + name='Token', + full_name='YiQishanPack.Token', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.Token.uuid', index=0, + number=1, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='gtkey', full_name='YiQishanPack.Token.gtkey', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='ip', full_name='YiQishanPack.Token.ip', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='expiresstime', full_name='YiQishanPack.Token.expiresstime', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='gentime', full_name='YiQishanPack.Token.gentime', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=570, + serialized_end=657, +) + + +_PUBLICCHATNOTIFY = _descriptor.Descriptor( + name='PublicChatNotify', + full_name='YiQishanPack.PublicChatNotify', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='roomid', full_name='YiQishanPack.PublicChatNotify.roomid', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.PublicChatNotify.uuid', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='nick', full_name='YiQishanPack.PublicChatNotify.nick', index=2, + number=3, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='info', full_name='YiQishanPack.PublicChatNotify.info', index=3, + number=4, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='touuid', full_name='YiQishanPack.PublicChatNotify.touuid', index=4, + number=5, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='tonick', full_name='YiQishanPack.PublicChatNotify.tonick', index=5, + number=6, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='privilege', full_name='YiQishanPack.PublicChatNotify.privilege', index=6, + number=7, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='rank', full_name='YiQishanPack.PublicChatNotify.rank', index=7, + number=8, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromgame', full_name='YiQishanPack.PublicChatNotify.fromgame', index=8, + number=9, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='gameid', full_name='YiQishanPack.PublicChatNotify.gameid', index=9, + number=10, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='badges', full_name='YiQishanPack.PublicChatNotify.badges', index=10, + number=11, type=14, cpp_type=8, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='userinfo', full_name='YiQishanPack.PublicChatNotify.userinfo', index=11, + number=12, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='isnoble', full_name='YiQishanPack.PublicChatNotify.isnoble', index=12, + number=13, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='noblelevelid', full_name='YiQishanPack.PublicChatNotify.noblelevelid', index=13, + number=14, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='noblelevelname', full_name='YiQishanPack.PublicChatNotify.noblelevelname', index=14, + number=15, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='isnoblemessage', full_name='YiQishanPack.PublicChatNotify.isnoblemessage', index=15, + number=16, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=660, + serialized_end=1033, +) + + +_CHATINFO = _descriptor.Descriptor( + name='ChatInfo', + full_name='YiQishanPack.ChatInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='chattype', full_name='YiQishanPack.ChatInfo.chattype', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='textmsg', full_name='YiQishanPack.ChatInfo.textmsg', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1035, + serialized_end=1080, +) + + +_ROOMUSERINFO = _descriptor.Descriptor( + name='RoomUserInfo', + full_name='YiQishanPack.RoomUserInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.RoomUserInfo.uuid', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='nick', full_name='YiQishanPack.RoomUserInfo.nick', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='weekartistconsume', full_name='YiQishanPack.RoomUserInfo.weekartistconsume', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='artisttotalconsume', full_name='YiQishanPack.RoomUserInfo.artisttotalconsume', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='totalconsume', full_name='YiQishanPack.RoomUserInfo.totalconsume', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='guardendtime', full_name='YiQishanPack.RoomUserInfo.guardendtime', index=5, + number=6, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='peerageid', full_name='YiQishanPack.RoomUserInfo.peerageid', index=6, + number=7, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1083, + serialized_end=1243, +) + + +_GIFTNOTYINFO = _descriptor.Descriptor( + name='GiftNotyInfo', + full_name='YiQishanPack.GiftNotyInfo', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='roomid', full_name='YiQishanPack.GiftNotyInfo.roomid', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='giftid', full_name='YiQishanPack.GiftNotyInfo.giftid', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='giftcnt', full_name='YiQishanPack.GiftNotyInfo.giftcnt', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromuuid', full_name='YiQishanPack.GiftNotyInfo.fromuuid', index=3, + number=4, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromnick', full_name='YiQishanPack.GiftNotyInfo.fromnick', index=4, + number=5, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='touuid', full_name='YiQishanPack.GiftNotyInfo.touuid', index=5, + number=6, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='tonick', full_name='YiQishanPack.GiftNotyInfo.tonick', index=6, + number=7, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='consume', full_name='YiQishanPack.GiftNotyInfo.consume', index=7, + number=8, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='sessid', full_name='YiQishanPack.GiftNotyInfo.sessid', index=8, + number=9, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='hits', full_name='YiQishanPack.GiftNotyInfo.hits', index=9, + number=10, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='hitsall', full_name='YiQishanPack.GiftNotyInfo.hitsall', index=10, + number=11, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='flag', full_name='YiQishanPack.GiftNotyInfo.flag', index=11, + number=12, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromviplevel', full_name='YiQishanPack.GiftNotyInfo.fromviplevel', index=12, + number=13, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fanslevel', full_name='YiQishanPack.GiftNotyInfo.fanslevel', index=13, + number=14, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromisnoble', full_name='YiQishanPack.GiftNotyInfo.fromisnoble', index=14, + number=15, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromnoblelevelid', full_name='YiQishanPack.GiftNotyInfo.fromnoblelevelid', index=15, + number=16, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1246, + serialized_end=1543, +) + + +_NOTIFYFREEGIFT = _descriptor.Descriptor( + name='NotifyFreeGift', + full_name='YiQishanPack.NotifyFreeGift', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.NotifyFreeGift.uuid', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromnick', full_name='YiQishanPack.NotifyFreeGift.fromnick', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='touuid', full_name='YiQishanPack.NotifyFreeGift.touuid', index=2, + number=3, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='tonick', full_name='YiQishanPack.NotifyFreeGift.tonick', index=3, + number=4, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='roomid', full_name='YiQishanPack.NotifyFreeGift.roomid', index=4, + number=5, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='giftid', full_name='YiQishanPack.NotifyFreeGift.giftid', index=5, + number=6, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='giftcnt', full_name='YiQishanPack.NotifyFreeGift.giftcnt', index=6, + number=7, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromviplevel', full_name='YiQishanPack.NotifyFreeGift.fromviplevel', index=7, + number=8, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fanslevel', full_name='YiQishanPack.NotifyFreeGift.fanslevel', index=8, + number=9, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromisnoble', full_name='YiQishanPack.NotifyFreeGift.fromisnoble', index=9, + number=11, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='fromnoblelevelid', full_name='YiQishanPack.NotifyFreeGift.fromnoblelevelid', index=10, + number=12, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1546, + serialized_end=1763, +) + + +_SENDBROADCASTPKG_BROADCASTMSG = _descriptor.Descriptor( + name='BroadcastMsg', + full_name='YiQishanPack.SendBroadcastPkg.BroadcastMsg', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='businesstype', full_name='YiQishanPack.SendBroadcastPkg.BroadcastMsg.businesstype', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='title', full_name='YiQishanPack.SendBroadcastPkg.BroadcastMsg.title', index=1, + number=2, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='content', full_name='YiQishanPack.SendBroadcastPkg.BroadcastMsg.content', index=2, + number=3, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='msgseq', full_name='YiQishanPack.SendBroadcastPkg.BroadcastMsg.msgseq', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1867, + serialized_end=1951, +) + +_SENDBROADCASTPKG = _descriptor.Descriptor( + name='SendBroadcastPkg', + full_name='YiQishanPack.SendBroadcastPkg', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='uuid', full_name='YiQishanPack.SendBroadcastPkg.uuid', index=0, + number=1, type=12, cpp_type=9, label=1, + has_default_value=False, default_value=b"", + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='broadcastmsg', full_name='YiQishanPack.SendBroadcastPkg.broadcastmsg', index=1, + number=2, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[_SENDBROADCASTPKG_BROADCASTMSG, ], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto2', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1766, + serialized_end=1951, +) + +_PUBLICCHATNOTIFY.fields_by_name['info'].message_type = _CHATINFO +_PUBLICCHATNOTIFY.fields_by_name['badges'].enum_type = _BADGETYPE +_PUBLICCHATNOTIFY.fields_by_name['userinfo'].message_type = _ROOMUSERINFO +_SENDBROADCASTPKG_BROADCASTMSG.containing_type = _SENDBROADCASTPKG +_SENDBROADCASTPKG.fields_by_name['broadcastmsg'].message_type = _SENDBROADCASTPKG_BROADCASTMSG +DESCRIPTOR.message_types_by_name['CSHead'] = _CSHEAD +DESCRIPTOR.message_types_by_name['TCPAccessReq'] = _TCPACCESSREQ +DESCRIPTOR.message_types_by_name['TcpHelloReq'] = _TCPHELLOREQ +DESCRIPTOR.message_types_by_name['EnterRoomReq'] = _ENTERROOMREQ +DESCRIPTOR.message_types_by_name['RoomHelloReq'] = _ROOMHELLOREQ +DESCRIPTOR.message_types_by_name['Token'] = _TOKEN +DESCRIPTOR.message_types_by_name['PublicChatNotify'] = _PUBLICCHATNOTIFY +DESCRIPTOR.message_types_by_name['ChatInfo'] = _CHATINFO +DESCRIPTOR.message_types_by_name['RoomUserInfo'] = _ROOMUSERINFO +DESCRIPTOR.message_types_by_name['GiftNotyInfo'] = _GIFTNOTYINFO +DESCRIPTOR.message_types_by_name['NotifyFreeGift'] = _NOTIFYFREEGIFT +DESCRIPTOR.message_types_by_name['SendBroadcastPkg'] = _SENDBROADCASTPKG +DESCRIPTOR.enum_types_by_name['BadgeType'] = _BADGETYPE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +CSHead = _reflection.GeneratedProtocolMessageType('CSHead', (_message.Message,), { + 'DESCRIPTOR' : _CSHEAD, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.CSHead) + }) +_sym_db.RegisterMessage(CSHead) + +TCPAccessReq = _reflection.GeneratedProtocolMessageType('TCPAccessReq', (_message.Message,), { + 'DESCRIPTOR' : _TCPACCESSREQ, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.TCPAccessReq) + }) +_sym_db.RegisterMessage(TCPAccessReq) + +TcpHelloReq = _reflection.GeneratedProtocolMessageType('TcpHelloReq', (_message.Message,), { + 'DESCRIPTOR' : _TCPHELLOREQ, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.TcpHelloReq) + }) +_sym_db.RegisterMessage(TcpHelloReq) + +EnterRoomReq = _reflection.GeneratedProtocolMessageType('EnterRoomReq', (_message.Message,), { + 'DESCRIPTOR' : _ENTERROOMREQ, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.EnterRoomReq) + }) +_sym_db.RegisterMessage(EnterRoomReq) + +RoomHelloReq = _reflection.GeneratedProtocolMessageType('RoomHelloReq', (_message.Message,), { + 'DESCRIPTOR' : _ROOMHELLOREQ, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.RoomHelloReq) + }) +_sym_db.RegisterMessage(RoomHelloReq) + +Token = _reflection.GeneratedProtocolMessageType('Token', (_message.Message,), { + 'DESCRIPTOR' : _TOKEN, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.Token) + }) +_sym_db.RegisterMessage(Token) + +PublicChatNotify = _reflection.GeneratedProtocolMessageType('PublicChatNotify', (_message.Message,), { + 'DESCRIPTOR' : _PUBLICCHATNOTIFY, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.PublicChatNotify) + }) +_sym_db.RegisterMessage(PublicChatNotify) + +ChatInfo = _reflection.GeneratedProtocolMessageType('ChatInfo', (_message.Message,), { + 'DESCRIPTOR' : _CHATINFO, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.ChatInfo) + }) +_sym_db.RegisterMessage(ChatInfo) + +RoomUserInfo = _reflection.GeneratedProtocolMessageType('RoomUserInfo', (_message.Message,), { + 'DESCRIPTOR' : _ROOMUSERINFO, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.RoomUserInfo) + }) +_sym_db.RegisterMessage(RoomUserInfo) + +GiftNotyInfo = _reflection.GeneratedProtocolMessageType('GiftNotyInfo', (_message.Message,), { + 'DESCRIPTOR' : _GIFTNOTYINFO, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.GiftNotyInfo) + }) +_sym_db.RegisterMessage(GiftNotyInfo) + +NotifyFreeGift = _reflection.GeneratedProtocolMessageType('NotifyFreeGift', (_message.Message,), { + 'DESCRIPTOR' : _NOTIFYFREEGIFT, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.NotifyFreeGift) + }) +_sym_db.RegisterMessage(NotifyFreeGift) + +SendBroadcastPkg = _reflection.GeneratedProtocolMessageType('SendBroadcastPkg', (_message.Message,), { + + 'BroadcastMsg' : _reflection.GeneratedProtocolMessageType('BroadcastMsg', (_message.Message,), { + 'DESCRIPTOR' : _SENDBROADCASTPKG_BROADCASTMSG, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.SendBroadcastPkg.BroadcastMsg) + }) + , + 'DESCRIPTOR' : _SENDBROADCASTPKG, + '__module__' : 'yqs_pb2' + # @@protoc_insertion_point(class_scope:YiQishanPack.SendBroadcastPkg) + }) +_sym_db.RegisterMessage(SendBroadcastPkg) +_sym_db.RegisterMessage(SendBroadcastPkg.BroadcastMsg) + + +# @@protoc_insertion_point(module_scope)