The Location Service driver collects the responses of locatable modules in the same system and returns this as the result of a location search.
Response types
The frontend translates the search responses into a pin on a map. These are the supported formats:
X,Y Location
Such as a location calculated by a wireless network
{"location":"wireless","coordinates_from":"bottom-left","x":27.113065326953013,"y":36.85052447328469,"lon":55.27498749637098,"lat":25.20090608906493,"mac":"66e0fd1279ce","variance":4.5194575835650745,"last_seen":1601555879,"building":"zone-EmWLJNm0i~6","level":"zone-Epaq-dE1DaH","map_width":1234.2,"map_height":123.8,# driver can include additional data to help with debugging"meraki_floor_id":"g_727894289736675","meraki_floor_name":"BUILDING Name - L2"}
Map Feature
Such as a desk
{"location":"desk",# the count of people at the location, desks will typically be 0 or 1# however other location types could have more"at_location":1,"map_id":"desk-4-1006","level":"zone_1234","building":"zone_1234",# if provided can be used to look up user details"mac":"66e0fd1279ce",# provided if known"capacity":1}
Desks highlight based on desk metadata stored against each level zone:
Where bookable is false, desks highlight based on sensor data
NOTE:: no metadata is required for area locations assuming there is a matching map_id, in which case the highlighting is based on the used capacity (low, medium or high)
Booking
Such as an event in a meeting room
[{"location":"meeting","mac":"meeting2.city1@resource.org.com","event_id":"meet-1234567","map_id":"map-1234","sys_id":"sys-id","ends_at":1234567,"private":false,"level":"zone-GAgFNk8vm67","building":"zone-GAf3dfZq80~"},# Or for a desk or car-space booking etc# where the asset ID is the map id{"location":"booking","checked_in":false,"asset_id":"desk-4-1006""booking_id": "booking-4567","building":"zone_1234","level":"zone_1234","ends_at":1234567,"mac":"placeos-user-id","staff_email":"bob@tmart","staff_name":"Bob Jane"}]
Lockers
Any lockers that are in use on the floor
{"location":"locker","bank_id":"bank-id","locker_id":"locker-id","allocated":true,"building":"zone_1234","level":"zone_1234",# if the locker booking expiresexpires_at:1234567,# something we can use to look up the user, might not be available"mac":"bank-id-locker-id-etc"}