SRV_REPLYROSTER Channel: 2 SNAC(13,6) This packet contains your complete server side contact list. Sending SNAC(13,5) CLI_REQROSTER with an old time and/or list size will cause the server to send this SNAC. If the values sent in SNAC(13,5) are up to date, the server replies with SNAC(13,F) SRV_REPLYROSTEROK. Parameters Length/TLV Content (If Fixed) Designations Description 1 00 UNKNOWN Unknown 2 xx xx COUNT Total count of following groups. This is the size of the server side contact list and should be saved and sent with SNAC(13,5) CLI_REQROSTER. 2 xx xx STRLEN Length of following string. If 0, no string follows. This is the start of a group. Varies .. STRING If STRLEN is 0, this field is not present. When present, this names the group, either a contact UIN or a larger grouping title based upon the TAG value. 2 xx xx TAG This field seems to be a tag or marker associating different groups together into a larger group such as the Ignore List or 'General' contact list group, etc. 2 xx xx ID This is a random number generated when the user is added to the contact list, or when the user is ignored. See SNAC(13,8) CLI_ADDBUDDY. 2 xx xx TYPE This field seems to indicate what type of group this is. Seen: 0x0000 - A normal contact list entry 0x0001 - Larger grouping header 0x0003 - A contact on the Invisible List 0x0004 - Visibility setting. TLV(00CA) 0x000E - A contact on the Ignore List 0x0013 - This group's TLV contains the time(NULL) 'Import Time' 2 xx xx BYTELEN A count of the number of following bytes. If 0, nothing follows. This marks the end of a group at the last byte in the count. TLV .. TLV If BYTELEN is 0 this is not present, otherwise, A number of TLVs will follow BYTELEN. TLVs Seen: TLV(00C8) - Sent only with the Group header, this is a list of all IDs of subgroups in this group TLV(00CA) - Visibility setting 01 - Allow all users to see you 02 - Block all users from seeing you 03 - Allow only users in the permit list to see you 04 - Block only users in the invisible list from seeing you 05 - Allow only users in the buddy list to see you TLV(00D4) - Contains the 'Import Time' time(NULL) TLV(0131) - Nickname of a UIN TLV(013A) - Locally assigned SMS number of a UIN TLV(0066) - This UIN is still awaiting authorization 4 xx xx xx xx TIME After the last group, this time(NULL) gives the last modification time of the server side contact list and should be saved and sent with SNAC(13,5) CLI_REQROSTER. -------------------------------------------------------------------------------- 2a 02 6c 22 05 15 FLAP: Channel 2, Seq 0x6C22, Len 0x0515 00 13 00 06 00 00 00 01 00 05 SNAC: 0x13/0x06, Ref 0x00010005, Flags 0 00 Unknown [ 00 32 ] Count: 50 groups, Save this for use in x13/x05 [( 00 00 ) 0 Length string 00 00 00 00 00 01 ( 00 0c 12 Bytes follow 00 c8 00 08 10 a7 53 f6 7a 58 3c b3 )] TLV(c8) [( 00 0b 49 6d 70 6f 72 74 20 54 69 6d 65 ) 'Import Time' 00 00 00 01 00 13 ( 00 08 8 Bytes follow 00 d4 00 04 3b eb 0b b6 )] TLV(d4) time(NULL) [( 00 09 31 34 35 39 35 30 36 30 35 ) '145950605' 00 00 07 11 00 0e ( 00 00 )] 0 Bytes follow 00 09 31 34 34 30 30 34 32 37 31 '144004271' 00 00 07 7c 00 0e 00 00 00 09 31 34 36 32 37 37 33 36 35 '146277365' 00 00 08 2c 00 0e 00 00 00 09 31 34 36 31 39 35 38 35 34 '146195854' 00 00 09 96 00 0e 00 00 00 09 31 34 35 35 33 34 39 30 32 '145534902' 00 00 0f e9 00 0e 00 00 00 09 31 34 35 32 33 36 32 30 33 '145236203' 00 00 13 48 00 0e 00 00 00 09 31 33 34 39 35 33 38 37 35 '134953875' 00 00 1e d8 00 0e 00 00 [( 00 09 31 34 34 36 37 35 35 30 32 ) '144675502' 00 00 21 fe 00 0e ( 00 00 )] [( 00 00 ) 0 Length string 00 00 23 6c 00 04 ( 00 05 5 Bytes follow 00 ca 00 01 04 )] TLV(ca) [( 00 09 31 34 30 38 30 32 38 33 39 ) '140802839' 00 00 2c ce 00 0e ( 00 00 )] 0 Bytes follow 00 09 31 33 35 38 36 34 34 36 38 '135864468' 00 00 2e 0c 00 0e 00 00 00 09 31 34 36 32 30 39 34 35 36 '146209456' 00 00 44 40 00 0e 00 00 00 09 31 34 36 31 32 36 31 39 31 '146126191' 00 00 52 62 00 0e 00 00 00 09 31 33 35 35 36 36 33 37 31 '135566371' 00 00 63 27 00 0e 00 00 00 09 31 34 34 39 30 32 31 38 30 '144902180' 00 00 65 8b 00 0e 00 00 00 09 31 34 34 31 31 37 38 34 39 '144117849' 00 00 6a 47 00 0e 00 00 [( 00 07 47 65 6e 65 72 61 6c ) 'General' 10 a7 00 00 00 01 ( 00 3c 60 Bytes follow 00 c8 00 38 01 c8 48 08 46 fb 5e 78 TLV(c8) 7e b3 3e e1 5c ea 63 82 78 50 20 10 16 81 49 8c 0f 06 7d b9 23 6a 0f 69 5c e7 05 f2 44 6f 51 8c 30 27 1e cb 5e 08 5e a2 6a 23 07 c8 16 49 0a 15 )] [( 00 06 36 34 33 38 39 35 ) '643895' 10 a7 01 c8 00 00 ( 00 0c 12 Bytes follow 01 31 00 08 52 6f 63 6b 79 4d 74 6e )] TLV(0131) 'RockyMtn' 00 08 37 35 38 36 33 38 32 39 '75863829' 10 a7 05 f2 00 00 00 08 01 31 00 04 41 6c 65 78 TLV(0131) 'Alex' 00 08 36 36 36 30 34 34 35 39 '66604459' 10 a7 07 c8 00 00 00 0a 01 31 00 06 7a 43 68 72 69 73 TLV(0131) 'zChris' 00 09 31 34 36 31 32 37 35 39 34 '146127594' 10 a7 0a 15 00 00 00 08 01 31 00 04 41 6c 65 78 TLV(0131) 'Alex' 00 08 32 37 39 35 34 33 36 35 '27954365' 10 a7 0f 06 00 00 00 09 01 31 00 05 46 6c 6f 79 64 TLV(0131) 'Floyd' 00 08 34 37 37 38 39 37 34 31 '47789741' 10 a7 0f 69 00 00 00 07 01 31 00 03 41 78 45 TLV(0131) 'AxE' [( 00 08 36 39 35 32 36 35 34 38 ) '69526548' 10 a7 16 49 00 00 ( 00 11 17 Bytes follow 01 31 00 09 73 61 73 6b 77 61 74 63 68 TLV(0131) 'saskwatch' 00 66 00 00 )] TLV(66) Awaiting authorization [( 00 08 31 38 39 30 33 32 30 31 '18903201' 10 a7 16 81 00 00 ( 00 0a 01 31 00 06 6c 27 4f 75 72 73 )] TLV(0131) 'l'ours' 00 08 32 30 36 34 35 32 32 38 '20645228' 10 a7 1e cb 00 00 00 0e 01 31 00 0a 52 75 66 75 73 20 42 61 74 68 TLV(0131) 'Rufus Bath' 00 08 31 35 38 36 30 30 34 39 '15860049' 10 a7 20 10 00 00 00 07 01 31 00 03 4d 53 4c TLV(0131) 'MSL' 00 08 34 33 37 35 32 34 30 33 '43752403' 10 a7 23 6a 00 00 00 0a 01 31 00 06 4a 65 73 74 65 72 TLV(0131) 'Jester' 00 09 31 32 33 30 33 38 37 30 38 '123038708' 10 a7 30 27 00 00 00 0c 01 31 00 08 62 65 61 63 68 67 75 79 00 08 31 34 36 32 36 33 38 35 '14626385' 10 a7 3e e1 00 00 00 0b 01 31 00 07 47 4f 4c 44 2d 44 45 00 09 31 30 34 37 37 38 37 37 34 10 a7 44 6f 00 00 00 0b 01 31 00 07 43 6f 6f 6c 47 75 79 00 08 31 32 33 34 36 35 38 30 10 a7 46 fb 00 00 00 08 01 31 00 04 48 61 72 76 00 07 38 34 33 31 39 33 30 10 a7 48 08 00 00 00 0b 01 31 00 07 74 65 6b 6d 61 67 65 00 08 32 32 30 33 35 38 37 36 10 a7 49 8c 00 00 00 0a 01 31 00 06 4d 61 58 74 6f 72 00 09 31 31 32 35 35 31 34 30 38 10 a7 51 8c 00 00 00 0d 01 31 00 09 57 6f 6f 64 53 74 6f 63 6b 00 08 36 38 31 37 37 33 35 31 10 a7 5c e7 00 00 00 0f 01 31 00 0b 61 6e 64 69 73 63 68 61 74 7a 69 00 08 31 34 37 36 32 37 35 38 10 a7 5c ea 00 00 00 0b 01 31 00 07 4d 69 6e 69 6f 6e 54 00 09 31 33 33 32 32 35 35 37 34 10 a7 5e 08 00 00 00 12 01 31 00 0e 5e 43 72 61 73 68 41 6e 64 42 75 72 6e 5e 00 08 31 33 34 36 39 35 33 30 10 a7 5e 78 00 00 00 09 01 31 00 05 57 6f 6c 66 79 00 08 31 37 32 39 35 35 34 33 10 a7 5e a2 00 00 00 08 01 31 00 04 72 34 69 6e 00 08 31 35 30 38 35 37 38 33 10 a7 63 82 00 00 00 0c 01 31 00 08 50 72 6d 65 74 69 6d 65 00 08 34 39 37 38 31 32 34 35 10 a7 6a 23 00 00 00 08 01 31 00 04 6c 6f 69 73 00 08 31 35 31 34 36 38 37 34 10 a7 78 50 00 00 00 07 01 31 00 03 44 6f 67 [( 00 08 33 37 36 30 37 39 31 31 ) '37607911' 10 a7 7d b9 00 00 ( 00 0d 01 31 00 05 4e 6f 67 66 78 TLV(0131) 'Nogfx' 00 66 00 00 )] TLV(66) Awaiting authorization [( 00 08 31 34 30 35 34 35 37 30 '14054570' 10 a7 7e b3 00 00 ( 00 08 01 31 00 04 4b 61 72 6f )] TLV(0131) 'Karo' [( 00 0a 43 6f 2d 57 6f 72 6b 65 72 73 'Co-Workers' 3c b3 00 00 00 01 ( 00 00 )] [( 00 06 46 61 6d 69 6c 79 'Family' 53 f6 00 00 00 01 ( 00 00 )] 0 Bytes follow [( 00 07 46 72 69 65 6e 64 73 ) 'Friends' 7a 58 00 00 00 01 ( 00 00 )] 0 Bytes follow 3c 36 d7 08 time(NULL), Save this for use in x13/x05