MSN Messenger Agreement Overview

zhaozj2021-02-16  48

Forehead

MSN Messenger is a chat tool developed by Microsoft and is currently a large user group in China. Using MSN Messenger can perform text chat, voice conversation, video conferencing, etc., can also view contacts online by this software. The latest version of the software is 6.1.

In 1999, Microsoft submitted a draft "MSN Messenger Service 1.0 Protocol" draft to IETF, which is the original version of MSN Messenger protocol. In the next few years, the company no longer discloses an upgrade of the MSN Messenger protocol and modify the official documentation of the details. But whether it is developing third-party chat client software (such as GAIM, Myim, etc.) or to do protocol analysis, must have an in-depth understanding of its communication protocol. Because of this, some civilians have conducted research on these agreements (see "related resources" section of this article).

When we are still sighing "this world, change", the MSN Messenger's agreement has reached the 10th edition, referred to as MSNP10, corresponding to MSN Messenger 6.1. MSN Messenger 6.0 uses MSNP9. Now Microsoft forces MSN Messenger users upgrade to 6.0 or 6.1, because the server is no longer supported by the version below MSNP8. The MSN Messenger protocol described in this paper and subsequent article is mainly for MSNP9 / MSNP10.

Connected

The MSN Messenger protocol is established above TCP / IP. In addition to file transfer and voice chat, all other situations are performed through the server.

On logic, there are three types of servers, each of which:

Dispatch Server, DS) - the server initially connected. Responsible to assign a suitable notification server to the client. The domain name is Messenger.hotmail.com, and the standard service port is 1863. After completing the dispatched task, cut off the TCP connection. Notification Server (NS) - The client needs to keep a connection server. Many tasks should be completed in this session, including login, change status, get a list of users, modify user information, launch chat, accept calls, mail notifications, exit, and so on. The service port is specified by the dispatch server, usually 1863. Wiring Server (SS) - The transit server used by the client between the client. Every time you open a chat window, the client and server create a TCP session. When the client needs to be filed or voice chat, send the system message to create a "point-to-point" session channel (which may turn to use UDP). The service port is usually 1863. The port used by the "point-to-point" communication is determined by the client automatically, such as file transfer usually uses 6891 ports. 2. Command

The MSN Messenger command uses a pure ASCII code. Use URL encoding for non-ASCII code characters. The syntax of the command is

XXX [ Trid param1 param2 ...]

Where is a blank character, is a carriage return, XXX is a 3-character command string, the Trid is a water number, paramx is parameter, [] is optional. The simplest command does not have a water number and parameter. For convenience, "" "" "" "" "/ x ??" represents , "/ x ??" represents a value of 0x ?? byte by "" "" / x ?? "by" "" "/ x ??". The red representation is issued by the client, and the blue represents the server. Examples of a MSN Messenger command are as follows: USR 18 TWN I Example@hotmail.com/R/NNNNNNNNNNNNN

3. Error

Whether the command is invalid, the parameter is invalid, whether the parameter is invalid, or is there any reason, the server can return an error. Format

XXX [ Trid]

Where XXX is a 3-digit string. Such as

Add 21 Al Non_existent@passport.com Non_existent@passport.com/r/n

205 21 / R / N

In the above example, Non_existent @ Passport.com is an unsausty account.

4. Message

The MSN Messenger message is compliant with the MIME 1.0 standard, consists of a message header with the message. Utfly UTF-8 encoding, the URL encoding format is also required in the message header, and the message body is directly used in binary data.

An example of a MSN Messenger message is as follows:

MIME-VERSION: 1.0 / r / n

Content-type: text / plain; charset = UTF-8 / R / N

X-MMS-IM-FORMAT: FN =% E5% AE% 8B% E4% BD% 93; EF =; CO = 0; CS = 86; PF = 0 / r / N

/ r / n

BHW98 / XE4 / XBD / XA0 / XE5 / XA5 / XBD / XEF / XBC / X81

According to a simple analysis, "% E5% AE% 8B% E4% BD% 93" is the UTF-8 plus URL code of "Song", and "BHW98 / XE4 / XBD / XA0 / XE5 / XA5 / XBD / XEF / XBC / x81 "is" BHW98 Hello! "UTF-8 encoding.

〖related resources〗

URL encoding: RFC 1738UTF-8 encoding: RFC 2279mime 1.0: RFC 2045, RFC 2046, RFC 2047, RFC 2048, RFC 2049Blobsy open source site: www.maldivianunderground.net/blobsy/mike mintz Site: www.hypotheetic. ORG / DOCS / MSN / MSN Messenger official website: Messenger.msn.com Corner Brain Studio (kernel Studio): www.kernelstudio.com

First release: 2004-01-13 Last revision: 2004-01-15

转载请注明原文地址:https://www.9cbs.com/read-23660.html

New Post(0)