Table of Contents |
---|
Introduction
https://www.microsoft.com/en-ca/microsoft-365/business/scheduling-and-booking-app
Business Process
...
Bookings visualization
If you don’t see any appointments or some appointments are not showing in the calendar, verify your filter option.
...
Configuration time zone
...
Security
“…meaning all data is stored within the Microsoft 365 platform and in Exchange.”
It is in exchange and our tenant according to them. Microsoft 365 platform is in Canada server.
Connection with Microsoft Graph (technical side)
Connect with your TC Account and select the “beta” option
For the Booking Tools API, here is the reference https://docs.microsoft.com/en-us/graph/api/resources/booking-api-overview?view=graph-rest-betaYou will need to give consent for the Graph Explorer to access the Bookings API on your behalf. To do so, click the ellipses near your name, and click “Select Permissions”
From the flyout on the right, choose “Bookings” and add the appropriate permissions you need.
Find your business id. Run the query below and in Microsoft graph response find your booking name
Code Block https://graph.microsoft.com/beta/bookingBusinesses
Configuration for Terminals
Using Booking Tools (user-friendly)
For a terminal, we need to create a staff like Guest with an e-mail (this e-mail doesn’t need to be functional). The role Guest can be assigned to bookings, but they can’t open the booking mailbox (source: https://docs.microsoft.com/en-us/microsoft-365/bookings/add-staff?view=o365-worldwide).
The e-mail default will be: terminal + number + region + @tc.gc.ca
like: terminal1pnr@tc.gc.ca, terminal2pnr@tc.gc.ca
Go to Settings > Staff > Add new staff
Add a name > Select the option Use this name
Add the e-mail and save changes.
Using Microsoft Graph (technical side)
To select all members, you can use the query below and run it
Code Block https://graph.microsoft.com/beta/bookingBusinesses/PNRCivilAviationExamBooking@034gc.onmicrosoft.com/staffMembers
To create a new staff, you can take information from an existing one.
You need to remove id and add @odata.type, change the field “displayName” and “emailAddress”
Reference: https://docs.microsoft.com/en-us/graph/api/bookingbusiness-post-staffmembers?view=graph-rest-beta&tabs=httpCode Block {
"@odata.type":"#microsoft.graph.bookingStaffMember",
"displayName": "Terminal 2",
"emailAddress": "terminal2pnr@tc.gc.ca",
"availabilityIsAffectedByPersonalCalendar": false,
"colorIndex": 8,
"role": "externalGuest",
"useBusinessHours": false,
"workingHours": [
{
"day": "monday",
"timeSlots": []
},
{
"day": "tuesday",
"timeSlots": [
{
"start": "08:15:00.0000000",
"end": "12:30:00.0000000"
}
]
},
{
"day": "wednesday",
"timeSlots": [
{
"start": "08:15:00.0000000",
"end": "12:30:00.0000000"
}
]
},
{
"day": "thursday",
"timeSlots": [
{
"start": "08:15:00.0000000",
"end": "12:30:00.0000000"
}
]
},
{
"day": "friday",
"timeSlots": []
},
{
"day": "saturday",
"timeSlots": []
},
{
"day": "sunday",
"timeSlots": []
}
]
}
Change the action to POST and click on Run Query
Information
At the end of this configuration, maybe will receive a message like that:
...
This is not worrying as this staff will only be used for assigned automatically appointments
Configuration for services
Using Booking Tools (user-friendly)
Go to Settings > Services > Add new service
For a new service, you have some configuration to add, so it is important to take a time to fill in each available option.
Note: the option Maximum number of attendees, if you choose 1 attendee(s) and you have 2 staffs like Guess, please pay attention because in this service you can have 2 appointments at the same time, one for the first staff (like terminal 1) and another for the second staff (like terminal 2).
This setting was desired by the members of this booking.After fill out all options desired, click on Save changes to create the service.
Using Microsoft Graph (technical side)
To select all services, you can use the query below and run it.
Code Block https://graph.microsoft.com/beta/bookingBusinesses/PNRCivilAviationExamBooking@034gc.onmicrosoft.com/services
To create a new service, you can take information from an existing one.
You need to remove id and add @odata.type and change others fields as you want.
Reference: https://docs.microsoft.com/en-us/graph/api/bookingbusiness-post-services?view=graph-rest-beta&tabs=httpCode Block {
"@odata.type":"#microsoft.graph.bookingService",
"displayName": "AIRAF - INSTRUCTOR RATING CLASS 4 AEROPLANE",
"defaultDuration": "PT3H30M",
"defaultPrice": 35,
"defaultPriceType": "fixedPrice",
"description": "Exam duration - 3 hoursRequirements:Government issued ID (i. e. passport, Aviation Document Booklet, drivers license)Category 1 MedicalFlight Training Unit Letter of recommendation if applicable or proof of 15 hours instructor flight training and all",
"isHiddenFromCustomers": false,
"notes": "",
"additionalInformation": "",
"preBuffer": "PT0S",
"postBuffer": "PT0S",
"staffMemberIds": [],
"isLocationOnline": false,
"schedulingPolicy": null,
"defaultLocation": {
"displayName": "344 Edmonton St",
"locationEmailAddress": null,
"locationUri": "",
"locationType": null,
"uniqueId": null,
"uniqueIdType": null,
"address": {
"type": "home",
"postOfficeBox": "",
"street": "344 Edmonton St",
"city": "Winnipeg",
"state": "Manitoba",
"countryOrRegion": "Canada",
"postalCode": "R3C 0P6"
},
"coordinates": {
"altitude": null,
"latitude": null,
"longitude": null,
"accuracy": null,
"altitudeAccuracy": null
}
},
"defaultReminders": [] }
Change the action to POST and click on Run Query
Result
Power BI
...
Custom fields
I didn’t find any reference in the Booking Tools API to create/add custom fields by Microsoft Graph.
Power BI
Open Power BI Desktop. If you don’t have installed this software in your machine, you can open Microsoft Store
Search Power BI Desktop and install it.
Click on Get Data
Select Online Services > Microsoft Exchange Online and click on Connect
Add your booking page address and click OK.
Note: If you don’t know your booking address click on Booking Page and copy the address from the Booking Page Status.
Select Microsoft account > Sign in
Click on Connect
Select Calendar > Load
Dashboard
...