Eclipse Hono provides uniform (remote) service interfaces for connecting large numbers of IoT devices to a (cloud) back end. It specifically supports scalable and secure data ingestion (telemetry data) as well as command & control type message exchange patterns and provides interfaces for provisioning & managing device identity and access control rules.
If you do not already have a working Maven installation on your system please follow the installation instructions on the Maven home page. Then simply run the following from the command line.
$ mvn clean install -Pbuild-docker-image
This will build all libraries, docker images and example code.
Please refer to Hono Example for details on how to run the demo application.
Please take a look at the example clients which illustrate how client code can interact with Hono to send and receive data.
Clients can interact with Hono by means of AMQP 1.0 based message exchanges. Please refer to the corresponding Wiki pages for details:
- Device Registration API for registering new devices so that they can connect to Hono.
- Telemetry API for sending and receiving downstream telemetry data.
- Command & Control API for sending commands to devices and receiving replies.
client
: a Java client for accessing Hono based onvertx-proton
adapters
: implementation of core protocol adaptersrest-vertx
: an HTTP protocol adapter exposing a RESTful API for Hono's Telemetry and Registration APIrest-mqtt
: an MQTT protocol adapter exposing Hono's Telementry API as a topic to publish to
example
: simple example that uses the hono-client to send and receive messages via the hono-serverserver
: the Hono server component exposing the Hono API via AMQP 1.0
Please check out the Hono project home page for details. We are also available on #hono
IRC channel on Freenode and Hono Dev mailing list.