12.3. Integration with FireBrick operations

The FireBrick allows integration of MQTT with a number of internal operations.

Messages for internal operation all use a JSON payload an a topic starting FireBricks/tag or FireBrick/serial/tag. The exception is where a message is to be generated to send to some other device, e.g. a lighting control, where the message can be specified as a topic, a space, and a text payload.

12.3.1. Profiles

A profile can be set with a topic, and a payload for on and off. This causes an MQTT message to be sent when the profile is activated or de-activated. You can set this to be treated as MQTTS, so not sent to MQTT clients (depending on configuration for relaying MQTT/MQTTS). You can also set this as a retained message.

To send a message you have to set the on or off payload, even if this is to be blank, as the message is only sent if the corresponding payload is set.

A profile can also be set to control-switch with mqtt-control set which allows it to switched over MQTT. The control message has a tag of profile and a payload of a JSON object with one or more Boolean fields with the field name being the name of the profile to be set.

12.3.2. VoIP

More on this will be added in due course.

The plan is to report call states as they happen.

The plan is also to allow calls to be directed in certain ways by MQTT message.

12.3.3. DHCP

Each DHCP pool can be set to report allocations and renewals via MQTT on a specified topic. This reports a JSON payload with details of the allocation.

12.3.4. RADIUS

The RADIUS server function can report accounting and authentication. This reports a JSON payload.