MQTT Events
Tag Event
Description: This event contains the tag data
Topic: Topic for Tag Events
Payload:
{
"readerName": "impinj00162513F90B",
"mac": "00:16:25:13:F9:0B",
"site": "Main Warehouse",
"tag_reads": [
{
"epc": "E28011606000020934D6FAF7",
"firstSeenTimestamp": 1706119203123456,
"antennaPort": 1,
"antennaZone": "TOPSHELF",
"logicalPointId": 101,
"peakRssi": -51.25,
"txPower": 28.5,
"frequency": 920625,
"rfPhase": 37.5,
"tid": "E2003412012345678900",
"gpi1Status": "high",
"gpi2Status": "low",
"tagDataKeyName": "rchl_sku",
"tagDataKey": "123456789012",
"tagDataSerial": "00012345",
"tagDataPureIdentity": "urn:epc:tag:sgtin-96:3.0614141.812345.12345"
}
]
}Management Events
SmartReader publishes a number of lightweight management events to the management topic. Each payload is a flat JSON document whose fields map directly to the dictionaries created inside MqttService and IotInterfaceService.
MQTT Connection Event
Description: emitted when the reader establishes a connection to the MQTT broker. The payload contains only the properties explicitly set in MqttService.HandleConnectedAsync.
Topic: Topic for Management Events
Payload:
MQTT Disconnection Event
Description: this is the payload defined as the MQTT "last will" message. If the reader disconnects unexpectedly the broker publishes it on behalf of SmartReader. The document only contains the status flag. The JSON body comes from MqttService.BuildMqttLastWillMessage.
Topic: Topic for Management Events
Payload:
SmartReader Status Event
Description: communicates lifecycle transitions of the SmartReader application. All payloads include the fields that BuildStatusEvent adds: smartreader-status, readerName, mac, and a microsecond timestamp. Some scenarios include additional context where noted below. The payload is constructed in IotInterfaceService via the BuildStatusEvent helper and related workflows.
Topic: Topic for Management Events
Possible payload values:
smartreader-status value
When it is published
Additional payload fields
started
After background services finish starting.
Standard fields only.
stopped
When SmartReader shuts down.
Standard fields only.
settings-applied
After reader settings are successfully applied.
Standard fields only.
inventory-running
When the reader reports an active inventory.
Standard fields only.
inventory-idle
When the reader reports that inventory has stopped.
Standard fields only.
initialized
After initialization and network verification succeed.
Standard fields only.
invalid-license-key
When license validation fails.
Standard fields plus ip and serial when available.
Payload example (inventory running):
Payload example (invalid license key):
Heartbeat Event
Description: Heartbeats are emitted as regular tag events with a single read where isHeartBeat is true. They are created by CreateSmartReaderTagReadEvent, so they share the same schema as regular tag events.
Topic: Topic for Tag Events
Payload:
GPI Event
Description: This event contains information about GPI events. It is published by ProcessGpiStatus whenever a monitored GPI state changes.
Topic: Topic for Management Events
Payload:
Last updated