information for MSNP4 found: adds the client codebase parameter to SND and CVR (and an empty to CVQ, but that lasted all the way to MSNP7 lol, does that for MSNP3 fallback too which is kind of funny) 18 commands left.
5.9 KiB
Introduction
LST
is a command introduced with MSNP2.
It is a Notification Server command, without a request or response payload.
It retrieves all users in any of the avaliable lists.
Client/Request
LST TrID [ FL | AL | BL | RL ]
NOTE: There is a possibility that PL can be retrieved this way too.
Server/Response
Outside of SYN
LST TrID [ FL | AL | BL | RL ] list-version index size-of-list user-handle stored-friendly-name {groups}
Where list-version
is the current List Version.
Where index
is a number that can not go out of size-of-list
. If the list is empty this is 0
.
Where size-of-list
is the upper bounds for index
. If the list is empty this is 0
.
Where user-handle
is the related user's handle.
If the list is empty this parameter is not in the response.
Where stored-friendly-name
is the friendly name stored for this contact on the server.
If the list is empty this parameter is not in the response.
Where groups
is a comma-delimited list of Group IDs this contact is in,
only appended if the list (parameter 1) is set to FL. Defaults to 0
.
Added since MSNP7.
In SYN
First generation
Same as the response Outside of SYN.
Groups support
Applies for MSNP7.
LST TrID [ FL | AL | BL | RL ] list-version index size-of-list user-handle stored-friendly-name {groups}
Where groups
is a comma-delimited list of Group IDs this contact is in,
only appended if the list (parameter 1) is set to FL. Defaults to 0
.
Second generation
LST user-handle stored-friendly-name list-bits {groups}
Where list-bits
are in the format:
- 1: Forward List (FL)
- 2: Allow List (AL)
- 4: Block List (BL)
- 8: Reverse List (RL)
Where groups
is a comma-delimited list of Group IDs this contact is in,
only appended if Forward List (FL) is set in list-bits
. Defaults to 0
.
Third generation
Applies for MSNP10 with ABCHMigrated: 0
.
LST N=user-handle F=stored-friendly-name list-bits {groups}
Same parameters as the second generation.
Fourth generation
Applies for MSNP10 and MSNP11 with ABCHMigrated: 1
.
LST N=user-handle F=stored-friendly-name C=contact-guid list-bits {groupGuids}
Where contact-guid
is the GUID/UUID of the contact.
Where groupGuids
is a comma-delimited list of Group GUIDs this contact is in,
only appending if Forward List (FL) is set in list-bits
, defaults to whatever "Other Contacts"'s GUID is.
Fifth generation
Applies for MSNP12.
LST N=user-handle F=stored-friendly-name C=contact-guid list-bits network-id {groupGuids}
Where network-id
is any Network ID bits:
- 1: Messenger
- 2: Office Communicator
- 4: Telephone
- 8: "MNI" or Mobile Network Interop, used for some mobile networks.
- 16: SMTP or Simple Mail Transfer Protocol, used for Japanese mobile networks.
- 32: Yahoo! Messenger network, only seen in MSNP14 and higher.
Examples
Client-initated
C: LST 1 FL
S: LST 1 FL 255 1 1 anotheruser@example.com another%20user
C: LST 2 BL
S: LST 2 BL 255 0 0
From SYN
From the beginning
C: SYN 3 0
S: SYN 3 4
...
S: LST 3 FL 4 1 1 anotheruser@hotmail.com another%20user
S: LST 3 AL 4 1 1 anotheruser@hotmail.com another%20user
S: LST 3 BL 4 0 0
S: LST 3 RL 4 1 1 anotheruser@hotmail.com another%20user
Using groups
Only in MSNP7.
C: SYN 4 0
S: SYN 4 5
...
S: LSG 4 5 1 1 0 Other%20Contacts 0
S: LST 4 FL 5 1 1 anotheruser@hotmail.com another%20user 0
S: LST 4 AL 5 1 1 anotheruser@hotmail.com another%20user
S: LST 4 BL 5 0 0
S: LST 4 RL 5 1 1 anotheruser@hotmail.com another%20user
Using second generation
C: SYN 5 0
S: SYN 5 6 1 1
...
S: LSG 0 Other%20Contacts 0
S: LST anotheruser@hotmail.com another%20user 11 0
Using third generation
Only in MSNP10 with ABCHMigrated: 0
.
C: SYN 6 0 0
S: SYN 6 7 0 1 1
...
S: LSG Other%20Contacts 0
S: LST N=anotheruser@hotmail.com F=another%20user C=anotheruser@hotmail.com 11 0
Using fourth generation
Only in MSNP10 and MSNP11 with ABCHMigrated: 1
.
C: SYN 7 0 0
S: SYN 7 2024-10-15T14:49:40.1100000-07:00 2024-10-15T14:49:40.1100000-07:00 1 1
...
S: LSG Other%20Contacts d6deeacd-7849-4de4-93c5-d130915d0042
S: LST N=anotheruser@hotmail.com F=another%20user C=c1f9a363-4ee9-4a33-a434-b056a4c55b98 11 d6deeacd-7849-4de4-93c5-d130915d0042
Using fifth generation
Only in MSNP12.
C: SYN 8 0 0
S: SYN 8 2024-10-15T15:01:30.1200000-07:00 2024-10-15T15:01:30.1200000-07:00 1 1
...
S: LSG Other%20Contacts d6deeacd-7849-4de4-93c5-d130915d0042
S: LST N=anotheruser@hotmail.com F=another%20user C=c1f9a363-4ee9-4a33-a434-b056a4c55b98 11 1 d6deeacd-7849-4de4-93c5-d130915d0042
Known changes
- MSNP7: Added support for groups.
- MSNP8: Changed format in SYN considerably, dropping the iterator parameters and merging all lists into a single parameter instead of multiple calls.
- MSNP10: Added prefixes for user handle, stored friendly name to SYN version, added
C=
for contact address. ChangedC=
to contact GUID and changed group ID list to group GUID list withABCHMigrated: 1
to SYN version. - MSNP12: Added Network IDs to SYN version.
- MSNP13: Removed SYN.