META 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.