msnp-wiki/docs/commands/lsg.md
yellows111 a9bfe9e6d6
[v0.1.4-beta.1] finally ABFindAll & FindMembership
fix all XML example responses missing charset
Change "Contact ID" with "Common ID", for now. Really would like to know which one is canonical.

Added 3 reference constants.

Linked things and fixed minor mistakes.

Next is probably Passport SOAP, not sure.
2024-11-20 21:19:42 +00:00

3.3 KiB

Introduction

LSG is a command introduced with MSNP7.

It is a Notification Server command, without a request or response payload.

It retrieves all groups.

Client/Request

LSG TrID

Server/Response

Outside of SYN

LSG TrID list-version index size-of-list group-id group-name 0

Where list-version is the current List Version.

Where index is a number that can not go out of size-of-list. If you have not added any groups, this value is always 1.

Where size-of-list is the upper bounds for index. If you have not added any groups, this value is always 1.

Where group-id is the relevant group's identification number, allowed values are 0 to 29. If you have not added any groups, this value is always 0.

Where group-nameis the relevant group's display name, URL encoded if needed, up to 61 bytes. If you have not added any groups, this value is always ~.

Where 0 is always 0.

In SYN

First generation

Applies for MSNP7.

Same as the response outside of SYN.

Second generation

Applies for MSNP8 and MSNP9.

LSG group-id group-name 0

Third generation

Since MSNP10.

LSG group-name [ group-id | group-guid ]

Where group-id is the group's identification number. If ABCHMigrated: 1 is set in the initial profile, it is instead group-guid, which is the group's GUID.

Examples

Client-initiated

No groups created

NOTE: Specifiying this as the LSG in SYN will cause the client to attempt to re-initialize the default groups. Please review the SYN page for what the client attempts to do here.

C: LSG 1
S: LSG 1 255 1 1 0 ~ 0

Have created groups

C: LSG 2
S: LSG 2 255 1 2 0 Other%20Contacts 0
S: LSG 2 255 2 2 1 Friends 0

From SYN

Main article: SYN.

Using first generation

Only in MSNP7.

C: SYN 3 0
S: SYN 3 4

...

S: LSG 3 4 1 2 0 Other%20Contacts 0
S: LSG 3 4 2 2 1 Friends 0

Using second generation

Only in MSNP8 and MSNP9.

C: SYN 4 0
S: SYN 4 5

...

S: LSG 0 Other%20Contacts 0
S: LSG 1 Friends 0

Using third generation, with IDs

Only in MSNP10 with ABCHMigrated: 0.

C: SYN 5 0 0
S: SYN 5 6 0 1 2

...

S: LSG Other%20Contacts 0
S: LSG Friends 1

Using third generation, with GUIDs

Since MSNP10 with ABCHMigrated: 1.

C: SYN 6 0 0
S: SYN 6 2024-10-17T11:46:35.1100000-07:00 2024-10-17T11:46:35.1100000-07:00 1 2

...

S: LSG Other%20Contacts d6deeacd-7849-4de4-93c5-d130915d0042
S: LSG Friends f60efbe7-94af-4b16-b926-e4e10878d329

Known changes

  • MSNP8: Removed iterator and List Version parameters from SYN version.
  • MSNP10: Removed unused 0 parameter and support for the ~ quasi-group. Changed group IDs to group GUIDs if ABCHMigrated: 1.
  • MSNP13: Removed SYN. Use the Address Book Service's ABFindAll action instead.
  • Hard-removed in November 2003, Removed outside of SYN, now just automatically disconnects.