Booking Manager

The Booking Manager

With the BookingManager you can create bookings of a room or a locker, delete bookings that are not started yet, or end currently ongoing bookings.
To acquire the single instance of the Unit Controller call sdk.getBookingManager()

Kotlin / Java

Create a booking

To create a booking for a unit call

val response : Result<Booking>> = bookingManager.createBooking(unitId, startsAt, endsAt)

where unit is the unit you want to book, startAt is the time in milliseconds when the booking should start at and the optional endAt if the booking is not open end and have to end at some point.

Delete a booking

To delete a booking call bookingManager.removeBooking(id) and the given booking will be deleted. Deleting a booking will remove it from the backend.

val response : Result<Unit>> = bookingManager.removeBooking(id)

End a booking (now)

To end a booking while it is ongoing, call bookingManager.removeBooking(id) and pass the corresponding id, the ongoing booking will be ended and removed from the backend.

val result : Result<Unit> = bookingManager.removeBooking(id)

Get my bookings

To get all bookings of the user call bookingManager.getMyBookings(from, to, pageConfig)

val myBookings : Result<Paged<Booking> = bookingManager.getMyBookings(from, to, pageConfig)

where from is the time in milliseconds in string format and to is the time in milliseconds in string format and an optional pageConfig to load the next page.

Get Schedules

Call bookingManager.getSchedules(unitId, from, to, pageConfig) to get a list of schedules for the given unitId, or if null, for all Units the user has access to in the requested period.

val schedules : Result<Paged<TimePeriod>> = bookingManager.getSchedules(unitId, from, to, pageConfig)

the schedule object contains a list of TimePeriod with the periods when the provided unitId is already booked.