<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Welcome on Eclipse Hono&amp;trade;</title>
    <link>https://www.eclipse.org/hono/</link>
    <description>Recent content in Welcome on Eclipse Hono&amp;trade;</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    
	<atom:link href="https://www.eclipse.org/hono/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Getting started with Eclipse Hono</title>
      <link>https://www.eclipse.org/hono/getting-started/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/getting-started/</guid>
      <description>This guide will walk you through an interactive example usage scenario of Eclipse Hono. You will learn how devices can use Hono&amp;rsquo;s protocol adapters to publish telemetry data and events using both HTTP and/or MQTT. You will also see how a downstream application can consume this data using Hono&amp;rsquo;s north bound API without requiring the application to know anything about the specifics of the communication protocols used by the devices.</description>
    </item>
    
    <item>
      <title>Downloads</title>
      <link>https://www.eclipse.org/hono/downloads/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/downloads/</guid>
      <description>Binaries Eclipse Hono&amp;rsquo;s service components are provided by means of pre-built Docker images available from Docker Hub. These container images can be deployed to popular container orchestration platforms like Kubernetes and OpenShift.
The release archive contains all files necessary to deploy Hono to a Kubernetes cluster using the Helm package manager.
 Eclipse Hono 1.0.0 Archive  Download and extract the archive and follow the deployment guide.
A Java based command line client for consuming telemetry data and events from Hono is available for download as well:</description>
    </item>
    
    <item>
      <title>Sandbox</title>
      <link>https://www.eclipse.org/hono/sandbox/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/sandbox/</guid>
      <description>We are providing a publicly accessible Eclipse Hono&amp;trade; sandbox environment at hono.eclipse.org. The main purpose of the system is to provide an environment for experimenting with devices and how to connect them to Hono without the need for setting up a local instance.
The sandbox hosts a Hono instance consisting of the same components as described in the Getting started Guide. All services are exposed via the same ports as used in the guide.</description>
    </item>
    
    <item>
      <title>Frequently Asked Questions</title>
      <link>https://www.eclipse.org/hono/faq/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/faq/</guid>
      <description>FAQ is moving to Stack Overflow The preferred support channel on which the Hono community would like to receive questions from users and answer them is Stackoverflow. There is the special tag [eclipse-hono], that the Hono developers keep watching. This FAQ page here will be removed soon.  Why do I get HTTP/1.1 503 Service Unavailable when sending messages to the HTTP protocol adapter? See the accepted answer on Stackoverflow.</description>
    </item>
    
    <item>
      <title>Contributing</title>
      <link>https://www.eclipse.org/hono/community/contributing/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/community/contributing/</guid>
      <description>&lt;p&gt;Thank you for considering to contribute to Eclipse Hono&amp;trade;. We really appreciate the time and effort you want to
spend helping to improve things around here. And help we can use :-)&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Resources</title>
      <link>https://www.eclipse.org/hono/community/presentations/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/community/presentations/</guid>
      <description>&lt;p&gt;On this page you can find links to arbitrary resources covering Eclipse Hono&amp;trade; which have been presented at events, conferences
and meet-ups or are available online.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Get in Touch</title>
      <link>https://www.eclipse.org/hono/community/get-in-touch/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/community/get-in-touch/</guid>
      <description>&lt;p&gt;Wanna tell us what you think about Eclipse Hono&amp;trade;? What we can improve? Which feature is missing? Or just discuss architectural issues?&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Road Map</title>
      <link>https://www.eclipse.org/hono/community/road-map/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/community/road-map/</guid>
      <description>&lt;p&gt;We are trying our best to anticipate the needs and requirements of users based on the feedback we get from users. From this information we maintain a &lt;a href=&#34;https://projects.eclipse.org/projects/iot.hono/governance&#34;&gt;Road Map&lt;/a&gt; for the next several releases.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Release Notes</title>
      <link>https://www.eclipse.org/hono/release-notes/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/release-notes/</guid>
      <description>1.0.0 New Features  A tenant can now be configured with a max-ttl which is used as a upper boundary for default TTL values configured for devices/tenants. Please refer to the Tenant API for details. The AMQP, HTTP, MQTT and Kura protocol adapters consider this property when setting a TTL on downstream event messages. A protocol adapter can now be configured with a timeout for idle tenants. When there has been no communication between a protocol adapter instance and the devices of a tenant, the former one releases allocated resources of the tenant.</description>
    </item>
    
    <item>
      <title>Thank you</title>
      <link>https://www.eclipse.org/hono/thankyou/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://www.eclipse.org/hono/thankyou/</guid>
      <description>YourKit is kindly supporting this open source project with its full-featured Java Profiler. YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications. Take a look at YourKit&amp;rsquo;s leading software products: YourKit Java Profiler and YourKit .NET Profiler.</description>
    </item>
    
  </channel>
</rss>