LogoLogo
  • PlaceOS Documentation
  • Overview
    • Key Concepts
      • Drivers
      • Interfaces
      • Modules
      • Settings
      • Systems
      • Triggers
      • Zones
    • Languages
      • Crystal
      • TypeScript
    • Protocols
      • MQTT
      • SAML
      • OAuth2
  • How To
    • Configure PlaceOS for Microsoft 365
      • Step 1: Room Calendar Access
        • Create Azure App Registration (Application Permissions)
        • Exchange Calendar Group
        • Limit Application Permissions
        • Configure PlaceOS Calendar Driver
      • Step 2: User Authentication & Calendar Access
        • Create a PlaceOS Authentication Source
        • Create Azure App Registration (Delegated Permissions)
        • Configure PlaceOS Authentication Source
        • Add User Login Redirects
      • Concierge Access
      • Troubleshooting
        • Blocked or Blacklisted IP Error
    • Configure PlaceOS for Google Workspace
      • Google Configuration
        • Create Google Cloud Project & Enable API
        • Configure Google Cloud Service Account
        • Add Google Workplace Permissions
        • Create Google Marketplace App (optional)
        • Google Workspace Service User (RBAC)
        • Configure Access to Google Resource Calendars
      • User Authentication
        • Create a PlaceOS Authentication Source for Google
        • Create Google Cloud OAuth2 Client App
        • Configure PlaceOS Auth Source for Google
        • Add User Login Redirects
    • Deployment
      • Deploy AWS Fargate on Modular CloudFormation Stacks
      • Deploy AWS Fargate on Nested CloudFormation Stacks
      • Writing Import Scripts
    • Analytics
      • MQTT Integration
    • Backoffice
      • Add a Domain to PlaceOS
      • Backoffice File Upload
      • Configure Staff API
      • Calendar Driver
      • Enable Sensor UI
      • Bookings Driver
      • Configure a webhook
    • Authentication
      • Azure B2C
        • Azure B2C Custom Policy Framework
        • Configure PlaceOS for Azure B2C
        • 365 Room Resources on Azure B2C
      • Configure SAML SSO
        • Configure SAML2 with AD FS
        • Configure SAML2 with Auth0
        • Configure SAML2 with Azure AD
        • Configure SAML2 with Google Workspace
      • Configure OAuth2 SSO
      • X-API Keys
      • Bearer tokens
    • Location Services
      • Location Services
      • Area Management
      • Discovering User Devices
      • Locating Users on a Network
      • People Finding with Cisco Meraki on PlaceOS
      • People Finding with Juniper Mist on PlaceOS
    • Notifications
      • Catering Orders
    • User Interfaces
      • Booking Panel App
      • Workplace App
      • Native Booking Panel App
      • Deploy a Frontend Interface
      • Microsoft Outlook Plugin
      • Configure Endpoint Auto Login
      • SVG Map Creation
      • Configuring a default UI
  • Tutorials
    • Setup a dev environment
    • Backend
      • Troubleshooting Backend Failures
      • Import Bookable Rooms
      • Writing A Driver
        • Testing drivers
        • ChatGPT / LLM Capabilities
          • Native GPT Plugins
      • Testing Internal Builds
    • Backoffice
      • Adding Drivers & Modules
      • Add Zone Structure
    • Common Configurations
      • Asset Manager
      • Catering
      • Locker Booking
      • Webex Instant Connect
      • Desk booking
      • Sensor Data Collection
        • Configure Kontakt IO
        • Configuring Meraki
        • Configuring DNA Spaces
      • Elevated Privileges
  • Reference
    • API
      • Real-time Websocket
      • Rest API
      • Staff API
    • Drivers
      • PlaceOS
        • Bookings
        • Staff API
        • Visitor Mailer
        • Lockers
      • Microsoft
        • Graph API
    • PlaceOS Skills
    • Privacy Policy
    • Recommended Products
    • Supported Integrations
    • System Architecture
    • System Functionality & Requirements
    • Infrastructure Requirements
    • Security Compliance
      • FAQ
      • GDPR
      • Security
    • Microsoft Azure Permissions
  • Glossary
  • 🎯PlaceOS Roadmap
  • 🆘PlaceOS Support
  • 👩‍💻PlaceOS Github
  • 📝PlaceOS Changelog
Powered by GitBook
On this page
  • Add Locker Zone Metadata
  • Configuring the Locker Metadata
  • Locker Bank Metadata:
  • Locker Metadata
  • Enabling the Locker Booking
Export as PDF
  1. Tutorials
  2. Common Configurations

Locker Booking

Steps to Configure Locker Booking for PlaceOS

PreviousCateringNextWebex Instant Connect

Last updated 1 year ago

PlaceOS is able to support locker bookings via supported Locker Hardware Integrations.

The features available PlaceOS for Locker Booking are dependant on those available via the hardware integration. For example, some lockers will allow remote unlock functionality while others will not.

Add Locker Zone Metadata

For lockers to function, much like desks, we must add metadata that contains the relevant data for the lockers.

Once the metadata is configured, the locker interface will be dynamically rendered on the frontend applications for end users.

1. Navigate to PlaceOS Backoffice

2. Click on Zones

Step 2 screenshot

3. Select a Level Zone

Locker data must reside in the relevant level zone, locate the level zone you would like to add lockers to and select it.

4. Click on the Metadata tab

5. Click on Add new Metadata Field

6. Edit the new metadata field

7. Name the metadata field 'lockers'

8. Click Update

9. Expand the new lockers metadata field by clicking on it

10. Once you have completed entering the metadata into the field, click Save.

Configuring the Locker Metadata

The locker metadata is detailed below, for each locker a single array of data is required as a child of the locker bank identifier:

```json
{
        "id": "bank-1",
        "name": "Bank 1",
        "height": 3,
        "map_id": "table-01.017",
        "lockers": [
            {
                "id": "locker-1",
                "name": "L1-01",
                "size": [
                    1,
                    3
                ],
                "bookable": true,
                "position": [
                    0,
                    0
                ],
                "accessible": true
            }
}
```

Locker Bank Metadata:

This data relates to the locker bank, a locker bank consists of multiple lockers. A level may have more than 1 locker bank.

Field
Value
Type

id

System ID for the locker bank (required for hardware integration)

string

name

User facing name for the locker bank.

string

height

Number of lockers high in the bank.

integer

map_id

SVG Map ID of the locker bank.

string

Configuration of this data will allow the Workplace App to return available locker banks:

Locker Metadata

This data relates to the individual lockers in the locker bank.

Field
Value
Type

id

Hardware Locker ID

string

name

User facing name for the locker.

string

size

Height, Width

array of integers

bookable

Bookable State

boolean

position

Offset from top left for UI Rendering

array of integers

accessible

Is the locker accessible for users in wheelchairs or other physical disabilities.

boolean

Configuring this metadata correctly will allow the Workplace App to render a visual representation of the locker bank.

In this example L1-01 is at position:

"position": [
                    0,
                    0
                ],

While L1-05 has a size configuration of:

```json
"size": [
                    1, //width
                    1 //height
                ],
```

Where L1-01 has a size configuration of:

```json
"size": [
                    1, //width
                    3 //height
                ],
```

Enabling the Locker Booking

After configuring the locker metadata, for users to book lockers the locker booking feature must be enabled in the Workplace Application Metadata.

Locker booking may be enabled at any level in the organisational zone structure. Either at the ORG level where it would be enabled for all buildings, or individual Building zones.

This is achieved by applying a workplace_app metadata field to the relevant zone.

To enable the Locker Booking option in the menu bar, add lockers to the features array:

```json
"features": [
        "spaces",
        "explore",
        "help",
        "schedule",
        "parking",
        "desks",
        "visitor-invite",
        "lockers"
    ],
```
Step 4 screenshot
Step 5 screenshot
Step 6 screenshot
Step 7 screenshot
Step 8 screenshot
Step 9 screenshot
Step 10 screenshot