public static ChatServerData read(BinaryReader binaryReader) { var newObj = new ChatServerData(); newObj.cbSize = binaryReader.ReadUInt32(); newObj.m_blobType = (ChatNetworkBlobType)binaryReader.ReadUInt32(); newObj.m_blobDispatchType = (AsyncMethodID)binaryReader.ReadUInt32(); newObj.m_targetType = binaryReader.ReadUInt32(); // Always 1 in pcaps newObj.m_targetID = binaryReader.ReadUInt32(); newObj.m_transportType = binaryReader.ReadUInt32(); // Pcaps contain either a 0 or a 1 (Perhaps ChatEventType?) newObj.m_transportID = binaryReader.ReadUInt32(); newObj.m_cookie = binaryReader.ReadUInt32(); // Always 0 in pcaps if (newObj.m_blobType == ChatNetworkBlobType.NETBLOB_EVENT_BINARY) // Server to client { newObj.sendToRoomChatEvent = SendToRoomChatEvent.read(binaryReader); } else if (newObj.m_blobType == ChatNetworkBlobType.NETBLOB_REQUEST_BINARY) // Client to server { newObj.request = Request.read(binaryReader, newObj.m_blobDispatchType); } else if (newObj.m_blobType == ChatNetworkBlobType.NETBLOB_RESPONSE_BINARY) // Server to client acknowledgement { newObj.response = Response.read(binaryReader); } return(newObj); }
public static SendToRoomChatEvent read(BinaryReader binaryReader) { SendToRoomChatEvent newObj = new SendToRoomChatEvent(); newObj.cbSize = binaryReader.ReadUInt32(); newObj.dwRoomID = binaryReader.ReadUInt32(); newObj.pwszDisplayName = Util.readUnicodeString(binaryReader); newObj.pwszText = Util.readUnicodeString(binaryReader); newObj.extraInfoBlob = TurbineChatBlob.read(binaryReader); return(newObj); }
public static SendToRoomChatEvent read(BinaryReader binaryReader) { SendToRoomChatEvent newObj = new SendToRoomChatEvent(); var startPosition = binaryReader.BaseStream.Position; newObj.cbSize = binaryReader.ReadUInt32(); newObj.dwRoomID = binaryReader.ReadUInt32(); newObj.pwszDisplayName = Util.readUnicodeString(binaryReader); newObj.pwszText = Util.readUnicodeString(binaryReader); newObj.extraInfoBlob = TurbineChatBlob.read(binaryReader); newObj.Length = (int)(binaryReader.BaseStream.Position - startPosition); return(newObj); }