# Microsoft Notification Protocol

Microsoft Notification Protocol (MSNP n'est pas l'acronyme de Microsoft Network Protocol ou de Mobile Status Notification Protocol) est un protocole développé par Microsoft. Il était utilisé par Windows Live Messenger ainsi que par ses anciennes versions MSN Messenger et Windows Messenger, il est désormais uniquement utilisé par Skype. Il était aussi utilisé par d'autres logiciels comme aMSN ou Pidgin. MSNP a été introduit pour la première fois avec la première version de MSN Messenger en 1999.

## Historique des versions
### MSNP1

MSNP1 n'a jamais été rendu public, il a probablement été utilisé pendant les premières étapes de conception-développement avec MSN Messenger 1

### MSNP2

A été rendu public en 1999 dans un Internet Draft.

### MSNP3 à MSNP7

Ces versions n'ont jamais été utilisées dans un programme publié.

### MSNP8

MSNP8 a introduit une nouvelle méthode d'authentification, désormais il faut envoyer des autorisations aux serveurs et retourner la bonne séquence (challenge). C'est désormais la version minimale acceptée par le service .NET Messenger après que Microsoft a bloqué les versions antérieures pour des raisons de sécurité. Les clients précédents obsolètes ne peuvent plus se connecter, ce qui force les utilisateurs à mettre à jour leur clients.
La version 5.0 de MSN Messenger est la seule qui utilise cette version de MSNP. Windows Messenger utilise MSNP8 par défaut, dans ses versions 4.7 à 5.1.
Cette version de protocole supporte l'utilisation des webcams et des appels vocaux en point-à-point.

### MSNP9

MSNP9 a été introduit avec MSN Messenger 6, il supporte les messages de type "D type" (données), qui sont utilisés pour transférer les images et les émoticônes perso entre les clients, les images de caméra image-par-image (plutôt qu'au format flux(stream) comme dans le format WMV utilisé dans Windows Media Player) et un système amélioré de transport de la voix, à noter également une amélioration de la traversée des NAT pour le transfert des fichiers.

### MSNP10

Utilisé dans MSN Messenger 6.1, après que Microsoft a commencé à bloquer les versions précédentes en octobre 2003. Toutefois, ce ne fut pas un changement majeur, la seule modification évidente étant l'intégration avec le carnet d'adresses d'Hotmail.

### MSNP11

Utilisé par MSN Messenger 7.0

### MSNP12

Utilisé par MSN Messenger 7.5.

### MSNP13

Utilisé par Windows Live Messenger 8.0, MSNP13 compte un nombre important de changements. Le plus remarquable étant que la synchronisation avec la liste de contacts a été supprimée: les clients doivent à la place utiliser une requête SOAP à un serveur de contacts, connu comme "ABCH" ( ABCH signifie Address Book Clearing House, le carnet d'adresse utilisé par tous les MSN et les services Windows Live). Le client doit envoyer les informations de contacts au serveur pour obtenir en retour les informations de présence.

### MSNP14

MSNP14 introduit l'interopérabilité avec Yahoo! Messenger.

### MSNP15

MSNP15 est la version de protocole introduite avec Windows Live Messenger 8.1 le 8 septembre 2006. Il est basé sur MSNP14 mais utilise un mécanisme d'authentification différent appelé RPS (Relying Party Suite). Il remplace TWN "Tweener", authentification utilisée dans les versions de protocole jusqu'à la 14.
En plus de ce nouveau mécanisme d'authentification, Microsoft prévoit de faire plus de "roaming" des propriétés utilisateurs. Notamment l'image utilisateur, et dans le futur son message personnel. Ils seront donc les mêmes d'où que l'utilisateur se connecte.
De plus, le support de la localisation utilisateur a été ajouté au message personnel, bien que cette fonctionnalité ait été supprimée des clients Windows Live Messenger postérieurs au 8.1.

### MSNP16

MSNP16 est le nouveau protocole utilisé dans Windows Live Messenger 9.0 Beta. Il n'y a pas d'information sur les nouveautés de ce protocole.

### MSNP17

MSNP17 est identifié par les serveurs Windows Live Messenger sur messenger.hotmail.com, mais non utilisés par n'importe quel client officiel publié par Microsoft.

### MSNP18

MSNP18 est utilisé dans Windows Live Messenger 2009 (14.0). Sa principale nouveauté est la fonctionnalité de groupes comme persistantes des conversations groupées. Les données UUX ont été étendues pour inclure les données des scènes Messenger.

### MSNP19

Utilisé dans Windows Live Messenger 2011.

### MSNP21

Utilisé dans Windows Live Messenger 2012.

### MSNP22

Similaire à MSNP21, mais utilisé uniquement dans l'application de chat de Windows 8.0.

### MSNP24

Utilisé dans Skype.

### Pour en savoir plus

Site traitant du protocole MSNP Documentation du protocole MSNP24 Statut du protocole MSNP