msnp-wiki/docs/versions/msnp10.md
yellows111 ce7c3bee1c
0.2.0: The Winter Roll-up
i have basically touched every file help

* Moved all the error code stuff to one new sectional page, because the old way of doing it sucked big time.
* Rename passport (soap) to RST
* Formatting changes (many)
* Several corrections
* change git host because git.kevinthe.horse seems Dead
2024-12-18 20:16:29 +00:00

6.4 KiB

Introduction

MSNP10 is the ninth released version of the Mobile Status Notification Protocol.
It was introduced officially in Client Version 6.1.0155.

Command information

It introduces the notification service commands:

No switchboard or dispatch service commands were known to be introduced in this version

The following commands were removed in this version:

  • ADD (automatic disconnection)
  • REA (automatic disconnection?)

Known changes

(from MSNP9):

  • Added new initial profile variable TOUNeeded. If exists and set to 1, a dialog box to review the Messenger Service Terms of Use is shown to the user.
  • Changed SYN request and response. Client: SYN transactionID listVersion settingsVersion. Server: SYN transactionID listVersion settingsVersion numberOfContacts numberOfGroups. settingsVersion is always 0.
  • Removed unused parameter from LSG.
  • Current display name is removed from USR, now is returned with other user properties (PRP commands) in SYN.
  • PRP MFN replaces REA (current user handle). SBP (contact ID) MFN replaces other uses of REA.
  • LST: Added prefixes to the user handle (N=) and friendly name (F=) parameters.
  • Added new initial profile variable ABCHMigrated. If set to 1, some commands are altered, such as:
    • SYN: The request and response's list versions are now ISO 8601 with 7 subsecond digits, usually with a -07:00 timezone offset. the previously unused second parameter (both request and response) is used as the Last Settings Version, and follows the same time format as List Versions now do.
    • LST: GUID specified as C= parameter, group IDs are now GUIDs.
    • ADC, REM: uses GUIDs instead of contact user handles if the list is the Forward List (FL), and same applies also for groups.
    • LSG, ADG: Uses GUIDs instead of IDs.
    • SBP: Uses the contact's GUID instead of the Contact Address.
  • All list version updating commands no longer return the current list version when used. The following commands are affected:
  • Added a new list: Pending List/PL (bit 5, decimal 16).
    This list contains users that have unhandled "contact added you" notifications.
  • Added new server-side OUT reasons: MIG, if the server has migrated you to ABCH, and TOU, for not accepting the Service Terms of Use.
  • First protocol version to remove a core command implemented since MSNP2 draft (ADD).

Client-server communication example

NOTE: This has been line-breaked. Lines beginning with .. followed by a space are continuations of the previous line.

C: VER 1 MSNP10 MSNP9 CVR0
S: VER 1 MSNP10
C: CVR 2 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com
S: CVR 2 6.1.0211 6.1.0211 6.1.0155
.. http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe
.. http://messenger.msn.com
C: USR 3 TWN I example@hotmail.com
S: XFR 3 NS 10.0.0.5:1863 0 10.0.0.1:1863

Client disconnects from server.

Client opens a connection to 10.0.0.5:1863.

C: VER 4 MSNP10 MSNP9 CVR0
S: VER 4 MSNP10
C: CVR 5 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com
S: CVR 5 6.1.0211 6.1.0211 6.1.0155
.. http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe
.. http://messenger.msn.com
C: USR 6 TWN I example@hotmail.com
S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507

The HTTPS interlude is described in the Passport 1.4 article.

C: USR 7 TWN S $(pp14response.headers.authenticationInfo["from-PP"])
S: USR 7 OK example@hotmail.com 1 0
S: MSG Hotmail Hotmail 465
MIME-Version: 1.0
Content-Type: text/x-msmsgsprofile; charset=UTF-8
LoginTime: 1726321960
EmailEnabled: 1
MemberIdHigh: 1
MemberIdLow: 2
lang_preference: 1033
PreferredEmail: example@hotmail.com
country: US
PostalCode: 
Gender: 
Kid: 0
Age: 
BDayPre: 
Birthday: 
Wallet: 
Flags: 1027
sid: 507
kv: 11
MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$
ClientIP: 192.168.1.111
ClientPort: 18183
ABCHMigrated: 0

C: SYN 8 15 0
S: SYN 8 16 0 1 1
S: GTC A
S: BLP AL
S: PRP MFN example%20user
S: PRP PHH 123%20(4567)
S: LSG Other%20Contacts 0
S: LST N=anotheruser@hotmail.com F=another%20user C=anotheruser@hotmail.com 11 0
S: BPR PHH 1%20(222)%20333%204444
C: CHG 9 NLN
S: CHG 9 NLN
S: OUT MIG

Server disconnects client.

Client opens a connection to 10.0.0.5:1863 (from stored server).

C: VER 10 MSNP10 MSNP9 CVR0
S: VER 10 MSNP10
C: CVR 11 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com
S: CVR 11 6.1.0211 6.1.0211 6.1.0155
.. http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe
.. http://messenger.msn.com
C: USR 12 TWN I example@hotmail.com
S: USR 12 TWN S passport=parameters,neat=huh,lc=1033,id=507
C: USR 13 TWN S $(pp14response.headers.authenticationInfo["from-PP"])
S: USR 13 OK example@hotmail.com 1 0
S: MSG Hotmail Hotmail 465
MIME-Version: 1.0
Content-Type: text/x-msmsgsprofile; charset=UTF-8
LoginTime: 1726321960
EmailEnabled: 1
MemberIdHigh: 1
MemberIdLow: 2
lang_preference: 1033
PreferredEmail: example@hotmail.com
country: US
PostalCode: 
Gender: 
Kid: 0
Age: 
BDayPre: 
Birthday: 
Wallet: 
Flags: 1027
sid: 507
kv: 11
MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$
ClientIP: 192.168.1.111
ClientPort: 18183
ABCHMigrated: 1

C: SYN 14 0 0
S: SYN 14 2024-09-28T17:18:18.6400000-07:00 2024-09-28T17:18:18.6400000-07:00 1 1
S: GTC A
S: BLP AL
S: PRP MFN example%20user
S: PRP PHH 123%20(4567)
S: LSG Other%20Contacts d6deeacd-7849-4de4-93c5-d130915d0042
S: LST N=anotheruser@hotmail.com F=another%20user C=c1f9a363-4ee9-4a33-a434-b056a4c55b98 11 d6deeacd-7849-4de4-93c5-d130915d0042
S: BPR PHH 1%20(222)%20333%204444
C: CHG 15 NLN
S: CHG 15 NLN
C: OUT

Client disconnects from server.

S: OUT

Server disconnects client.