Protocols/MSNP/MSNP9/Changes

From NINA Wiki
Jump to navigation Jump to search
MSNP Protocol
Version 9
OverviewChanges
Overview
IntroductionTermsClients
Reference
Error ListCommandsRelying Party SuiteSpotlife
Services
XMPPHTTP GatewayTabsActivities
Documentation
Development ToolsMSNP Grid
PolygamyURLs used by MSN
Documents
Protocol Versions
Version 21
Version 18
Version 16
Version 15
Version 14
Version 13
Version 12
Version 11
Version 9
Version 8
Version 2
MSNC
IntroductionP2PObject DescriptorDisplay PicturesFile Transfer
Scenarios
Microsoft Messenger for Mac
MSNP on WebTV (MSNTV)

Ping replies

The QNG command now has a new parameter, an integer ranging from 0 to 60. It represents the number of seconds to wait before sending another PNG, and is reset to 50 every time a command is sent to the server. In environments where idle connections are closed after a short time, you should send a command to the server (even if it's just a PNG) at least this often.

>>> PNG\r\n
<<< QNG 41\r\n
>>> PNG\r\n
<<< QNG 49\r\n

Presence

ILN, NLN, and CHG all have an extra optional parameter on the end, a URL-encoded MSNObject. This MSNObject describes your display picture.

Paging

The PAG command is disabled in MSNP9, and attempting to use it will cause you to receive error 715. It's been replaced by the PGD command, which is exactly the same, but with an extra, fourth, parameter. The additional parameter now indicates what type of device the message must be delivered to.

  • MSN Mobile Device: "1"
  • MSN Direct Device: "2"

The length of the payload is now the fifth parameter.

"D" Acknowledgement Type

The MSG command in a Switchboard session now accepts an acknowledgement type of D (along with A, N and U). The official client always (and only) uses it for special Protocols/MSNP/MSNC1 messages. Sending MSNC1 messages with another type than D will get you disconnected with no error. It generally behaves like the A type, but gives numerical error codes for some badly formed messages before you get disconnected. Here is a successful example:

>>> MSG 3 D 819\r\n
. . .
<<< ACK 3\r\n