<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Documentation on Eclipse Hono&amp;trade;</title>
    <link>https://www.eclipse.org/hono/docs/</link>
    <description>Recent content in Documentation on Eclipse Hono&amp;trade;</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    
	<atom:link href="https://www.eclipse.org/hono/docs/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Device Identity</title>
      <link>https://www.eclipse.org/hono/docs/concepts/device-identity/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/device-identity/</guid>
      <description>&lt;p&gt;This page describes how devices are represented and identified throughout Hono and its APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Multi-Tenancy</title>
      <link>https://www.eclipse.org/hono/docs/concepts/tenancy/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/tenancy/</guid>
      <description>Hono is designed to structure the set of all internally managed data and data streams into strictly isolated subsets. This includes the registration data and credentials of devices, internal users that are used for authentication, and the Business Applications that are part of such subsets as well.
This way of strict isolation is generally known as multi-tenancy, where a tenant is the term for such a subset. Such an isolation is essential for enabling a scalable distributed architecture to handle independent subsets as if each subset had its own installation (which would be much harder to maintain and would not benefit from runtime cost sharing).</description>
    </item>
    
    <item>
      <title>Device Provisioning</title>
      <link>https://www.eclipse.org/hono/docs/concepts/device-provisioning/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/device-provisioning/</guid>
      <description>This page describes how devices are provisioned in Hono, i.e. how their digital representation is generated. For each device, registration information is stored that defines a device identity. Each device belongs to exactly one tenant. Each device must have at least one set of credentials that are used to authenticate to Hono.
To get an understanding of what is meant by the terms tenant, device registration and credentials, it is recommended to read the Device Identity page first.</description>
    </item>
    
    <item>
      <title>Connecting Devices</title>
      <link>https://www.eclipse.org/hono/docs/concepts/connecting-devices/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/connecting-devices/</guid>
      <description>One of the most important features of Eclipse Hono&amp;trade; is to abstract away the specific communication protocols used by devices. This page describes the different ways of how devices can be connected to Hono. Before a device can connect to Hono and upload data or receive commands from downstream applications, it needs to be provisioned to the system. As part of device provisioning, the device is associated with the tenant that it belongs to and gets assigned a logical identifier which is unique within the tenant.</description>
    </item>
    
    <item>
      <title>Device Notifications</title>
      <link>https://www.eclipse.org/hono/docs/concepts/device-notifications/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/device-notifications/</guid>
      <description>&lt;p&gt;&lt;em&gt;Business Applications&lt;/em&gt; need to know when an attempt to send a command to device is feasible, e.g. because the device is then known to be connected to a protocol adapter. &lt;em&gt;Devices&lt;/em&gt; and &lt;em&gt;Protocol Adapters&lt;/em&gt; can indicate to &lt;em&gt;Business Applications&lt;/em&gt; a device&amp;rsquo;s intent to e.g. receive commands using specific &lt;em&gt;notifications&lt;/em&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Command &amp; Control</title>
      <link>https://www.eclipse.org/hono/docs/concepts/command-and-control/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/command-and-control/</guid>
      <description>&lt;p&gt;&lt;em&gt;Business applications&lt;/em&gt; can send commands to devices following the &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/command-and-control/&#34;&gt;Command &amp;amp; Control API&lt;/a&gt;. This concept page describes how this API is used by applications to send commands and describes how Hono&amp;rsquo;s protocol adapters process the commands so that they reach their target device.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Resource limits</title>
      <link>https://www.eclipse.org/hono/docs/concepts/resource-limits/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/resource-limits/</guid>
      <description>Resource limits such as the maximum number of device connections allowed per tenant or the allowed data volume of the messages over a period of time per tenant can be set in Hono.
Hono specifies an API ResourceLimitChecks that is used by the protocol adapters for the verification of the configured resource limits. A default implementation of this API is shipped with Hono. This default implementation uses the live metrics data retrieved from a Prometheus server to verify the resource-limits, if configured.</description>
    </item>
    
    <item>
      <title>Connection Events</title>
      <link>https://www.eclipse.org/hono/docs/concepts/connection-events/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/concepts/connection-events/</guid>
      <description>Hono&amp;rsquo;s protocol adapters can use connection events to indicate the connection status of a device. In particular, an adapter can notify downstream components about a newly established connection with a device or about a device having disconnected. The connection status of devices using stateful protocols like MQTT and AMQP can usually be determined quite easily because these protocols often require peers to explicitly open or close a connection and often also support a kind of heart beat which can be used to determine if a connection is still alive.</description>
    </item>
    
    <item>
      <title>MongoDB Based Device Registry</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/mongodb-based-device-registry/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/mongodb-based-device-registry/</guid>
      <description>The MongoDB based Device Registry component provides implementations of Hono&amp;rsquo;s Tenant API, Device Registration API and Credentials API. As such it exposes AMQP 1.0 based endpoints for retrieving the relevant information. Protocol adapters use these APIs to determine a device&amp;rsquo;s registration status, e.g. if it is enabled and if it is registered with a particular tenant, and to authenticate a device before accepting any data for processing from it.</description>
    </item>
    
    <item>
      <title>File Based Device Registry</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/file-based-device-registry/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/file-based-device-registry/</guid>
      <description>&lt;p&gt;The Device Registry component provides exemplary implementations of Hono&amp;rsquo;s &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/tenant/&#34;&gt;Tenant API&lt;/a&gt;, &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/device-registration/&#34;&gt;Device Registration API&lt;/a&gt; and &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/credentials/&#34;&gt;Credentials API&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>HTTP Adapter</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/http-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/http-adapter/</guid>
      <description>&lt;p&gt;The HTTP protocol adapter exposes HTTP based endpoints for Eclipse Hono&amp;trade;&amp;rsquo;s south bound Telemetry, Event and Command &amp;amp; Control APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>MQTT Adapter</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/mqtt-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/mqtt-adapter/</guid>
      <description>&lt;p&gt;The MQTT protocol adapter exposes an MQTT topic hierarchy for publishing telemetry data and events to downstream consumers and for receiving commands from applications and sending back responses.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>AMQP Adapter</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/amqp-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/amqp-adapter/</guid>
      <description>&lt;p&gt;The AMQP protocol adapter allows clients (devices or gateway components) supporting the AMQP 1.0 protocol to publish messages to Eclipse Hono&amp;trade;&amp;rsquo;s Telemetry, Event and Command &amp;amp; Control endpoints.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>CoAP Adapter</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/coap-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/coap-adapter/</guid>
      <description>&lt;p&gt;The CoAP protocol adapter exposes &lt;a href=&#34;https://tools.ietf.org/html/rfc7252&#34;&gt;CoAP&lt;/a&gt; based endpoints for Eclipse Hono&amp;trade;&amp;rsquo;s south bound Telemetry, Event and Command &amp;amp; Control APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kura Adapter</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/kura-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/kura-adapter/</guid>
      <description>&lt;p&gt;The Kura protocol adapter exposes an MQTT topic hierarchy allowing Eclipse Kura&amp;trade; based gateways to publish &lt;em&gt;control&lt;/em&gt; and &lt;em&gt;data&lt;/em&gt; messages to Eclipse Hono&amp;trade;&amp;rsquo;s Telemetry and Event endpoints.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Sigfox Adapter</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/sigfox-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/sigfox-adapter/</guid>
      <description>&lt;p&gt;The Sigfox protocol adapter exposes an HTTP endpoint for connecting up with
the Sigfox backend for publishing telemetry, events and use command &amp;amp; control.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Load Tests with JMeter</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/jmeter_load_tests/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/jmeter_load_tests/</guid>
      <description>&lt;p&gt;Eclipse Hono&amp;trade; comes with an &lt;a href=&#34;https://jmeter.apache.org&#34;&gt;Apache JMeter&lt;/a&gt; plugin which provides &lt;em&gt;samplers&lt;/em&gt; that can be used in JMeter test plans to send and receive telemetry/event data.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Common Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/common-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/common-config/</guid>
      <description>&lt;p&gt;Many Hono components support a common set of configuration options. This section
describes those options.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Auth Server Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/auth-server-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/auth-server-config/</guid>
      <description>&lt;p&gt;The Auth Server component exposes a service endpoint implementing Eclipse Hono&amp;trade;&amp;rsquo;s &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/authentication/&#34;&gt;Authentication&lt;/a&gt; API. Other services use this component for authenticating clients and retrieving a token asserting the client&amp;rsquo;s identity and corresponding authorities.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>MongoDB Based Device Registry Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/mongodb-device-registry-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/mongodb-device-registry-config/</guid>
      <description>The MongoDB based Device Registry component provides an implementation of Eclipse Hono&amp;trade;&amp;rsquo;s Device Registration, Credentials and Tenant APIs. Protocol adapters use these APIs to determine a device&amp;rsquo;s registration status, e.g. if it is enabled and if it is registered with a particular tenant, and to authenticate a device before accepting any data for processing from it. In addition to the above, this Device Registry also provides an implementation of Device Registry Management APIs for managing tenants, registration information and credentials of devices.</description>
    </item>
    
    <item>
      <title>File Based Device Registry Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/file-based-device-registry-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/file-based-device-registry-config/</guid>
      <description>&lt;p&gt;The File based Device Registry component provides an exemplary implementation of Eclipse Hono&amp;trade;&amp;rsquo;s &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/device-registration/&#34;&gt;Device Registration&lt;/a&gt;, &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/credentials/&#34;&gt;Credentials&lt;/a&gt;, &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/tenant/&#34;&gt;Tenant&lt;/a&gt; and &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/device-connection/&#34;&gt;Device Connection&lt;/a&gt; APIs.&lt;/p&gt;

&lt;p&gt;Protocol adapters use these APIs to determine a device&amp;rsquo;s registration status, e.g. if it is enabled and if it is registered with a particular tenant, and to authenticate a device before accepting any data for processing from it.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Configuring the Device Connection Service</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/device-connection-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/device-connection-config/</guid>
      <description>&lt;p&gt;The Device Connection service provides an implementation of Eclipse Hono&amp;trade;&amp;rsquo;s &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/api/device-connection/&#34;&gt;Device Connection API&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Protocol adapters use this API to store and retrieve information about the gateway that a device is using to connect to Hono&amp;rsquo;s protocol adapters. This information is necessary for routing commands to the particular protocol adapter instance that the gateway used by the device is connected to.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>HTTP Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/http-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/http-adapter-config/</guid>
      <description>&lt;p&gt;The HTTP protocol adapter exposes HTTP based endpoints for Eclipse Hono&amp;trade;&amp;rsquo;s south bound Telemetry, Event and Command &amp;amp; Control APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>MQTT Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/mqtt-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/mqtt-adapter-config/</guid>
      <description>&lt;p&gt;The MQTT protocol adapter exposes an MQTT topic hierarchy for Eclipse Hono&amp;trade;&amp;rsquo;s south bound Telemetry, Event and Command &amp;amp; Control APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>AMQP Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/amqp-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/amqp-adapter-config/</guid>
      <description>&lt;p&gt;The AMQP protocol adapter exposes AMQP based endpoints for Eclipse Hono&amp;trade;&amp;rsquo;s south bound Telemetry, Event and Command &amp;amp; Control APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>CoAP Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/coap-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/coap-adapter-config/</guid>
      <description>&lt;p&gt;The CoAP protocol adapter exposes CoAP based endpoints for Eclipse Hono&amp;trade;&amp;rsquo;s south bound Telemetry, Event and Command &amp;amp; Control APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kura Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/kura-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/kura-adapter-config/</guid>
      <description>&lt;p&gt;The Kura protocol adapter exposes an MQTT topic hierarchy allowing Eclipse Kura&amp;trade; based gateways to access Eclipse Hono&amp;trade;&amp;rsquo;s
south bound Telemetry, Event and Command &amp;amp; Control APIs.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Hono Client Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/</guid>
      <description>&lt;p&gt;The &lt;code&gt;org.eclipse.hono.client.HonoConnection&lt;/code&gt; factory can be used to create AMQP 1.0 connections to Hono&amp;rsquo;s service components.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>AMQP 1.0 Messaging Network Configuration</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/amqp-network-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/amqp-network-config/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Qpid Dispatch Router&lt;/em&gt;, together with the &lt;em&gt;Apache Artemis&lt;/em&gt; message broker, serves as the default &lt;em&gt;AMQP 1.0 Messaging Network&lt;/em&gt; that is used in Hono&amp;rsquo;s example deployment as described in the &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/deployment/&#34;&gt;Deployment Guides&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Secure Communication</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/secure_communication/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/secure_communication/</guid>
      <description>&lt;p&gt;The individual components of an Eclipse Hono&amp;trade; installation, e.g. the protocol adapters, &lt;em&gt;AMQP Messaging Network&lt;/em&gt;, &lt;em&gt;Hono Auth&lt;/em&gt; etc., and the clients attaching to Hono in order to send and receive data all communicate with each other using AMQP 1.0 over TCP. The Hono components and the clients will usually not be located on the same local network but will probably communicate over public networking infrastructure. For most use cases it is therefore desirable, if not necessary, to provide for confidentiality of the data being transferred between these components. This section describes how Hono supports confidentiality by means of &lt;em&gt;Transport Layer Security&lt;/em&gt; (TLS) and how to configure it.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Monitoring &amp; Tracing</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/monitoring-tracing-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/monitoring-tracing-config/</guid>
      <description>&lt;p&gt;The individual components of an Eclipse Hono&amp;trade; installation need to work together in order to provide their functionality to devices and applications. Under normal circumstances these interactions work flawlessly. However, due to the nature of distributed systems, any one (or more) of the components may crash or become otherwise unavailable due to arbitrary reasons. This page describes how Hono supports operations teams by providing insights into the individual service components and their interactions with each other by means of reporting metrics and tracing the processing of individual messages through the system.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Building from Source</title>
      <link>https://www.eclipse.org/hono/docs/dev-guide/building_hono/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/dev-guide/building_hono/</guid>
      <description>Hono can be deployed using the pre-built Docker images available from our Docker Hub repositories. However, customizing and/or extending Hono&amp;rsquo;s functionality requires building the images from source code.
This page provides step by step instructions for getting the source code and building the Hono&amp;rsquo;s Docker images from it.
Prerequisites for building Hono Docker Creating Hono&amp;rsquo;s container images using the Hono build process requires a Docker daemon running either locally or on another host you have access to.</description>
    </item>
    
    <item>
      <title>AMQP Adapter Client for Java</title>
      <link>https://www.eclipse.org/hono/docs/dev-guide/amqp_adapter_client/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/dev-guide/amqp_adapter_client/</guid>
      <description>Eclipse Hono&amp;trade; comes with a Java client for the AMQP adapter. It is intended for the implementation of (prototype) devices, (protocol) gateways or (end-to-end) tests. The client is based on Eclipse Vert.x.
The starting point is the class AmqpAdapterClientFactory.
The factory provides methods to get a receiver for receiving commands and a sender for each of the following actions:
 send a telemetry message send an event message send a response to a previously received command   Do not re-use sender instances The senders manage the underlying AMQP sender links, which are restored after temporary interruption of the connection (HonoConnection manages the automatic reconnection).</description>
    </item>
    
    <item>
      <title>Consuming Messages from Java</title>
      <link>https://www.eclipse.org/hono/docs/dev-guide/java_client_consumer/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/dev-guide/java_client_consumer/</guid>
      <description>To illustrate how Eclipse Hono&amp;trade; can be integrated with Java code, a simple application is provided that consumes telemetry and event data for devices belonging to the default tenant.
It also includes support for Command and Control:
if indicated by a received downstream message that contains a ttd value (refer to Device notifications for details) it tries to send a command to the device. If the value of ttd indicates that the device stays connected for an unlimited time (ttd == -1), the application will periodically repeat to send a command until notified the device is disconnected again (ttd == 0).</description>
    </item>
    
    <item>
      <title>Implement a Custom Hono HTTP Protocol Adapter</title>
      <link>https://www.eclipse.org/hono/docs/dev-guide/custom_http_adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/dev-guide/custom_http_adapter/</guid>
      <description>&lt;p&gt;Eclipse Hono&amp;trade; comes with a default &lt;em&gt;HTTP Adapter&lt;/em&gt; which can be used to interact with devices via HTTP.
The default HTTP Adapter also serves as a blueprint for implementing a &lt;em&gt;custom&lt;/em&gt; HTTP protocol adapter.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Telemetry API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/telemetry/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/telemetry/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Telemetry&lt;/em&gt; API is used by &lt;em&gt;Protocol Adapters&lt;/em&gt; to send telemetry data downstream.
&lt;em&gt;Business Applications&lt;/em&gt; and other consumers use the API to receive data published by devices belonging to a particular tenant.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Event API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/event/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/event/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Event&lt;/em&gt; API is used by &lt;em&gt;Protocol Adapters&lt;/em&gt; to send event messages downstream.
&lt;em&gt;Business Applications&lt;/em&gt; and other consumers use the API to receive messages published by devices belonging to a particular tenant.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Command &amp; Control API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/command-and-control/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/command-and-control/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Command &amp;amp; Control&lt;/em&gt; API of Eclipse Hono&amp;trade; is used by &lt;em&gt;Business Applications&lt;/em&gt; to send commands to connected devices.&lt;/p&gt;

&lt;p&gt;Commands can be used to trigger actions on devices. Examples include updating a configuration property, installing a software component or switching the state of an actuator.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Tenant API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/tenant/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/tenant/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Tenant API&lt;/em&gt; is used by Hono&amp;rsquo;s protocol adapters to retrieve information that affects all devices belonging to a particular tenant.
A tenant is a logical entity, which groups together a set of devices. The information registered for a tenant is used for example to
determine if devices belonging to the tenant are allowed to connect to a certain protocol adapter or if devices are required to authenticate.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Device Connection API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/device-connection/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/device-connection/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Device Connection API&lt;/em&gt; is used by &lt;em&gt;Protocol Adapters&lt;/em&gt; to set and retrieve information about the connections from devices or gateways to the protocol adapters.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Device Registration API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/device-registration/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/device-registration/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Device Registration API&lt;/em&gt; is used by Hono&amp;rsquo;s protocol adapters to get information about devices connecting to the adapters.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Credentials API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/credentials/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/credentials/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Credentials API&lt;/em&gt; is used by &lt;em&gt;Protocol Adapters&lt;/em&gt; to retrieve credentials used to authenticate &lt;em&gt;Devices&lt;/em&gt; connecting to the adapter. In particular, the API supports to look up &lt;em&gt;shared secrets&lt;/em&gt; which are often used by IoT devices by means of &lt;em&gt;username/password&lt;/em&gt; based authentication schemes.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Authentication API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/authentication/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/authentication/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Authentication API&lt;/em&gt; is used to retrieve a &lt;em&gt;token&lt;/em&gt; asserting a subject&amp;rsquo;s identity and granted authorities. Other service implementations use such a token to make authorization decisions on a client&amp;rsquo;s request to read or write from/to a resource or to invoke a certain operation.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Device Registry Management API Specification</title>
      <link>https://www.eclipse.org/hono/docs/api/management/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/management/</guid>
      <description>  window.onload = function() { const ui = SwaggerUIBundle({ url: &#34;device-registry-v1.yaml&#34;, dom_id: &#39;#swagger-ui&#39;, deepLinking: true, presets: [ SwaggerUIBundle.presets.apis, SwaggerUIStandalonePreset ], plugins: [ SwaggerUIBundle.plugins.DownloadUrl ], layout: &#34;StandaloneLayout&#34;, docExpansion: &#34;none&#34;, defaultModelRendering: &#34;model&#34;, defaultModelExpandDepth: 0, defaultModelsExpandDepth: -1, validatorUrl: null }) window.ui = ui }  </description>
    </item>
    
    <item>
      <title>Metrics</title>
      <link>https://www.eclipse.org/hono/docs/api/metrics/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/api/metrics/</guid>
      <description>&lt;p&gt;Eclipse Hono&amp;trade;&amp;rsquo;s components report several metrics which may be used to gain some insight
into the running system. For instance, the HTTP adapter reports the number of successfully
processed telemetry messages. Some of these metrics are considered part of Hono&amp;rsquo;s external
interface. This section describes the semantics and format of the metrics, how they can be retrieved
and how to interpret actual values.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Helm based Deployment</title>
      <link>https://www.eclipse.org/hono/docs/deployment/helm-based-deployment/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/deployment/helm-based-deployment/</guid>
      <description>&lt;p&gt;Eclipse Hono&amp;trade;&amp;rsquo;s components are provided as container images which can be run on arbitrary container orchestration platforms.
This page describes the steps necessary to deploy Hono to a &lt;a href=&#34;https://kubernetes.io&#34;&gt;Kubernetes&lt;/a&gt; cluster using the
&lt;a href=&#34;https://helm.sh&#34;&gt;Helm package manager&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>OpenShift / OKD</title>
      <link>https://www.eclipse.org/hono/docs/deployment/openshift/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/deployment/openshift/</guid>
      <description>In Hono version 1.0 we dropped the OpenShift specific deployment using the source-to-image (S2I) model, in favor of the Helm charts and the Eclipse IoT Packages project.
You can still deploy to OpenShift and OKD, using the Helm charts. And you can also use routes to expose services. Deploying using S2I is also still possible, however the Hono project simply no longer provides out-of-the box scripts for doing so.</description>
    </item>
    
    <item>
      <title>Setting up a Kubernetes Cluster</title>
      <link>https://www.eclipse.org/hono/docs/deployment/create-kubernetes-cluster/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/deployment/create-kubernetes-cluster/</guid>
      <description>&lt;p&gt;This guide describes how to set up a Kubernetes cluster which can be used to run Eclipse Hono&amp;trade;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Limiting Resource Usage</title>
      <link>https://www.eclipse.org/hono/docs/deployment/resource-limitation/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/deployment/resource-limitation/</guid>
      <description>&lt;p&gt;Deploying Eclipse Hono&amp;trade; to a container orchestration platform is easy thanks to the provided Docker images. This page provides some guidance for configuring the resource consumption of these containers in order to make sure that they get enough memory and CPU to run properly, but to also make sure that individual containers do not use up all the resources causing other containers to starve.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Component View</title>
      <link>https://www.eclipse.org/hono/docs/architecture/component-view/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/architecture/component-view/</guid>
      <description>&lt;p&gt;This page describes the high level components constituting an Eclipse Hono&amp;trade; instance and their relations to each other.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Authentication/Authorization</title>
      <link>https://www.eclipse.org/hono/docs/architecture/auth/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/architecture/auth/</guid>
      <description>&lt;p&gt;This page describes how authentication and authorization of devices, consumers (back end applications) and system components works in Hono.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Device Registries</title>
      <link>https://www.eclipse.org/hono/docs/user-guide/device-registry/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/user-guide/device-registry/</guid>
      <description>Eclipse Hono&amp;trade; provides these device registry implementations:
File Based Device Registry
MongoDB Based Device Registry.</description>
    </item>
    
    <item>
      <title>Device Registry Configurations</title>
      <link>https://www.eclipse.org/hono/docs/admin-guide/device-registry-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/admin-guide/device-registry-config/</guid>
      <description>The configuration of Eclipse Hono&amp;trade;s Device Registry implementations for the File Based Device Registry and for the MongoDB Based Device Registry.</description>
    </item>
    
  </channel>
</rss>