Bosch IoT Insights

Creating a booking


  • To execute the following action, you have to be assigned to the User role.

  • You have added the Calendar widget to a dashboard.

Proceed as follows

  1. In the Calendar widget, click the day to which you want to add a booking.

    Alternatively, click the Create Booking button.

    → The Create New Booking dialog is displayed.

    The information necessary for the calendar booking can be pre-filled, refer to Pre-filling the calendar booking information.

  2. In the Booking Title field, enter a name for the booking,

  3. In the Description field, enter a description.

  4. In the Booking color drop-down list, select an event color.

  5. If you have configured a device type to be mandatory for a calendar booking, select a device in the field with the device type's name.

  6. Click the Add link button to add a link to the booking.

    1. In the Link label field, enter a label to be displayed instead of the URL.

    2. In the URL field, enter the URL.

    3. Click the Add link button to add another link to the booking.

  7. In the Devices pane, select a device type from the Type drop-down list.

    To select a device type, you must have activated the Devices can be booked in Calendar checkbox in the configuration view of the device type, refer to Configuring a device type.

  8. In the Search Device field, enter a device name or select it from the drop-down list.

    Multiple devices can be added.

    If the device is linked to a mandatory device, the mandatory device will be preselected under the Description field.

    To link from your bookable device to a mandatory device, the Details information block must be added with the predefined property of the type device. Afterwards, a device with the same type as the mandatory device type you want to preselect must be selected. Keep in mind that if you have multiple links to devices within the same mandatory device type, the first one will be preselected.

  9. Open the Advanced Settings pane to specify a filter and narrow down the devices shown in the Search Device field.

    You can also filter for mandatory devices, e.g., ${mandatoryDevice.project.thingId} or ${}. To be able to filter for mandatory devices, you must have defined at least one device type as mandatory, refer to Configuring a device type.

  10. In the Time Frame pane, select the Start and End dates of the booking.

    If you want to add an exact time, deactivate the All day checkbox.

  11. In the Booking Status drop-down list, select the status of the booking.

    • Can be overbooked: The selected device can be booked multiple times at the same time range.

    • Non-overbookable: The selected device cannot be booked multiple times at the defined time range.
      The time range can collide with a booking with the booking status Can be overbooked. The owner of the Can be overbooked booking receives a notification of the new booking with this status.

    • Blocked: The device and the time range cannot be booked again. A booking with the booking status Blocked has the highest priority. Owners of Can be overbooked and Non-overbookable bookings with that same device within the same time range receive a notification on the new booking with the Blocked status informing about the non-availability of the device in this time range.

  12. In the Booking Owner pane, select a user to be the owner of the booking in the User drop-down list.

  13. In the Confirmation E-Mail Addresses field, leave the e-mail address as it is, replace it or add more e-mail addresses by starting to type the e-mail address.

  14. Click the Save button.
    → The booking is added to the calendar. A notification email containing an ICS file is sent to the corresponding users. Use the ICS file to add the booking to your calendar.


Pre-filling the calendar booking information

By adjusting the URL, the following fields can be pre-filled for the calendar booking:

  • Booking Title

  • Description

  • Links

  • Checkbox All day

  • Booking Status

  • Things filter (for Device Search)

  • Confirmation E-Mail Address

The parameters have to be added in the following structure at the end of the URL:

?config={"booking":{"title":"Booking title", "description":"Booking description","links":{"label 1":"","label 2":""},"allDay":false,"eventStatus":"BLOCKED","thingsFilter":"eq(features/general/properties/name,\"car\")","email":""}}

The parameters in the URL need to be encoded. The first part ?config= does not need to be encoded.

Example:<projectName/views/dashboards/<viewName>?config={"booking":{"title":"Test", "description":"For testing purposes", "thingsFilter":"eq(features/general/properties/name,\"car\")"}}

This part of the URL needs to be URL-encoded: {"booking":{"title":"Test", "description":"For testing purposes", "thingsFilter":"eq(features/general/properties/name,\"car\")"}}

The result looks like this: %7B%22booking%22%3A%7B%22title%22%3A%22Test%22%2C%20%22description%22%3A%22For%20testing%20purposes%22%2C%20%22thingsFilter%22:%22eq%28features%2Fgeneral%2Fproperties%2Fname,%5C%22car%5C%22%29%22%7D%7D

When adding a calendar booking, the information of the URL is already inserted: