Archive - release notes 2020

December 17, 2020 - Bosch IoT Things - service update

The last Things service update in 2020 comes with various internal improvement

  • Eclipse Ditto - Java client 1.5.0
    Version 1.5.0 of Eclipse Ditto and Java client has been released on 10.12.2020.
    Find the official release notes at https://www.eclipse.org/ditto/release_notes_150.html.
  • Mongo DB update from 3.6 to 4.2
  • Improve scalability of dispatching events to single connection with many instances

At this occasion, various minor bugs have also been fixed.

November 26, 2020 - Bosch IoT Things - service update

  • Advanced handling for end-to-end acknowledgements
    The fourth and last part of improving end-to-end acknowledgements introduces the weak acknowledgements.
    Such weak acknowledgements do not cause redelivery of messages consumed by a connection. They are useful for scenarios, where the subscriber of events or live messages does not provide an acknowledgement for various reasons.
    Find details at Concepts > Acknowledgements > Weak acknowledgements and in the Eclipse Ditto blog post weak acknowledgements.
  • Suite Auth tokens issued for external identity provider
    Customers of Bosch IoT Insights can be authenticated and authorized based on OAuth2 tokens issued by Suite Auth integrating a 3rd-party authorization provider.

At this occasion, various minor bugs have also been fixed.

November 11, 2020 - Bosch IoT Things - service update

The latest service update is dedicated to a new concept: desired properties.
A feature may consist of a distinct set of properties, which are functional or logically coherent.
The feature properties can represent:

  • properties (e.g. values as reported by a physical device)
  • desiredProperties (e.g. values set via a remote management UI, aiming to trigger the device integration layer to change the device configuration).

While the classic properties have been fully implemented right from the beginning of the Bosch IoT Things service, the new desiredProperties have only been introduced in the model (v2), some basic API to manage them, and as fields usable for searching and filtering.

The new features resources allow to create, read, update and delete desiredProperties.

desiredProperties

Such desiredProperties fields can be used additionally or alternatively to other properties within get thing requests, search or count conditions, or filters.
Like for all other fields of a thing, the permission to read and write those fields is controlled via the policy.

tip Find more at Concepts > Things and features.

Please note however, that besides persisting the desired properties, and indexing the fields for search requests, filtering etc. for the time being, the Bosch IoT Things service does not implement their further processing. Such functionality will come with future releases.
Please also note that we will not offer the new resources at API 1, which is deprecated since February 17, 2020.

At this occasion, various minor bugs have also been fixed.

October 29, 2020 - Bosch IoT Things - service update

  • Declared acknowledgements
    The requirement to manage declared acknowledgements has been introduced in order to have global unique identifiers, of which acknowledgements are expected from which connections, and thus, to better trace them in complex scenarios which involve multiple clients and fan-out distribution.

    The pattern for naming your declared acknowledgements is: {{connection-id}}:your-identifier.
    In case of a Java client you can use {{solution-id}}:your-identifier.
    Of course, the connection ID per solution ID will be dynamically resolved at runtime.
    Find details at Concepts > Acknowledgements > Configuration via connection

  • Eclipse Ditto - Java client 1.4.0
    Version 1.4.0 of Eclipse Ditto and Java client has been released on 28.10.2020.
    Find the official release notes at https://www.eclipse.org/ditto/release_notes_140.html.
    See Developer guide > Java API for the complete Maven coordinates.

  • New entityName topic placeholder for connections
    The new entityName topic placeholder replaces the entityId topic placeholder, which is deprecated. Find all placeholders which can be used for connections at connection sources and connection targets.

At this occasion, various minor bugs have also been fixed.

October 8, 2020 - Bosch IoT Things - service update

  • Decouple live message responses from technical settlement
    • live responses are considered to be a successful acknowledgement if they have not been timed out. This allows to respond with an error status code without having a failing technical settlement of the incoming message.
    • It is now possible to receive a live response without adding it to the required acknowledgment for technical settlement of an incoming message.
    • Default value of response-required does no longer depend on the value of requested-acks
  • Display created field in Things UI
    The _created field introduced in a previous release is now also visible for new created things in the Things tab of the Things UI.
  • Eclipse Ditto version 1.3.0
    Version 1.3.0 of Eclipse Ditto has been released on 30.09.2020
    Find the official release notes at https://www.eclipse.org/ditto/release_notes_130.html.

At this occasion, various minor bugs have also been fixed.

September 21, 2020 - Bosch IoT Things - service update

  • New - Raw message mapper
    The raw message mapper supports routing messages to other applications, even in case your incoming message does not follow the Eclipse Ditto protocol.
    This opens up the possibility to use the Things service especially for routing messages to other applications, which are not mainly interested in persisting the device status as a digital twin.
    The default is prepared to support such use cases out-of-the-box, however you can customize it to your needs.
    Managed connections to and from Things service can enable this new type of mapping.
    • For incoming messages, the mapper wraps the content which is not related to digital twin interactions into a configured live message envelope.
    • For outgoing message, the mapper extracts the payload of this live message envelope and publishes the wrapped payload into the target channel.

      tip Find more at Concepts > Connections > Raw message mapper.

At this occasion, various minor bugs have also been fixed.

September 14, 2020 - Bosch IoT Things - service update

  • New - Implicit provisioning
    The new feature facilitates to register devices communicating via a gateway device “on-the-fly”. The gateways - acting on behalf of the devices - need to be configured with auto-provisioning-enabled, and to trigger implicit device registration by sending a telemetry or event message to the Bosch IoT Hub service. Afterwards the digital twin is created in the Bosch IoT Things service based on the provided template.

    The new configuration for the Hub-Things connection can be enabled and customized either via the HTTP API or via the Things UI.

    The default configuration for a Hub-Things connection will create
  • a thing with the given device ID (received via the header device_id),
  • a policy, using the function to copy the policy of the gateway,
  • and an attribute named Info, which documents the gateway ID.

    tip Find more at Concepts > Connections > Implicitly create things.

At this occasion, various minor bugs have also been fixed.

August 27, 2020 - Bosch IoT Things - service update

  • New top-level _created field for new things and policies
    In order to look up the time when a thing and its policy has been created, we have introduced a new field named _created. This field is set at provisioning time, and cannot be changed with PUT requests.
    However, the creation time is indexed for search request, and can be also used whenever you define a filter, e.g. get things, event filtering, etc.
    Example:
    List all things which have been created after August 31, 2020. The result should contain the thing IDs and the timestamps of their creation.
    /search/things?filter=gt(_created,"2020-08-31")&fields=thingId,_created
    A migration for old things (missing this field) is not implemented, thus only new things and their policies will benefit from this new field.

  • End-to-end acknowledge handling for the live channel
    Support for acknowledgements and acknowledgement requests are added to the live channel. All live commands and live messages may request acknowledgements. Find details at Acknowledgements.
    Note: The live-response acknowledgement is requested for live commands and live messages by default. If you wish to send them in a fire-and-forget manner via Bosch IoT Hub, please set the header response-required to false or disable acknowledgements for the connection source. Otherwise, the connection will keep requesting redelivery from Bosch IoT Hub.

  • Eclipse Ditto 1.2.0
    Our open source project will officially release version 1.2.0 on Aug 31, 2020.
    Find out what’s new at https://projects.eclipse.org/projects/iot.ditto/releases/1.2.0

At this occasion, various minor bugs have also been fixed.

July 30, 2020 - Bosch IoT Things - service update

  • End-to-end acknowledge handling for connectivity
    To make sure that a message is reported as delivered, or a change is confirmed as applied, only if other layers also confirm the success, you can request an acknowledgement (ACK).
    By requesting an ACK you can work on delivery guarantees or simply make sure the aim of your request is accomplished. Examples:
    • postpone a response to an API request (e.g. block an HTTP requestAcknowledgements) until one or more specific actions were performed in the Things service (e.g. a modification was successfully persisted).
    • postpone a response until an external subscriber connected to Things reports that he successfully processed an event which e.g. resulted by a persistence change in the Things service.
      Find details at Acknowledgements
      Note: As of now, the ACK is implemented for the twin channel only. The live channel does not support this concept yet.

  • Extended Free plan of Bosch IoT Things service
    New subscribers of our Free plan can kick-off even faster with evaluating their usage scenarios. Deviating from the regular 100,000 transactions per month, which are within the Free plan quota limits, for the first month after subscription we allow 1,000,000 transactions. However, a limitation to the the regular 100,000 transactions per month will be enforced after that period. Happy hacking.

  • Some special characters allowed in thing ID and policy ID
    The Device Provisioning API has introduced support for more characters in the thing ID and policy ID of your digital twin.
    While in previous versions, the Bosch IoT Things needed to restrict using special characters in IDs and keys, which might be part of the URL when requesting the thing, the latest service update comes with some relaxing news.
    The current, still valid restrictions for thing ID and policy ID at a glance:
    • must be unique and follow the pattern namespace:name
    • max. 256 characters
    • may not contain the slash character /
    • may not contain the control characters hex 00-1F to 7F-FF
    • may contain special characters, but these have to be encoded/decoded according to the standard/format required for the respective communication channel
      See Device provisioning examples.

  • Single quotes in RQL for quoting Strings
    Ditto brings in new support for single quotes in filters. When you already have to provide a query, e.g. as Java quoted String, it is easier and more readable to use single quotes instead of double quotes.
    Now, your query may look like this: eq(attributes/foo,'bar').

At this occasion, various minor bugs have also been fixed.

July 8, 2020 - Bosch IoT Things - service update

At this occasion, various minor bugs have also been fixed.

June 2, 2020 - Bosch IoT Things - service update

  • The Device Provisioning API has been enlarged
    • Using the new field authScope allows to choose that provisioning is done in the context of your subscription (i.e. service instance) instead of provisioning in context of the current requester, which is still the default. This will make sure that the created things will be accessible for all users who have access to the same Bosch IoT Suite subscription.
      See API docs > Bosch IoT Suite - Device Provisioning
    • It additionally provides a new endpoint for hybrid scenarios
      https://deviceprovisioning.eu-h1.bosch-iot-suite.com/api/1
      See Hybrid offering on Microsoft Azure
  • Further improvements
    • The Things dashboard uses Suite Auth (based on OAuth JWT tokens) for login and access control.
      Henceforth, you will not need to add further user IDs/special client IDs into the subject fields of your policies if you just want to use subscription/service instance level access control.
    • Details on the procedure how to “bring your own OAuth provider” have been published. See FAQ > How to configure a custom OAuth2 authorization provider?
  • Deprecations of authentication mechanisms
    • As the Bosch IoT Permissions service can not be booked for new customers, we have adjusted all examples, and deprecate the Basic authentication as well as JWT authentication with Bosch IoT Permissions as an issuer.
    • Additionally, in favor to the new Suite OAuth approach, we deprecate the Things specific API Token.

At this occasion, various minor bugs have also been fixed.

May 7, 2020 - Bosch IoT Things - service update

As the Things service is powered by Eclipse Ditto, you can benefit from all new features and improvements which come with Eclipse Ditto 1.1.0 :

  • New - Policy management and Search are now also supported via Ditto Protocol, and Java client.
  • CORS improvements and content-type restrictions
    As already announced to some of our customers, the Bosch IoT Things service will handle the content-type on all HTTP API calls more restrictively.
    • As our main content type for managing things and policies (as well as all their sub-structures) is application/json, please make sure, your requests use that content type.
    • The “Messages” resources are not affected, as for messages arbitrary content types might be required.
    • Resources without request content, e.g. GET endpoints, are also not affected.
    • The OPTIONS “preflight” request, required by CORS, is supported by the Bosch IoT Things service.
    • Further, we now additionally allow etag, if-match and if-none-match header in CORS requests and responses
  • Improved command reply-to for edge devices
    Edge devices, which have been registered via the Bosch IoT Gateway Software stack, usually do not have an explicit device ID at the Bosch IoT Hub service. Therefore, in such cases, the reply-to is now directed to the gateway.
  • Improved Free plan
    As customers of free plans reported that they run out of transactions too quickly at a very early stage, when they explore our service for the first time, we are happy to announce that henceforth, the free plan will contain the full transaction quota for first month, regardless on which day of the month the booking succeeded.
  • Improved handling of headers
    Due to security considerations, custom HTTP headers of incoming requests are no longer sent back in the HTTP response.

At this occasion, various minor bugs have also been fixed.

February 17, 2020 - Bosch IoT Things - service update

The new service release comes with various changes, as for example:

  • New - Enrichment of events and messages
    Subscribers of events and messages may request that the payload they receive is enriched with data from the related digital twin.
    This way, you can add e.g. attributes or feature properties of your things, which are not included in the original payload, but are helpful for your consumers.
    The selection of information to be added is defined using the parameter extraFields, which could point to one or multiple JSON fields of the things. Find details at Enrichment of events and messages.
  • Bosch IoT Things - various deprecations.
    The deprecated parts are still supported. As soon as we drop support we will announce it here.

At this occasion, various minor bugs have also been fixed.

January 30, 2020 - Bosch IoT Things - service update

The new service release comes with various changes, as for example:

At this occasion, various minor bugs have also been fixed.

January 10, 2020 - Bosch IoT Things - service update

Our first service release in 2020 comes with this change:

  • Chart view in Things Dashboard
    The Things Dashboard includes a chart view for viewing Thing property data collected over the time. This view helps to understand IoT device sensor data during the development of IoT solutions. The shown data is live data updated in Thing properties and is only collected during the time when the dashboard view is open. The data series is not stored.
    To open the view, go to the Things Dashboard into the Things list and click on a Thing entry. In the Thing view you can choose to switch to the chart view.
Corporate information Data protection notice Legal information Support Free plans