111 lines
4.2 KiB
Markdown
111 lines
4.2 KiB
Markdown
# Introduction
|
|
|
|
MSNP8 is the seventh released version of the Mobile Status Notification Protocol.
|
|
It was introduced officially in Client Version 5.0.0537.
|
|
|
|
# Command information
|
|
|
|
*No commands for any service were known to be introduced in this version*
|
|
|
|
*No error codes were known to be introduced in this version*
|
|
|
|
The following commands were removed in this version:
|
|
* INF (automatic disconnection)
|
|
* FND (`502` by July 2003, see Known changes for client details.)
|
|
|
|
# Known changes
|
|
(from [MSNP7](msnp7.md)):
|
|
* Being the first protocol split,
|
|
all released clients that support MSNP8 do not support any previous versions.
|
|
* Login process now VER-CVR-USR instead of VER-INF-USR.
|
|
* USR OK has a new parameter, usually? 0, but of currently unknown use.
|
|
* Introduced `TWN` authentication method, which uses Passport 1.4 over HTTPS.
|
|
* Reworked SYN and related response commands drastically:
|
|
Iterators are gone, now total size of both groups and total contacts included in SYN response.
|
|
All transaction IDs and list versions removed from response commands (now treated as asynchronous commands).
|
|
Unset properties (PRPs) are now not sent. Hurray.
|
|
* CVR from client now has a new 8th parameter, which is the current user.
|
|
* New initial profile fields: ClientIP and ClientPort.
|
|
ClientPort needs to be endian swapped for it's correct value.
|
|
Formula: `y = (((x & 0xff) * 256) + ((x & 0xff00)/256))`.
|
|
* NOTE: FND might still exist in client, but theres no way of triggering it. Practically removed.
|
|
* BPR removes related user, for some reason, default fields share same optimization as PRP does.
|
|
* LST (for SYN): Lists are now all combined into a single number, where:
|
|
1 = FL, 2 = AL, 4 = BL, 8 = RL, for example FL+AL+RL = 11.
|
|
* CHG, ILN, NLN: Client Capabilities are introduced.
|
|
You can now tell other clients what features you support.
|
|
* Official Client: Error 711 is now handled.
|
|
Error 603 isn't handled again after Client Version 4.5 supported it.
|
|
* Official Client: Connectivity field added to application requests
|
|
to notify the other user about what the network conditions are.
|
|
* Official Client: Introduced ABCH (Address Book Clearing House) support.
|
|
The URL is gathered from `svcs.microsoft.com`.
|
|
`abch_config.asp` provides an XML document with a `<abchconfig>` element.
|
|
It likely has a `<url>` child element containing the URL of the ABCH service.
|
|
|
|
# Client-server communication example
|
|
```
|
|
C: VER 1 MSNP8 CVR0
|
|
S: VER 1 MSNP8
|
|
C: CVR 2 0x0409 win 4.10 i386 MSNMSGR 5.0.0537 MSMSGS example@hotmail.com
|
|
S: CVR 2 5.0.0537 5.0.0537 1.0.0863 http://download.microsoft.com/download/msnmessenger/install/5.0/w98nt42kmexp/en-us/setupdl.exe http://messenger.microsoft.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 MSNP8 CVR0
|
|
S: VER 4 MSNP8
|
|
C: CVR 5 0x0409 win 4.10 i386 MSNMSGR 5.0.0537 MSMSGS example@hotmail.com
|
|
S: CVR 5 5.0.0537 5.0.0537 1.0.0863 http://download.microsoft.com/download/msnmessenger/install/5.0/w98nt42kmexp/en-us/setupdl.exe http://messenger.microsoft.com
|
|
C: USR 6 TWN I example@hotmail.com
|
|
S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507
|
|
C: USR 7 TWN S $(pp14response.headers.authenticationInfo["from-PP"])
|
|
S: USR 7 OK example@hotmail.com example%20user 1 0
|
|
S: MSG Hotmail Hotmail 448
|
|
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
|
|
|
|
C: SYN 8 14
|
|
S: SYN 8 15 1 1
|
|
S: GTC A
|
|
S: BLP AL
|
|
S: PRP PHH 123-4567
|
|
S: LSG 0 Other%20Contacts 0
|
|
S: LST anotheruser@hotmail.com another%20user 11 0
|
|
S: BPR PHH 1%20444%20222-3333
|
|
C: CHG 9 NLN 0
|
|
S: CHG 9 NLN 0
|
|
S: ILN 9 NLN anotheruser@hotmail.com another%20user 28
|
|
S: NLN NLN anotheruser@hotmail.com another%20user 2
|
|
S: NLN NLN anotheruser@hotmail.com another%20user 28
|
|
C: OUT
|
|
```
|
|
Client disconnects from server
|
|
```
|
|
S: OUT
|
|
```
|
|
Server disconnects client
|