[0.1.3] ABGroup(Contact)*, parts of *Member (CSS)

rework XML stuff a bit, right now it's wildly inconsistent, but all the AB stuff should be fine

more ContactUpdate out of known because i didn't even KNOW that was an operation in sharingservice and noticed it looked weird being in known.

Add a SOAP template too.
This commit is contained in:
Declan B. 2024-10-30 21:33:59 +00:00
parent 91c0d86d55
commit f096fe907f
Signed by: yellows111
SSH key fingerprint: SHA256:ynw5IJBU1pb7fZfHgLihKu9gHHA8FVpixZbB6IEB3r8
25 changed files with 441 additions and 54 deletions

View file

@ -171,6 +171,10 @@ S: ADC 0 RL N=anotheruser@hotmail.com F=another%20user
# Known changes
* [MSNP11](../versions/msnp11.md): Now supports phone-only (`tel:`) contacts.
Requires `MobileMessaging` in the [Messenger Config](../services/msgrconfig.md) to be configured for the Official Client.
* [MSNP13](../versions/msnp13.md): Removed, use a combination of ADL and
[Address Book Service](../services/abservice.md)'s [`ABContactAdd`](../services/abservice/abcontactadd.md) instead.
Requires the `MobileMessaging` element in the
[Messenger Config](../services/msgrconfig.md) to be configured for the Official Client to use the feature.
* [MSNP13](../versions/msnp13.md): Removed, use ADL and the
[Address Book Service](../services/abservice.md)'s
[`ABContactAdd`](../services/abservice/abcontactadd.md) action or the
[Contact Sharing Service](../services/sharingservice.md)'s
[`AddMember`](../services/sharingservice/addmember.md) action instead.

View file

@ -4,7 +4,8 @@
It is a Notification Server command, without a request or response payload.
Creates a new group.
Replaced with [Address Book Service](../services/abservice)'s `ABGroupAdd` in [MSNP13](../versions/msnp13.md).
Replaced with [Address Book Service](../services/abservice.md)'s
[`ABGroupAdd`](../services/abservice/abgroupadd.md) in [MSNP13](../versions/msnp13.md).
# Client/Request
`ADG TrID group-name {0}`
@ -127,4 +128,5 @@ Server disconnects client.
* [MSNP10](../versions/msnp10.md): Removed unused `0` parameter,
Returns a GUID instead of a Group ID if `ABCHMigrated: 1`.
* [MSNP13](../versions/msnp13.md): Removed (automatic disconnect),
use [Address Book Service](../services/abservice.md)'s `ABGroupAdd` instead.
use [Address Book Service](../services/abservice.md)'s
[`ABGroupAdd`](../services/abservice/abgroupadd.md) instead.

View file

@ -124,4 +124,7 @@ S: LSG Friends f60efbe7-94af-4b16-b926-e4e10878d329
* [MSNP8](../versions/msnp8.md): Removed iterator and List Version parameters from [SYN](syn.md) version.
* [MSNP10](../versions/msnp10.md): Removed unused `0` parameter and support for the `~` quasi-group.
Changed group IDs to group GUIDs if `ABCHMigrated: 1`.
* [MSNP13](../versions/msnp13.md): Removed [SYN](syn.md).
Use the [Address Book Service](../services/abservice.md)'s
`ABFindAll` action instead.
* Hard-removed in November 2003, Removed outside of [SYN](syn.md), now just automatically disconnects.

View file

@ -189,4 +189,6 @@ S: LST N=anotheruser@hotmail.com F=another%20user C=c1f9a363-4ee9-4a33-a434-b056
Changed `C=` to contact GUID and changed group ID list to group GUID list with `ABCHMigrated: 1` to SYN version.
* [MSNP12](../versions/msnp12.md): Added Network IDs to [SYN](syn.md) version.
* [MSNP13](../versions/msnp13.md): Removed [SYN](syn.md).
Use the [Address Book Service](../services/abservice.md)'s
`ABFindAll` action instead.
* Hard-removed in November 2003, Removed outside of [SYN](syn.md), now just automatically disconnects.

View file

@ -3,7 +3,8 @@
It is a Notification Server command, without either a request or response payload.
Renames an existing group. Replaced with [Address Book Service](../services/abservice.md)'s `ABGroupUpdate` in [MSNP13](../versions/msnp13.md).
Renames an existing group. Replaced with [Address Book Service](../services/abservice.md)'s
[`ABGroupUpdate`](../services/abservice/abgroupupdate.md) in [MSNP13](../versions/msnp13.md).
# Client/Request
`REG TrID group-id new-group-name {0}`
@ -129,4 +130,6 @@ Server disconnects client.
# Known changes
* [MSNP10](../versions/msnp10.md): Removed unused `0` parameter, removed List Versions,
and with `ABCHMigrated: 1`, changed group IDs to GUIDs.
* [MSNP13](../versions/msnp13.md): Removed (automatic disconnect), use [Address Book Service](../services/abservice.md)'s `ABGroupUpdate` instead.
* [MSNP13](../versions/msnp13.md): Removed (automatic disconnect),
use [Address Book Service](../services/abservice.md)'s
[`ABGroupUpdate`](../services/abservice/abgroupupdate.md) instead.

View file

@ -134,4 +134,8 @@ S: REM 0 FL c1f9a363-4ee9-4a33-a434-b056a4c55b98
* [MSNP7](../versions/msnp7.md): Added groups support.
* [MSNP10](../versions/msnp10.md): Added GUID support, replacing the user's handle for FL requests
and removed updating the List Version.
* [MSNP13](../versions/msnp13.md): Removed (automatic disconnect), replaced with RML.
* [MSNP13](../versions/msnp13.md): Removed, use RML and the
[Address Book Service](../services/abservice.md)'s
[`ABContactDelete`](../services/abservice/abcontactdelete.md) action or the
[Contact Sharing Service](../services/sharingservice.md)'s
[`DeleteMember`](../services/sharingservice/deletemember.md) action instead.

View file

@ -4,7 +4,8 @@
It is a Notification Server command, without either a request or response payload.
Removes all users from a group and the group itself.
Replaced with [Address Book Service](../services/abservice.md)'s `ABGroupDelete` in [MSNP13](../versions/msnp13.md).
Replaced with [Address Book Service](../services/abservice.md)'s
[`ABGroupDelete`](../services/abservice/abgroupdelete.md) in [MSNP13](../versions/msnp13.md).
# Client/Request
`RMG TrID group-id`
@ -112,4 +113,5 @@ Server disconnects client.
# Known changes
* [MSNP10](../versions/msnp10.md): Removed the List Version parameter, and with `ABCHMigrated: 1`
* [MSNP13](../versions/msnp13.md): Removed (automatic disconnect),
use [Address Book Services](../services/abservice.md)'s `ABGroupDelete` instead.
use [Address Book Services](../services/abservice.md)'s
[`ABGroupDelete`](../services/abservice/abgroupdelete.md) instead.

View file

@ -19,11 +19,11 @@ Related: [Contact Sharing Service](sharingservice.md) (for other List's members)
* [ABContactAdd](abservice/abcontactadd.md) (internal name: `Contacts.Push.Contact.Add`)
* [ABContactDelete](abservice/abcontactdelete.md) (internal name: `Contacts.Push.Contact.Delete`)
* [ABContactUpdate](abservice/abcontactupdate.md) (internal name: `Contacts.Push.Contact.Update`)
* ABGroupContactAdd (internal name: `Contacts.Push.Contact.AddToGroup`)
* ABGroupContactDelete (internal name: `Contacts.Push.Contact.DeleteFromGroup`)
* ABGroupAdd (internal name: `Contacts.Push.Group`)
* ABGroupDelete (internal name: `Contacts.Push.Group.Delete`)
* ABGroupUpdate (internal name: `Contacts.Push.Contact.Edit`)
* [ABGroupContactAdd](abservice/abgroupcontactadd.md) (internal name: `Contacts.Push.Contact.AddToGroup`)
* [ABGroupContactDelete](abservice/abgroupcontactdelete.md) (internal name: `Contacts.Push.Contact.DeleteFromGroup`)
* [ABGroupAdd](abservice/abgroupadd.md) (internal name: `Contacts.Push.Group`)
* [ABGroupDelete](abservice/abgroupdelete.md) (internal name: `Contacts.Push.Group.Delete`)
* [ABGroupUpdate](abservice/abgroupupdate.md) (internal name: `Contacts.Push.Contact.Edit`)
## Actions that we don't know much about
* ABFind (internal name: `Contacts.FindId`)
@ -34,6 +34,7 @@ Related: [Contact Sharing Service](sharingservice.md) (for other List's members)
# Shared Templates
This is used by all Actions listed, as far as we know.
The following also applies to the [Contact Sharing Service](sharingservice.md).
## Client/Request
The following sub-headings are XML elements for the server's response.
@ -59,10 +60,11 @@ This element has three children:
* `<PartnerScenario>`: What caused this request to happen:
* `Initial`: This is the initial request to this action.
* `Timer`: This request was done automatically on a timer.
* `ContactSave`: When the contact is updated.
* `ContactSave`: When the modified contact is saved by the client.
* `MessengerPendingList`: Managing the Pending List (PL).
* `ContactMsgrAPI`: General Messenger API.
* `BlockUnblock`: Block or unblock of this user.
* `GroupSave`: When the modified group is saved by the client.
##### ABAuthHeader
This element has only one attribute:
@ -70,7 +72,7 @@ This element has only one attribute:
This element has two children:
* `<ManagedGroupRequest>`: If this is a managed group request, set to `true`, otherwise set to `false`.
* `<TicketToken>` This element contains the [Passport](passport14.md) token for `contacts.msn.com`.
* `<TicketToken>` This element contains the XML-encoded [Passport](passport14.md) token for `contacts.msn.com`.
Added since [MSNP15](../versions/msnp15.md).
#### soap:Body

View file

@ -15,7 +15,7 @@ This element has only one attribute:
This element contains your [Address Book Service](../abservice.md) GUID.
### contacts
This element contains one or multiple [`<Contact>`](#contact-elements) elements.
This element contains one or multiple `<Contact>` elements.
#### Contact
This element has only one attribute:
@ -31,6 +31,9 @@ The relevant elements are:
* `<contactType>`: (Optional?) The type of contact you'd like to add:
* `LivePending`: A Messenger Service user.
* `Regular`: A user from another service.
* `<emails>`: Used exclusively if this is a email-only contact.
* `<isSmtp>`: Used with `<phones>` if this is a phone-only contact.
* `<phones>`: Used with `<isSmtp>` if this is a phone-only contact.
### options
This element contains one child:

View file

@ -15,7 +15,7 @@ This element has only one attribute:
This element contains your [Address Book Service](../abservice.md) GUID.
### contacts
This element contains one or multiple [`<Contact>`](#contact-elements) elements.
This element contains one or multiple `<Contact>` elements.
#### Contact
This element has only one attribute:

View file

@ -7,7 +7,7 @@ For modifying a contact's information from any other list, see the [Contact Shar
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABContactDelete
## ABContactUpdate
This element has only one attribute:
* `xmlns`: Is always set to `http://www.msn.com/webservices/AddressBook`.
@ -15,7 +15,7 @@ This element has only one attribute:
This element contains your [Address Book Service](../abservice.md) GUID.
### contacts
This element contains one or multiple [`<Contact>`](#contact-elements) elements.
This element contains one or multiple `<Contact>` elements.
#### Contact
This element has only one attribute:
@ -29,11 +29,14 @@ For more information about this element, read the [`<contactInfo>`](contactinfo.
The most relevant children are:
* `<displayName>`: The new display name for this contact.
* `<isMessengerUser>`: If this is set to `false`, this user is to be treated as a
e-mail contact instead of an Instant Messaging Contact.
##### propertiesChanged
This element only contains the space delimited list of updated items in `<contactInfo>`.
The valid values are the following:
* `DisplayName`
* `IsMessengerUser`
* `ContactFirstName`
* `ContactLastName`
* `Comment`

View file

@ -0,0 +1,52 @@
# Introduction
`ABGroupAdd` is one of the SOAP actions the [Address Book Service](../abservice.md) provides.
Creates a contact group.
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupAdd
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### abId
This element contains your [Address Book Service](../abservice.md) GUID.
### groupAddOptions
This element has only one child:
* `<fRenameOnMsgrConflict>`: Should this group be renamed if it conflicts with
a group that already exists in the Messenger Service (`true` or `false`)?
### groupInfo
This element only contains the `<GroupInfo>` element.
#### GroupInfo
This element contains four children:
* `<name>`: The name of the group.
* `<groupType>`: The GUID type of group:
* `C8529CE2-6EAD-434d-881F-341E17DB3FF8`: A contact group.
* `<fMessenger>`: Unknown purpose (`true` or `false`).
##### annotations
This element only contains one or multiple `<Annotation>` element(s).
###### Annotation
This element only has two children:
* `<Name>`: The key of this annotation.
* `<Value>`: The value of this annotation.
Usually only used to set `MSN.IM.Display` to `1`.
# Server/Response
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupAddResponse
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### ABGroupAddResult
This element only contains the `<guid>` element.
#### guid
This element only contains the GUID of the newly created group.

View file

@ -0,0 +1,63 @@
# Introduction
`ABGroupContactAdd` is one of the SOAP actions the [Address Book Service](../abservice.md) provides.
Adds a contact from the Forward List (FL) to a contact group.
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupContactAdd
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### abId
This element contains your [Address Book Service](../abservice.md) GUID.
### groupFilter
This element only contains the `<groupIds>` element.
#### groupIds
This element only contains one or multiple `<guid>` element(s).
##### guid
The GUID of the group you'd like to add a contact to.
### contacts
This element only contains the `<Contact>` element.
#### Contact
This element only contains the [`<contactInfo>`](contactinfo.md) element.
This element has one optional child:
* `<contactId>`: Used to add an existing contact to a group.
##### contactInfo
*NOTE: This element is only used when adding a new contact to a group.*
For more information about this element, read the [`<contactInfo>`](contactinfo.md) article.
The relevant elements are:
* `<isSmtp>`: Used with `<phones>` or `<emails>` if this is a new contact
outside of the Messenger Network.
* `<emails>`: Used with `<isSmtp>` if this is a new email-only contact.
* `<phones>`: Used with `<isSmtp>` if this is a new phone-only contact.
### groupContactAddOptions
This element has two children:
* `<fGenerateMissingQuickName>`: Should this action generate the `<quickName>`
in the `<contactInfo>` element (`true` or `false`).
* `<EnableAllowListManagement>`: Usually only set to `true`.
# Server/Response
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupContactAddResponse
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### ABGroupContactAddResult
This element only contains the `<guid>` element.
#### guid
This element contains the GUID of the contact that was added to the group.

View file

@ -0,0 +1,41 @@
# Introduction
`ABGroupContactDelete` is one of the SOAP actions the [Address Book Service](../abservice.md) provides.
Removes a contact in the Forward List (FL) from a contact group.
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupContactDelete
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### abId
This element contains your [Address Book Service](../abservice.md) GUID.
### contacts
This element only contains one or multiple `<Contact>` elements.
#### Contact
This element only contains the `<contactId>` element.
##### contactId
This element only contains the contact's GUID that
you would like to remove from the contact group.
### groupFilter
This element only contains the `<groupIds>` element.
#### groupIds
This element only contains one or multiple `<guid>` elements.
##### guid
This element only contains the group GUIDs
that you would like to remove contacts from.
# Server/Response
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupContactDeleteResponse
This empty element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.

View file

@ -0,0 +1,30 @@
# Introduction
`ABGroupDelete` is one of the SOAP actions the [Address Book Service](../abservice.md) provides.
Deletes a contact group.
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupDelete
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### abId
This element contains your [Address Book Service](../abservice.md) GUID.
### groupFilter
This element only contains the `<groupIds>` element.
#### groupIds
This element only contains one or multiple `<guid>` element(s).
##### guid
This element only contains the GUID of the group you would like to delete.
# Server/Response
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupDeleteResponse
This empty element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.

View file

@ -0,0 +1,35 @@
# Introduction
`ABGroupUpdate` is one of the SOAP actions the [Address Book Service](../abservice.md) provides.
Changes information about a contact group.
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupUpdate
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### abId
This element contains your [Address Book Service](../abservice.md) GUID.
### groups
This element only contains `<Group>` elements
#### Group
This element contains three children:
* `<groupId>`: The GUID of the group to modify.
* `<groupInfo>`: Explained below.
* `<propertiesChanged>`: A space delimited list of changes made in `<groupInfo>`:
* `GroupName`
##### groupInfo
This element contains only one child:
* `<name>`: The new name of the group.
# Server/Response
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## ABGroupAddResponse
This empty element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.

View file

@ -26,14 +26,14 @@ This element can contain many children, all of which optional:
* `<lastName>`: The last name for this contact.
* `<comment>`: The user attached comment for this contact. New lines are included as-is.
* `<MiddleName>`: The middle name for this contact.
* `<annotations>`: Contains many [`<Annotation>`](#annotation) elements.
* `<annotations>`: Contains one or multiple [`<Annotation>`](#annotation) element(s).
* `<primaryEmailType>`: Can be any of the following:
* `ContactEmailPersonal`
* `ContactEmailMessenger`
* `ContactEmailBusiness`
* `ContactEmailOther`
* `Passport`
* `<emails>`: Contains many [`<ContactEmail>`](#contactemail) elements.
* `<emails>`: Contains one or multiple [`<ContactEmail>`](#contactemail) element(s).
* `<PrimaryPhone>`: Can be any of the following:
* `ContactPhonePersonal`
* `ContactPhonePager`
@ -41,12 +41,12 @@ This element can contain many children, all of which optional:
* `ContactPhoneBusiness`
* `ContactPhoneOther`
* `ContactPhoneMobile`
* `<phones>`: Contains many [`<ContactPhone>`](#contactphone) elements.
* `<phones>`: Contains one or multiple [`<ContactPhone>`](#contactphone) element(s).
* `<PrimaryLocation>`: Can be any of the following:
* `ContactLocationBusiness`
* `ContactLocationPersonal`
* `<locations>`: Contains many [`<ContactLocation>`](#contactlocation) elements.
* `<webSites>`: Contains many [`<ContactWebSite>`](#contactwebsite) elements.
* `<locations>`: Contains one or multiple [`<ContactLocation>`](#contactlocation) element(s).
* `<webSites>`: Contains one or multiple [`<ContactWebSite>`](#contactwebsite) element(s).
* `<IsPrivate>`: Is this contact private (`true` or `false`).
* `<Gender>`: What gender is this contact, if unsure, set to `Unspecified`.
* `<TimeZone>`: What time zone is this contact in?, if unsure, set to `None`.

View file

@ -169,11 +169,10 @@ This empty element has two attributes:
Replaces the `tabs.asp` service on `svcs.microsoft.com`.
### msntabdata
This element only contains `<tab>` elements.
This element only contains one or multiple `<tab>` element(s).
#### tab
This element can be repeated multiple times in the parent element.
This element has nine children:
* `<image>`: Either a direct URL to a PNG file (36x32 size) or a resource id:
* `res:mail`: A mail icon. Unused?
* `res:bell`: A bell icon. Used for the alerts tab.
@ -275,7 +274,7 @@ Can contain:
Free Background advertisement data. Only contains `<slots>`.
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -291,7 +290,7 @@ Supports attribute `visibleto`, which is the Client Versions allowed to use this
Usually `7.0.729 and greater`.
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -304,7 +303,7 @@ which is replaced with your Passport User ID in unprefixed lowercase hexadecimal
Free Theme Pack advertisement data. Only contains `<slots>`.
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -320,7 +319,7 @@ Supports attribute `visibleto`, which is the Client Versions allowed to use this
Usually `7.0.729 and greater`.
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -337,10 +336,10 @@ Premium background advertisement configuration data.
* `<providersiteid>`: The Passport Site ID used for `<providerurl>`.
* `<providerurl>`: The product provider URL.
* `<slots>`: Contains multiple `<URL>` elements.
* `<slots>`: Contains one or multiple `<URL>` element(s).
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -357,10 +356,10 @@ Usually `7.0.729 and greater`.
* `<providersiteid>`: The Passport Site ID used for `<providerurl>`.
* `<providerurl>`: The product provider URL.
* `<slots>`: Contains multiple `<URL>` elements.
* `<slots>`: Contains one or multiple `<URL>` element(s).
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -374,10 +373,10 @@ Premium Theme Pack advertisement configuration data.
* `<providersiteid>`: The Passport Site ID used for `<providerurl>`.
* `<providerurl>`: The product provider URL.
* `<slots>`: Contains multiple `<URL>` elements.
* `<slots>`: Contains one or multiple `<URL>` element(s).
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -394,10 +393,10 @@ Usually `7.0.729 and greater`.
* `<providersiteid>`: The Passport Site ID used for `<providerurl>`.
* `<providerurl>`: The product provider URL.
* `<slots>`: Contains multiple `<URL>` elements.
* `<slots>`: Contains one or multiple `<URL>` element(s).
###### slots
Contains multiple `<URL>` elements that contain a URL to a `msnmenuitem` XML document.
Contains one or multiple `<URL>` element(s) that contain a URL to a `msnmenuitem` XML document.
For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document).
The `<URL>` element supports one attribute named `id`
@ -572,6 +571,6 @@ every time you log into the Messenger Service.
Where `<RefreshInterval>` specifies in minutes when this document should be automatically
re-downloaded.
Where `<article-group>` contains multiple `<article>` elements:
Where `<article-group>` contains one or multiple `<article>` element(s):
* `<title>`: The display name of this article.
* `<url>`: The URL to this aricle.

View file

@ -16,11 +16,11 @@ Related: [Address Book Service](abservice.md) (for Forward List (PL) members).
`http://www.msn.com/webservices/AddressBook/`.*
* FindMembership (internal name: `Sharing.Pull.Membership`)
* AddMember (internal name: `Sharing.Push.Member.Add`)
* DeleteMember (internal name: `Sharing.Push.Member.Delete`)
* UpdateMember (internal name: `Sharing.Push.Member.Edit`)
* [AddMember](sharingservice/addmember.md) (internal name: `Sharing.Push.Member.Add`)
* [DeleteMember](sharingservice/deletemember.md) (internal name: `Sharing.Push.Member.Delete`)
## Actions that we don't know much about
* UpdateMember (internal name: `Sharing.Push.Member.Edit`)
* AddService (internal name: `Sharing.Push.Service.Add`)
* UpdateService (internal name: `Sharing.Push.Service.Edit`)
* FindInverseService (internal name: `Sharing.Pull.InverseServices`)
@ -30,4 +30,6 @@ Related: [Address Book Service](abservice.md) (for Forward List (PL) members).
* AddNamespace (internal name: `Sharing.Push.Namespace.Add`)
* DeleteNamespace (internal name: `Sharing.Push.Namespace.Delete`)
# Shared Templates
Being based on the [Address Book Service](abservice.md),
both the request (client) and response (server) use the exact same boilerplate.

View file

@ -0,0 +1,60 @@
# Introduction
`AddMember` is one of the SOAP actions the [Contact Sharing Service](../sharingservice.md) provides.
Adds a user to the Allow List (AL), Block List (BL),
or if the user is in the Pending List (PL), the Reverse List (RL).
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## AddMember
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### serviceHandle
This element contains three children:
* `<Id>`: This is always set to `0`.
* `<Type>`: This has only been observed to be `Messenger`.
* `<ForeignId>`: This has only been observed have no content,
but is not an empty element.
### memberships
This element only contains `<Membership>` elements.
#### Membership
This element contains two children:
* `<MemberRole>`: The type of list:
* `Allow`: The Allow List (AL).
* `Block`: The Block List (BL).
* `Reverse`: The Reverse List (RL).
* `<Members>`: Explained below.
##### Members
This element only contains `<Member>` elements.
###### Member
This element has two attributes:
* `xsi:type`: The type of this `<Member>`:
* `PassportMember`
* `EmailMember`
* `PhoneMember`
* `xmlns:xsi`: This is always set to `http://www.w3.org/2001/XMLSchema-instance`.
This element contains two children:
* `<Type>`: The type of this `<Member>`:
* `Passport`
* `Email`
* `Phone`
* `<State>`: This is usually only set to `Accepted`, but `Pending` is a valid value.
This element also contains one of the following mutually exclusive children.
1. `<PassportName>`: The user handle associated with this membership.
2. `<Email>`: The e-mail address associated with this membership.
2. `<PhoneNumber>`: The phone number associated with this membership.
# Server/Response
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## AddMemberResponse
This empty element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.

View file

@ -0,0 +1,55 @@
# Introduction
`DeleteMember` is one of the SOAP actions the [Contact Sharing Service](../sharingservice.md) provides.
Deletes a user from the Allow List (AL), Block List (BL), or the Pending List (PL).
# Client/Request
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## DeleteMember
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
### serviceHandle
This element contains three children:
* `<Id>`: This is always set to `0`.
* `<Type>`: This has only been observed to be `Messenger`.
* `<ForeignId>`: This has only been observed have no content,
but is not an empty element.
### memberships
This element only contains `<Membership>` elements.
#### Membership
This element contains two children:
* `<MemberRole>`: The type of list:
* `Allow`: The Allow List (AL).
* `Block`: The Block List (BL).
* `Pending`: The Pending List (RL).
* `<Members>`: Explained below.
##### Members
This element only contains `<Member>` elements.
###### Member
This element has two attributes:
* `xsi:type`: The type of this `<Member>`:
* `PassportMember`
* `EmailMember`
* `PhoneMember`
* `xmlns:xsi`: This is always set to `http://www.w3.org/2001/XMLSchema-instance`.
This element contains three children:
* `<Type>`: The type of this `<Member>`:
* `Passport`
* `Email`
* `Phone`
* `<MembershipId>`: The ID of the membership you would like to delete.
* `<State>`: This is usually only set to `Accepted`, but `Pending` is a valid value.
# Server/Response
The template used in this action is described on the [Address Book Service](../abservice.md) main page.
## DeleteMemberResponse
This empty element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.

View file

@ -29,19 +29,19 @@ This is a list of all known MSNP commands and their originating version.
| [`RNG`](commands/rng.md) | N | N | Y | [MSNP2](versions/msnp2.md) | |
| [`LST`](commands/lst.md) | N | Y | Y\*| [MSNP2](versions/msnp2.md) | [MSNP7](versions/msnp7.md) (Added groups support), [MSNP8](versions/msnp8.md) ([SYN](commands/syn.md): removed iterator parameters, condensed all lists into a single parameter, removed List Version), [MSNP10](versions/msnp10.md) (Added prefixes to contact's handle and friendly name, and added a GUID parameter if `ABCHMigrated: 1`. Also changed group IDs to GUIDs.), [MSNP12](versions/msnp12.md) (Added network IDs), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use [Address Book Service](services/abservice.md)'s `ABFindAll` and [Contact Sharing Service](services/sharingservice.md)'s `FindMemberships` instead.), November 2003 (Removed outside of [SYN](commands/syn.md), not really any specific MSNP update, just hard removed with an automatic disconnect.) |
| [`ADD`](commands/add.md) | N | Y | Y | [MSNP2](versions/msnp2.md) | [MSNP7](versions/msnp7.md) (Added groups support), [MSNP10](versions/msnp10.md) (Removed; automatic disconnect, use [ADC](commands/adc.md) instead) |
| [`REM`](commands/rem.md) | N | Y | Y | [MSNP2](versions/msnp2.md) | [MSNP7](versions/msnp7.md) (Added groups support), [MSNP10](versions/msnp10.md) (Replaced user handles with GUIDs if list is the Forward List (FL), and removed list versions from all responses), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, replaced with RML) |
| [`REM`](commands/rem.md) | N | Y | Y | [MSNP2](versions/msnp2.md) | [MSNP7](versions/msnp7.md) (Added groups support), [MSNP10](versions/msnp10.md) (Replaced user handles with GUIDs if list is the Forward List (FL), and removed list versions from all responses), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, replaced with RML and [Address Book Service](services/abservice.md)'s [`ABContactDelete`](services/abservice/abcontactdelete.md) and [Contact Sharing Service](services/sharingservice.md)'s [`DeleteMember`](services/abservice/deletemember.md instead) |
| [`FLN`](commands/fln.md) | N | N | Y | [MSNP2](versions/msnp2.md) | |
| [`PNG`](commands/png.md) | N | Y | N | [MSNP2](versions/msnp2.md) | |
| [`QNG`](commands/qng.md) | N | N | Y | [MSNP2](versions/msnp2.md) | [MSNP9](versions/msnp9.md) (Added next seconds parameter) |
| [`URL`](commands/url.md) | N | Y | N | [MSNP2](versions/msnp2.md) | [MSNP3](versions/msnp3.md) (Added Passport Site ID support as parameter 3), removed `PASSWORD` service), [MSNP5](versions/msnp5.md) (Added `MOBILE` and `CHGMOB` services), [MSNP6](versions/msnp6.md) (Added `PROFILE`, `N2PACCOUNT` and `N2PFUND` services), [MSNP7](versions/msnp7.md) (Added `CHAT` service), [MSNP8](versions/msnp8.md) (Added `ADDRBOOK`, `ADVSEARCH` and `INTSEARCH` services) |
| [`LSG`](commands/lsg.md) | N | Y | Y\*| [MSNP7](versions/msnp7.md) | [MSNP8](versions/msnp8.md) (Removed iterator and List Version parameters from [SYN](commands/syn.md) version), [MSNP10](versions/msnp10.md) (Removed unused parameter, and replaced Group IDs with Group GUIDs if `ABCHMigrated: 1`.), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use [Address Book Service](services/abservice.md)'s `ABFindAll` instead.) November 2003 (Removed outside of [SYN](commands/syn.md), not really any specific MSNP update, just hard removed with an automatic disconnect.) |
| [`ADG`](commands/adg.md) | N | Y | N | [MSNP7](versions/msnp7.md) | [MSNP10](versions/msnp10.md) (Removed unused `0` and List Version parameters, and replaced Group IDs with Group GUIDs if `ABCHMigrated: 1`), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect?, use [Address Book Service](services/abservice.md) `ABGroupAdd` instead.) |
| [`ADG`](commands/adg.md) | N | Y | N | [MSNP7](versions/msnp7.md) | [MSNP10](versions/msnp10.md) (Removed unused `0` and List Version parameters, and replaced Group IDs with Group GUIDs if `ABCHMigrated: 1`), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect?, use [Address Book Service](services/abservice.md) [`ABGroupAdd`](services/abservice/abgroupadd.md) instead.) |
| [`ILN`](commands/iln.md) | N | N | Y | [MSNP2](versions/msnp2.md) | [MSNP8](versions/msnp8.md) (Added support for Client Capabilities), [MSNP9](versions/msnp9.md) (Added optional MSNObject parameter), [MSNP14](versions/msnp14.md) (Added Network ID parameter and optional Presence Icon URL parameter), [MSNP16](versions/msnp16.md) (Support for the Extended Client Capabilities, changing the original Client Capabilities parameter to now be delimited by a colon) |
| [`NLN`](commands/nln.md) | N | N | Y | [MSNP2](versions/msnp2.md) | [MSNP8](versions/msnp8.md) (Added support for Client Capabilities), [MSNP9](versions/msnp9.md) (Added optional MSNObject parameter), [MSNP14](versions/msnp14.md) (Added Network ID parameter and optional Presence Icon URL parameter), [MSNP16](versions/msnp16.md) (Support for the Extended Client Capabilities, changing the original Client Capabilities parameter to now be delimited by a colon) |
| [`REA`](commands/rea.md) | N | Y | N | [MSNP2](versions/msnp2.md) | [MSNP10](versions/msnp10.md) (Removed; automatic disconnect) |
| [`SND`](commands/snd.md) | N | Y | N | [MSNP2](versions/msnp2.md) | [MSNP3](versions/msnp3.md) (parameters 2 and 3), [MSNP4](versions/msnp4.md) (parameter 4), [MSNP5](versions/msnp5.md) (obsoleted by [SDC](commands/sdc.md)) |
| [`SDC`](commands/sdc.md) | Y | Y | N | [MSNP5](versions/msnp5.md) | |
| [`ADC`](commands/adc.md) | N | Y | N?| [MSNP10](versions/msnp10.md) | [MSNP10](versions/msnp10.md) (`ABCHMigrated: 1`: Contact user handles and Group IDs are now both GUIDs.), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use ADL and the [Address Book Service](services/abservice.md)'s [`ABContactAdd`](services/abservice/abcontactadd.md) action instead) |
| [`ADC`](commands/adc.md) | N | Y | N?| [MSNP10](versions/msnp10.md) | [MSNP10](versions/msnp10.md) (`ABCHMigrated: 1`: Contact user handles and Group IDs are now both GUIDs.), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use ADL and the [Address Book Service](services/abservice.md)'s [`ABContactAdd`](services/abservice/abcontactadd.md) and [Contact Sharing Service](services/sharingservice.md)'s [`AddMember`](services/abservice/addmember.md instead)|
| [`PAG`](commands/pag.md) | Y | Y | N | [MSNP5](versions/msnp5.md) | [MSNP9](versions/msnp9.md) (Removed; error 715, use [PGD](commands/pgd.md) instead.) |
| [`PGD`](commands/pgd.md) | Y | Y | N | [MSNP9](versions/msnp9.md) | |
| [`SBP`](commands/sbp.md) | N | Y | N | [MSNP10](versions/msnp10.md) | [MSNP10](versions/msnp10.md) (`ABCHMigrated: 1`: Contact user handles are now GUIDs.), [MSNP11](versions/msnp11.md) (Added property `HSB`, for Has Blog. Set by the relevant Client Capability.), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use [Address Book Service](services/abservice.md)'s [`ABContactUpdate`](services/abservice/abcontactupdate.md) action instead.) |
@ -50,8 +50,8 @@ This is a list of all known MSNP commands and their originating version.
| [`SYN`](commands/syn.md) | N | Y | N | [MSNP2](versions/msnp2.md) | [MSNP5](versions/msnp5.md) (Added [BPR](commands/bpr.md) and [PRP](commands/prp.md) to response.), [MSNP7](versions/msnp7.md) (Added [LSG](commands/lsg.md) support and groups in [LST](commands/lst.md).), [MSNP8](versions/msnp8.md) (Unset properties are now omitted, new response parameters to replace [LSG](commands/lsg.md) and [LST](commands/lst.md) iterator parameters, Transaction IDs and List Version was removed from used commands), [MSNP10](versions/msnp10.md) (Added new parameters for the settings version. With `ABCHMigrated: 1`, both versions are now timestamps), [MSNP12](versions/msnp12.md) (Added Network IDs to [LST](commands/lst.md).), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use the [Address Book Service](services/abservice.md) and the [Contact Sharing Service](services/sharingservice.md) instead.) |
| [`NOT`](commands/not.md) | Y | N | Y | [MSNP5](versions/msnp5.md) | [MSNP11](versions/msnp11.md) (Added support for the `<NotificationData>` sub-document, and live blog updates use the new sub-document.), [MSNP13](versions/msnp13.md) (Added live contact list updates using the `<NotificationData>` subdocument.), [MSNP18](versions/msnp18.md) (Added live persistant chat group updates using the `<NotificationData>` subdocument.) |
| [`IPG`](commands/ipg.md) | Y | N | Y | [MSNP6](versions/msnp6.md) | |
| [`REG`](commands/reg.md) | N | Y | N | [MSNP7](versions/msnp7.md) | [MSNP10](versions/msnp10.md) (Removed unused `0` and List Version parameters, with `ABCHMigrated: 1`, group IDs are instead group GUIDs), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use [Address Book Service](services/abservice.md)'s `ABGroupUpdate` instead.) |
| [`RMG`](commands/rmg.md) | N | Y | N | [MSNP7](versions/msnp7.md) | [MSNP10](versions/msnp10.md) (Removed List Version parameter, with `ABCHMigrated: 1`, group IDs are instead group GUIDs), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use [Address Book Service](services/abservice.md)'s `ABGroupDelete` instead.) |
| [`REG`](commands/reg.md) | N | Y | N | [MSNP7](versions/msnp7.md) | [MSNP10](versions/msnp10.md) (Removed unused `0` and List Version parameters, with `ABCHMigrated: 1`, group IDs are instead group GUIDs), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use [Address Book Service](services/abservice.md)'s [`ABGroupUpdate`](services/abservice/abgroupupdate.md) instead.) |
| [`RMG`](commands/rmg.md) | N | Y | N | [MSNP7](versions/msnp7.md) | [MSNP10](versions/msnp10.md) (Removed List Version parameter, with `ABCHMigrated: 1`, group IDs are instead group GUIDs), [MSNP13](versions/msnp13.md) (Removed; automatic disconnect, use [Address Book Service](services/abservice.md)'s [`ABGroupDelete`](services/abservice/abgroupdelete.md) instead.) |
| [`QRY`](commands/qry.md) | Y | Y | N | [MSNP6](versions/msnp6.md) | [MSNP10](versions/msnp10.md) (Changed challenge response generation algorithm drastically.) |
| [`UBX`](commands/ubx.md) | Y | N | Y | [MSNP11](versions/msnp11.md) | [MSNP13](versions/msnp13.md) (Added `<MachineGuid>` to the default list of elements.) |
| [`UUX`](commands/uux.md) | Y | Y | N | [MSNP11](versions/msnp11.md) | [MSNP13](versions/msnp13.md) (Added `<MachineGuid>` to the default list of elements.), [MSNP14](versions/msnp14.md) (Added support for Network IDs.) |

4
package-lock.json generated
View file

@ -1,12 +1,12 @@
{
"name": "yellows-msnp-wiki",
"version": "0.1.2",
"version": "0.1.3",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "yellows-msnp-wiki",
"version": "0.1.2",
"version": "0.1.3",
"license": "GFDL-1.3-or-later",
"dependencies": {
"yiki": "git+https://git.kevinthe.horse/yellows111/yiki.git#semver:*"

View file

@ -1,6 +1,6 @@
{
"name": "yellows-msnp-wiki",
"version": "0.1.2",
"version": "0.1.3",
"description": "The yellows111 MSNP wiki that aims for accuracy.",
"author": "yellows111",
"license": "GFDL-1.3-or-later",

22
templates/soapaction.md Normal file
View file

@ -0,0 +1,22 @@
# Introduction
`Actiom` is one of the SOAP actions the [Service](../service.md) provides.
Description.
# Client/Request
The template used in this action is described on the [Service](../service.md) main page.
## Action
This element has only one attribute:
* `xmlns:` Is always set to `http://www.msn.com/webservices/AddressBook`.
insert a client dump here
# Server/Response
The template used in this action is described on the [Service](../service.md) main page.
## ActionResponse
This element has only one attribute:
* `xmlns:` Is always set to `http://example.com/namespace`.
... may have a result or just self close.