Skip to Main Content
Cumulocity IoT Feedback Portal
Status Partially supported already
Created by Neil C
Created on Oct 3, 2022

thin-edge.io Operations plugins should inter-operate with C8y's "thin-edge.io device management" App

The softwareag repos on github contain two examples that demonstrate the advanced Device Management features of Cumulocity IoT:

  1. https://github.com/SoftwareAG/cumulocity-devicemanagement-docker-example

  2. https://github.com/SoftwareAG/cumulocity-devicemanagement-agent

(1) in particular works in combination with the thin-edge Device Management web app (https://github.com/SoftwareAG/cumulocity-devicemanagement-example-web-app) to allow a Cumulocity user to manipulate locally-running Docker containers using Operations.

The methodology appears to be:

  • A notification of the creation of an Operation is published on one of the below topics, so that it's accessible to a device connected via MQTT.

    • s/ds, or

    • s/dc/c8y_ThinEdge

  • In response, the demo device makes a REST connection to retrieve the details of the pending Operation, as a JSON document.

  • The Operation is processed based on the contents of the JSON document.

    • A REST call updates the status of the Operation to "EXECUTING"

    • The operation is processed on the device side

    • A REST call updates the status of the Operation to "SUCCESSFUL" (or "FAILED", if an error occurred).

We would like to integrate the functionality of the thin-edge.io Device Management App using Operations plugins on thin-edge.io.

However, the notifications of operations of type c8y_Docker and c8y_ThinEdge_Model (defined by the Web App) never reach the MQTT broker of thin-edge.io - either on topic "c8y/s/ds" or "c8y/s/dc/c8y_ThinEdge". Indeed, they don't appear to be published by thin-edge.io at all.

This means we can't trap the operations in thin-edge.io's plugin framework. We're not sure if thin-edge.io isn't transferring these messages across the MQTT bridge, or whether the issue relates to how the Web App publishes the operations (or not) as SmartRest messages.

  • Attach files
  • Admin
    Nikolaus Neuerburg
    Reply
    |
    Mar 9, 2023

    Dear Neil,

    great to see you experimenting with our Open Source examples! You are probably facing this issue because you are missing the required smart rest templates (https://github.com/SoftwareAG/cumulocity-devicemanagement-docker-example/tree/main/Agents/config) which the agent would have created.

    Going forward we will be looking into updating the project to be compatible with the new thin-edge container management plugin (https://github.com/thin-edge/tedge-container-plugin).

    Cheers,

    Nikolaus