From NINA Wiki
Jump to navigation Jump to search


Read additional frequently asked questions for clients and the Escargot service.


Since the original sort of lacked a good overview page, because it just redirected to Version 8, below is the former side bar, which will be turned back into a sidebar later, but for now is a temporary overview/index.

Protocols/MSNP/Overview can probably be merged into this, as well as an overview of commands or at the very least the highest level of information. In the end, the style and layout, as well as sidebar should match Protocols/OSCAR.

If a page seems to be missing, more than likely the capitalization is incorrect because it was all over the place in the import. So fix or report missing pages.

Some fancy language needs to be here describing everything.

Successful login logs:


Windows Live Network Protocol

Windows Live Client Protocol


Client Logs



  • Need menu like OSCAR w/ just version numbers, and template should allow passing of version number and/or page depending, even if not in use for now, have a default template ready w/ it including categories.
  • If it's only on, it all needs to be properly organized here, not all copy/pasted willy nilly like 7th grade book report on General Smedley Butler. All should be listed here, as seen below, so that when pages are being cleaned up things aren't re-imported. Always include Protocols/MSNP category.
    • In fact, just import everything, because if Microsoft won't put everything in one place, we will. Also external links to further information related to the protocol can be linked, so long as their content is imported as it's clear people want madd creditz for their content but they're too lazy/stupid to keep their sites up, so they're only as reliable as the information they can provide until they're flushed down the Internet toilet.
  • Protocols/MSNP/General/Commands and Protocols/MSNP/Reference/Commands should be merged into just Protocols/MSNP/Commands.
  • Protocols/MSNP/General/Connections and Protocols/MSNP/General/Overview can be moved out of general.
  • Setup forum @
  • Protocols/MSNP/XMPP
  • Protocols/MSNP/Development
  • Protocols/MSNP/Gateway
  • Protocols/MSNP/Tabs
  • Protocols/MSNP/Activities





MSNP 8 - 18:
- (site down)
- (Circles/Groups)


MSNP 21:

- Summary:
- Docs:
- SSO Sample:
- MsgrConfig.asmx sample:

* Compare imported from XML dump with the following to make sure it's as equally badly formatted before improving, because right now it's even worse: 
* Already poorly imported MSN Object from [[Protocols/MSNP/MSNC/MSN_Object]], needs to be cleaned up
* Need to import: 


The MSN polygamy program changes one byte (0xb7 -> 0xb6) at 0x1406b1 (7.0.0770):

- 01406b0: b73d 0000 0f00 b585 0001 6a00 ffff 2877
+ 01406b0: b63d 0000 0f00 b585 0001 6a00 ffff 2877

Location of this byte in several version of MSN (English):

MSN 1.0.0863: 0x 263ce
MSN 2.0.0083: 0x 2acef
MSN 2.0.0085: 0x 2ad07
MSN 2.2.1053: 0x 17160
MSN 3.0.0286: 0x 1f234
MSN 3.5.0077: 0x 30389
MSN 3.6.0025: 0x 2f82d
MSN 4.5.0121: 0x 4e692
MSN 4.6.0073: 0x 1e794
MSN 4.6.0083: 0x 2b9c4
MSN 5.0.0544: 0x 46739 | nexus: 0x655a0 | 0x f048
MSN 6.0.0602: 0x ccbf2 | nexus: 0x1f164 | 0x1f238
MSN 6.2.0137: 0x dffe1 | nexus: 0x22ce0 | 0x22d68
MSN 7.0.0777: 0x1406b1 | nexus: 0x2cd80 | 0x2ce18
MSN 7.0.0813: 0x147079 | nexus: 0x2d098 | 0x2d140
MSN 7.0.0820: 0x147112 | nexus: 0x2cfb8 | 0x2d060
MSN 7.5.0311: 0x157607 | nexus: 0x2e8f8 | 0x2e9b8
MSN 7.5.0324: 0x1580ec | --             | 0x2e9e8
WLM 8.1.0178: 0x1430ef

MSN <  5: uses registry for
MSN 5 - 7.0: uses nexus (5 - 6 also use registry as cache for NS)
MSN 7.5 - 8: uses RST
WLM 2009+: uses RST2


MSN  1.0  (1999-07-17):                                                   2 
MSN  2.0  (1999-11-16):                                                 3 2
MSN  2.2+ (2000-03-28):                                               4 3
MSN  3.0+ (2000-08-07):                                             5 4
MSN  4.5+ (2002-09-24):                                         7 6 5 4
MSN  5.0  (2003-02-19):                                       8
MSN  6.0  (2003-07-11):                                     9 8
MSN  6.1+ (2004-06-01):                                  10 9
MSN  7.0  (2005-03-31):                               11 10
MSN  7.5  (2005-10-18):                            12 11 10
WLM  8.0  (2006-06-19):                      14 13
WLM  8.1+ (2007-01-29):                   15 14 13
WLM  9.0  (2007-11-07):                16 15 
WLM 14    (2009-01-07):          18 17
WLM 15    (2010-09-30): 21 20 19 18 17
WLM 16    (2012-08-07): 21 20 19 18 17

MSN Era (199X - 2012)

MSNP0 - Existence unconfirmed; most likely doesn't exist
MSNP1 - Existence unconfirmed; possibly doesn't exist
MSNP2 - Used in MSN Messenger 1.0; first publicly released version of the MSNP protocol; recognized MD5 and `CTP` authentication methods (plaintext); supports basic contact management (add/remove contacts to `FL`, `AL`, and `BL`), `RL` notifications, sending service invitations to unregistered users via e-mail (`SND`), and switchboard messaging.
MSNP3 - Used in MSN Messenger 2.0 and WebTV/MSNTV build 2.5; removed `CTP` authentication; introduced `IMS` command to toggle the ability to send switchboard requests and receive switchboard invitations (only officially used on WebTV's Messenger client)
MSNP4 - Used in MSN Messenger 2.2; No known changes
MSNP5 - Used in MSN Messenger 3.0; introduces custom user/contact properties (`PRP`/`BPR`), server-side alerts (`NOT`), paging MSN Mobile devices (`PAG`/`IPG`), and the ability to add a custom message and name to service invitation emails (`SDC`)
MSNP6 - Used in MSN Messenger 3.6 and WebTV/MSNTV build 2.8; Now requires users to have their account verified to use services and introduces required challenge/response authentication post-login (`CHL`/`QRY`)
MSNP7 - Used in MSN Messenger 4.5 - 4.7 (to our knowledge); Adds support for contact groups
MSNP8 - Used in MSN Messenger 5.0, Windows Messenger 5.1, and MSN Messenger 4.7 builds 2005 - 3001; obsoletes MD5 authentication in favor of new HTTPS-based `TWN` authentication; restricts MSN subscriber accounts to be logged on to MSN Explorer to use Messenger services; adds capabilities support for contacts
MSNP9 - Used in MSN Messenger 6.0; adds basic P2P support with the MSNObject for contacts and the `D` type for switchboard messages, which facilitates the MSNC P2P protocol; `QNG` now sends an argument - a randomly generated number that is believed to range from 40 - 60 that signifies the timeout in seconds before the client should send another `PNG`
MSNP10 - Used in MSN Messenger 6.1 and 6.2; starts integrating Messenger with Hotmail with several updated versions of commands and using UUIDs in place of numeric IDs for user items (on official servers Messenger and Hotmail groups were also integrated with each other); also allows changing a user's display name through `PRP`
MSNP11 - Used in MSN Messenger 7.0; adds support for notifying users of updated MSN Spaces blogs from contacts, managing MSN Mobile credits (`SBS`), server-side client configuration (`GCF`), `UBX` (setting user details like PSM, current media, etc.), and retrieval of OIMs (offline messages, at the time called Offline Mobile Messages and were only possible to send through supported mobile devices); challenge/response authentication is updated to be more complex.
MSNP12 - Used in MSN Messenger 7.5; still uses `TWN` authentication method but official client used an HTTPS SOAP-based login service for the process (the previous HTTPS service was primarily header-based); adds support for network IDs to identify contacts from different networks (in this case mainly to identify Messenger and phone contacts) and also allows for real-time and detailed notifications regarding contacts' MSN Spaces blogs thanks to `NOT`; sends capabilities ID of users in switchboard rosters/join notifications
MSNP13 - Used in Windows Live Messenger 8.0 betas (and possibly some final versions?); deprecates client-side `GCF` in favor of server-side `GCF` sent during the initial authentication phase; also deprecates `SYN` and contact/group-related commands in favor of SOAP-based ABCH services and XML-based `ADL` and `RML` commands for adding/removing contacts to lists (ABCH services are used to better integrate Messenger and Hotmail together) - `ADL` is also used to sync contact lists to the server using data from the ABCH services, so server-side contact lists on the protocol server are nonexistent at this point; `GTC` is obsoleted and sending the command results in a server disconnection; allows sending of OIMs on desktop clients through SOAP services; server can now request client for its lists (`RFS`); support for sending of client-specific messages to other users (`UUN`/`UBN`); server-side ABCH sync notifications with `NOT`
MSNP14 - Used in Windows Live Messenger 8.0.0792; supports interoperability with Yahoo! Messenger (`UUM`/`UBM`); switchboard invitations can now be marked by the server to indicate if the client should connect through direct protocol servers or gateways
MSNP15 - Used in Windows Live Messenger 8.1 and 8.5; adds `SSO` login method - uses the same HTTPS SOAP login service, but now [another challenge/response function]( is required to login completely; 8.5-specific features: allows the ability to make profile roaming through several new ABCH services and new MSNObject type "14" is defined ("Location"; removed after betas for privacy reasons)
MSNP16 - Used in Windows Live Messenger 9.0 Beta and Messenger:mac 8.0.2; introduces support for MPoP (Multiple Points of Presence), allowing users to sign in on several devices at once with the same account, and signature sounds (sounds that your contacts can hear when you log in); switchboards now have to accommodate with the new MPoP system by requiring switchboard initiators to invite their other sessions and for the servers to send join notifications and roster information in a specific order
MSNP17 - Used in early Windows Live Messenger 2009 betas; not much is known about it but it appears to have support for an earlier version of Circles (those use ABCH services that are undocumented at the moment)
MSNP18 - Used in later Windows Live Messenger 2009 betas and final WLM 2009 builds; official client uses revamped version of the HTTPS SOAP login service, but `SSO` authentication method is still the same; utilizes `UUM` to send offline messages in place of OIM SOAP services (SOAP is still used to retrieve them); supports Circles, officially named Groups (a mix of ABCH services and new/reutilized MSNP commands, `SDG` being a major example of a new command heavily used for Circles); introduces ability to report users from NS (`VAS`, at this time currently undocumented)
MSNP19 - Existence unknown
MSNP20 - Used in Windows Live Messenger 2010 Beta; not much else is known aside from this right now
MSNP21 - Used in Windows Live Messenger 2011 and 2012; complete revamp of MSNP protocol; uses `PUT`/`NFY PUT` to broadcast statuses of contacts to users and `SDG` completely replaces switchboards; `ADL` and `RML` commands have their payload data restructured; server migration commands can now be specified to redirect to an HTTP gateway server; introduces dedicated multi-user chats referred to as "Multiparties"; setting PSM is now delegated to a web service; introduces ability to tell other PoPs when you close a window in one session

Metro & Post-Live Era (2012 - 2019(?))

MSNP22 - Used in Windows 8's UWP Messaging app; only works through HTTPS gateway; official client used `WEB` authentication method, but official servers also accepted `SSO` method as well; only login portion has been documented fully, the rest is up for debate
MSNP23 - Existence unconfirmed; most likely doesn't exist
MSNP24 - Another revamp of the MSNP protocol used in Skype clients from 6.14 all the way to 7.x (Windows); new commands are used to authenticate (meaning no specified authentication methods anymore) and also for normal service usage (`SDG` being a major exception), and almost all currently available commands are payload commands; the fact that Microsoft kept this version of MSNP in use some time after they discontinued their Messenger service (and finally killed off the servers for that around 2017) until around 2019 is surprising, as at that point MSNP as a protocol was around 20 years old and on life support
MSNP25 - Speculation has been made about this version potentially existing due to the behavior of the protocol servers when MSNP24 was initially discovered, but at this point we still don't have hard proof that it even existed at all.
MSNP26+ - Most likely that these versions don't exist, period

URLs used by MSN

- ``: MSNP connection; all versions
- ``: MSNP connection; some betas, including 5.0.0327?
- ``: HTTP proxy for around the MSNP connection; all versions
- ``: Provides login url; MSN 5 - 7.0
- ``: MsgrConfig file that specifies tabs, ads, etc; MSN 6+
- ``, ``: IDCRL login; MSN 7.5+
- ``: SOAP contacts; WLM 8

Non-essential/additional services:
- ``, ``: Offline messaging servers, send and receive respectively
- ``: HTTP(S) authentication to Windows Live ID and acquiring of x509 certificates for secure peer-to-peer (p2p) connections for the Sharing Folders feature
- `*`: Online storage of user tile, status message, display name, and Windows Live Space storage? WLM 8.0+?
- ``: What's New service; WLM 2009+
- ``: Software Quality Management; telemetry/log submission
- [` URLs`]( URL shortener for various Microsoft/MSN/Live services and downloads
- ``: "To set an anonymous unique ID for a user to personalize the Windows Live experience"
- ``: "To access the latest Certificate Revocation List (CRL) in order to check the validity of a certificate"
- `*`: "Various core Messenger operations. For example, echo servers that are used to establish direct connectivity between two messenger clients for peer-to-peer (p2p) communication when clients are behind firewalls"
- ``: "Media relay used to transfer binary data (files, voice, or video)"
- ``: "To download advertising content display in the client and to download ad-sponsored personal expression content, such as display pictures, and emoticons"
- ``: "Used by Messenger activities/games applications that run inside Messenger applications"
- ``: "For messenger image files"
- ``: "For the contact card"
- ``: "Media relay used for voice"

Final URLs from this Microsoft URL shortener.

```	"No such link"	?	?	?	?	"No such link" -> ->	"No such link"	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	?	? ->	?	?	?	?	?	? ->	?	?	?	?	?	?	?	?	?	?	?	?	?	? ->	? -> -> -> -> -> -> ->,id=507,ru=http%3A%2F%2Fmessenger%2Ehotmail -> -> ->	? ->	? ->	?	?	? -> ->	? -> -> -> -> -> -> -> -> "No such link"


Clicking "MSN Today" does a request to MSN also keeps trying to get that URL for a while, until it gives up. When it gives up, it removes the "MSN Today" button.

Example response:


Here is a list of documents that may prove useful:





If you have pcap files from Messenger, it would be interesting to share them as they will be useful in order to understand the protocol.

On (now defunct), a search for "msnms" gave these files: