MQTT
Happy Bubbles Bluetooth Presence Detectors are designed to communicate over MQTT and will send Bluetooth Low Energy advertisements to the selected MQTT server over QoS 0 type message. The payload of the messages is in JSON format.
Happy Bubbles will publish all advertisments it sees to the MQTT topic:
happy-bubbles/ble/<the-hostname>/raw/<the-bluetooth-MAC-address>
with a payload like:
{
"hostname": "living-room",
"mac": "dd6ed85b7a80",
"rssi": -94,
"is_scan_response": "0",
"type": "3",
"data": "0201061aff4c000215e2c56db5dffb48d2b060d0f5a71096e000680068c5"
}
Eddystone beacons: if the advertisment looks to be in Eddystone format (the UID packet), it will also be published to the topic:
happy-bubbles/ble/<the-hostname>/eddystone/<the-Eddystone-namespace>
with a payload like:
{
"hostname": "<the-hostname>",
"beacon_type": "eddystone",
"mac": "<the-hostname>",
"rssi": -89,
"tx_power": c8,
"namespace": "<the-namespace>",
"instance_id": "<the-instance-ID>"
}
iBeacons: if the advertisment looks to be in iBeacon format, it will also be published to the topic:
happy-bubbles/ble/<the-hostname>/ibeacon/<the-iBeacon-UUID>
with a payload like:
{
"hostname": "living-room",
"beacon_type": "ibeacon",
"mac": "dd6ed85b7a80",
"rssi": -92,
"uuid": "e2c56db5dffb48d2b060d0f5a71096e0",
"major": "0068",
"minor": "0068",
"tx_power": "c5"
}