The Officebooking platform enables you to share your company resources and make them available for booking by your users or employees. We support a number of interaction or touch points for end users including web, mobile and interactive signage solutions. This way your users are supported throughout their complete journey.
This guide will walk you through the process to set up synchronization with on premise Microsoft Exchange 2013 or Exchange 2016 server installations. Please check our Office 365 integration guide for Office 365 integration only.
Step 1: Access to OfficeAdmin and Exchange environment
This guide assumes someone in your organization (or Officebooking Support) has already created an Admin account for you. This account will give you access to the OfficeAdmin portal.
Next, you’ll need administrative access to your company Exchange environment. Once you’ve gained access to both environments you can start implementing the integration.
Step 2: Add resource mailboxes for rooms you want to synchronize (Microsoft admin center)
- Log in to your Exchange admin center with your Exchange administrator credentials.
- In the main menu, select ‘Recipients’, then select ‘Resources’.
- Select ‘+ Add resource’ and enter resource specific information. The minimum required information per room is the name and the email address of the room. Enter the details for example: name = Boardroom I, email address = email@example.com, location = Puntegaal (name of your workspace) and room capacity = 8.
Pay special attention to the email address of the room. The domain (in our example @wilderman.nl) is already pre filled by Exchange. The part before the @-symbol needs to be unique for the room and is used for synchronization purposes. We use the email address as a unique identifier. Make a note of this unique email address, as you will be required to add this to the Officebooking platform later in the next step. Make sure the option ‘Accept or decline booking requests automatically’ is selected.
- After selecting the ‘More options’ button you also have the option to assign a user friendly alias for the room in addition to the more formal name “Boardroom I”. Users will be also able to search in Exchange on this alias.
- Enter the Room mailbox details.
- Save your changes and move to the next step.
Step 3: Create a new service account
You’ll need to have Exchange Web Services (EWS) component available. This is standard for Microsoft Exchange 2013 and most other Exchange versions too. We use EWS to integrate with our Officebooking platform.
- First step is to create user credentials on your Exchange server to log in to get access to this EWS service. For communication with your server we need to create a Officebooking service user account in your Exchange environment with delegate rights on all resources that need to be synchronized.
- Add a new generic exchange user and give it a name, for example ‘Officebooking Service Account’. Add a strong password according to your organization’s password policy. Make a note of these credentials. You will need them later to activate the synchronization service.
The format of the service account name should be something like this: Service_account@yourdomain.com or yourdomain\Service_account
Step 4: Give delegate access to the service account
The new service account user needs delegate access to the resources that are to be synchronized.
You may set delegation rights in the following manner:
- Go to Exchange Admin Center
- Select a resource and choose ‘Edit’.
- In the menu item ‘Delegates’ select ‘Select delegates who can accept or decline booking request’
- Add the service account (e.g. Officebooking) user, that you’ve just created in the previous step.
- When you’re done adding you delegate user, select the option ‘Accept or decline booking requests automatically’.
- Make sure you save the settings.
Step 5: Set up the correct title for bookings using PowerShell
By default, Exchange removes the title of a meeting in the subject line of the resource and display’s the organizers name. You can fix this by running a PowerShell command.
- Run PowerShell as an administrator and enter the following command:
$UserCredential = Get-Credential
- Enter your login information in the dialog
- Insert your credentials you use to connect to Exchange environment:
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ # Please enter your remote Exchange server credentials here -Credential $UserCredential -Authentication Basic -AllowRedirection Set-ExecutionPolicy RemoteSigned # This opens a connection to your Exchange server with the credentials we just specified
# You’re connected
Get-Mailbox -RecipientTypeDetails RoomMailbox | Set-CalendarProcessing -AddOrganizerToSubject $false -DeleteSubject $false -DeleteComments $false
For more information please check Microsoft documentation online:
Step 6: Activate synchronization in the OfficeAdmin
To activate the synchronization, you have to add the token to the OfficeAdmin portal.
- Login to the OfficeAdmin portal and go to the ‘Settings’ page in your menu. Open the tab ‘Integrations’ on the top of the page.
- Here you choose the ‘Exchange (EWS)’ option.
- Enter your EWS access URL, username and password for the Officebooking service account. The access URL will look something like ‘https://mail.[your company domain]/ews/Exchange.asmx’.
- Select ‘Save’.
Step 7: Connect an asset in Officebooking with the corresponding meeting room
- Go to ‘Assets’ page in the left menu of the OfficeAdmin.
- Search for the meeting room you want to connect. It can help to filter on the right category, for example ‘Meeting room’.
- Select the name of the asset and select ‘Edit’.
- Enter the Exchange email address.
- Now select ‘Save asset’ to finish connecting the asset.
Step 8: Start testing
It’s important to check if the user you’re testing with both exists in your Exchange environment and the Officebooking app for the synchronization to work properly. So please make sure that the user exists in both environments and has the same email address.
Single reservation from Outlook > Officebooking
- You may test the integration by creating a meeting in Outlook calendar and invite the room as an attendant.
- Check the confirmation from Outlook. If the room has been successfully added, it will take about 1 minute before the meeting appears in the Officebooking app.
- Now open the OfficeAdmin to check if the reservation has appeared.
- Select ‘Reservations’
- Select the tab ‘List’ at the top of the page.
- Select the date you’ve created your test reservation and check if the data is correct.
Single reservation from Officebooking > Outlook
The same test can be executed the opposite way.
- Log in to the Officebooking app. In our example we use the web app (login.officebooking.net).
- Search for the asset that you want to make a test reservation for.
- Create the reservation in the app. You can see that the reservation is added to your personal reservations list on the ‘My Reservations’
- Now login to the calendar on Exchange as THE SAME USER.
- Check to see if the reservation for the meeting room (that you just made in the app) was added. Remember that there is a synchronization time interval.
I can’t access EWS on my mail server
Check the user credentials for the generic Officebooking service account. The username should be something like this: firstname.lastname@example.org or yourdomain\username. If the password seems to be incorrect, try resetting the password. Remember to check your URL. It should look like this: https://mail.yourdomain.com/ews/Exchange.asmx
I still have trouble connecting to my service account on Exchange? How can I test if it works?
Check connectivity using the Microsoft tool at https://testconnectivity.microsoft.com/. If you can successfully connect using this tool, you should have no trouble connecting to Officebooking.
- Open https://testconnectivity.microsoft.com/ in your browser.
- Select Microsoft Exchange Web Services Connectivity Tests and choose the option ‘Service account Access’.
- Enter the details of your service account and target resource mailbox (room).
I do not see the reservation I made (yet)
We synchronize every 3-6 minutes with your Exchange server using Exchange Web Services (EWS).
Check if the resource mail addresses are identical in both Exchange and Officebooking. Check if the settings of the resource are set to ‘bookable’.
Check if the users match. The users that create the reservation have to exist in both systems.
I activated the synchronization and now I receive cancellations, what’s wrong?
Check if the organizing user exists in both Officebooking and Exchange. If the users organizing a meeting (and booking a room), do not exist in BOTH systems (Officebooking AND Exchange), you can get cancellations. We are synchronizing after all! This typically only happens when you are migrating to a new exchange environment AND Officebooking account at the same time. Please make sure you added the relevant users to both environments first.