2.2.2.2.2 UDP: Presence Response
The UDP presence response message is used when a device receives a presence request. The device responds with a presence response message to notify that it is available.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Message_Type |
Discovery_Type |
Connection_Mode |
|||||||||||||||||||||||||||||
Device_Type |
Device_Name_Length |
||||||||||||||||||||||||||||||
Device_Name (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
DeviceIdSalt |
|||||||||||||||||||||||||||||||
DeviceIdHash |
|||||||||||||||||||||||||||||||
PrincipalUserNameHash |
|||||||||||||||||||||||||||||||
MacAddress |
|||||||||||||||||||||||||||||||
... |
Message_Type (1 byte): Indicates current message type, in this case, Discovery (1).
Discovery_Type (1 byte): Indicates type of discovery message, in this case, Presence Response (1).
Connection_Mode (2 bytes): Displays types of available connections, which can be one of the following values.
-
Value
Meaning
0
None
1
Proximal
2
Legacy
Device_Type (2 bytes): SKU of the device, which can be one of the following values.
-
Value
Meaning
1
Xbox One
6
Apple iPhone
7
Apple iPad
8
Android device
9
Windows 10 Desktop
11
Windows 10 Phone
12
Linux device
13
Windows IoT
14
Surface Hub
15
Windows laptop
16
Windows tablet
Device_Name_Length (2 bytes): Length of the machine name of the device.
Device_Name (variable): This is character representation of the name of the device. The size of the list is bounded by the previous message.
DeviceIdSalt (4 bytes): A randomly generated salt.
DeviceIdHash (4 bytes): Salted SHA-256 hash of the internal CDP device ID. This is used to correlate the advertising device to a list of known devices without advertising the full device ID.
PrincipalUserNameHash (4 bytes): Salted SHA-256 Hash of the logged on user's account email. Calculated by using the DeviceIdSalt. and PrincipalUserNameHash.<3>
MacAddress (6 bytes): A Bluetooth MAC address used to de-duplicate devices.<4>