2024-10-14 16:13:21 -04:00
|
|
|
# Introduction
|
|
|
|
`MSG` is a command introduced with [MSNP2](../versions/msnp2.md).
|
|
|
|
|
|
|
|
It is a Notification and Switchboard Server command, WITH a request and WITH a response payload.
|
|
|
|
|
|
|
|
Used to transfer MIME-headered data to other parties, whenever that be you or other users.
|
|
|
|
|
|
|
|
# Client/Request
|
|
|
|
```
|
|
|
|
MSG TrID [ U | N | A | D ] length
|
|
|
|
data
|
|
|
|
```
|
|
|
|
## Acknowledgement Types
|
|
|
|
* U: Unacknowledged, no response is sent.
|
|
|
|
* A: Acknowledged, a [ACK](ack.md) response is sent if the message is sent successfully.
|
|
|
|
* N: Negative-Acknowledged, a [NAK](nak.md) response is sent if the messaged failed to send successfully.
|
|
|
|
* D: Data, a version of Acknowledged that also has a response of error 282 if the message was poorly formatted.
|
|
|
|
|
2024-10-15 13:14:20 -04:00
|
|
|
Acknowledgement Type `D` is defined since [MSNP9](../versions/msnp9.md).
|
2024-10-14 16:13:21 -04:00
|
|
|
|
|
|
|
Where `length` is the `length` in bytes of `data`.
|
|
|
|
|
|
|
|
Where `data` is the body of the message,
|
|
|
|
usually containing a `MIME-Version` header and a `Content-Type`.
|
|
|
|
|
|
|
|
*This can only be sent from Switchboard.*
|
|
|
|
|
|
|
|
# Server/Response
|
|
|
|
```
|
|
|
|
MSG user-handle friendly-name length
|
|
|
|
data
|
|
|
|
```
|
|
|
|
|
|
|
|
Where `user-handle` is either the senders's handle,
|
|
|
|
or `Hotmail`, if sent from the Notification Server itself.
|
|
|
|
|
|
|
|
Where `friendly-name` is either the URL-encoded Friendly Name of the sender,
|
|
|
|
or `Hotmail`, if sent from the Notification Server itself.
|
|
|
|
|
|
|
|
Where `length` is the `length` in bytes of `data`.
|
|
|
|
|
|
|
|
Where `data` is the body of the message,
|
|
|
|
usually containing a `MIME-Version` header and a `Content-Type`.
|
|
|
|
|
|
|
|
# Examples
|
|
|
|
|
|
|
|
## Client initated
|
|
|
|
|
|
|
|
### Unacknowledged message
|
|
|
|
```
|
|
|
|
C: MSG 1 U 75
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/plain;charset=UTF-8
|
|
|
|
|
|
|
|
unacknowledged
|
|
|
|
```
|
|
|
|
|
|
|
|
### Acknowledged message
|
|
|
|
```
|
|
|
|
C: MSG A 2 73
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/plain;charset=UTF-8
|
|
|
|
|
|
|
|
acknowledged
|
|
|
|
S: ACK 2
|
|
|
|
```
|
|
|
|
|
|
|
|
### Negative-Acknowledged message
|
|
|
|
```
|
|
|
|
C: MSG 3 2 85
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/plain;charset=UTF-8
|
|
|
|
|
|
|
|
negatively acknowledged?
|
|
|
|
S: NAK 3
|
|
|
|
```
|
|
|
|
|
|
|
|
### Data message
|
2024-10-15 13:14:20 -04:00
|
|
|
*Since [MSNP9](../versions/msnp9.md).*
|
2024-10-14 16:13:21 -04:00
|
|
|
```
|
|
|
|
C: MSG 4 D 73
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: application/octet-stream
|
|
|
|
|
|
|
|
data message
|
|
|
|
S: ACK 4
|
|
|
|
```
|
|
|
|
|
|
|
|
### Poorly formatted data message
|
2024-10-15 13:14:20 -04:00
|
|
|
*Since [MSNP9](../versions/msnp9.md).*
|
2024-10-14 16:13:21 -04:00
|
|
|
```
|
|
|
|
C: MSG 5 D 74
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/plain;charset=UTF-8
|
|
|
|
|
|
|
|
data message?
|
|
|
|
S: 282 5
|
|
|
|
```
|
|
|
|
|
|
|
|
### Invalid context (Notification Server)
|
|
|
|
*Inherited from being an unimplemented command.*
|
|
|
|
```
|
|
|
|
C: MSG 6 U 0
|
|
|
|
```
|
|
|
|
|
|
|
|
Server disconnects client.
|
|
|
|
|
|
|
|
## Server initated
|
|
|
|
|
|
|
|
### Notification Server
|
|
|
|
|
|
|
|
#### Initial profile
|
|
|
|
*NOTE: This profile is from [MSNP2](../versions/msnp2.md), later versions have longer initial profiles.*
|
|
|
|
```
|
|
|
|
S: MSG Hotmail Hotmail 95
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/x-msmsgsprofile; charset=UTF-8
|
|
|
|
LoginTime: 1726321960
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
#### Initial e-mail configuration
|
|
|
|
*NOTE: This message is from [MSNP3](../versions/msnp3.md), the [MSNP2](../versions/msnp2.md) version of this is unknown.*
|
|
|
|
```
|
|
|
|
S: MSG Hotmail Hotmail 221
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/x-msmsgsinitialemailnotification; charset=UTF-8
|
|
|
|
|
|
|
|
Inbox-Unread: 1
|
|
|
|
Folders-Unread: 0
|
|
|
|
Inbox-URL: /cgi-bin/HoTMaiL
|
|
|
|
Folders-URL: /cgi-bin/folders
|
|
|
|
Post-URL: http://www.hotmail.com
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
#### New e-mail
|
|
|
|
```
|
|
|
|
S: MSG Hotmail Hotmail 342
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/x-msmsgsemailnotification; charset=UTF-8
|
|
|
|
|
|
|
|
From: Example User
|
|
|
|
Message-URL: /cgi-bin/getmsg?msg=MSG1728932553.00&start=1&len=12&curmbox=ACTIVE
|
|
|
|
Post-URL: https://loginnet.passport.com/ppsecure/md5auth.srf?lc=1033
|
|
|
|
Subject: Just saying hello.
|
|
|
|
Dest-Folder: ACTIVE
|
|
|
|
From-Addr: example@hotmail.com
|
|
|
|
id: 2
|
|
|
|
|
|
|
|
```
|
|
|
|
|
2024-10-15 13:14:20 -04:00
|
|
|
Since [MSNP3](../versions/msnp3.md), the `id` header was added for Passport automatic authentication support.
|
2024-10-14 16:13:21 -04:00
|
|
|
|
|
|
|
#### Mailbox activity
|
|
|
|
```
|
|
|
|
S: MSG Hotmail Hotmail 146
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/x-msmsgsactivemailnotification; charset=UTF-8
|
|
|
|
|
|
|
|
Src-Folder: ACTIVE
|
|
|
|
Dest-Folder: ACTIVE
|
|
|
|
Message-Delta: 1
|
|
|
|
|
|
|
|
```
|
|
|
|
|
2024-10-16 16:12:41 -04:00
|
|
|
#### System message
|
|
|
|
*NOTE: There may be other types of system messages, `Type` 1 is for a server shutdown message,
|
|
|
|
`Arg1` in this case would be the minutes before the server is set to shutdown.*
|
|
|
|
```
|
|
|
|
S: MSG Hotmail Hotmail 88
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: application/x-msmsgssystemmessage
|
|
|
|
|
|
|
|
Type: 1
|
|
|
|
Arg1: 5
|
|
|
|
|
|
|
|
```
|
|
|
|
|
2024-10-14 16:13:21 -04:00
|
|
|
### Switchboard Server
|
|
|
|
```
|
|
|
|
S: MSG example@hotmail.com example%20user 73
|
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/plain;charset=UTF-8
|
|
|
|
|
|
|
|
acknowledged
|
|
|
|
```
|
|
|
|
|
|
|
|
# Known changes
|
|
|
|
* [MSNP9](../versions/msnp9.md): Added acknoledgement type D.
|