msnp-wiki/docs/versions/msnp3.md
yellows111 f267b61dde
ILN, NLN, REA, SND, ADG, LSG, and MSNP4 changes
information for MSNP4 found: adds the client codebase parameter to SND and CVR (and an empty to CVQ, but that lasted all the way to MSNP7 lol, does that for MSNP3 fallback too which is kind of funny)

18 commands left.
2024-10-18 23:52:48 +01:00

109 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