class Place::Bookings

Included Modules

Defined in:

place/bookings.cr

Constant Summary

SUBSCRIPTION_LENGTH = 3.hours

the API reports that 6 days is the max: Subscription expiration can only be 10070 minutes in the future.

Class Method Summary

Instance Method Summary

Class Method Detail

def self.driver_interface : String #

Instance Method Detail

def book_now(period_in_seconds : Int64, title : String | Nil = nil, owner : String | Nil = nil) #

[View source]
def calendar_id : String #

[View source]
def calendar_ids : Array(String) #

[View source]
def check_ownership_of(mac_address : String) : OwnershipMAC | Nil #
Description copied from module PlaceOS::Driver::Interface::Locatable

return nil or {"location": "wireless", "assigned_to": "bob123", "mac_address": "abcd"}


[View source]
def checkin : Nil #

[View source]
def device_locations(zone_id : String, location : String | Nil = nil) #
Description copied from module PlaceOS::Driver::Interface::Locatable

array of devices and their x, y coordinates


[View source]
def end_meeting(meeting_start_time : Int64, notify : Bool = true, comment : String = "cancelled at booking panel") : Nil #

End either the current meeting early, or the pending meeting


[View source]
def is_stale?(timestamp : Int64 | Nil) : Bool #

[View source]
def list_users(query : String | Nil = nil, limit : UInt32 | Nil = 20_u32) #

Allow apps to search for attendees (to add to new bookings) via driver instead of via staff-api (as some role based accounts may not have MS Graph access)


[View source]
def locate_user(email : String | Nil = nil, username : String | Nil = nil) #
Description copied from module PlaceOS::Driver::Interface::Locatable

array of devices and their x, y coordinates, that are associated with this user


[View source]
def macs_assigned_to(email : String | Nil = nil, username : String | Nil = nil) : Array(String) #
Description copied from module PlaceOS::Driver::Interface::Locatable

return an array of MAC address strings lowercase with no seperation characters abcdeffd1234 etc


[View source]
def on_update #

[View source]
def people_count? : Float64 | Nil #

[View source]
def people_present? : Float64 | Nil #

[View source]
def poll_events : Nil #

[View source]
def start_meeting(meeting_start_time : Int64) : Nil #

we no longer accept user specified values


[View source]
def sub_renewed_at : Time #

[View source]