Host Protocols Smart Reader Protocols JSON Messages META Message
March 13, 2024 at 7:30 AMMETA Message
The META is sent by the device to identify itself. Sending takes place on startup or on connection established, depending on the channel.
Fields in the JSON META Message
The format is designed to be coherent with the DEVICE object in SpringCard Companion:
Field | Format | Status | Description |
---|---|---|---|
"VendorName" |
string | always | Vendor name (namely "SpringCard" ) |
"ProductName" |
string | always | Product name |
"ProductVariant" |
string | option | Product variant |
"SerialNumber" |
string | always | Serial number |
"Version" |
string | always | Version of the product |
"Firmware" |
string | always | Identification of the firmware |
"Revision" |
string | always | Complete version of the firmware |
"Hardware" |
string | option | Identification of the hardware (part number) if available |
"UniqueId" |
string | option | Unique Identifier of the device (signature of the hardware) |
"ConfigId" |
string | option | The GUID of the configuration (signature of the settings) (register 0200) |
"Open" |
boolean | always | true if all the security settings in the configuration are open, false otherwise |
"Inventory" |
string | option | Inventory number (register 0201) |
"Location" |
string | option | Location (register 0202) |
"PhysAddress" |
string | option | MAC address |
"IpAddress" |
string | option | IPv4 network address (this is likely to be a private address behind a NAT and not a routable address) |
"Protocol" |
string | always | How the device is configured: direct , ccid , RDR/RAW , $SCRDR , RDR/JSON , RDR/MK1 |
"Interfaces" |
string | option | The physical interface(s) that the Smart Reader provides |
Example
{
"VendorName": "SpringCard",
"ProductName": "SpringPark",
"SerialNumber": "DA1275B0",
"Version": "1.23",
"Firmware": "springCore/e518/springpark",
"Revision": "1.23-11-g30998598",
"Hardware": "EAN201234",
"UniqueId": "8DC86AD9-0BDC-14B4-F908-75A717653899",
"ConfigId": "377FB7F8-CAB5-3824-EB11-74587EB54140",
"Open": true,
"IpAddress": "192.168.16.212",
"PhysAddress": "749050007903",
"Protocol":"RDR/JSON",
"Interfaces":"13.56"
}
Note: for the ease of reading, the above JSON message is shown with spaces and line-feeds added. To shorten the messages, all line-feeds, spaces and tabs are removed from the actual JSON string sent by the device.
Channels sending this Message
The META Message is sent by the device:
-
Over the MQTT Client channel, through topic
springcard/springcore/{$id}/meta
. This topic is retained. This means that any client that connects to the MQTT broker is able to retrieve this message, even if the connection of the device took place earlier. -
Over the HTTP Client channel, on startup. If the HTTP server is not available or not reachable when the device starts-up, the META Message is lost.
The META Message is never sent on the other channels.