yellows111
f38cb78dd8
USR is very big and would consider a break here ... Why does the spec imply that Switchboard has INF? Is that why every client implements it after MSNP8?
176 lines
3.9 KiB
Markdown
176 lines
3.9 KiB
Markdown
# 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.
|
|
|
|
Acknowledgement Type `D` is only defined in [MSNP9](../versions/msnp9.md) and above.
|
|
|
|
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
|
|
*This only happens in [MSNP9](../versions/msnp9.md).*
|
|
```
|
|
C: MSG 4 D 73
|
|
MIME-Version: 1.0
|
|
Content-Type: application/octet-stream
|
|
|
|
data message
|
|
S: ACK 4
|
|
```
|
|
|
|
### Poorly formatted data message
|
|
```
|
|
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
|
|
|
|
```
|
|
|
|
The `id` header is only added for [MSNP3](../versions/msnp3.md) and above for Passport automatic authentication support.
|
|
|
|
#### 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
|
|
|
|
```
|
|
|
|
### 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.
|