
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
In this blog, we will explore the steps for setting up the Workplace Calendar Synchronization with Microsoft Exchange Online using the Guided Setup in ‘Normal’ mode (non-strict mode).
This is a companion blog to Configuring Microsoft Exchange Workplace Calendar Sync with Workplace Reservation
Management, please refer to the blog for additional details and reasoning behind some of the steps.
In addition, here are some additional resources related to calendar sync:
- ServiceNow Documentation Portal
- Video: Understanding and Configuring Workplace Calendar Synchronization
- KB Article: Workplace Calendar Synchronization Run Book
Before we begin, ensure we have the right plugins installed. The list of needed plugins is shown in the screenshot below.
For additional guidance on these pre-requisite steps, please refer to the steps here.
At a high level, these are the steps we will be performing as a part of this setup:
- Setup Microsoft Azure
- Basic Setup in SN WSD
- Configure the Microsoft Exchange Online Connection
- Configure Microsoft Exchange Online as a Calendar Provider
- Generate Callback URL for Exchange Online Webhook Registry
- Set Retry Policy for MS Exchange Online
- Configure Calendar Sync time zone
Guided Setup
Navigate to Workplace Calendar Synchronization > Administration > Guided Setup
*You may want to mark this as a favorite since we will be navigating here often.
We will start with the Azure Setup.
Azure Setup
The ‘Azure Setup’ section documents best practices for setting up the application in MS Exchange.
Click on Accept Best Practices. We will work in a normal mode configuration. For details on Normal mode v Strict mode, please refer to the product documentation.
As a part of this step, we create a new application in MS Exchange Online server and grant the below ‘API permissions’.
Please note that currently, we need application-level permissions.
Personal Authentication is on the roadmap, under Safe Harbor, so users can individually grant access without the need for application permissions.
Calendars.ReadWrite |
Read and write reservations users’ calendar |
Calendars.Read.Shared (Only needed for Struct Mode) |
Only needed in case strict mode is used |
offline_access (Only needed for Struct Mode)
|
For ServiceNow to request Refresh tokens, which are used to request new access tokens when the current one becomes invalidated |
Note down the Client Id, Client Secret, Authorization URL, and Token URL noted for this app.
The product documentation for this step is linked here.
Mark this step as complete.
Next, we will configure SN.
MS Exchange Online Connection
Click on the ‘Configure the Microsoft Exchange Online’ link to expand it.
Step 1: Application Registries
Read the instructions and click on Configure.
We will use the OOB connection records for this setup, however customers can also create their custom connection records.
Open the highlighted records.
Change the scope to ‘Microsoft Exchange Online Spoke’ and enter in the fields as shown below and Update.
For the Microsoft Exchange Online record, navigate to the OAuth Entity Scopes related list and ensure the below scope are present (they should be present OOB).
Similarly navigate to the ‘Microsoft Exchange Online_clientCredentials’ records and enter in the highlighted fields and Update.
Note that the OAuth Entity Scopes for this record just has one record.
Navigate back to the Guided Setup and Mark Step 1 to Complete.
Navigate to Step 2.
Read the instructions and click on Configure.
Select the highlighted record to open it.
Validate the fields highlighted below.
Navigate back to the Guided Setup and Mark Step 2 as Complete.
Navigate to Step 3 and complete the validation steps similar to the previous one.
In the Guided Setup, Mark Step 3 as complete and navigate to Step 4.
In this step, we will validate the connections and get an OAuth token.
Click on Configure.
Open Graph 1 record and set the OAuth Entity Profile value as below and Update.
Click on Get OAuth Token related list and ensure we get the token back. In case of errors, validate previous steps or double check the MS Exchange credentials provided.
Similar steps are to be followed for the MS Graph 2 record.
Mark Step 4 as complete.
Configuring Microsoft Exchange Online as a Provider
Step 1:
Click Configure. In the next screen for Providers, create a New provider.
Create a new record as below and click Submit.
Note: Sync Past Reservation field is also a part of this form - you can configure form layout in case it is not visible OOB.
Navigate to Guided Setup and Mark the step as complete.
Step 2: Read the Instructions and Click Configure.
Select the highlighted record.
Ensure the Grant type is Client Credentials since we are configuring for Normal (non-Strict) mode.
Navigate back to the Guided Setup and mark this step as complete.
Step 3 is relevant for Strict Mode. We would mark it as Authorization Code if we needed Strict Mode. We set it to mark as complete.
Navigate to Step 4.
In this step, we will configure spaces in SN WSD that will synchronize with MS Exchange.
As a prerequisite, these spaces need to have an email address associated with them. To validate this, go to the space record, change the view to Synchronization, and ensure the space has an email address that corresponds to its resource email address in MS Exchange.
In the Guided Setup, Click Configure.
Click New.
Create a record for the room and click Submit. An example is as shown below.
Note that this step needs to be done for all the resources/rooms/spaces that need to be synced with MS Exchange, but we recommend testing it out for a single space first.
Navigate to Guided Setup and Mark Step 4 as complete.
Generate Callback URL
Click configure in the below section.
Click on the Callback URL button and ensure that the callback URL link is generated. Click Update.
Navigate to Guided Setup and Mark as Complete.
Retry policy for MS Exchange Online
Click Configure.
Open highlighted record.
Set Retry Strategy section values as below and Update.
In the Guided Setup, Mark as Complete.
Configure Calendar Sync timezone
Step 1
Set the property value as needed. Please ensure the scope is ‘Workplace Calendar Synchronization’ if updating.
Setting the value to true allows you to control the time zone (System or User or Building) that is sent over to Exchange when sending over reservation details.
For additional details, see product documentation for this property.
Navigate to Step 2. Since we set the previous property to true, click configure.
This property determines the time zone sent to MS Exchange – whether it is the user, building, or system time-zone.
Once this property is validated/ updated, navigate back to the Guided Setup Step 2 and Mark as Complete.
Navigate to Step 3 and click on Configure.
Identify and set up the email notification, Who will receive section to identify the user to be notified of subscription failures.
Navigate back to the Guided Setup, Step 3, and Mark as Complete.
Verify Configurations
As a final step, you can click the Instance Scan link to verify the above configurations, as detailed here.
Navigate to Instance Scan > Suites > Workplace Calendar Synchronization Configurations.
Click Execute Suite Scan > Full Instance > Execute Scan
Once completed, click on Go to Results. Review results and update as needed.
Navigate to Guided Setup and Mark as Complete.
Additional Resources
Review additional resources in the next step.
This KB is helpful for troubleshooting the most common issues.
Mark as complete.
We have now successfully completed setting up the Workplace Calendar Sync in Normal mode.
To carry out a functional validation of the calendar sync, please review the ‘Testing: making sure it works’ section in this blog.
For further details, please refer to the Product Documentation here.
- 1,890 Views
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.