Bosch IoT Insights

2024

April

April 30, 2024: White labeling capabilities enriched with Custom Menu configuration features

With the new release of Bosch IoT Insights, it is now possible to configure a Custom Menu for your project.

Thus you can remove any items from the side navigation which are not relevant to your use case, and can add new ones which will ensure a smooth user experience in your project.

Find details below in New capabilities for custom menu configuration.


In addition to the custom menu configuration option, the default menu has been updated.

Find details below in Important changes in the default menu.


To reflect these changes, the user documentation has also been updated.

Find details below in Updated user documentation.


New capabilities for custom menu configuration

An overview of the new capabilities includes:

  • Adding, editing, and removing menu items for each project by users with Admin role

  • Choosing between different menu item types - nodes, which can group other menu items together, and pages, which can link to other content types (internal pages, dashboards, external links, and iFrames)

  • Rearranging menu items on the main menu level and two more sub-levels

  • Defining role-based access per menu item

  • Access to a System menu for Admin users, which offers the default menu view without the need to revert any customization configurations


images/confluence/download/attachments/3932959795/default-menu-version-1-modificationdate-1713945781000-api-v2.png images/confluence/download/attachments/3932959795/custom_menu_clean-version-1-modificationdate-1713945781000-api-v2.png

Important changes in the default menu

Views and Dashboards

  • The former Views and Dashboards menu item is no longer available.

Dashboards can be now managed from Admin > Dashboards in the UI. Refer to Dashboards.

The former Add view functionalities are now available via the Custom menu configuration options. Refer to Custom menu.


  • A View menu item is no longer automatically created on the main navigation to group your dashboards.

If you anyway need to group your dashboards into a menu item, you can add new entries of the respective type (node and page).

Refer to Adding entries and Arranging entries.

See also the Custom menu section in the White labeling a Bosch IoT Insights project tutorial which shows how to add a dashboard to the main navigation.


Updated user documentation

The user documentation is now reorganized in accordance with the user journey.

Therefore, consider the following new or updated sections:

  • Custom menu - this new section explains how to configure a custom menu

  • Dashboards - this updated section includes also the former Views and Widgets documentation

  • Tutorial - the tutorial on White labeling a Bosch IoT Insights project has a new section which shows how to create a dashboard menu item in a customized menu


February


February 21, 2024: IoT Insights Support Portal changes to Pantaris

To all our IoT Insights support customers:

We have switched our IoT Insights Support Portal to ETAS PANTARIS Support.
The old portal is no longer available.

We are now reachable via the following URL, which already has the Data Insights group:
https://rtahotline.etas.com/jira/servicedesk/customer/portal/20/group/50

As a Bosch employee, you can easily log in by using the Log in for Internal Employee (Azure) button.

Then, in the Data Insights navigation entry, you can create a support ticket for either a request (Report a request for the Data Insights service) or an incident (Report an incident for the Data Insights service).

images/confluence/download/attachments/3932959795/image-2024-2-21_15-40-49-version-1-modificationdate-1708534644000-api-v2.png

In addition, you can reach us via email at servicemanagement@etas.com.

Because we use the same JSM (JIRA-Support-Management) Tool, the handling should stay the same.

We are looking forward to supporting you,

Your IoT Insights Support Team


February 08, 2024: China Instance Full GA, new widgets, custom domain and more improvements

Full productive instance - China mainland - Microsoft Azure

In December 2022 we already migrated our global hosting environment from the Bosch IoT Cloud to Microsoft Azure (Frankfurt).
Our China environment at that time was still running in a PoC environment and did not provide the full feature set nor a Service Level Agreement.

At the end of January 2024 we have successfully set up a new instance in China, based on Microsoft Azure.
This instance is now fully productive and provides the same service and feature set as in Europe.

You can check it out via www.bosch-iot-insights.cn

images/confluence/download/attachments/3932959795/image-2024-2-15_9-37-29-version-1-modificationdate-1708016587000-api-v2.png & images/confluence/download/thumbnails/3932959795/image-2024-2-15_9-37-49-version-1-modificationdate-1708016587000-api-v2.png


New Upload Widget

We introduce a new widget, the Upload Widget. It provides now a possibility to upload files to any third-party or service API.
Usage wise it behaves similar to the external data source or action button.
For more information, please have a look at our documentation: https://bosch-iot-insights.com/static-contents/docu/html/Upload-widget.html

images/confluence/download/attachments/3932959795/uploadWidget-version-1-modificationdate-1707827117000-api-v2.png


New Support System

We migrated our support system from the former Bosch IoT Insights support portal to the ETAS PANTARIS Support.

Bosch employees can log in using the "Internal Employee (Azure)" button.
Customers can log in using their Bosch SingleKey ID.

We look forward to your support requests.

New Input Widget

We introduce a new widget, the Input Widget. Use the input masks to create data forms, which you can add to the dashboards.
With these input fields, it is possible to collect user input data and trigger requests via the Action Button widget. For example to send forms data to backends.
It is also possible to place input masks next to a Table widget to trigger multiple actions within the Table widget.
For more information, please look at our documentation: https://bosch-iot-insights.com/static-contents/docu/html/Input-widget.html

images/confluence/download/attachments/3932959795/InputWidget-version-1-modificationdate-1707827117000-api-v2.png


White labeling feature extended with custom domain

We extend our White labeling concept by introducing a new feature → Custom Domain

The feature is accessible in all paid plans, under Admin > White labeling.
The custom domain is separated into two tabs. There you can configure a custom Domain and the corresponding individual start page (Homepage) to provide an individual user interface.

Using this feature it is possible to map your IoT Insights subscription to a customer specific domain.
For example you could map your instance to my-insights-domain.com

This then makes it possible to use all service UIs and APIs solely via your own Domain.

The feature is provided in a managed and unmanaged version:

  • Managed - Full SLA provided with 24/7 on call duty monitoring

  • Unmanaged - Only initial technical setup is ensured. Monitoring and SLA are not provided

Have a look into our user documentation if you want to find out more about white labeling:
https://bosch-iot-insights.com/static-contents/docu/html/Whitelabeling-a-Bosch-IoT-Insights-project.html

images/confluence/download/attachments/3932959795/whitelabelingDomain-version-1-modificationdate-1707827117000-api-v2.png images/confluence/download/attachments/3932959795/whitelabelingHomepage-version-1-modificationdate-1707827117000-api-v2.png


Improvements for the existing notification banner

There is now a "dismiss" link at the right side of the notification banner, where you can hide the banner for the current session.
However, it is now possible to define different types of banner like Info or Warning.

images/confluence/download/attachments/3932959795/NotificationBannerInfo-version-1-modificationdate-1707827117000-api-v2.png

images/confluence/download/attachments/3932959795/NotificationBannerWarning-version-1-modificationdate-1707827117000-api-v2.png


Filter Widget - extension - Global Filters

We introduce a new filter parameter type, the so-called Global Filters.

It is now possible to define a filter parameter inside a filter widget to be globally used. The value is stored in the user session of the currently logged in user.
As a result, the filter will be applied automatically to any other filter widget, which the user has opened and which also references the same filter parameter.

This allows to synchronize the dashboard using the same filter value over multiple tabs within the service.

Global Filter Parameters are indicated via a new icon: images/8adb8b64a750d2244bab5b202e462bc474ce37a4ee18ad6d24cf4928d4c698d0.png
Example:
images/confluence/download/attachments/3932959795/image-2024-2-15_9-39-24-version-1-modificationdate-1708016587000-api-v2.png

For more details have a look into our online documentation https://bosch-iot-insights.com/static-contents/docu/html/Filter-Panel.html

Filter Widget - UX improvements

For a better usability of the filter widget it was slightly refactored in several places.

To better demonstrate the difference we provide you a graphical comparison.
Filter Widget - old design

images/confluence/download/attachments/3932959795/image-2024-2-11_16-26-40-version-1-modificationdate-1707827117000-api-v2.png

Filter Widget - new design
images/confluence/download/attachments/3932959795/image-2024-2-11_16-26-58-version-1-modificationdate-1707827117000-api-v2.png

Filter Parameter - old design Filter Parameter - new design
images/confluence/download/thumbnails/3932959795/image-2024-2-11_16-28-22-version-1-modificationdate-1707827117000-api-v2.png images/confluence/download/thumbnails/3932959795/image-2024-2-11_16-28-34-version-1-modificationdate-1707827117000-api-v2.png

  • The Apply buttons inside the filter pop-ups were removed.
    The new values are directly applied now and taken over without the need to manually confirm to apply.
    This reduces the necessary number of clicks.

  • The Cancel buttons within the filter pop-ups were removed and replaced with a corresponding Close button.
    This reduces the visual overload for users and saves displayable space.

  • The Reset button was moved to the widget context menu.
    As this button is not heavily used, this change reduces visual overload and saves displayable space.

  • A new icon was added for the filter parameter chips for fast removal → X
    This makes it easier to remove a filter parameter with one click.
    This icon is only available for non-mandatory filters, which can be removed by the user.

  • The multi-selection parameter was completely refactored to now provide a pick list approach.
    This approach integrated a search function and two scrollable lists to make it easier for user to select multiple entries.
    Example:

    images/confluence/download/attachments/3932959795/RedesignForGlobalFiter-version-1-modificationdate-1707827117000-api-v2.png



Table Widget - Several feature improvements

A new option was added to the Table widget configuration for custom column definitions,
which now allows a text color to be set for table cell content.

It is also now possible to provide multi-language definitions for column headers, e. g. English and German.

The custom column data type handling was extended with the support of Boolean and JSON.
This allows some type-specific formatting, like value replacement for true/false values, or showing the data nicely formatted in a JSON editor pop-over.

Example:

images/confluence/download/attachments/3932959795/tableWidget1-version-1-modificationdate-1707827117000-api-v2.png images/confluence/download/attachments/3932959795/tableWidget2-version-1-modificationdate-1707827117000-api-v2.png

Calendar Widget - feature improvement - default booking type

A new option called Default booking type has been added to the calendar widget configuration, which allows you to pre-set the booking type for every new event.
Selectable types are: Blocker, Can be overbooked, and Non-overbookable.


Performance improvement for device images - automatic thumb-image generation

To increase the performance while using device images, an automatic thumb-image generation was introduced.
For every device image uploaded, several resolution thumb-images will be generated automatically in the background and used by the UI.

The UI will by default try to use the best matching thumb image, instead of using the original image, which ensures a better rendering speed for the Device Details & Calendar Widget.

The generated thumb-image can be retrieved via a new optional resolution property in the API.

See https://bosch-iot-insights.com/ui/assets/swagger-ui/index.html?url=/project-management-service/api-docs?group=latest#/Device%20attachments/downloadImageThumbnailUsingGET.

Integration into ETAS Pantaris Service Catalog

External customers are now able to book the Insights Try-out plan via ETAS Pantaris marketplace.
Insights projects created in Pantaris will receive the style of ETAS in the UI and in the emails.

images/confluence/download/attachments/3932959795/EtasInsights-version-1-modificationdate-1707827117000-api-v2.png

Have a look at the following pages to find more details about it:

External Data Source - feature extension for caching

External Data Sources now provide a cache functionality, similar to our internal query request.

This allows data fetched from external systems to be loaded directly for the user, without the need for the initial request to finish.

By default the cache time is set to 1800 seconds (30min) for new external data source definition.
The result is stored in our object storage.

See also our caching logic for query caching for more details: https://bosch-iot-insights.com/static-contents/docu/html/Query-Caching.html
images/confluence/download/attachments/3932959795/image-2024-2-12_13-54-30-version-1-modificationdate-1707827117000-api-v2.png

Conditional Action Service - feature improvement

A new user-friendly option was implemented for the Conditional Action service.
It is now possible to define conditions in a more guided approach, instead of writing the condition manually.

This is especially meaningful for simple conditions and new users who are not familiar with the MongoDB query filter approach.

images/confluence/download/attachments/3932959795/image-2024-2-12_13-59-23-version-1-modificationdate-1707827117000-api-v2.png


Widget Loading behavior - UX Improvement - Skeleton Loading

To provide a better UX experience and a more professional appearance, the old spinning loading indicator for all graphical elements was replaced with a so called Skeleton Loading approach.

This provides the benefit of already indicating to the user what he can expect to be shown in the place of a widget, instead of having only a generic loading spinner which does not provide any further information.

Example based on the Location Widget

Old Loading Indicator New Loading Indicator
images/confluence/download/attachments/3932959795/image-2024-2-12_14-21-1-version-1-modificationdate-1707827116000-api-v2.png images/confluence/download/attachments/3932959795/image-2024-2-12_14-20-22-version-1-modificationdate-1707827117000-api-v2.png


Date picker - UX redesign

The date picker component was redesigned to optimize the user experience.

  • The selected date range is now highlighted

  • The selected duration is shown additionally at the bottom

  • The time range can be selected within a month instead of the need to select it separately

  • The start and end elements received rounded corners to better indicate the range

Old Design: New Design:
images/confluence/download/thumbnails/3932959795/image-2024-2-11_16-14-39-version-1-modificationdate-1707827117000-api-v2.png images/confluence/download/attachments/3932959795/image-2024-2-11_16-15-45-version-1-modificationdate-1707827117000-api-v2.png


Richtext & Illustration Widget - UX improvement

To provide a better UX experience, the highlighting behavior of elements in the Richtext Widget has been improved.
Instead of rendering a rectangle, the styling was adapted to now provide rounded corners.

images/confluence/download/thumbnails/3932959795/image-2024-2-12_14-26-36-version-1-modificationdate-1707827116000-api-v2.png


Grid Layout improvements

The Grid Layout handling for dashboards has been improved by two new options.

  • Layout Behavior for widgets can now be defined as "Fixed" or "Adapt".
    If set to "Adapt", the size of the widget should try to automatically fit its content.
    Default behavior for new widgets is "Fixed".

    images/confluence/download/attachments/3932959795/image-2024-2-12_18-20-38-version-1-modificationdate-1707827116000-api-v2.png
  • The general drag and drop behavior for placing widgets was modified to be sticky.
    The benefit is that not all widgets are moved when repositioning one widget.

Further improvements

  • Processing Pipeline - Show "Last edit by" in the pipeline list as a separate column
    Now it is directly possible to see who last modified a processing pipeline.

  • Interactive Calendar Widget Preview
    Previously there was no preview available for this widget.

  • External REST Requests - Generate uuid and uuid without dash ("-") and allow to use it as parameter
    This improvement relieves the user from doing the masking of characters on his own.

  • Improve loading time of Project stats and DB stats by introducing cache for the Object Storage size
    Ensures good user experience when retrieving the current project statistic, instead of waiting.

  • Filter Widget - Improvement of the Query Condition Filter Parameter
    New data type support for Date and Boolean was added.
    New Contains operator was added.
    New Non Exists operator was added.
    New Daterange support was added.

  • Fix bad primary / secondary color calculation
    Improved the coloring using custom colors for buttons.

  • Content Type Detection for MF3 / MF4
    Better detection also for non standard ASAM MDF files.

  • Roles Management supports pagination
    Previously there was no pagination for these pages, which led to extremely long pages.

  • Calendar size fits to selected resources
    Better automatic size selection for this widget based on its displayed resources

  • Calendar Widget - Restrict booking deletion to own user and admin/manager
    Change: Now only the actual owner or an admin can delete an existing booking event.

  • Add possibility to omit an icon in Tab Widget
    Previously it was not possible to remove an icon from a Tab Widget.

  • Enable ADMIN to delete collections via API
    Previously this API was reserved only for the service operations teams.
    Now it can be used by project admins as well.

Bug Fixes

  • INS-6472: Processing Information: Deleting processed data does not work

  • INS-6413: Table widget | configuration | custom column definition | Please respect layout borders

  • INS-6410: Table Widget: CSV Download incorrect when columns are deselected

  • INS-6407: A link with “open in the same tab” should refresh the page

  • INS-6402: Device details widget issues

  • INS-6400: Global Filter syntax leads to problems

  • INS-6399: Landing page can't be changed

  • INS-6398: [Global Filters] Make global parameters available in widgets

  • INS-6394: Invalid Response Handling of the Rest Execution Controller

  • INS-6392: Retrieving an Image can lead to internal server error

  • INS-6391: Data source / Rest Request Responses returning wrong body

  • INS-6389: Getting the current project is not working

  • INS-6385: Custom Domain - Internal Page is shown as link to all users

  • INS-6384: Fix dev scripts to work with project specific configurations

  • INS-6382: [Layout] Theme-specific contact link is not used

  • INS-6381: Query History sometimes does not display rest request type

  • INS-6364: [Action Button ] Poweruser Rights required

  • INS-6352: [Table Widget Edit] RestRequest Configurer is not part of form validation

  • INS-6349: Memory Consumption Bug - Conditional Action Extension

  • INS-6344: Query History Loading issue

  • INS-6336: Sidebar should be shown for sfde_manager role

  • INS-6331: [Grid Layout] Tab widget scrolling, resizing and positioning broken

  • INS-6328: External Request with 401 should be ignored / do not show Login screen

  • INS-6327: Changed sorting of Widgets in Tabs should be shown in dashboard when saved

  • INS-6326: Backdating for copy device doesn't work

  • INS-6320: Table View should work in Data Explorer/Browser/Analyzer

  • INS-6304: Lazy Loading causes continuous auto refresh while scrolling

  • INS-6295: Processing Pipeline: Choosing a DBC File should be scrollable

  • INS-6254: [Grid Layout] Handling for Widgets that change their height is broken

  • INS-6244: [Table Widget] Filtering on date/number columns doesn't respect the data type (no multi selection filtering)

  • INS-6235: [Filter Widget] Parameter Settings not being loaded from Local Storage

  • INS-6228: Cross device Image references should work

  • INS-6225: Broken Data Source Saving for Calendar Widget

  • INS-6223: [Rich Text Widget] Array value separator does not work anymore

  • INS-6218: Admin-Users: Path Search Filter should work

  • INS-6190: Sporadic 400 errors

  • INS-6185: Device Management - Device image can't be deleted

  • INS-6184: Widget throws error and crashes the session

  • INS-6180: Renamed field name in query response causes failures in customer scripts

  • INS-6177: Prevent uploading large images to the rich text widget

  • INS-6174: Paid Plan booking is not possible due to IoT Suite error

  • INS-6167: Rest Request send of Documents not working

  • INS-6165: Autorefresh in Pipeline Logs should adjusting according to log limit

  • INS-6123: Delete Attachment returns 500 instead 404

  • INS-6084: Tour Map: Trace not shown - color expected

  • INS-6075: [processing pipeline] add libgl1 to custom step environment

  • INS-6072: Filter sometimes does not get applied for widgets

  • INS-6061: Rich Text Widget: URL should be opened when clicked

  • INS-6058: Filter Widget: Query Condition Data Type selection should also work in Firefox

  • INS-6053: [Calendar widget] permanent scroll bar independent on widget size

  • INS-6052: Rich text image in table widget does not allow nested index placeholder

  • INS-6027: Device ID not shown correctly when containing colon

  • INS-6026: MDF Parser not working

  • INS-6002: Query Template Runner View is not updated

  • INS-5999: DateTimeRange Picker: Presets do not translate to DE

  • INS-5928: [Action Button Widget] Custom styling should remain on switching dashboard views

  • INS-5872: [Rich Text Widget] Error with ObjectId Parameter when refreshing page

  • INS-5657: Map Widget: Sporadic JSON.parse errors

  • INS-5600: Selecting artifact should be possible with crashed pipeline instances

  • INS-5561: 403 error when adding a conditional action in PayAsYouGo without a pipeline

  • INS-1314: Create the Default Pipeline only if no other pipeline exists