Skip to main content
Skip table of contents

Cisco Spaces Calendar Integrations (Webex Hybrid Calendar/O365/Gcal)

Calendar Integration Uses Cases

Regardless of the chosen architecture (below), a calendar integration with Cisco Spaces can be leveraged for showing booking status and upcoming meetings on Space Explorer Kiosk app.

Note: in the EFT stage, this serves as an override of the calendar on collaboration device occupancy enabled rooms and as a calendar for 3rd Party IoT occupancy sensor rooms (a separate EFT)

It can also be used to compare against people count occupancy data for reporting on ghost bookings and booking trends. These important metrics can help inform real estate and workplace experience teams of any booking culture issues that might be arising in the workplace. End users (employees) can find meeting rooms more efficiently by avoiding rooms that have an upcoming booking that might overlap with the duration of the meeting they need to schedule at that moment (from Space Explorer Kiosk app). In the future, Cisco Spaces will offer more interfaces and new options to interact with the calendar. For example, booking anonymously from the Space Explorer Kiosk app and creating meeting invites from the mobile/desktop web app tied to the logged in user’s calendar.

Known Gaps - Roadmap

  • Calendar-only rooms (no occupancy sensors) on Kiosk app

  • Calendar-only rooms (no occupancy sensors) in Space Manager > Overview

  • Booking (anonymously - “as the resource”) from Kiosk app

  • Booking (on user calendar) from Space Explorer Web App

Basic Architecture

Webex Hybrid Calendar

O365/Gcal ↔ Webex Control Hub ↔ Cisco Spaces

 O365 / Gcal Direct Integration

O365/Gcal ↔ Cisco Spaces

Note: if a room is connected to both a Webex Control Hub Workspace and linked to an O365/Gcal calendar resource, the O365/Gcal events take precedence over Webex Hybrid Calendar.

Pros & Cons

 

Pros

Cons

Webex Hybrid Calendar

  • Automatic room name matching allows for faster/easier calendar linking automatically through the existing Webex Control Hub integration.

  • Leveraging Webex video endpoints in rooms unlocks the ability to send a “Hold” message to the in-room device screen, which is unique to Webex rooms, since a “Hold” is not an official calendar feature.

  • It is not always obvious if there is a configured and active Hybrid Calendar without checking Control Hub.

O365 / Gcal Direct Integration

  • Fewer “hops” between systems, and while a less complex architecture, it may have a negligible impact on latency of receiving updates into Cisco Spaces.

  • If a Webex Workspace does not exist (e.g. a calendar-only room or a room with a 3rd party occupancy sensor - roadmap), Cisco Spaces can still receive calendar events.

  • Works as an override if Webex Hybrid Calendar is not configured.

  • Slower, more manual setup when linking individual calendars per room.


Webex Hybrid Calendar – Webhooks

Webex On-Device Calendar & Hybrid Calendar Caveats

On-Device Calendar

Device calendars do not have Meeting IDs and only use Booking IDs. It is recommended to use Webex Hybrid Calendar.

Webex Hybrid Calendar Timing

When a booking is initiated, it can take up to 60 seconds for the cloud to generate a Meeting ID, if a booking is accepted by the source calendar. During this time, a device only provides a Booking ID (i.e. “id”), which is generated as part of a booking request. This is reflected in a BookingRequest xEvent. However, if a booking is not confirmed by the source calendar within 60 seconds, it will timeout and remove the booking.

Cisco Spaces Integration Update Available – Review & Approve

Control Hub - Workspaces - Integrations - Cisco Spaces - Review Update

Control Hub > Workspaces > Integrations > Cisco Spaces > Review Update

Control Hub - Workspaces - Integrations - Cisco Spaces - Review and Approve

Control Hub > Workspaces > Integrations > Cisco Spaces > Review and Approve


Microsoft O365

Technical Background

Summary

Calendar Service with Microsoft Azure multi-tenant support enables Cisco Spaces customers to seamlessly integrate their workspace's calendar with Cisco Spaces. This integration will be achieved by utilizing Microsoft Graph APIs to receive calendar data, which will be utilized in Cisco Spaces applications (e.g. Space Explorer Kiosk & Web App, Space Manager, Space Utilization). This will help the customer to better manage and utilize their workspaces using Cisco Spaces.

Hidden from Global Address List (GAL)

Note: Rooms that are marked "Hidden from GAL" can't be retrieved through this endpoint.

Source: https://learn.microsoft.com/en-us/graph/api/place-list

Workflow

  1. Cisco Spaces Calendar Service is registered as a Multi-tenant application in Cisco Azure AD.

  2. User will be asked to sign-in as a Cisco Spaces Tenant admin and must accept the permissions, requested in the OAuth flow to successfully provision the application in their Tenant (Application Permissions):

    1. Place.Read.All

    2. Calendars. Read

  3. Cisco Spaces Calendar Service will acquire Tenant token for Graph API to read places and calendar events for those places periodically (every 24 hours, list of events for the upcoming day) and receive via webhooks (real-time new, rescheduled, and canceled meetings).

Data Flow

Cisco Spaces O365 Calendar Integration Data Flow

Cisco Spaces O365 Calendar Integration Data Flow

Application Permissions

Calendar Service will require the permissions below from the customer's MS Azure tenant account to read calendar resources using MS Graph APIs.

  1. Place.Read.All

    • This will help Calendar Service to read meeting room resources from the customer's MS Azure tenant account.

  2. Calendars.Read

    • This will help Calendar Service to read meetings/events for the meeting room resources.

User: Authorized User

A user with admin access to the MS Azure tenant can grant the permissions above for the Cisco Spaces Calendar Service integration request. If the customer revokes the consent for the permissions at any time, Calendar Service will remove the stored graph token to read resources using MS Graph APIs and disable the functionality until the next successful integration.

NONE
https://login.microsoftonline.com/common/adminconsent?client_id=92a88413-3496-4587-a83a-fde51780ee68&redirect_uri=https://calendar.dnaspaces.io/calendar-service/v1/multitenant/ms365/user/onBoarding&state={{state}}

{{state}} is populated at the time of the admin initiating the admin consent flow in Cisco Spaces > Integrations page.

Microsoft Entra - Cisco Spaces O365 Calendar Integration - Properties

Microsoft Entra - Cisco Spaces O365 Calendar Integration - Properties


Google Calendar

Technical Background

Summary

Calendar Service with Google Workspace multi-tenant support enables Cisco Spaces customers to seamlessly integrate their workspace's calendar with Cisco Spaces. This integration will be achieved by utilizing Google Workspace APIs to receive calendar data, which will be utilized in Cisco Spaces applications (e.g. Space Explorer Kiosk & Web App, Space Manager, Space Utilization). This will help the customer to better manage and utilize their workspaces using Cisco Spaces.

Workflow

  1. Cisco Spaces Calendar Service is registered as a Multi-tenant application in Google Workspace marketplace.

  2. User will be asked to sign-in as a Cisco Spaces Tenant admin and must accept the permissions, requested in the OAuth flow to successfully provision the application in their Account (Application Permissions)

  3. Cisco Spaces Calendar Service will acquire Google Calendar API token to read calendar resources periodically (every 24 hours, list of events for the upcoming day) and receive via webhooks (real-time new, rescheduled, and canceled meetings).

Data Flow

Cisco Spaces Google Calendar Integration Data Flow

Cisco Spaces Google Calendar Integration Data Flow

Application Permissions

Calendar Service will require the permissions below from the customer's Google Workspace account to read calendar resources using Google Calendar APIs.

  1. See and download any calendar you can access using your Google Calendar

    • This app wants permission to
      See your personal calendar and any other calendars you can access
      See events on your personal calendar and on other calendars you can access
      Download a copy of your personal calendar and any other calendars you can access
      See the email addresses of the contacts or groups you share calendars with
      Your calendar and other calendars you can access may contain info, like daily schedules, personal contacts, and private appointments.

  2. View calendar resources on your domain

    • View details (e.g., name, type, etc.) of calendar resources on your domain

  3. View customer related information

    • View details (e.g., contact email, organization title etc) of customer

Review Permissions: https://myaccount.google.com/connections

Cisco Spaces Google Calendar Permissions

Cisco Spaces Google Calendar Permissions

User: Authorized User

A user with admin access to the Google Workspace account can grant the permissions above the Cisco Spaces Calendar Service integration request. If the customer revokes the consent for the permissions at any time, Calendar Service will remove the store authorization token to read resources from Google Workspace calendar APIs and diable the functionality until the next successful integration.


Workflow Overview

Cisco Spaces Calendar Integration Workflow Overview

Cisco Spaces Calendar Integration Workflow Overview


Integrations Page

Cisco Spaces - Integrations

Cisco Spaces > Integrations

Google Calendar

Cisco Spaces - Integrations - Google Calendar

Cisco Spaces > Integrations > Google Calendar

Cisco Spaces - Integrations - Google Calendar - Admin User OAuth Login

Cisco Spaces > Integrations > Google Calendar > Admin User OAuth Login

Cisco Spaces - Integrations - Google Calendar - Permissions

Cisco Spaces > Integrations > Google Calendar > Permissions

Microsoft O365

Cisco Spaces - Integrations - Office 365

Cisco Spaces > Integrations > Office 365

Cisco Spaces - Integrations - Office 365 - Microsoft Admin Login

Cisco Spaces > Integrations > Office 365 > Microsoft Admin Login

Cisco Spaces - Integrations - Office 365 - Permissions

Cisco Spaces > Integrations > Office 365 > Permissions


Space Manager

Space Management > Link Calendar (to Room)

Cisco Spaces - Space Manager - Space Management - Room - Link Calendar

Cisco Spaces > Space Manager > Space Management > Room > Link Calendar


RESOURCES

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.