From f096fe907fabd058d57ad5595466c327b376b812 Mon Sep 17 00:00:00 2001 From: yellows111 Date: Wed, 30 Oct 2024 21:33:59 +0000 Subject: [PATCH] [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. --- docs/commands/adc.md | 10 ++- docs/commands/adg.md | 6 +- docs/commands/lsg.md | 3 + docs/commands/lst.md | 2 + docs/commands/reg.md | 7 ++- docs/commands/rem.md | 6 +- docs/commands/rmg.md | 6 +- docs/services/abservice.md | 16 ++--- docs/services/abservice/abcontactadd.md | 5 +- docs/services/abservice/abcontactdelete.md | 2 +- docs/services/abservice/abcontactupdate.md | 7 ++- docs/services/abservice/abgroupadd.md | 52 +++++++++++++++ docs/services/abservice/abgroupcontactadd.md | 63 +++++++++++++++++++ .../abservice/abgroupcontactdelete.md | 41 ++++++++++++ docs/services/abservice/abgroupdelete.md | 30 +++++++++ docs/services/abservice/abgroupupdate.md | 35 +++++++++++ docs/services/abservice/contactinfo.md | 10 +-- docs/services/msgrconfig.md | 31 +++++---- docs/services/sharingservice.md | 10 +-- docs/services/sharingservice/addmember.md | 60 ++++++++++++++++++ docs/services/sharingservice/deletemember.md | 55 ++++++++++++++++ docs/table_of_commands.md | 10 +-- package-lock.json | 4 +- package.json | 2 +- templates/soapaction.md | 22 +++++++ 25 files changed, 441 insertions(+), 54 deletions(-) create mode 100644 docs/services/abservice/abgroupadd.md create mode 100644 docs/services/abservice/abgroupcontactadd.md create mode 100644 docs/services/abservice/abgroupcontactdelete.md create mode 100644 docs/services/abservice/abgroupdelete.md create mode 100644 docs/services/abservice/abgroupupdate.md create mode 100644 docs/services/sharingservice/addmember.md create mode 100644 docs/services/sharingservice/deletemember.md create mode 100644 templates/soapaction.md diff --git a/docs/commands/adc.md b/docs/commands/adc.md index b905dc7..7b7102b 100644 --- a/docs/commands/adc.md +++ b/docs/commands/adc.md @@ -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. diff --git a/docs/commands/adg.md b/docs/commands/adg.md index 94731e2..b254d24 100644 --- a/docs/commands/adg.md +++ b/docs/commands/adg.md @@ -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. diff --git a/docs/commands/lsg.md b/docs/commands/lsg.md index 9d36415..c401229 100644 --- a/docs/commands/lsg.md +++ b/docs/commands/lsg.md @@ -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. diff --git a/docs/commands/lst.md b/docs/commands/lst.md index d15865f..868ec64 100644 --- a/docs/commands/lst.md +++ b/docs/commands/lst.md @@ -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. diff --git a/docs/commands/reg.md b/docs/commands/reg.md index cf4e8c0..5bddf77 100644 --- a/docs/commands/reg.md +++ b/docs/commands/reg.md @@ -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. diff --git a/docs/commands/rem.md b/docs/commands/rem.md index d7bc17f..f67b2cf 100644 --- a/docs/commands/rem.md +++ b/docs/commands/rem.md @@ -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. diff --git a/docs/commands/rmg.md b/docs/commands/rmg.md index be0eea0..86b1d4c 100644 --- a/docs/commands/rmg.md +++ b/docs/commands/rmg.md @@ -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. diff --git a/docs/services/abservice.md b/docs/services/abservice.md index 87e3d80..1f2803e 100644 --- a/docs/services/abservice.md +++ b/docs/services/abservice.md @@ -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: * ``: 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: * ``: If this is a managed group request, set to `true`, otherwise set to `false`. -* `` This element contains the [Passport](passport14.md) token for `contacts.msn.com`. +* `` This element contains the XML-encoded [Passport](passport14.md) token for `contacts.msn.com`. Added since [MSNP15](../versions/msnp15.md). #### soap:Body diff --git a/docs/services/abservice/abcontactadd.md b/docs/services/abservice/abcontactadd.md index 08d7803..0c61fcf 100644 --- a/docs/services/abservice/abcontactadd.md +++ b/docs/services/abservice/abcontactadd.md @@ -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-elements) elements. +This element contains one or multiple `` elements. #### Contact This element has only one attribute: @@ -31,6 +31,9 @@ The relevant elements are: * ``: (Optional?) The type of contact you'd like to add: * `LivePending`: A Messenger Service user. * `Regular`: A user from another service. +* ``: Used exclusively if this is a email-only contact. +* ``: Used with `` if this is a phone-only contact. +* ``: Used with `` if this is a phone-only contact. ### options This element contains one child: diff --git a/docs/services/abservice/abcontactdelete.md b/docs/services/abservice/abcontactdelete.md index acea267..be5e625 100644 --- a/docs/services/abservice/abcontactdelete.md +++ b/docs/services/abservice/abcontactdelete.md @@ -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-elements) elements. +This element contains one or multiple `` elements. #### Contact This element has only one attribute: diff --git a/docs/services/abservice/abcontactupdate.md b/docs/services/abservice/abcontactupdate.md index 264442f..48f2f88 100644 --- a/docs/services/abservice/abcontactupdate.md +++ b/docs/services/abservice/abcontactupdate.md @@ -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-elements) elements. +This element contains one or multiple `` elements. #### Contact This element has only one attribute: @@ -29,11 +29,14 @@ For more information about this element, read the [``](contactinfo. The most relevant children are: * ``: The new display name for this contact. +* ``: 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 ``. The valid values are the following: * `DisplayName` +* `IsMessengerUser` * `ContactFirstName` * `ContactLastName` * `Comment` diff --git a/docs/services/abservice/abgroupadd.md b/docs/services/abservice/abgroupadd.md new file mode 100644 index 0000000..8c4cfaf --- /dev/null +++ b/docs/services/abservice/abgroupadd.md @@ -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: +* ``: 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 `` element. + +#### GroupInfo +This element contains four children: +* ``: The name of the group. +* ``: The GUID type of group: + * `C8529CE2-6EAD-434d-881F-341E17DB3FF8`: A contact group. +* ``: Unknown purpose (`true` or `false`). + +##### annotations +This element only contains one or multiple `` element(s). + +###### Annotation +This element only has two children: +* ``: The key of this annotation. +* ``: 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 `` element. + +#### guid +This element only contains the GUID of the newly created group. diff --git a/docs/services/abservice/abgroupcontactadd.md b/docs/services/abservice/abgroupcontactadd.md new file mode 100644 index 0000000..58fd0bb --- /dev/null +++ b/docs/services/abservice/abgroupcontactadd.md @@ -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 `` element. + +#### groupIds +This element only contains one or multiple `` element(s). + +##### guid +The GUID of the group you'd like to add a contact to. + +### contacts +This element only contains the `` element. + +#### Contact +This element only contains the [``](contactinfo.md) element. + +This element has one optional child: +* ``: 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.md) article. + +The relevant elements are: +* ``: Used with `` or `` if this is a new contact + outside of the Messenger Network. +* ``: Used with `` if this is a new email-only contact. +* ``: Used with `` if this is a new phone-only contact. + + +### groupContactAddOptions +This element has two children: +* ``: Should this action generate the `` + in the `` element (`true` or `false`). +* ``: 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 `` element. + +#### guid +This element contains the GUID of the contact that was added to the group. diff --git a/docs/services/abservice/abgroupcontactdelete.md b/docs/services/abservice/abgroupcontactdelete.md new file mode 100644 index 0000000..6db4eb0 --- /dev/null +++ b/docs/services/abservice/abgroupcontactdelete.md @@ -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 `` elements. + +#### Contact +This element only contains the `` 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 `` element. + +#### groupIds +This element only contains one or multiple `` 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`. diff --git a/docs/services/abservice/abgroupdelete.md b/docs/services/abservice/abgroupdelete.md new file mode 100644 index 0000000..61652c3 --- /dev/null +++ b/docs/services/abservice/abgroupdelete.md @@ -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 `` element. + +#### groupIds +This element only contains one or multiple `` 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`. diff --git a/docs/services/abservice/abgroupupdate.md b/docs/services/abservice/abgroupupdate.md new file mode 100644 index 0000000..9ab63f0 --- /dev/null +++ b/docs/services/abservice/abgroupupdate.md @@ -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 `` elements + +#### Group +This element contains three children: +* ``: The GUID of the group to modify. +* ``: Explained below. +* ``: A space delimited list of changes made in ``: + * `GroupName` + +##### groupInfo +This element contains only one child: +* ``: 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`. diff --git a/docs/services/abservice/contactinfo.md b/docs/services/abservice/contactinfo.md index 8b47df4..318342d 100644 --- a/docs/services/abservice/contactinfo.md +++ b/docs/services/abservice/contactinfo.md @@ -26,14 +26,14 @@ This element can contain many children, all of which optional: * ``: The last name for this contact. * ``: The user attached comment for this contact. New lines are included as-is. * ``: The middle name for this contact. -* ``: Contains many [``](#annotation) elements. +* ``: Contains one or multiple [``](#annotation) element(s). * ``: Can be any of the following: * `ContactEmailPersonal` * `ContactEmailMessenger` * `ContactEmailBusiness` * `ContactEmailOther` * `Passport` -* ``: Contains many [``](#contactemail) elements. +* ``: Contains one or multiple [``](#contactemail) element(s). * ``: 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` -* ``: Contains many [``](#contactphone) elements. +* ``: Contains one or multiple [``](#contactphone) element(s). * ``: Can be any of the following: * `ContactLocationBusiness` * `ContactLocationPersonal` -* ``: Contains many [``](#contactlocation) elements. -* ``: Contains many [``](#contactwebsite) elements. +* ``: Contains one or multiple [``](#contactlocation) element(s). +* ``: Contains one or multiple [``](#contactwebsite) element(s). * ``: Is this contact private (`true` or `false`). * ``: What gender is this contact, if unsure, set to `Unspecified`. * ``: What time zone is this contact in?, if unsure, set to `None`. diff --git a/docs/services/msgrconfig.md b/docs/services/msgrconfig.md index 5ea44ee..d49157a 100644 --- a/docs/services/msgrconfig.md +++ b/docs/services/msgrconfig.md @@ -169,11 +169,10 @@ This empty element has two attributes: Replaces the `tabs.asp` service on `svcs.microsoft.com`. ### msntabdata -This element only contains `` elements. +This element only contains one or multiple `` element(s). #### tab -This element can be repeated multiple times in the parent element. - +This element has nine children: * ``: 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 -Contains multiple `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` 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 `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` 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 -Contains multiple `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` 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 `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` element supports one attribute named `id` @@ -337,10 +336,10 @@ Premium background advertisement configuration data. * ``: The Passport Site ID used for ``. * ``: The product provider URL. -* ``: Contains multiple `` elements. +* ``: Contains one or multiple `` element(s). ###### slots -Contains multiple `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` element supports one attribute named `id` @@ -357,10 +356,10 @@ Usually `7.0.729 and greater`. * ``: The Passport Site ID used for ``. * ``: The product provider URL. -* ``: Contains multiple `` elements. +* ``: Contains one or multiple `` element(s). ###### slots -Contains multiple `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` element supports one attribute named `id` @@ -374,10 +373,10 @@ Premium Theme Pack advertisement configuration data. * ``: The Passport Site ID used for ``. * ``: The product provider URL. -* ``: Contains multiple `` elements. +* ``: Contains one or multiple `` element(s). ###### slots -Contains multiple `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` element supports one attribute named `id` @@ -394,10 +393,10 @@ Usually `7.0.729 and greater`. * ``: The Passport Site ID used for ``. * ``: The product provider URL. -* ``: Contains multiple `` elements. +* ``: Contains one or multiple `` element(s). ###### slots -Contains multiple `` elements that contain a URL to a `msnmenuitem` XML document. +Contains one or multiple `` element(s) that contain a URL to a `msnmenuitem` XML document. For more information read [this section on `msnmenuitem` documents](#msnmenuitem-xml-document). The `` element supports one attribute named `id` @@ -572,6 +571,6 @@ every time you log into the Messenger Service. Where `` specifies in minutes when this document should be automatically re-downloaded. -Where `` contains multiple `
` elements: +Where `` contains one or multiple `
` element(s): * ``: The display name of this article. * `<url>`: The URL to this aricle. diff --git a/docs/services/sharingservice.md b/docs/services/sharingservice.md index 7d8a251..544d341 100644 --- a/docs/services/sharingservice.md +++ b/docs/services/sharingservice.md @@ -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. diff --git a/docs/services/sharingservice/addmember.md b/docs/services/sharingservice/addmember.md new file mode 100644 index 0000000..ac7758f --- /dev/null +++ b/docs/services/sharingservice/addmember.md @@ -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`. diff --git a/docs/services/sharingservice/deletemember.md b/docs/services/sharingservice/deletemember.md new file mode 100644 index 0000000..5ad9d6b --- /dev/null +++ b/docs/services/sharingservice/deletemember.md @@ -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`. diff --git a/docs/table_of_commands.md b/docs/table_of_commands.md index 20a0e80..33c46fd 100644 --- a/docs/table_of_commands.md +++ b/docs/table_of_commands.md @@ -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.) | diff --git a/package-lock.json b/package-lock.json index 3f9121d..1342901 100644 --- a/package-lock.json +++ b/package-lock.json @@ -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:*" diff --git a/package.json b/package.json index 97c1d5a..a9d05c5 100644 --- a/package.json +++ b/package.json @@ -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", diff --git a/templates/soapaction.md b/templates/soapaction.md new file mode 100644 index 0000000..08db3ff --- /dev/null +++ b/templates/soapaction.md @@ -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.