Excerpt |
---|
Configure ResourceXpress to work with Google G Suite. |
Table of Contents
...
Table of Contents | ||||||
---|---|---|---|---|---|---|
|
...
Prerequisites
In order to connect your Google G Suite to ResourceXpress, the following will be required:
A Google G Suite Account with administrator privileges
Access to the Google Developer Console
Access to the Google Admin Control Panel
...
G Suite Resources
ResourceXpress will connect with a resource calendar to create bookings, these will need to exist in G Suite.
If you do not already have resource calendars see below for how to create these.
Creating Resources in Google
Expand | ||
---|---|---|
| ||
Log in to the Google Apps administrator control panel. The URL is https://admin.google.com. Navigate to Buildings and resource → Resource management Using the large (+) plus button, choose to Add new resource. Populate the fields as required, then click ADD RESOURCE. Select the newly created resource from the list. Copy the Resource email found on the left side of the screen. |
Enable External Sharing for Secondary Calendars
Expand | ||
---|---|---|
| ||
To allow ResourceXpress to view, create and modify calendar events in the resource calendars external access needs to be granted for all secondary calendars via the Google Admin. From the Google Admin home, select Apps → G Suite → Calendar. From here, scroll down to General settings and click External sharing options for secondary calendars. Choose Share all information, and outsiders can change calendars, this is a requirement for ResourceXpress to view, create and modify calendar events. Click Save. |
Add Resources to Admin Calendar
All resources being added to ResourceXpress will require their shared settings to be modified.
To access these settings you will need to access these calendars from an admin account.
Expand | ||
---|---|---|
| ||
Log into Google Calendar with your Admin credentials https://calendar.google.com On the left side of the screen, click the (+) plus symbol alongside Other calendars. Choose Browse resources from the list. Find the required resources and click the checkbox to subscribe. Once all the required calendars have been added, use the back arrow found in the top left to return to your calendar. You will see these calendars now available under My calendars.
|
...
Setup Google
...
Developer Console
Open the Google Developer Console https://console.developers.google.com
Create a Project
Login with Google Apps admin credentialsAdmin Account, then click on Select a project
...
Select the folder icon to Manage resources
...
Expand | ||
---|---|---|
| ||
Create a new project by clicking on Create Project Enter the required details and click Create
After creating the project, from the options menu navigate to API Manager > Dashboard and click Enable API as below |
Expand | ||
---|---|---|
| ||
Enable Calendar API. You can disable all other APIs that are enabled by default |
Expand | ||
---|---|---|
| ||
Navigate to the IAM & Admin menu and then Service accounts Click Create service account Give the service account a name and set the Role as Owner, then click Create From the Options menu for the service account, select Create key Choose P12 and click Create This will generate a P12 key file for the service account; store this locally as it is needed later |
Expand | ||
---|---|---|
| ||
You will now need to add the Service account email address into the share settings for the resource calendar in Google Firstly, copy the full Service account ID Next head back to your Google Calendar where you added the resource email earlier Select the down arrow alongside the room name, and then select Share this Calendar Paste the entire Service account ID into the text field under the Share with specific people header. Next make sure that Make changes to events is selected and click Add Person, then Save. |
Configuring the ResourceXpress Server
Expand | ||
---|---|---|
| ||
Rename the downloaded key file as RX.p12 Open the ResourceXpress server in a browser window, then navigate to Administration Settings > System Settings In the Resource Server tab, click the Choose file button next to the P12 Certificate field Locate and open the P12 key to upload it to the server, then click Save |
Expand | ||
---|---|---|
| ||
Open IIS on the ResourceXpress server, then navigate to Application Pools Select the application pool that is being used by the ResourceXpress application, then right-click and choose Advanced Settings In the Process Model section, set the Identity field to LocalService Once this is done, change the Load User Profile value to True and click OK |
Configuring ResourceXpress settings
Expand | ||
---|---|---|
| ||
Open the ResourceXpress Admin Console in a browser window, then navigate to Administration Settings > System Settings Under the Resource Server tab, enter the Server Host Name as www.google.com
In the Resource Login User ID field you will need to enter the User ID for the Google service account that was created earlier. This is the characters before the @ in the service account ID (as highlighted below) The Resource Login Password is the password that was provided when creating the service account; this is usually “notasecret” The Resource Login Domain should be the text that is after the @ in the service account ID. It will look similar to the highlighted section shown in the screenshot below |
...
title | Create and configure profile settings |
---|
From the ResourceXpress Admin Console, navigate to Administration Settings > Resource List
Click on the Create button on the right-hand side, then complete the mandatory fields in the Resource Info tab as below:
...
Resource Name
...
Name of the resource
...
Resource Name - Display
...
Name of the resource (to be displayed on screen)
...
License Type
...
Choose as applicable
...
Space Type
...
Choose as applicable
...
Location
...
Choose as applicable
...
Stylesheet
...
For default choose Astro V4
Once this is done, click Save
Next navigate to the Connection Properties tab and ensure the mandatory fields here are populated as below:
Booking System | Select Google from the drop-down list |
---|---|
Resource Email | Google calendar resource email address |
Specify Credentials | To auto-populate settings, set this to No |
Click Save. The remainder of the fields in this tab should then be populated with the credentials which were previously entered into the System Settings
Check that the profile is configured correctly by clicking Back to List at the bottom of the page, then selecting the Preview button next to the resource that was just created. Make a booking from the preview screen and check that it appears in the Google calendar. Then create a booking in the Google calendar and check that this also appears on the preview screen.
In the event of any problems, please email helpdesk@qedas.com
...
click CREATE PROJECT.
...
If you do not see this option, select your company name, found on the top-right.
...
Then click NEW PROJECT.
...
Enter a Project name, and select the relevant Location.
...
Click Create.
Enable APIs & Services
You will see a notification indicating the new project has been created.
You will automatically be taken to the projects APIs & Services screen.
Click ENABLE APIS AND SERVICES.
...
From here find the Google Calendar API.
...
Click ENABLE.
...
Once enabled you will be taken to the API overview page.
Select CREATE CREDENTIALS.
...
Using the wizard select the following options.
...
Which API are you using?
Google Calendar API
Where will you be calling the API from?
Other UI (e.g. Windows, CLI tool)
What data will you be accessing?
Application data
Click What credentials do I need?
...
Enter a Service account name.
Take note of the Service account ID. We will need this soon.
Select the Owner role, this is found under Project.
For the Key type choose P12.
Click Continue.
You will now be shown a message confirming the Service account and key has been created.
The P12 key will automatically be downloaded.
We will need this shortly.
...
Share the Resource Calendar with the Service Account
Now that we have the service account created we will need to allow it access to the resource calendars.
Return to your Google Calendar.
Select the “three-dot menu button found alongside the resource name.
...
Click Settings and sharing.
...
Scroll down to find Share with specific people.
Click Add people.
...
Enter your service account email ID that we created in the previous section.
Under Permissions, choose the option Make changes to events.
...
Click Send.
...
You will now see this account listed under Share with specific people.
Repeat this for each resource calendar.
Configuring the ResourceXpress Server
Navigate to your ResourceXpress Admin Dashboard.
Using the top navigation menu, click Administration Settings → System Settings.
...
Enter the details as below.
Info |
---|
If you are using an RX Hybrid licence ensure you select Google under Booking System. |
...
Server Host Name | www.google.com | ||
Server Port | 80 | ||
P12 Certificate | Use Choose File and select the downloaded .p12 key file. | ||
Global Resource Credentials | |||
Resource Login User ID | Enter the service name used when creating the service account on Google.
| ||
Resource Login Password | notasecret
| ||
Resource Login Domain | Enter the domain added to the service user account email.
|
Create & Configure Profile Settings
The next step is to add resources to ResourceXpress.
Please follow our guide on Creating and Editing Resources found here - Create & Edit Resource Profiles.
When configuring the Connection Properties sections you will need the Google email address for the resource.
This can be found in the Google Admin under Buildings and resources → Resource management → Resources section.
...
It can also be found under the Integrate calendar section from your Admin calendar.
Navigate to your calendar, select the three-dot menu for the resource.
...
Click Settings and sharing.
...
Scroll to or click Integrate calendar.
...
The calendars email address is found under Calendar ID.
See the Connection Properties section of the Create & Edit Resource Profiles guide for information on where the email address needs to be added for each resource.