Push Configuration

Streams offered by Blickfeld Percept Processing can be pushed to a desired destination. See push configurations for all configuration settings.

MQTT Push Configuration

The MQTT Push task supports publishing the streams available in the Blickfeld Percept Processing client to a MQTT Broker.

Encoding

It supports three different encodings:

  • JSON (ASCII Text)

    • Regular

    • Flattened (ASCII Text)

  • Protobuf (Binary)

Topic

The channel topic is defined by the settings and adheres to the following format:

/blickfeld/{Source/Data type}/{Encoding type}/{Push configuration name}

Suppose the Push configuration created in the WebGUI has the name "Bunker 1", then the topic could look like one of the following topics, depending on the rest of the configuration:

/blickfeld/states/json/Bunker 1
/blickfeld/states/json_flattened/Bunker 1
/blickfeld/health/json/Bunker 1
...

State Diagram

The general state diagram of the MQTT Push task is the following:

  1. Start (Status set to CONNECTION_DISCONNECTED)

  2. Connecting to MQTT broker (Status set to CONNECTION_CONNECTING)

    1. Back to Start when broker is not available

  3. Connected to MQTT broker (Status set to CONNECTION_CONNECTED)

  4. Get Stream Generator for configured payload from Blickfeld Percept Processing Client

    1. Back to Start when data type or Blickfeld Percept Processing is not available

  5. Forward each message of the stream to the MQTT broker (Status set to CONNECTION_PUSHING)

    1. the sent_messages field is incremented for every sent message