Streams push messages from flespi to other platforms (see how to create a stream [VIDEO]). A stream will push only newly received messages from channels or devices subscribed for the stream (see how to subscribe a stream [VIDEO]). If the target platform is unavailable, the stream stores unpushed messages in its internal buffer and pushes them as soon as the target platform is up again. There are two types of streams: streams to popular IoT hubs and to common protocols.
Streams to IoT hubs
Flespi offers ready-made solutions to push data to such hubs as Google IoT Cloud, AWS IoT Hub, Microsoft IoT Hub, Thingsboard. These platforms can accept the special data format implemented in flespi streams. So flespi user simply needs to configure the stream with the appropriate IoT hub credentials.
Common protocol streams
HTTP, MQTT, Wialon Retranslator are the protocols with the open specification that can be used in your custom solution:
HTTP — sends POST request with a list of messages to the specified URI. Max number of messages in one request can be set in the stream configuration. As soon as the server replies with 200 code, the sent messages are removed from the stream buffer.
MQTT — publishes messages to the MQTT connection (credentials specified in stream configuration). The stream uses QoS=1 to ensure that the message is removed from the stream buffer as soon as ACK from the broker is received.
Wialon Retranslator — telematics protocol designed to send telemetry collected from several sources (has open specification). Accepted by many telematics platforms.