Edit this page

The following pages and posts are tagged with

TitleTypeExcerpt
Architecture overview Page Eclipse Ditto consists of five microservices that communicate over a Pekko cluster to provide digital twin management, access control, search, and connectivity to external systems. TL;DR: Ditto runs five services – Policies, Things, Things-Search, Gateway, and Connectivity – all in one Pekko cluster. They communicate via TCP using...
Connectivity service Page The Connectivity service establishes and manages client-side connections to external message brokers, translating between Ditto Protocol messages and external transport protocols. TL;DR: The Connectivity service persists connection configurations, manages connections to external endpoints (AMQP, MQTT, Kafka, HTTP), translates messages to/from Ditto Protocol, and supports custom payload mapping....
Gateway service Page The Gateway service provides Ditto’s external-facing HTTP and WebSocket APIs, translating between HTTP/WebSocket requests and internal Ditto signals. TL;DR: The Gateway service is the entry point for all HTTP and WebSocket traffic. It translates HTTP requests into internal commands, routes Ditto Protocol messages from WebSocket and...
Policies service Page The Policies service persists and enforces Policies, which control access to all resources in Ditto. TL;DR: The Policies service owns all Policy entities, persists them via event sourcing in MongoDB, and enforces authorization on policy-related commands using the policy itself. Overview The Policies service is responsible...
Things-Search service Page The Things-Search service maintains an optimized search index of all Things and executes search queries against it. TL;DR: The Things-Search service listens for Thing and Policy change events, updates a search-optimized MongoDB collection, and processes RQL search queries to find matching Things. Overview The Things-Search service has...
Things service Page The Things service persists and enforces authorization for Things and Features, which represent your digital twins. TL;DR: The Things service owns all Thing and Feature entities, persists them via event sourcing in MongoDB, and enforces authorization using the Policy referenced by each Thing’s policyId....
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...