110 lines
3.6 KiB
Markdown
110 lines
3.6 KiB
Markdown
# Introduction
|
|
MSNP3 is the second released version of the Mobile Status Notification Protocol.
|
|
It was introduced officially in Client Version 2.0.0085.
|
|
|
|
# Command information
|
|
It introduces the notification service commands:
|
|
* [IMS](../commands/ims.md)
|
|
|
|
*No switchboard or dispatch commands were known to be introduced in this version*
|
|
|
|
It introduces the error codes:
|
|
* 131
|
|
* 217
|
|
* 800
|
|
|
|
*No commands were known to be removed in this version*
|
|
|
|
# Known changes
|
|
(from [MSNP2](msnp2.md)):
|
|
* [XFR](../commands/xfr.md): Added a new parameter that is always `0`. No use is known or documented.
|
|
* Added Passport Site IDs to [URL](../commands/url.md) (parameter 3).
|
|
* Removed `PASSWORD` service from [URL](../commands/url.md).
|
|
* Added Hotmail's Passport Site ID to new e-mail notifications.
|
|
* [SND](../commands/snd.md): Added a target language parameter and
|
|
a client library parameter, similar to the one in [CVR](../commands/cvr.md).
|
|
* Initial profile: Added Passport intergration fields.
|
|
* Font information has been added to Switchboard MSGs.
|
|
* Multiple error-codes unimplemented in 1.x that were in the draft are now implemented in the Official Client.
|
|
Examples include: 208, 215, 501, 604 (bizzarely enough), 715 and finally 913.
|
|
* Non-protocol: Client can now use non-hotmail domains in relevant places.
|
|
* Non-protocol: WebTV 2.5+ clients (example@webtv.net) can talk to other users (example@hotmail.com)
|
|
* Clear-Text Password (CTP) authentication method discontinued.
|
|
* Entire content of initial email notification changed from
|
|
`text/x-msmsgsemailnotification` to `application/x-msmsgsinitialemailnotification`,
|
|
the format is likely different. Now includes unread email count. [Examination needed]
|
|
* Official Client: Automatic login form now supports Passport
|
|
if parameter 3 is set in [URL](../commands/url.md).
|
|
To generate `creds`, MD5 hash the following as one concatenated string:
|
|
* `auth` (from Initial Profile's `MSPAuth`, also included in the form) +
|
|
* `sl` (amount of seconds since `LoginTime`, also included in the form) +
|
|
* `passwd` (plain-text password).
|
|
* Official Client: Legacy automatic login form parameters has changed.
|
|
This only applies for [URL](../commands/url.md) commands without parameter 3.
|
|
To generate `k2`, MD5 hash the following as one concatenated string:
|
|
* `login` (The local-part of your user handle, also included in the form) +
|
|
* `k1` (A short 2 digit number that you generate and is also included in the form) +
|
|
* `passwd` (plain-text password).
|
|
* Official Client: Removed [URL](../commands/url.md) service `PASSWORD`.
|
|
|
|
# Client-server communication example
|
|
```
|
|
C: VER 1 MSNP3 MSNP2 CVR0
|
|
S: VER 1 MSNP3
|
|
C: INF 2
|
|
S: INF 2 MD5
|
|
C: USR 3 MD5 I example@hotmail.com
|
|
S: XFR 3 NS 10.0.0.5:1863 0
|
|
```
|
|
Client disconnects from server
|
|
|
|
Client opens a connection to 10.0.0.5:1863
|
|
```
|
|
C: VER 4 MSNP3 MSNP2 CVR0
|
|
S: VER 4 MSNP3
|
|
C: INF 5
|
|
S: INF 5 MD5
|
|
C: USR 6 MD5 I example@hotmail.com
|
|
S: USR 6 MDS S prefix
|
|
C: USR 7 MD5 S $md5(prefix + password)
|
|
S: USR 7 OK example@hotmail.com example%20user
|
|
S: MSG Hotmail Hotmail 367
|
|
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: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA$$
|
|
|
|
C: SYN 8 5
|
|
S: SYN 8 5
|
|
C: CHG 9 NLN
|
|
S: CHG 9 NLN
|
|
C: IMS 10 OFF
|
|
S: IMS 10 0 OFF
|
|
C: IMS 11 ON
|
|
S: IMS 11 0 ON
|
|
C: SND 12 anotheruser@hotmail.com 0x0409 MSMSGS
|
|
S: SND 12 OK
|
|
C: OUT
|
|
```
|
|
Client disconnects from server
|
|
```
|
|
S: OUT
|
|
```
|
|
Server disconnects client
|