msnp-wiki/docs/versions/msnp14.md
yellows111 7488f2af43
[0.1.4] MSNP13 and MSNP14, ADL, RML, FQY
also add new command findings:
* undocumented command GSB
* syntax and other errors fixed
* explode a bit of xml in places that were a bit too long
* find out what a "merchant cab" file is (one line of xml)
2024-11-30 17:02:48 +00:00

4.6 KiB

Introduction

MSNP14 is the thirteenth released version of the Mobile Status Notification Protocol. It was introduced officially in Client Version 8.0.0787, along with MSNP13.

Command information

It introduces the notificaiton service commands:

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

No error codes were known to be introduced in this version

No commands were known to be removed in this version

Known changes

(from MSNP13):

  • UBX now has an extra parameter for a Network ID of the network that generated the new XML payload.
  • RNG and XFR SB commands now have an extra parameter to specify if the address should be connected to directly or only via the HTTP Gateway.
  • ILN, NLN and FLN now have an extra parameter for the Network ID of the network that generated the new status.
  • Official Client: Yahoo! Messenger interoperability is now supported.
    The FQY command is used to discover if a user is from the Yahoo! Messenger network.
    This is represented in the Address Book Service as a email-only contact with the isMessengerEnabled element set to true for the contactEmailType of Messenger2.
    This is also represented in the Contact Sharing Service as a e-mail membership, with the MSN.IM.BuddyType annotation set to 32:.
    The Network ID 32 (bit 6) is used to specify that this user is from the Yahoo! Messenger service.
  • ILN and NLN now include a new parameter that specifies what icon to use to denote a user from another service.

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 MSNP14 MSNP13 CVR0
S: VER 1 MSNP14
C: CVR 2 0x0409 winnt 5.1 i386 MSG80BETA 8.0.0566 msmsgs example@hotmail.com
S: CVR 2 8.0.0566 8.0.0566 8.0.0566
.. http://msgr.dlservice.microsoft.com/download/4/5/b/45beb06f-5a08-4694-abd8-d6e706b06b68/Install_Messenger_Beta.exe
.. http://ideas.live.com
C: USR 3 TWN I example@hotmail.com
S: XFR 3 NS 10.0.0.5:1863 U D

Client disconnects from server

Client opens a connection to 10.0.0.5:1863

C: VER 4 MSNP14 MSNP13 CVR0
S: VER 4 MSNP14
C: CVR 5 0x0409 winnt 5.1 i386 MSNMSGR 8.0.0566 MSMSGS example@hotmail.com
S: CVR 5 8.0.0566 8.0.0566 8.0.0566
.. http://msgr.dlservice.microsoft.com/download/4/5/b/45beb06f-5a08-4694-abd8-d6e706b06b68/Install_Messenger_Beta.exe
.. http://ideas.live.com
C: USR 6 TWN I example@hotmail.com

The HTTPS interlude is described in the Passport (SOAP) article.

S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507
S: GCF 0 201
<Policies>
	<Policy type="SHIELDS">
		<config>
			<shield>
				<cli maj="7" min="0" minbld="0" maxbld="9999" deny=" " />
			</shield>
			<block>
			</block>
		</config>
	</Policy>
</Policies>
C: USR 7 TWN S $(xmldecode(passportsoap.BinarySecurityToken#Compact1))
S: USR 7 OK example@hotmail.com 1 0
S: SBS 0 null
S: MSG Hotmail Hotmail 465
MIME-Version: 1.0
Content-Type: text/x-msmsgsprofile; charset=UTF-8
LoginTime: 1732890086
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

The Client now uses both the ABFindAll and the FindMembership actions to get the current state of all lists and the last stored name and privacy mode.

NOTE: The following ADL and UUX payloads have been exploded for visibility and formatting reasons.
No whitespace is allowed in ADL's payload and the payload size reflects this, and is set to the correct value.

C: BLP 7 AL
S: BLP 7 AL
C: ADL 8 110
<ml l="1">
	<d n="hotmail.com">
		<c n="anotheruser" l="3" t="1" />
	</d>
	<t>
		<c n="tel:+15551111222" l="3" />
	</t>
</ml>
S: ADL 8 OK
C: PRP 9 MFN example%20user
S: PRP 9 MFN example%20user
C: CHG 10 NLN
S: CHG 10 NLN
C: UUX 11 118
<Data>
	<PSM></PSM>
	<CurrentMedia></CurrentMedia>
	<MachineGuid>{44BFD5A4-7450-4BDA-BA3A-C51B3031126D}</MachineGuid>
</Data>
S: UUX 11 0