<?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; Vers.: 1.2</title>
    <link>https://www.eclipse.org/hono/docs/1.2/</link>
    <description>Recent content in Documentation on Eclipse Hono&amp;trade; Vers.: 1.2</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language><atom:link href="https://www.eclipse.org/hono/docs/1.2/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Device Identity</title>
      <link>https://www.eclipse.org/hono/docs/1.2/concepts/device-identity/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/concepts/tenancy/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/concepts/device-provisioning/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/concepts/connecting-devices/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/concepts/connecting-devices/</guid>
      <description>One of the most important features of Eclipse Hono™ 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/1.2/concepts/device-notifications/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/concepts/command-and-control/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/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/1.2/concepts/resource-limits/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/concepts/connection-events/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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>Device Registry</title>
      <link>https://www.eclipse.org/hono/docs/1.2/user-guide/device-registry/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/user-guide/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/1.2/api/tenant/&#34;&gt;Tenant API&lt;/a&gt;, &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/api/device-registration/&#34;&gt;Device Registration API&lt;/a&gt; and &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/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/1.2/user-guide/http-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/user-guide/http-adapter/</guid>
      <description>&lt;p&gt;The HTTP protocol adapter exposes HTTP based endpoints for Eclipse Hono™&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/1.2/user-guide/mqtt-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/user-guide/amqp-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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;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/1.2/user-guide/coap-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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;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/1.2/user-guide/kura-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/user-guide/kura-adapter/</guid>
      <description>&lt;p&gt;The Kura protocol adapter exposes an MQTT topic hierarchy allowing Eclipse Kura™ based gateways to publish &lt;em&gt;control&lt;/em&gt; and &lt;em&gt;data&lt;/em&gt; messages to Eclipse Hono™&amp;rsquo;s Telemetry and Event endpoints.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Sigfox Adapter</title>
      <link>https://www.eclipse.org/hono/docs/1.2/user-guide/sigfox-adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/user-guide/jmeter_load_tests/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/user-guide/jmeter_load_tests/</guid>
      <description>&lt;p&gt;Eclipse Hono™ 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/1.2/admin-guide/common-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/admin-guide/auth-server-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/auth-server-config/</guid>
      <description>&lt;p&gt;The Auth Server component exposes a service endpoint implementing Eclipse Hono™&amp;rsquo;s &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/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>Device Registry Configuration</title>
      <link>https://www.eclipse.org/hono/docs/1.2/admin-guide/device-registry-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/device-registry-config/</guid>
      <description>&lt;p&gt;The Device Registry component provides an exemplary implementation of Eclipse Hono™&amp;rsquo;s &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/api/device-registration/&#34;&gt;Device Registration&lt;/a&gt;,
&lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/api/credentials/&#34;&gt;Credentials&lt;/a&gt;, &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/api/tenant/&#34;&gt;Tenant&lt;/a&gt; and &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/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/1.2/admin-guide/device-connection-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/device-connection-config/</guid>
      <description>&lt;p&gt;The Device Connection service provides an implementation of Eclipse Hono™&amp;rsquo;s &lt;a href=&#34;https://www.eclipse.org/hono/docs/hono/docs/1.2/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/1.2/admin-guide/http-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/http-adapter-config/</guid>
      <description>&lt;p&gt;The HTTP protocol adapter exposes a HTTP based API for Eclipse Hono™&amp;rsquo;s Telemetry and Event endpoints.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>AMQP Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/1.2/admin-guide/amqp-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/amqp-adapter-config/</guid>
      <description>&lt;p&gt;The AMQP protocol adapter allows clients (devices and gateway components) that speaks AMQP 1.0 to publish telemetry messages and events to Eclipse Hono™&amp;rsquo;s Telemetry and Event endpoints.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>MQTT Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/1.2/admin-guide/mqtt-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/mqtt-adapter-config/</guid>
      <description>&lt;p&gt;The MQTT protocol adapter exposes an MQTT topic hierarchy for publishing messages and events to Eclipse Hono™&amp;rsquo;s Telemetry and Event endpoints.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kura Adapter Configuration</title>
      <link>https://www.eclipse.org/hono/docs/1.2/admin-guide/kura-adapter-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/kura-adapter-config/</guid>
      <description>&lt;p&gt;The Kura protocol adapter exposes an MQTT topic hierarchy allowing Eclipse Kura™ based gateways to publish &lt;em&gt;control&lt;/em&gt; and &lt;em&gt;data&lt;/em&gt; messages to Eclipse Hono™&amp;rsquo;s Telemetry and Event endpoints.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Hono Client Configuration</title>
      <link>https://www.eclipse.org/hono/docs/1.2/admin-guide/hono-client-configuration/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/admin-guide/amqp-network-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/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/1.2/admin-guide/secure_communication/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/secure_communication/</guid>
      <description>&lt;p&gt;The individual components of an Eclipse Hono™ 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/1.2/admin-guide/monitoring-tracing-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/admin-guide/monitoring-tracing-config/</guid>
      <description>&lt;p&gt;The individual components of an Eclipse Hono™ 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/1.2/dev-guide/building_hono/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/dev-guide/amqp_adapter_client/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/dev-guide/amqp_adapter_client/</guid>
      <description>Eclipse Hono™ 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/1.2/dev-guide/java_client_consumer/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/dev-guide/java_client_consumer/</guid>
      <description>To illustrate how Eclipse Hono™ 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/1.2/dev-guide/custom_http_adapter/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/dev-guide/custom_http_adapter/</guid>
      <description>&lt;p&gt;Eclipse Hono™ 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/1.2/api/telemetry/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/api/event/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/api/command-and-control/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/api/command-and-control/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Command &amp;amp; Control&lt;/em&gt; API of Eclipse Hono™ 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/1.2/api/tenant/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/api/device-connection/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/api/device-registration/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/api/credentials/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/api/authentication/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/api/management/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/api/management/</guid>
      <description>window.onload = function() { const TryItOutButtonWithHonoSandboxInfo = function() { return { wrapComponents: { TryItOutButton: (Original, { React }) = (props) = { return React.createElement(&#34;div&#34;, {style: {&#34;font-size&#34;: &#39;14px&#39;}}, React.createElement(Original, props), &#39;using the &#39;, React.createElement(&#39;a&#39;, {href: &#39;https://www.eclipse.org/hono/sandbox/&#39;}, &#34;Hono Sandbox&#34;) ) } } } } const ui = SwaggerUIBundle({ url: &#34;device-registry-v1.yaml&#34;, dom_id: &#39;#swagger-ui&#39;, deepLinking: true, presets: [ SwaggerUIBundle.presets.apis, SwaggerUIStandalonePreset ], plugins: [ TryItOutButtonWithHonoSandboxInfo, SwaggerUIBundle.plugins.DownloadUrl ], supportedSubmitMethods: [], layout: &#34;StandaloneLayout&#34;, docExpansion: &#34;none&#34;, defaultModelRendering: &#34;</description>
    </item>
    
    <item>
      <title>Metrics</title>
      <link>https://www.eclipse.org/hono/docs/1.2/api/metrics/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/api/metrics/</guid>
      <description>&lt;p&gt;Eclipse Hono™&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/1.2/deployment/helm-based-deployment/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/deployment/helm-based-deployment/</guid>
      <description>&lt;p&gt;Eclipse Hono™&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/1.2/deployment/openshift/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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/1.2/deployment/create-kubernetes-cluster/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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™.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Limiting Resource Usage</title>
      <link>https://www.eclipse.org/hono/docs/1.2/deployment/resource-limitation/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/deployment/resource-limitation/</guid>
      <description>&lt;p&gt;Deploying Eclipse Hono™ 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/1.2/architecture/component-view/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/architecture/component-view/</guid>
      <description>&lt;p&gt;This page describes the high level components constituting an Eclipse Hono™ instance and their relations to each other.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Authentication/Authorization</title>
      <link>https://www.eclipse.org/hono/docs/1.2/architecture/auth/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/docs/1.2/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>
    
  </channel>
</rss>
