<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="keywords" content=" ">
<title>  Blog entries • Eclipse Ditto™ • a digital twin framework</title>

<link rel="stylesheet" href="css/syntax.css">
<link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" crossorigin="anonymous">
<link rel="stylesheet" href="css/modern-business.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" crossorigin="anonymous">
<link rel="stylesheet" href="css/customstyles.css">
<link rel="stylesheet" href="css/boxshadowproperties.css">
<link rel="stylesheet" href="css/theme-ditto.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700">

<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js" crossorigin="anonymous"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/anchor-js/2.0.0/anchor.min.js" crossorigin="anonymous"></script>
<script src="js/toc.js"></script>
<script src="js/customscripts.js"></script>

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "Organization",
  "url": "https://eclipse.org/ditto/",
  "logo": "https://eclipse.org/ditto/images/ditto.svg"
}
</script>

<link rel="icon" type="image/png" href="images/favicon-16x16.png" sizes="16x16">
<link rel="icon" type="image/png" href="images/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="images/favicon-96x96.png" sizes="96x96">

<link rel="alternate" type="application/rss+xml" title="Eclipse Ditto Blog" href="https://www.eclipse.org/ditto/feed.xml">

<!-- Eclipse Foundation cookie consent: -->
<link rel="stylesheet" type="text/css" href="//www.eclipse.org/eclipse.org-common/themes/solstice/public/stylesheets/vendor/cookieconsent/cookieconsent.min.css" />
<script src="//www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/vendor/cookieconsent/default.min.js"></script>

    <script>
        $(document).ready(function() {
            $("#tg-sb-link").click(function() {
                $("#tg-sb-sidebar").toggle();
                $("#tg-sb-content").toggleClass('col-md-9');
                $("#tg-sb-content").toggleClass('col-md-12');
                $("#tg-sb-icon").toggleClass('fa-toggle-on');
                $("#tg-sb-icon").toggleClass('fa-toggle-off');
            });
        });
    </script>
</head>


<script>
    (function(w,d,s,l,i){
        w[l]=w[l]||[];
        w[l].push({'gtm.start':
            new Date().getTime(),event:'gtm.js'});
        var f=d.getElementsByTagName(s)[0],
            j=d.createElement(s),
            dl=l!='dataLayer'?'&l='+l:'';
        j.async=true;
        j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;
        f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','GTM-5WLCZXC');
</script>



<body>
<!-- Navigation -->
<nav class="navbar navbar-inverse navbar-fixed-top">
    <div class="container topnavlinks">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-ditto-home" href="index.html">&nbsp;<img src="images/ditto_allwhite_symbolonly.svg" class="ditto-navbar-symbol" alt="Home"> <img src="images/ditto_allwhite_textonly.svg" class="ditto-navbar-symbol-text" alt="Eclipse Ditto™"></a>
        </div>
        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav navbar-right">
                <!-- toggle sidebar button -->
                <!--<li><a id="tg-sb-link" href="#"><i id="tg-sb-icon" class="fa fa-toggle-on"></i> Nav</a></li>-->
                <!-- entries without drop-downs appear here -->




                
                
                
                <li><a href="blog.html">Blog</a></li>
                
                
                
                <li><a href="intro-overview.html">Documentation</a></li>
                
                
                
                <li><a href="http-api-doc.html">HTTP API</a></li>
                
                
                
                <li><a href="sandbox.html">Sandbox</a></li>
                
                
                
                  
                  <li><a href="https://github.com/eclipse/ditto" target="_blank">
                    <img src="images/GitHub-Mark-Light-32px.png" alt="Sources at GitHub">
                  </a></li>
                  
                
                
                
                  
                  <li><a href="https://github.com/eclipse/ditto-clients" target="_blank">
                    <img src="images/GitHub-Mark-Light-32px.png" alt="SDK sources at GitHub">SDKs
                  </a></li>
                  
                
                
                
                  
                  <li><a href="https://github.com/eclipse/ditto-examples" target="_blank">
                    <img src="images/GitHub-Mark-Light-32px.png" alt="Example sources at GitHub">examples
                  </a></li>
                  
                
                
                
                <!-- entries with drop-downs appear here -->
                <!-- conditional logic to control which topnav appears for the audience defined in the configuration file.-->
                
                
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Links<b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        
                        
                        <li><a href="https://projects.eclipse.org/projects/iot.ditto" target="_blank">Eclipse Ditto Project</a></li>
                        
                        
                        
                        <li><a href="https://www.eclipse.org/forums/index.php/f/364/" target="_blank">Forum</a></li>
                        
                        
                        
                        <li><a href="https://ci.eclipse.org/ditto/" target="_blank">Jenkins</a></li>
                        
                        
                        
                        <li><a href="https://dev.eclipse.org/mhonarc/lists/ditto-dev/" target="_blank">Mailing list archives</a></li>
                        
                        
                        
                        <li><a href="https://gitter.im/eclipse/ditto" target="_blank">Gitter.im chat</a></li>
                        
                        
                    </ul>
                </li>
                
                
                
                <!--comment out this block if you want to hide search-->
                <li>
                    <!--start search-->
                    <div id="search-demo-container">
                        <input type="text" id="search-input" placeholder="search...">
                        <ul id="results-container"></ul>
                    </div>
                    <script src="//cdnjs.cloudflare.com/ajax/libs/simple-jekyll-search/0.0.9/jekyll-search.js" type="text/javascript"></script>
                    <script type="text/javascript">
                            SimpleJekyllSearch.init({
                                searchInput: document.getElementById('search-input'),
                                resultsContainer: document.getElementById('results-container'),
                                dataSource: 'search.json',
                                searchResultTemplate: '<li><a href="{url}" title="Blog entries">{title}</a></li>',
                                noResultsText: 'No results found.',
                                limit: 10,
                                fuzzy: true,
                    })
                    </script>
                    <!--end search-->
                </li>
            </ul>
        </div>
    </div>
    <!-- /.container -->
</nav>

<!-- Page Content -->
<div class="container">
  <div id="main">
    <!-- Content Row -->
    <div class="row">
        
        
            <!-- Sidebar Column -->
            <div class="col-md-3" id="tg-sb-sidebar">
                

<ul id="mysidebar" class="nav">
  <li class="sidebarTitle">
    <label for="docVersion">Eclipse Ditto™ version:</label>
    <div class="select-wrapper">
      <select id="docVersion" name="docVersion">
        
        <option value="">development</option>
        
        <option value="2.0">2.0</option>
        
        <option value="1.5">1.5</option>
        
        <option value="1.4">1.4</option>
        
        <option value="1.3">1.3</option>
        
        <option value="1.2">1.2</option>
        
        <option value="1.1">1.1</option>
        
        <option value="1.0">1.0</option>
        
      </select>
    </div>
    <div id="dev-warning">
      <div markdown="span" class="alert alert-warning" role="alert" style="font-size:0.6em"><i class="fa fa-warning"></i> <b>Important:</b> This documentation reflects the latest 'development'. You might want to choose a released version.</div>
    </div>
  </li>
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Introduction</a>
          <ul>
              
              
              
              <li><a href="intro-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="intro-digitaltwins.html">Digital twins</a></li>
              
              
              
              
              
              
              <li><a href="intro-hello-world.html">Hello world</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Release Notes</a>
          <ul>
              
              
              
              <li><a href="release_notes_200.html">2.0.0</a></li>
              
              
              
              
              
              
              <li><a href="release_notes_151.html">1.5.1</a></li>
              
              
              
              
              
              
              <li><a href="release_notes_150.html">1.5.0</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Archive</a>
                  <ul>
                      
                      
                      
                      <li><a href="release_notes_140.html">1.4.0</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_130.html">1.3.0</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_121.html">1.2.1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_120.html">1.2.0</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_115.html">1.1.5</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_113.html">1.1.3</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_112.html">1.1.2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_111.html">1.1.1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_110.html">1.1.0</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_100.html">1.0.0</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_090.html">0.9.0</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_080.html">0.8.0</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_100-M2.html">1.0.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_100-M1a.html">1.0.0-M1a</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_090-M2.html">0.9.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_090-M1.html">0.9.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_080-M3.html">0.8.0-M3</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_080-M2.html">0.8.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_080-M1.html">0.8.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_030-M2.html">0.3.0-M2</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_030-M1.html">0.3.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_020-M1.html">0.2.0-M1</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_010-M3.html">0.1.0-M3</a></li>
                      
                      
                      
                      
                      
                      <li><a href="release_notes_010-M1.html">0.1.0-M1</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Installation</a>
          <ul>
              
              
              
              <li><a href="installation-building.html">Building Ditto</a></li>
              
              
              
              
              
              
              <li><a href="installation-running.html">Running Ditto</a></li>
              
              
              
              
              
              
              <li><a href="installation-operating.html">Operating Ditto</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Basic concepts</a>
          <ul>
              
              
              
              <li><a href="basic-overview.html">Overview</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Model entities</a>
                  <ul>
                      
                      
                      
                      <li><a href="basic-thing.html">Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-feature.html">Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-policy.html">Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-namespaces-and-names.html">Namespaces and Names</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-metadata.html">Thing Metadata</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-errors.html">Errors</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="basic-auth.html">Authentication and Authorization</a></li>
              
              
              
              
              
              
              <li><a href="basic-messages.html">Messages</a></li>
              
              
              
              
              
              
              <li><a href="basic-signals.html">Signals</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Signal types</a>
                  <ul>
                      
                      
                      
                      <li><a href="basic-signals-command.html">Command</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-signals-commandresponse.html">Command response</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-signals-errorresponse.html">Error response</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-signals-event.html">Event</a></li>
                      
                      
                      
                      
                      
                      <li><a href="basic-signals-announcement.html">Announcement</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="basic-apis.html">APIs</a></li>
              
              
              
              
              
              
              <li><a href="basic-connections.html">Connections</a></li>
              
              
              
              
              
              
              <li><a href="basic-placeholders.html">Placeholders</a></li>
              
              
              
              
              
              
              <li><a href="basic-changenotifications.html">Change notifications</a></li>
              
              
              
              
              
              
              <li><a href="basic-rql.html">RQL expressions</a></li>
              
              
              
              
              
              
              <li><a href="basic-enrichment.html">Signal enrichment</a></li>
              
              
              
              
              
              
              <li><a href="basic-search.html">Search</a></li>
              
              
              
              
              
              
              <li><a href="basic-acknowledgements.html">Acknowledgements / QoS</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Advanced concepts</a>
          <ul>
              
              
              
              <li><a href="advanced-data-by-pass.html">Data By-Pass</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Architecture</a>
          <ul>
              
              
              
              <li><a href="architecture-overview.html">Overview</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>Services</a>
                  <ul>
                      
                      
                      
                      <li><a href="architecture-services-policies.html">Policies</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-things.html">Things</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-things-search.html">Things-Search</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-connectivity.html">Connectivity</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-concierge.html">Concierge</a></li>
                      
                      
                      
                      
                      
                      <li><a href="architecture-services-gateway.html">Gateway</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>HTTP API</a>
          <ul>
              
              
              
              <li><a href="httpapi-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-concepts.html">Concepts</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-search.html">Search</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-messages.html">Messages</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-protocol-bindings-websocket.html">WebSocket protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-protocol-bindings-cloudevents.html">Cloud Events HTTP protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="httpapi-sse.html">Server sent events</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Connectivity API</a>
          <ul>
              
              
              
              <li><a href="connectivity-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-manage-connections.html">Manage connections</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-amqp091.html">AMQP 0.9.1 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-amqp10.html">AMQP 1.0 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-mqtt.html">MQTT 3.1.1 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-mqtt5.html">MQTT 5 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-http.html">HTTP 1.1 protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-protocol-bindings-kafka2.html">Kafka 2.x protocol binding</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-mapping.html">Payload mapping</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-header-mapping.html">Header mapping</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-tls-certificates.html">TLS certificates</a></li>
              
              
              
              
              
              
              <li><a href="connectivity-ssh-tunneling.html">SSH tunneling</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Client SDK</a>
          <ul>
              
              
              
              <li><a href="client-sdk-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="client-sdk-java.html">Java</a></li>
              
              
              
              
              
              
              <li><a href="client-sdk-javascript.html">JavaScript</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
        <li class="subfolders">
          <a href="#"><span></span>Ditto Protocol</a>
          <ul>
              
              
              
              <li><a href="protocol-overview.html">Overview</a></li>
              
              
              
              
              
              
              <li><a href="protocol-twinlive.html">Twin/live channel</a></li>
              
              
              
              
              
              
              <li><a href="protocol-specification.html">Specification</a></li>
              
              
              
              
              
              
              <li><a href="protocol-specification-topic.html">Protocol topic</a></li>
              
              
              
              
              
              
              <li><a href="protocol-specification-errors.html">Errors</a></li>
              
              
              
              
              
              
              <li><a href="protocol-specification-things.html">Things group</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ commands/events</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-specification-things-create-or-modify.html">Create/Modify</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-things-merge.html">Merge</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-things-retrieve.html">Retrieve</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-things-delete.html">Delete</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-acks.html">Acknowledgements</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ search/messages</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-specification-things-search.html">Search</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-things-messages.html">Messages</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="protocol-specification-policies.html">Policies group</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ commands/events</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-specification-policies-create-or-modify.html">Create/Modify</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-policies-retrieve.html">Retrieve</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-policies-delete.html">Delete</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-specification-policies-announcement.html">Announcement</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="protocol-bindings.html">Bindings</a></li>
              
              
              
              
              
              
              <li><a href="protocol-examples.html">Examples</a></li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ Things examples</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-examples-creatething.html">Create a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletething.html">Delete a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifything.html">Modify a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievething.html">Retrieve a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievethings.html">Retrieve multiple Things</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifypolicyid.html">Modify the Policy ID of a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createattributes.html">Create Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteattributes.html">Delete Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyattributes.html">Modify Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveattributes.html">Retrieve Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createattribute.html">Create a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteattribute.html">Delete a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyattribute.html">Modify a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveattribute.html">Retrieve a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createthingdefinition.html">Create a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletethingdefinition.html">Delete a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifythingdefinition.html">Modify a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievethingdefinition.html">Retrieve a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createfeatures.html">Create Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletefeatures.html">Delete Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyfeatures.html">Modify Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievefeatures.html">Retrieve Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createfeature.html">Create a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletefeature.html">Delete a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyfeature.html">Modify a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievefeature.html">Retrieve a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createdefinition.html">Create Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletedefinition.html">Delete Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifydefinition.html">Modify Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievedefinition.html">Retrieve Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createproperties.html">Create Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteproperties.html">Delete Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyproperties.html">Modify Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveproperties.html">Retrieve Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createproperty.html">Create a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deleteproperty.html">Delete a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifyproperty.html">Modify a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrieveproperty.html">Retrieve a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createdesiredproperties.html">Create desired Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletedesiredproperties.html">Delete desired Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifydesiredproperties.html">Modify desired Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievedesiredproperties.html">Retrieve desired Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-createdesiredproperty.html">Create a single desired Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-deletedesiredproperty.html">Delete a single desired Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-modifydesiredproperty.html">Modify a single desired Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-retrievedesiredproperty.html">Retrieve a single desired Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-errorresponses.html">Error responses</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ Things merge examples</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-examples-mergething.html">Merge a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergepolicyid.html">Merge the Policy ID of a Thing</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergeattributes.html">Merge Attributes</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergeattribute.html">Merge a single Attribute</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergethingdefinition.html">Merge a Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergefeatures.html">Merge Features</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergefeature.html">Merge a single Feature</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergefeaturedefinition.html">Merge Feature Definition</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergeproperties.html">Merge Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergeproperty.html">Merge a single Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergedesiredproperties.html">Merge desired Feature Properties</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-mergedesiredproperty.html">Merge a single desired Property</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-errorresponses.html">Error responses</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              <li class="subfolders">
                  <a href="#"><span></span>→ Policies examples</a>
                  <ul>
                      
                      
                      
                      <li><a href="protocol-examples-policies-createpolicy.html">Create a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deletepolicy.html">Delete a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifypolicy.html">Modify a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievepolicy.html">Retrieve a Policy</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifypolicyentries.html">Modify entries</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievepolicyentries.html">Retrieve entries</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-createpolicyentry.html">Create a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deletepolicyentry.html">Delete a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifypolicyentry.html">Modify a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievepolicyentry.html">Retrieve a single entry</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifysubjects.html">Modify subjects</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievesubjects.html">Retrieve subjects</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-createsubject.html">Create a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deletesubject.html">Delete a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifysubject.html">Modify a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrievesubject.html">Retrieve a single subject</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifyresources.html">Modify resources</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrieveresources.html">Retrieve resources</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-createresource.html">Create a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-deleteresource.html">Delete a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-modifyresource.html">Modify a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-retrieveresource.html">Retrieve a single resource</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-errorresponses.html">Error responses</a></li>
                      
                      
                      
                      
                      
                      <li><a href="protocol-examples-policies-announcement-subjectDeletion.html">Announcement for subject deletion</a></li>
                      
                      
                      
                  </ul>
              </li>
              
              
              
              
              
              
              <li><a href="protocol-examples-search.html">→ Search examples</a></li>
              
              
              
              
          </ul>
        </li>
    
  
  
  
    
    <li><a href="sandbox.html">Sandbox</a></li>
    
  
  
  
    
    <li><a href="presentations.html">Presentations</a></li>
    
  
  
  
    
    <li><a href="glossary.html">Glossary</a></li>
    
  
  
  
    
    <li><a href="feedback.html">Feedback</a></li>
    
  
  
  
    
         <p class="external">
             <a href="#" id="collapseAll">Collapse All</a> | <a href="#" id="expandAll">Expand All</a>
         </p>
    
</ul>

<!-- this highlights the active parent class in the sidebar. this is critical so that the parent expands when you're viewing a page. This must appear below the sidebar code above. Otherwise, if placed inside customscripts.js, the script runs before the sidebar code runs and the class never gets inserted.-->
<script>$("li.active").parents('li').toggleClass("active");
</script>

            </div>
            
        

        <!-- Content Column -->
        <div class="col-md-9" id="tg-sb-content">
            <div class="post-header">
   <h1 class="post-title-main">Blog entries</h1>
</div>



<div class="post-content">

   

    
    
<!-- this handles the automatic toc. use ## for subheads to auto-generate the on-page minitoc. if you use html tags, you must supply an ID for the heading element in order for it to appear in the minitoc. -->
<script>
$( document ).ready(function() {
  // Handler for .ready() called.

$('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3,h4' });

/* this offset helps account for the space taken up by the floating toolbar. */
$('#toc').on('click', 'a', function() {
  var target = $(this.getAttribute('href'))
    , scroll_target = target.offset().top

  $(window).scrollTop(scroll_target - 10);
  return false
})
  
});
</script>

<div id="toc"></div>

    


    


    

  <p>The following pages and posts are tagged with <button type="button" style="cursor: default" class="btn btn-default navbar-btn">blog</button></p>
<table><thead><tr><th>Title</th><th>Type</th><th>Excerpt</th></tr></thead>
    <tbody>
    
  
    
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
   
    
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
        
     
   
    
        
     
        
     
        
     
   
    
        
     
        
     
        
     
   
    
        
     
        
     
        
     
   
    
        
     
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
   
    
        
     
        
     
   
    
        
     
   
    
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
        
     
   
    
        
     
        
     
        
     
   
    
        
     
        
     
        
     
   
    
        
     
        
     
   
    
   
    
        
     
        
     
   
    
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
   
    
        
     
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
        
     
   
    
        
     
        
     
   
    
        
     
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
        
     
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   
    
   

        
        
        
        

        <tr><td><a href="2021-05-06-release-announcement-200.html">Announcing Eclipse Ditto Release 2.0.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today, ~1.5 years after release 1.0.0, the Eclipse Ditto team is happy to announce the availability of Eclipse Ditto 2.0.0. With the major version 2.0.0 the Ditto team removed technical debt and ended support for APIs which were deprecated long ago in order to have a better maintainable... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2021-03-31-ssh-tunneling-for-managed-connections.html">Support SSH tunneling for managed connections</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> With the upcoming release of Eclipse Ditto version 2.0.0 it will be possible to SSH tunneling for managed connections With the upcoming release of Eclipse Ditto version 2.0.0, managed connections support establishing an SSH tunnel, which is then used to connect to the actual target endpoint. This is useful... </td>
        </tr>
        
        
        
        
        
        
        
        
        

        <tr><td><a href="2021-03-22-azure-iot-hub-integration.html">Use Eclipse Ditto with Azure IoT Hub as message broker</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> This blogpost is based upon Eclipse Ditto Version 1.5.0, the Azure IoT Suite as of 2021-03-19 and the azure-iot-device-client version 1.29.2. Connecting devices to Eclipse Ditto via Azure IoT Hub This blog post elaborates on connecting and managing devices in Eclipse Ditto by using the Azure IoT Hub as... </td>
        </tr>
        
        
        
        
        
        
        
        
        

        <tr><td><a href="2021-02-04-merge-feature.html">Support merge functionality for things resources</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> With the upcoming release of Eclipse Ditto version 2.0.0 it will be possible to merge existing things and their subresources. Merge functionality for things resources Ditto now supports merging of existing things and all of its subresources with the provided payload in the request. This can be done by... </td>
        </tr>
        
        
        
        
        
        
        
        
        

        <tr><td><a href="2021-01-22-policy-subject-activate-token-integration.html">Policy actions: token based subject activation</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> The upcoming version of Eclipse Ditto 2.0.0 will be enhanced with the ability to alter policies based on policy actions. Policy actions This new concept of Policy actions allows upfront defined modifications to policies without the need for the one invoking the action to have “WRITE” permissions... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-12-10-release-announcement-150.html">Announcing Eclipse Ditto Release 1.5.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Wrapping up this crazy year, the Ditto team is happy to announce the next feature update of Ditto 1.x: Eclipse Ditto 1.5.0 1.5.0 focuses on:  Desired properties management (CRUD) Addition of “cloudevents” HTTP endpoint Ditto internal pub/sub supports using a “grouping” concept which improves Ditto’s scalability capabilities Issuing... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-11-16-weak-acknowledgements.html">Weak acknowledgments to decouple signal publishers and subscribers</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Motivation Ditto 1.2.0 introduced at-least-once delivery via acknowledgement requests. It increased coupling between the publisher and the subscriber of signals in that the subscriber is no longer at the liberty to filter for signals it is interested in. Instead, the subscriber must consume all signals in... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-11-11-desired-properties.html">Desired Feature Properties</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Desired feature properties added to things model With the upcoming release of Eclipse Ditto version 1.5.0 desired feature properties are introduced to the things model for API versions later than 1. The desired properties for features are added on the same level of the model as the feature... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-10-28-release-announcement-140.html">Announcing Eclipse Ditto Release 1.4.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today, the Ditto team is happy to announce the next feature update of Ditto 1.x: Eclipse Ditto 1.4.0 1.4.0 focuses on:  Declaration of acknowledgement labels unique to each subscriber  Please have a look at the 1.4.0 release notes for a more detailed information on the release.... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-10-23-end-2-end-acknowledgment.html">E2E acknowledgment</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> E2E acknowledgement using Eclipse Ditto By adding the new acknowledgements feature to Ditto, it is now possible to provide an end to end QoS (quality of service) with level 1. Previously the connectivity service of Ditto did accept all incoming messages immediately as soon as it received... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-10-08-asynchronous-client-creation.html">Asynchronous Client Creation in Ditto Java Client 1.3.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Before Ditto Java Client 1.3.0, a client object connects to a configured Ditto back-end during its creation. // create a client object and block until it connects to the Ditto back-end. final DittoClient client = DittoClients.newInstance(&lt;span... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-09-30-release-announcement-130.html">Announcing Eclipse Ditto Release 1.3.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today, the Ditto team is happy to announce the next feature update of Ditto 1.x: Eclipse Ditto 1.3.0 1.3.0 focuses on the following areas:  Implicit/automatic creation of digital twins (things) Use response of HTTP push connections as live message response “Raw” payload mapper for “pass-through” connectivity scenarios not... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-08-31-release-announcement-120.html">Announcing Eclipse Ditto Release 1.2.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today, the Ditto team is happy to announce the second minor (feature) update of Ditto 1.x: Eclipse Ditto 1.2.0 1.2.0 focuses on the following areas:  “At least once” (QoS 1) processing of messages consumed/sent via Ditto’s managed connections (via acknowledgements) Addition of a "_created"... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-04-29-release-announcement-110.html">Announcing Eclipse Ditto Release 1.1.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today, approximately 4 months after Eclipse Ditto’s 1.0.0 release, the team is happy to announce the first minor (feature) update of Ditto 1.0: Eclipse Ditto 1.1.0 The Ditto team was quite busy, 1.1.0 focuses on the following areas:  Management of Policies via Ditto Protocol... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2020-04-16-connecting-to-ttn-via-mqtt.html">Digital twins of devices connected via LoRaWAN to TTN</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td>   A workshop of the 2020 The Things Virtual Conference on April 16th 2020 is/was about how to connect Eclipse Ditto to “The Things Network” via TTN’s MQTT broker in order to automatically update digital twins of devices connected via LoRaWAN... </td>
        </tr>
        
        
        
        
        
        
        

        <tr><td><a href="2019-12-12-release-announcement-100.html">Announcing Eclipse Ditto Release 1.0.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today the Eclipse Ditto team is thrilled to announce the availability of Eclipse Ditto’s first major release 1.0.0. Maturity The initial code contribution was done in October 2017, 2 years later and 2 releases (0.8.0 and 0.9.0) later, we think its time to graduate from the... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-11-04-milestone-announcement-100-M2.html">Announcing Ditto Milestone 1.0.0-M2</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> The second and last milestone of the upcoming release 1.0.0 was released today. Have a look at the Milestone 1.0.0-M2 release notes for what changed in detail. The main changes and new features since the last release 1.0.0-M1a release notes are  invoking custom foreign HTTP endpoints... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-10-17-http-connectivity.html">Integration of HTTP endpoints/webhooks</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> By adding another connectivity type - HTTP - to Ditto’s connectivity, it is now (to be released in the next Ditto milestone 1.0.0-M2) possible to publish twin events, messages, live commands and events to existing HTTP servers/endpoints. That is especially useful for invoking existing APIs (which are most of... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-09-17-milestone-announcement-100-M1a.html">Announcing Ditto Milestone 1.0.0-M1a</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today the Ditto team is happy to announce the first milestone of the upcoming release 1.0.0. Have a look at the Milestone 1.0.0-M1a release notes for what changed in detail. The main changes and new features since the last release 0.9.0 are  initial contribution of Java... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-08-28-openid-connect.html">Eclipse Ditto now supports OpenID Connect</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Eclipse Ditto now supports all OAuth 2.0 providers which implement OpenID Connect out-of-the-box. You can find a list of certified providers at OpenID Connect - Certified OpenID Provider Servers and Services. With this post, we want to give an example of this new feature using the open source... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-07-10-release-announcement-090.html">Announcing Eclipse Ditto Release 0.9.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today the Eclipse Ditto team proudly presents its second release 0.9.0. The topics of this release in a nutshell were:  Memory improvements for huge amounts (multi million) of digital twins which are held in memory Adding metrics and logging around the connectivity feature in order to enable being... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-04-29-milestone-announcement-090-M2.html">Announcing Ditto Milestone 0.9.0-M2</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> The second milestone of the upcoming release 0.9.0 was released today. Have a look at the Milestone 0.9.0-M2 release notes for what changed in detail. The main changes and new features since the last milestone 0.9.0-M1 are  rewrite of Ditto’s “search” service in order to use... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-03-28-milestone-announcement-090-M1.html">Announcing Ditto Milestone 0.9.0-M1</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today the Ditto team is happy to announce the first milestone of the upcoming release 0.9.0. Have a look at the Milestone 0.9.0-M1 release notes for what changed in detail. The main changes and new features since the last release 0.8.0 are  memory optimizations when working... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2019-03-13-kafka-connectivity.html">Connectivity to Apache Kafka in Eclipse Ditto</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today we added connectivity to Apache Kafka. In a first step, it is possible to publish twin events, messages, live commands and events to Kafka topics. Since the last addition to Ditto’s connectivity which added MQTT connectivity, the connectivity feature got a lot of stabilization and new smaller... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-12-05-example-command-and-control.html">Using Eclipse Hono's Command&amp;Control with Eclipse Ditto</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> With version 0.8.0 Eclipse Ditto can now interact with Eclipse Hono using the “Command &amp; Control” feature. It is possible to send a Thing (or Feature) message at the Ditto Message API, which is then forwarded to Hono as a command message. Hono routes the message to the device,... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-11-28-release-announcement-080.html">Announcing Eclipse Ditto Release 0.8.0</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today the Eclipse Ditto team proudly presents its first release 0.8.0. Please have a look at the 0.8.0 release notes for a more detailed information on the release. The main changes and new features since the latest milestone 0.8.0-M3 are:  Support Eclipse Hono’s command&amp;control in Ditto... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-11-14-milestone-announcement-080-M3.html">Announcing Ditto Milestone 0.8.0-M3</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Preparing the upcoming first release 0.8.0 of Eclipse Ditto, this milestone is a last checkpoint to ensure that the release will be performed smoothly. Therefore, this milestone release primarily focuses on stabilization. Have a look at the Milestone 0.8.0-M3 release notes for what changed in detail. &lt;div... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-10-16-example-mqtt-bidirectional.html">Example demonstrating connectivity to an MQTT broker</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Eclipse Ditto can now connect to MQTT 3.1.1 brokers. Perfect timing to happily welcome a new colleague to our team behind Eclipse Ditto: David. In order to get familiar with Ditto and the development with digital twins, David was assigned with one of his first tasks to get his... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-09-27-milestone-announcement-080-M2.html">Announcing Ditto Milestone 0.8.0-M2</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Brace yourself, Eclipse Ditto is preparing for its first release 0.8.0. We are happy to announce our next milestone towards that goal. Have a look at the Milestone 0.8.0-M2 release notes for what changed in detail. The main changes and new features are  enforcement of max. entity... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-09-21-selective-push-notifications.html">Selective push notifications available</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> The connectivity service supercharged Ditto’s flexibility in integrating with other services. It’s such a great feature to let the other connected services know about thing updates and property changes. Even the direct exchange with real-world assets became more flexible through the multi-protocol support. But with a steady increase in... </td>
        </tr>
        
        
        
        
        
        
        
        
        

        <tr><td><a href="2018-08-14-milestone-announcement-080-M1.html">Announcing Ditto Milestone 0.8.0-M1</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Even during the summer break the Ditto team worked hard in order to provide the next milestone release. Here it is: Milestone 0.8.0-M1. Have a look at the Milestone 0.8.0-M1 release notes for what changed in detail and why there was a version bump from 0.3.0-M2 to 0.8.0-M1. The... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-06-15-milestone-announcement-030-M2.html">Announcing Ditto Milestone 0.3.0-M2</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Today we, the Eclipse Ditto team, are happy to announce our next milestone 0.3.0-M2. The main changes are  improvement of Ditto’s cluster performance with many managed Things  a new Ditto service ditto-concierge was added for this   improved cluster bootstrapping based on DNS with the potential... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-05-02-connecting-ditto-hono.html">Connecting Eclipse Ditto to Eclipse Hono</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td>  Warning: This guide does no longer work with the latest (1.x) versions of Ditto + Hono. Please take a look and make use of the Eclipse IoT Packages “cloud2edge” package in order to setup and automatically connect Ditto + Hono. With the recently... </td>
        </tr>
        
        
        
        
        
        
        

        <tr><td><a href="2018-04-26-milestone-announcement-030-M1.html">Announcing Ditto Milestone 0.3.0-M1</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> After some time of silence of Ditto milestone releases we are very proud to present our next one to the public. Have a look at the Milestone 0.3.0-M1 release notes. The main changes are  switch to Eclipse OpenJ9 JVM in Ditto’s Docker images renaming of Ditto’s “AMQP... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-04-25-connectivity-service.html">Ditto's connectivity capabilities are pimped up</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> It has been quite lately on our website and on GitHub as the Ditto team currently prepares its new connectivity microservice. Until now Ditto’s amqp-bridge service could connect to AMQP1.0 endpoints (e.g. Eclipse Hono). That worked quite well, but still had some issues:  failover/reconnection was not... </td>
        </tr>
        
        
        
        
        
        
        

        <tr><td><a href="2018-02-08-feature-definition.html">Introducing Feature Definition</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> Brace yourselves, Eclipse Vorto is going to be integrated with Ditto. Rationale By now you most probably represented your devices as things with features. This is indeed the proper way to do it. This approach is flexible and easy so far. But wouldn’t it be nice to have... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-02-07-milestone-announcement-020-M1.html">Announcing Ditto Milestone 0.2.0-M1</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> The Ditto team is proud to announce the next milestone release. Have a look at the Milestone 0.2.0-M1 release notes. The main changes are  being able to search in namespaces which can speed up search queries when applied to a large population of digital twins the enhancement... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-01-15-example-demonstrating-rest-to-websocket.html">Example demonstrating REST and WebSocket API</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> There’s a new example showing how to combine the REST and WebSocket API over at the Eclipse Ditto examples repository. Right from the project’s description:  This example shows how to leverage the powers of combining the REST and WebSocket Messages API of Eclipse Ditto. It demonstrates how... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2018-01-12-milestone-announcement-010-M3.html">Announcing Ditto Milestone 0.1.0-M3</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> We wish you all a happy new year and an hope you are curious about our new Eclipse Ditto milestone. Milestone 3 Our new milestone, namely 0.1.0-M3, adds an AMQP 1.0 bridge. The bridge enables to connect to a running instance of Eclipse Hono. Ditto can... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2017-12-18-milestone-announcement-010-M1.html">Announcing Ditto Milestone 0.1.0-M1</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> We finally managed to build our first milestone of Eclipse Ditto: 0.1.0-M1 Java artifacts were published to both the Eclipse Maven repository as well as Maven central. Additionally Docker images were pushed to Docker Hub:  eclipse/ditto-policies eclipse/ditto-things eclipse/ditto-things-search eclipse/ditto-gateway  You can... </td>
        </tr>
        
        
        
        
        

        <tr><td><a href="2017-11-10-welcome-to-ditto.html">Welcome to the Eclipse Ditto project site</a></td>
            <td><span class="label label-primary">Post</span></td>
            <td> This is our very first blog post of our new project site and we continue to add more documentation. </td>
        </tr>
        
        
        

   </tbody>
</table>



    <div class="tags">
        
    </div>

</div>

<hr class="shaded"/>

<footer>
            <div class="row">
                <div class="col-lg-12 footer">
                    <div class="logo">
                        <a href="https://eclipse.org"><img src="images/eclipse_foundation_logo.svg" alt="Eclipse logo"/></a>
                    </div>
                    <p class="notice">
                        &copy;2021 Eclipse Ditto™.
                         Site last generated: May 6, 2021 <br />
                    </p>
                    <div class="quickLinks">
                        <a href="https://www.eclipse.org/legal/privacy.php" target="_blank">
                            &gt; Privacy Policy
                        </a>
                        <a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank">
                            &gt; Terms of Use
                        </a>
                        <a href="https://www.eclipse.org/legal/copyright.php" target="_blank">
                            &gt; Copyright Agent
                        </a>
                        <a href="https://www.eclipse.org/legal" target="_blank">
                            &gt; Legal
                        </a>
                        <a href="https://www.eclipse.org/legal/epl-2.0/" target="_blank">
                            &gt; License
                        </a>
                        <a href="https://eclipse.org/security" target="_blank">
                            &gt; Report a Vulnerability
                        </a>
                    </div>
                </div>
            </div>
</footer>


        </div>
    <!-- /.row -->
</div>
<!-- /.container -->
</div>
<!-- /#main -->
    </div>

</body>
</html>
