Difference between revisions of "ChatQueryRoomResults"
From SWGANH Wiki
(→Sample Packet) |
(→Variable Descriptions) |
||
(11 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {{PageHeader|Server Packet|ChatQueryRoomResults (C4DE864E)}} | |
− | {| | + | |
− | | | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
{| border="0" width="90%" cellpadding=6 | {| border="0" width="90%" cellpadding=6 | ||
|- | |- | ||
Line 11: | Line 5: | ||
===Struct=== | ===Struct=== | ||
---- | ---- | ||
− | + | <pre> | |
− | { | + | SHORT: OperandCount |
− | + | INT: Opcode | |
− | + | INT: UserListSize | |
− | + | { | |
− | + | ASTRING: Game | |
− | + | ASTRING: Server | |
− | + | ASTRING: UserName | |
− | + | } | |
− | + | INT: InvitedUserListSize | |
− | + | { | |
− | + | ASTRING: Game | |
− | + | ASTRING: Server | |
− | + | ASTRING: InvitedUserName | |
− | + | } | |
− | + | INT: ModeratorListSize | |
− | + | { | |
− | + | ASTRING: Game | |
− | + | ASTRING: Server | |
− | + | ASTRING: ModeratorName | |
− | + | } | |
− | + | INT: BannedUserListSize | |
− | + | { | |
− | + | ASTRING: Game | |
− | + | ASTRING: Server | |
− | + | ASTRING: BannedUserName | |
− | + | } | |
− | + | INT: RequestID | |
+ | INT: RoomID | ||
+ | INT: PrivateFlag | ||
+ | BYTE: ModeratedFlag | ||
+ | ASTRING: RoomPathName | ||
+ | ASTRING: Game | ||
+ | ASTRING: Server | ||
+ | ASTRING: Owner | ||
+ | ASTRING: Game | ||
+ | ASTRING: Server | ||
+ | ASTRING: Creator | ||
+ | USTRING: RoomTitle | ||
+ | INT: ModeratorListSize | ||
+ | { | ||
+ | ASTRING: Game | ||
+ | ASTRING: Server | ||
+ | ASTRING: ModeratorName | ||
+ | } | ||
+ | INT: UserListSize | ||
+ | { | ||
+ | ASTRING: Game | ||
+ | ASTRING: Server | ||
+ | ASTRING: UserName | ||
+ | } | ||
+ | </pre> | ||
===Variable Descriptions=== | ===Variable Descriptions=== | ||
Line 48: | Line 66: | ||
---- | ---- | ||
− | * | + | * '''Game''': |
− | * | + | :The name of the game ("SWG") this player is on. Part of ChatAvatarId: 3 ASTRINGs representing the player on the ChatServer. "Game.Server.name" name is the lowercase of the first name for the player. |
− | * | + | |
− | * | + | * '''Server''': |
+ | :The name of the server (Galaxy) this player is on. Part of ChatAvatarId object. | ||
+ | |||
+ | * '''UserList''': | ||
+ | :A list of ChatAvatarId's of players currently in the room. NOTE: The second UserList should be NULL/0. It does not effect the displayed data and is just a part of the ChatRoom object. <font color="green">'''SAVES BANDWIDTH!'''</font> | ||
+ | |||
+ | * '''InvitedList''': | ||
+ | :A list of ChatAvatarId's of players invited to join the room. Used for Private rooms, but can be sent for public rooms too. | ||
+ | |||
+ | * '''ModeratorList''': | ||
+ | :A list of ChatAvatarId's of players who can currently moderate the room. NOTE: The second ModeartorList should be NULL/0. It does not effect the displayed data and is just a part of the ChatRoom object. <font color="green">'''SAVES BANDWIDTH!'''</font> | ||
+ | |||
+ | * '''BannedUserList''': | ||
+ | :A list of ChatAvatarId's of players who can currently banned from entering the room. | ||
+ | |||
+ | * '''RequestID''': | ||
+ | :For every request made, the client attaches an ID number to identify it. It is unique for each request type (opcode) and incremented for each request. Similar to Update Counters used in Objects. For every response that had a request with a RequestID, the same RequestID must be sent back. It is used to identify key information regarding the response, such as what | ||
+ | the full RoomPathName was and it is used in error message generation. Also can be used to eliminate duplicate requests. | ||
+ | |||
+ | * '''RoomID''': | ||
+ | :The unique ID number assigned to identify this Room. Generated on room creation. | ||
+ | |||
+ | * '''PrivateFlag''': | ||
+ | :An INTEGER flag used to mark the room as private or public. Private rooms require invitation from owner or moderators to enter. | ||
+ | ::00000001 = Private | ||
+ | ::00000000 = Public | ||
+ | |||
+ | * '''ModeratedFlag''': | ||
+ | :A BYTE flag used to mark the room as being moderated. | ||
+ | ::01 = Moderated | ||
+ | ::00 = Open | ||
+ | :Note: Moderated Rooms means that no one BUT moderators can talk. Its more like a "Muted" Room. You can still have moderators in an OPEN room. So avoid this confusion. | ||
+ | |||
+ | * '''RoomPathName''': | ||
+ | :The full ChatServer path and name for the room including the RoomName specified on creation. | ||
+ | :Example: "SWG.TestCenter.Chat.tcpa" | ||
+ | |||
+ | * '''Owner''': | ||
+ | :The firstname of the player who current owns the chatroom. Must be only firstname and lowercase. Part of ChatAvatarId object. | ||
+ | |||
+ | * '''Creator''': | ||
+ | :The firstname of the player who originally created the chatroom. Must be only firstname and lowercase. Part of ChatAvatarId object. | ||
+ | |||
+ | * '''RoomTitle''': | ||
+ | :The unicode string containing the Title of the chatroom to display. Note: This is the more descriptive text displayed and not the name used in the RoomPathName of the ChatServer. | ||
|valign=top| | |valign=top| | ||
Line 61: | Line 123: | ||
||{{ServerPacket}} | ||{{ServerPacket}} | ||
|- | |- | ||
− | ||{{ | + | ||{{100%}} |
|- | |- | ||
|} | |} | ||
− | + | ===Example=== | |
− | + | ||
---- | ---- | ||
+ | [[Image:Query.jpg|thumb|Chat Room Query]] | ||
− | |||
− | |||
− | + | Banned shows a circle with a line through it under invited. | |
− | + | |} | |
− | + | ||
==Sample Packet== | ==Sample Packet== | ||
Line 128: | Line 187: | ||
52 00 6F 00 75 00 73 00 65 00 // R.o.u.s.e. | 52 00 6F 00 75 00 73 00 65 00 // R.o.u.s.e. | ||
2D 00 73 00 77 00 67 00 // -.s.w.g | 2D 00 73 00 77 00 67 00 // -.s.w.g | ||
− | + | 00 00 00 00 // ??????????????????????????????? | |
− | + | 00 00 00 00 // ???????????????????????????? | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
</pre> | </pre> |
Latest revision as of 01:37, 11 May 2008
Server Packet - ChatQueryRoomResults (C4DE864E)
SWGANH Wiki is a repository of Star Wars Galaxies Developer information. This site is only meant to be used by SWGANH Developer team.
StructSHORT: OperandCount INT: Opcode INT: UserListSize { ASTRING: Game ASTRING: Server ASTRING: UserName } INT: InvitedUserListSize { ASTRING: Game ASTRING: Server ASTRING: InvitedUserName } INT: ModeratorListSize { ASTRING: Game ASTRING: Server ASTRING: ModeratorName } INT: BannedUserListSize { ASTRING: Game ASTRING: Server ASTRING: BannedUserName } INT: RequestID INT: RoomID INT: PrivateFlag BYTE: ModeratedFlag ASTRING: RoomPathName ASTRING: Game ASTRING: Server ASTRING: Owner ASTRING: Game ASTRING: Server ASTRING: Creator USTRING: RoomTitle INT: ModeratorListSize { ASTRING: Game ASTRING: Server ASTRING: ModeratorName } INT: UserListSize { ASTRING: Game ASTRING: Server ASTRING: UserName } Variable DescriptionsOpperand_Count = 7 Opcode = C4DE864E
the full RoomPathName was and it is used in error message generation. Also can be used to eliminate duplicate requests.
|
Tags
Example
|
Sample Packet
00 09 06 1A 07 00 // op count 4E 86 DE C4 // ChatQueryRoomResults 01 00 00 00 // ??????????????????????????????? 03 00 // string count 53 57 47 // SWG 0A 00 // string count 53 68 61 64 6F 77 66 69 72 65 // Shadowfire 08 00 // string count 72 75 62 69 6E 6C 65 65 // rubinlee 01 00 00 00 // ??????????????????????????????? 03 00 // string count 53 57 47 // SWG 0A 00 // string count 53 68 61 64 6F 77 66 69 72 65 // Shadowfire 08 00 // string count 72 75 62 69 6E 6C 65 65 // rubinlee 01 00 00 00 // ??????????????????????????????? 03 00 // string count 53 57 47 // SWG 0A 00 // string count 53 68 61 64 6F 77 66 69 72 65 // Shadowfire 08 00 // string count 72 75 62 69 6E 6C 65 65 // rubinlee 00 00 00 00 // ??????????????????????????????? 00 00 00 00 // ??????????????????????????????? 89 06 29 03 // Room ID 01 00 00 00 // ??????????????????????????????? 01 // ??????????????????????????????? 22 00 // string count 53 57 47 2E 53 68 // SWG.Sh 61 64 6F 77 66 69 72 65 2E 74 75 74 6F 72 69 61 // adowfire.tutoria 6C 2E 43 68 61 74 2E 72 6F 75 73 65 // l.Chat.rouse 03 00 // string count 53 57 47 // SWG 0A 00 // string count 53 68 61 64 6F 77 66 69 72 65 // Shadowfire 08 00 // string count 72 75 62 69 6E 6C 65 65 // rubinlee 03 00 // string count 53 57 47 // SWG 0A 00 // string count 53 68 61 64 6F 77 66 69 72 65 // Shadowfire 08 00 // string count 72 75 62 69 6E 6C 65 65 // rubinlee 09 00 00 00 // string count 52 00 6F 00 75 00 73 00 65 00 // R.o.u.s.e. 2D 00 73 00 77 00 67 00 // -.s.w.g 00 00 00 00 // ??????????????????????????????? 00 00 00 00 // ????????????????????????????