Windows Live Messenger Has a New Protocol Underway

I’ve been messsing around with some protocol stuff in Windows Live Messenger (formerly known as MSN). The current version of the protocol is MSNP15. This does not stand for Microsoft Network (MSN) Protocol, but stands for Microsoft Notification Protocol. Sending a VER message to the server checks to see if you have an acceptable version of the protocol to connect with. Versions below seven do not return proper responses (those were never used in public programs), but all other protocols that have been used respond correctly.  MSNP16 resepons correctly, even though the current version is MSNP15!  What I think this means is that the next version of the protocol is underway and there may be some new features in the upcoming Windows Live Messenger release. The Windows Live Messenger team has been hard at work giving us a great product. I love Messenger and I think it provides a very nice work environment. It just looks and runs so much better than AIM (although AIM Pro has some features I really love). One thing I really love about the development cycle is that they get personal with the program’s users. I found this information out thanks to Python and connected to the server with the built-in socket module that provides a “low-level networking interface” (a.k.a. the TCP/IP protocol used to connect Windows Live Messenger). Here’s the code I used to do this:

#Start Code
import socket
HOST = ‘’ # The remote host
PORT = 1863 # The same port as used by the server
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send(‘VER 0 MSNP16 CVR0\r\n’)
data = s.recv(1024)
print ‘Received’, repr(data)
#End Code

I’m going to be working on a little text-based Windows Live Messenger in Python.




Turns out someone discovered this before me by using netcat.


July 25, 2007 at 2:56 am 1 comment

Back to Work

After forgetting about this blog for quite some time, I decided that I wasn’t going to waste an account with one small post.  No, it is time for me to start posting some content.  Expect code samples, project ideas, and commentaries on recent happenings in the geek world.  Stay tuned.


July 7, 2007 at 10:06 pm 1 comment


Hello everyone, I’m Vainentree.  I’ve just started my blog The Nerdcan.  What is a nerdcan?  Well, I was thinking about a good name to use and it just came to me.  A can is a storage device and so a nerdcan is a storage device for all things nerdy.  I am going to store all my nerdy ideas, frustrations, and tips in my nerdcan.  Hopefully you’ll be able to find something in the nerdcan that you will enjoy.



June 5, 2007 at 7:06 pm Leave a comment

Newer Posts

July 2018
« Sep