Difference between revisions of "How to develop a new Protocol"

From AGILE IoT Wiki
Jump to: navigation, search
m (Add "Work in Progress" icon)
Line 2: Line 2:
  
 
# Create a repo with agile-<yourprotocolname>
 
# Create a repo with agile-<yourprotocolname>
# Implement the protocol API (obviously, you can base this on existing protocol implementations)
+
 
# Add the .travis template
+
  The easiest way to develop an AGILE protocol is to take one of the examples. We recommend using [https://github.com/Agile-IoT/agile-ble agile-ble] or [https://github.com/Agile-IoT/agile-dummy agile-dummy]. These two repositories both use the Java implementation of the AGILE protocol API. Alternatively, you can also implement the same API. in other langauages.
# Have the travis CI + DockerHub integration enabled
+
 
# Test it in agile-stack (branch agile stack; add your new container to it; test)
+
# Customize you agile-stack by adding your new container
# Make a pull request.
+
 
 +
  Make sure a proper Dockerfile is created as well (see examples in the above repositories), and add your protocol to the AGILE stack. For this, edit docker-compose.yml, and add a new block with the agile-<yourprotocolname> service. Make sure it connects to the Agile DBus as the example services above.

Revision as of 13:09, 3 September 2018

Work-in-progress.png

  1. Create a repo with agile-<yourprotocolname>
 The easiest way to develop an AGILE protocol is to take one of the examples. We recommend using agile-ble or agile-dummy. These two repositories both use the Java implementation of the AGILE protocol API. Alternatively, you can also implement the same API. in other langauages.
  1. Customize you agile-stack by adding your new container
 Make sure a proper Dockerfile is created as well (see examples in the above repositories), and add your protocol to the AGILE stack. For this, edit docker-compose.yml, and add a new block with the agile-<yourprotocolname> service. Make sure it connects to the Agile DBus as the example services above.