Edit this 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.

If you don’t have the option to transform your payload to a Ditto Protocol Message on the client-side, the connectivity service offers a flexible and customizable payload mapping on top.

Model

The model of the connectivity service is defined around the entity Connection:

Signals

Other services can communicate with the connectivity service via:

  • ConnectivityCommands: implementing classes provide commands which are processed by this service
  • ConnectivityEvents: implementing classes represent events which are emitted when entities managed by this service were modified

Persistence

The connectivity service uses Pekko persistence and with that Event sourcing in order to persist changes to and restore persisted connections.

Enforcement

The connectivity service does not enforce/authorize connection signals by a policy as the connection does not contain a policyId.

Tasks