# Table of contents:
- Introduction
- Client/Request
- Server/Response
- Examples
- Request to share folders (Type 1 messages)
- Start an MSNSLP session (Type 3 messages)
- Log out an endpoint (Type 4 messages)
- Close a conversation window (Type 5 messages)
- Update address book (Type 6 messages)
- Close a contact request dialog (Type 7 messages)
- Log out all endpoints (Type 8 messages)
- Setup a TURN session (Type 10 messages)
- Known changes
# Introduction
UUN is a command introduced with MSNP13.
It is a Notification Server command, WITH a request payload and without a response payload.
Sends a user-to-user notification message.
For the version of the command that is sent from the server that relates to another user, read UBN.
# Client/Request
UUN TrID user-handle{:machine-guid} type length
payload
Where user-handle is the user handle of the user you'd like to send this message to.
Where machine-guid is the target endpoint of the user-handle.
Not specifying this parameter sends this notification to all endpoints.
Where type is one of the following values:
1: Sharing folders.2: Unknown. (No known examples.)3: MSNSLP session data.4: Log off remote endpoints.5: Close a conversation window.6: Address book update notifications.7: Close a contact request window.8: Log off all endpoints.9: Unknown. (No known examples.)10: TURN setup request.11: RTC Activity. (No known examples.)12: Tunneled SIP. (No known examples.)
Where length is the size (in bytes) of the payload.
Where payload is the data you'd like to send to the other user,
of which the format of data depends on the type parameter.
# Server/Response
UUN TrID OK
Where OK is always OK.
# Examples
# Request to share folders (Type 1 messages)
NOTE: Payload is usually a <SNM> XML element.
C: UUN 1 anotheruser@hotmail.com 1 78
<SNM opcode="SNM" csid="{2F39C0A4-BD46-A16C-78EF-4E2B52D62DFA}" priority="1"/>
S: UUN 1 OK
# Start an MSNSLP session (Type 3 messages)
NOTE: Payload is a MSNSLP message.
NOTE: Due to a programming oversight, the terminating null byte that usually is included in MSNSLP bodies are omitted.
The length parameter reflects this, but the inner Content-Length does not.
C: UUN 2 anotheruser@hotmail.com 3 650
INVITE MSNMSGR:anotheruser@hotmail.com MSNSLP/1.0
To: <msnmsgr:anotheruser@hotmail.com>
From: <msnmsgr:example@hotmail.com>
Via: MSNSLP/1.0/TLP ;branch={2D718229-7A62-4DFF-89DA-B5BEC1EC4A38}
CSeq: 0
Call-ID: {F13B5C79-0126-458F-A29D-747C79C56530}
Max-Forwards: 0
Content-Type: application/x-msnmsgr-transreqbody
Content-Length: 307
NetID: 0
Conn-Type: Firewall
TCP-Conn-Type: Firewall
UPnPNat: false
ICF: false
IPv6-global:
Capabilities-Flags: 1
Nat-Trav-Msg-Type: WLX-Nat-Trav-Msg-Direct-Connect-Req
Bridges: TRUDPv1 TCPv1 SBBridge TURNv1
Hashed-Nonce: {28DDCEB3-CB9A-5138-9227-E7B6D14089B3}
SessionID: 0
SChannelState: 0
S: UUN 2 OK
# Log out an endpoint (Type 4 messages)
NOTE: Payload is optional.
C: UUN 3 example@hotmail.com;{8607450b-5d8f-4c8f-93c4-6bb9ac1179ca} 4 14
goawyplzthxbye
S: UUN 3 OK
# Close a conversation window (Type 5 messages)
NOTE: Payload is a Roster.
C: UUN 4 example@hotmail.com 5 25
987654321;10.0.1.200:1863
S: UUN 4 OK
# Update address book (Type 6 messages)
NOTE: Payload is optional.
C: UUN 5 example@hotmail.com;{8607450b-5d8f-4c8f-93c4-6bb9ac1179ca} 6 21
please sync with ABCH
S: UUN 5 OK
# Close a contact request dialog (Type 7 messages)
NOTE: Payload is the user handle to dismiss and 1.
No other value except 1 is observed to do anything.
C: UUN 6 example@hotmail.com 7 25
anotheruser@hotmail.com 1
S: UUN 6 OK
# Log out all endpoints (Type 8 messages)
NOTE: Payload is optional.
C: UUN 7 example@hotmail.com 8 4
gtfo
S: UUN 7 OK
C: OUT
Client disconnects from server.
Server disconnects client.
# Setup a TURN session (Type 10 messages)
NOTE: Payload is a MSNSLP message.
NOTE: Due to a programming oversight, the terminating null byte that usually is included in MSNSLP bodies are omitted.
The length parameter reflects this, but the inner Content-Length does not.
C: UUN 8 anotheruser@hotmail.com 10 475
ACK MSNMSGR:anotheruser@hotmail.com MSNSLP/1.0
To: <msnmsgr:anotheruser@hotmail.com>
From: <msnmsgr:example@hotmail.com>
Via: MSNSLP/1.0/TLP ;branch={58B6AF16-B1AB-49AF-8702-4F95E6C5FAAC}
CSeq: 0
Call-ID: {00000000-0000-0000-0000-000000000000}
Max-Forwards: 0
Content-Type: application/x-msnmsgr-turnsetup
Content-Length: 138
ServerAddress: 10.0.3.1
SessionUsername: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
SessionPassword: AAAAAAAAAAAAAAAAAAAAAA==
S: UUN 8 OK
# Known changes
- MSNP16: UUN commands can now be sent to other machines logged in as your user by specifying the Machine GUID. Types 4-8 have been implemented.