Cedalo Documentation
website·Indexed 35 days ago
https://docs.cedalo.comTechnical documentation for Cedalo products, including Streamsheets 2.5 functions for text and JSON processing, and AsyncAPI 2.8 specifications for Broker Control, High Availability Clusters, Certificate Management, and Client Inspection/Control. Also includes resources for Pro Edition for Eclipse Mosquitto 3.0.
What's inside Cedalo
- Mosquitto is a lightweight open-source message broker designed for IoT architectures to enable communication between sensors, smartphones, and web apps. The Pro Edition is a commercially supported version that provides full compliance with MQTT versions 3 and 5.
Overview of Pro Edition for Eclipse Mosquitto
Mosquitto is a lightweight open-source message broker for IoT architectures (sensors, smartphones, web apps). The Pro Edition is a commercially supported version that provides full compliance with MQTT versions 3 and 5.Overview of Management Center features
The Management Center for Eclipse Mosquitto (Pro Edition) provides tools to manage, monitor, and inspect broker instances. Key capabilities include:
- System dashboard for broker traffic, license, and client information.
- Client inspection tables and a topic tree of addressed topics.
- Broker security management (clients, groups, and roles).
- Stream creation and management for message transfer and transformation.
- A terminal for executing dynamic security API commands.
- Cluster configuration and broker connection management.
- Certificate and topic management.
- Management Center specific security and settings.
Overview of the Cedalo MQTT Platform Admin Board
The Admin Board is a management interface available for users with an Enterprise license version installed on-premises. It provides a centralized location to manage users, administrators, brokers, and projects, as well as configure general platform settings, logging, and UI customization (white labeling).Overview of mosquitto_rr request/response client
mosquitto_rr is an MQTT client (supporting version 5 and 3.1.1) specifically designed for request/response messaging. It allows a user to publish a request message to a specific topic and wait for a response on a designated response topic. When using MQTT v5 (the default), it utilizes the native Request-Response feature.# Basic usage: publish a message and wait for a response mosquitto_rr -t request-topic -e response-topic -m "your message"Overview of Eclipse Streamsheets
Eclipse Streamsheets are server-based spreadsheets designed to consume, produce, process, and forward data streams from sources such as sensors, machines, websites, databases, and applications. The system allows for the modeling of data processing, analysis, and visualization entirely through spreadsheet formulas without requiring program code. Unlike traditional spreadsheets, Streamsheets calculate from left-to-right and top-to-bottom to maintain a strict flow of execution for actions and data assembly.Overview of mosquitto_rr request/response client
mosquitto_rr is an MQTT version 5/3.1.1 client used to publish a request message and wait for a response. When using MQTT v5 (the default), it utilizes the native Request-Response feature. To function, it requires a request topic (-t), a response topic (-e), and a message source (one of-f,-m,-n, or-s).mosquitto_rr -t request-topic -e response-topic -m "your message"Overview of Client Control API
The Client Control API allows a controlling client to apply commands to other connected clients. Requests are sent by publishing to$CONTROL/cedalo/client-control/v1and responses are received by subscribing to$CONTROL/cedalo/client-control/v1/response. All messages useapplication/json. Note that a valid license is required; otherwise, commands will return an error.Overview of MongoDB Bridge plugin capabilities
The MongoDB Bridge plugin inserts MQTT published data into MongoDB databases. Key features include:
- Support for multiple MongoDB client connections using basic authentication (username/password).
- Topic mappings to route MQTT topic payloads to specific MongoDB collections.
- Automatic inclusion of message metadata:
payload,jsonPayload,topic,qos,client_id,hostname,retain, andtimestamp. - Schema mappings to filter or rename the metadata fields included in the insert command.
- A
maxQueuedMessagessetting per client to limit the number of pending MQTT messages before the plugin begins dropping them.
Overview of the mosquitto-sql-bridge plugin
The SQL Bridge plugin for Eclipse Mosquitto 2.8 Pro Edition forwards data published to the Mosquitto broker to relational databases. It supports multiple database connections and allows mapping specific MQTT topics to database tables. The plugin utilizes a buffer to perform batch inserts to optimize database performance.
Supported DBMS:
- PostgreSQL
- TimescaleDB
- MySQL
- AlloyDB
Authentication is supported via basic (username, password) credentials.
Overview of mosquitto-sql-bridge plugin
The SQL Bridge plugin for Mosquitto 2.9 Pro Edition forwards data published to the broker to relational databases. It supports multiple database connections and allows mapping specific MQTT topics to database tables. To optimize performance, the plugin uses a buffer for batch inserting data, which can be configured via
bufferSize,batchSize, andtimeoutMsin thesql-bridge.jsonconfiguration file.Supported DBMS include:
- PostgreSQL
- TimescaleDB
- MySQL
- AlloyDB
- MariaDB
- Amazon Redshift
- MSSQL
- OracleDB
- CockroachDB
Authentication is supported via basic username and password.
Overview of Cedalo Stream Processing (CSP)
The Cedalo Stream Processing (CSP) plugin for Mosquitto Pro Edition 3.2 enables the creation of topic streams. A topic stream captures all messages on a specified topic and can perform the following operations on JSON payloads:
- Republish messages to a different topic (with optional QoS and retain settings).
- Persist messages to disk for future replay.
- Extract specific data values from JSON payloads before republishing.
- Apply aggregation functions to data before republishing or persisting.
- Filter which messages are processed or persisted based on payload values.
Stream behavior is defined by a Stream Query, which uses a syntax similar to SQL statements.