Edit this page

The following pages and posts are tagged with

TitleTypeExcerpt
Connectivity service Page The “connectivity” service enables Ditto to establish and manage client-side connections to external service endpoints. You can communicate with your connected things/twins over those connections via Ditto Protocol messages. The connectivity service supports various transport protocols, which are bound to the Ditto Protocol via specific Protocol Bindings....
Connections Page Connection model Note: To get started with connections right away, consult the Manage connections page. You can integrate your Ditto instance with external messaging services such as Eclipse Hono, a RabbitMQ broker or an Apache Kafka broker via...
Placeholders Page Placeholders Placeholders may be used at several places in Ditto where something should be resolved by a variable. The general syntax of a placeholder is {{ prefix:name }}. Which placeholder values are available depends on the context where the placeholder is used. Entity Placeholder ...
Header mapping for connections Page When receiving messages from external systems or sending messages to external systems, the external headers of the messages can be mapped to and from Ditto protocol headers. That way the headers can be passed through Ditto, or defined Ditto protocol headers like for example correlation-id may be mapped to...
HMAC signing Page HMAC signing Ditto provides an extensible framework for HMAC-based signing authentication processes for HTTP Push and AMQP 1.0 connections. Three algorithms are available out of the box: aws4-hmac-sha256 (HTTP Push only): Version 4 request signing for Amazon Web Services (AWS) az-monitor-2016-04-01 (HTTP Push only): <a...
Manage connections via Piggyback commands Page The recommended way of connection management (CRUD) is by using the HTTP API to manage connections. Although not the recommended way, it’s still possible to manage connections in Ditto via DevOps Piggyback commands as well. All connection related piggyback commands use the following HTTP endpoint: <pre...
Manage connections via HTTP API Page In order to manage (CRUD) connections in Ditto, the HTTP API is recommended to be used instead of the old fashion Manage connections via Piggyback commands. As this is not a task for a developer, but more for a “DevOps engineer”, the endpoint for creating new connections to...
Payload mapping in connectivity service Page TL;DRThe payload mapping feature in Ditto’s connectivity APIs can be used to transform arbitrary payload consumed via the different supported protocols to Ditto Protocol messages and vice versa. Motivation Eclipse Ditto is about providing access to IoT devices via the digital twin pattern. In...
Connectivity API overview Page The Connectivity API is a bare management API for Ditto’s Connectivity Service. It is available: via DevOps Commands via HTTP API with a specific authentication - for details see Manage connections Use it to manage client connections to remote systems and to exchange <a...
AMQP 0.9.1 protocol binding Page Consume messages from AMQP 0.9.1 brokers via sources and send messages to AMQP 0.9.1 brokers via targets. Content-type When messages are sent in Ditto Protocol (as UTF-8 encoded String payload), the content-type of AMQP 0.9.1 messages must be set to: application/vnd.eclipse.ditto+json...
AMQP 1.0 protocol binding Page Consume messages from AMQP 1.0 endpoints via sources and send messages to AMQP 1.0 endpoints via targets. Content-type When messages are sent in Ditto Protocol (as UTF-8 encoded String payload), the content-type of AMQP 1.0 messages must be set to: application/vnd.eclipse.ditto+json...
Eclipse Hono binding Page Consume messages from Eclipse Hono through Apache Kafka brokers and send messages to Eclipse Hono in the same manner as the Kafka connection does. The Hono connection type is implemented just for convenience - to avoid the need for the user to be aware of the specific header mappings,...
HTTP 1.1 protocol binding Page Perform HTTP request (with verbs GET, POST, PUT, PATCH) to HTTP endpoints via targets. Specific connection configuration The common configuration for connections in Connections > Targets applies here as well. Following are some specifics for HTTP connections: Source format Note:...
Apache Kafka 2.x protocol binding Page Consume messages from Apache Kafka brokers via sources and send messages to Apache Kafka brokers via targets. Content-type When messages are sent in Ditto Protocol (as UTF-8 encoded String payload), the content-type of Apache Kafka messages must be set to: application/vnd.eclipse.ditto+json...
MQTT 3.1.1 protocol binding Page Consume messages from MQTT brokers via sources and send messages to MQTT brokers via targets. Content-type When MQTT messages are sent in Ditto Protocol, the payload should be UTF-8 encoded strings. If messages, which are not in Ditto Protocol, should be processed, a payload...
MQTT 5 protocol binding Page Consume messages from MQTT 5 brokers via sources and send messages to MQTT 5 brokers via targets. Content-type When MQTT messages are sent in Ditto Protocol, the payload should be UTF-8 encoded strings. If messages, which are not in Ditto Protocol, should be processed, a...
SSH tunneling Page SSH tunneling A managed connection supports establishing an SSH tunnel (see section TCP/IP Port Forwarding of the Secure Shell (SSH) Connection Protocol, RFC4254) which is then used to connect to the actual target endpoint. This is useful when the target endpoint is not directly accessible but only via...
Certificates for Transport Layer Security Page Verify server certificate Server-certificate verification is available for AMQP 0.9.1, AMQP 1.0, MQTT 3.1.1, MQTT 5, HTTP 1.1, and Kafka 2.x connections. Connection configuration Verifying the server identity mitigates the risk of man-in-the-middle attacks. To have Ditto check the identity of external...
Release notes 0.3.0-M1 Page Version 0.3.0-M1 of Eclipse Ditto, released on 26.04.2018
Support for OAuth2 client credentials flow for HTTP connections Post The upcoming release of Eclipse Ditto version 2.2.0 supports HTTP connections that authenticate their requests via OAuth2 client credentials flow as described in section 4.4 of RFC-6749. Detailed information can be found at Connectivity API > HTTP 1.1 protocol binding. This blog post shows an example of publishing...
Support for HMAC-SHA256 signing for connections Post With the upcoming release of Eclipse Ditto version 2.1.0 it will be possible to use HMAC-SHA256 signing for connections. The currently implemented algorithms support you in authenticating requests against: Azure IoT Hub REST API Azure IoT Hub AMQP 1.0 Azure HTTP Monitor Data Collector API Azure Service Bus REST...
Support SSH tunneling for managed connections Post With the upcoming release of Eclipse Ditto version 2.0.0 it will be possible to SSH tunneling for managed connections With the upcoming release of Eclipse Ditto version 2.0.0, managed connections support establishing an SSH tunnel, which is then used to connect to the actual target endpoint. This is useful...
Use Eclipse Ditto with Azure IoT Hub as message broker Post This blogpost is based upon Eclipse Ditto Version 1.5.0, the Azure IoT Suite as of 2021-03-19 and the azure-iot-device-client version 1.29.2. Connecting devices to Eclipse Ditto via Azure IoT Hub This blog post elaborates on connecting and managing devices in Eclipse Ditto by using the Azure IoT Hub as...
Digital twins of devices connected via LoRaWAN to TTN Post A workshop of the 2020 The Things Virtual Conference on April 16th 2020 is/was about how to connect Eclipse Ditto to “The Things Network” via TTN’s MQTT broker in order to automatically update digital twins of devices connected via LoRaWAN...
Selective push notifications available Post The connectivity service supercharged Ditto’s flexibility in integrating with other services. It’s such a great feature to let the other connected services know about thing updates and property changes. Even the direct exchange with real-world assets became more flexible through the multi-protocol support. But with a steady increase in...
Connecting Eclipse Ditto to Eclipse Hono Post Warning: This guide does no longer work with the latest (1.x) versions of Ditto + Hono. Please take a look and make use of the Eclipse IoT Packages “cloud2edge” package in order to setup and automatically connect Ditto + Hono. With the recently...
Ditto's connectivity capabilities are pimped up Post It has been quite lately on our website and on GitHub as the Ditto team currently prepares its new connectivity microservice. Until now Ditto’s amqp-bridge service could connect to AMQP1.0 endpoints (e.g. Eclipse Hono). That worked quite well, but still had some issues: failover/reconnection was not...