msnp-wiki/docs/commands/msg.md

4.2 KiB

Introduction

MSG is a command introduced with MSNP2.

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 response is sent if the message is sent successfully.
  • N: Negative-Acknowledged, a NAK 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 defined since MSNP9.

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

Since MSNP9.

C: MSG 4 D 73
MIME-Version: 1.0
Content-Type: application/octet-stream

data message
S: ACK 4

Poorly formatted data message

Since MSNP9.

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, 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, the MSNP2 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

Since MSNP3, the id header was added 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

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

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: Added acknoledgement type D.