# 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
UBN is a command introduced with MSNP13.
It is a Notification Server command, WITH a response payload.
Receives a user-to-user notification message from a buddy.
For the command that sends these notification messages, read UUN.
# Client/Request
This command can not be sent from the client.
# Server/Response
UBN 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.
If this is specified, this parameter sends specifies which endpoint sent this notification.
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 have received,
of which the format of data depends on the type parameter.
# Examples
# Request to share folders (Type 1 messages)
NOTE: Payload is usually a <SNM> XML element.
C: UBN example@hotmail.com 1 78
<SNM opcode="SNM" csid="{2F39C0A4-BD46-A16C-78EF-4E2B52D62DFA}" priority="1"/>
# 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: UBN example@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
# Log out an endpoint (Type 4 messages)
NOTE: Payload is optional.
C: UBN example@hotmail.com;{44bfd5a4-7450-4bda-ba3a-c51b3031126d} 4 14
goawyplzthxbye
# Close a conversation window (Type 5 messages)
NOTE: Payload is a Roster.
C: UBN example@hotmail.com 5 25
987654321;10.0.1.200:1863
# Update address book (Type 6 messages)
NOTE: Payload is optional.
C: UBN example@hotmail.com;{44bfd5a4-7450-4bda-ba3a-c51b3031126d} 6 21
please sync with ABCH
# 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: UBN example@hotmail.com 7 25
anotheruser@hotmail.com 1
# Log out all endpoints (Type 8 messages)
NOTE: Payload is optional.
C: UBN example@hotmail.com 8 4
gtfo
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: UBN example@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==
# Known changes
- MSNP16: UBN commands can now be received from other machines logged in as your user by specifying the Machine GUID. Types 4-8 have been implemented.