Synchronization Module and Coexistence
For Outlook appointments and Pronestor reservations to be fully aligned at any time, no matter on which device a change to an appointment is performed, the synchronization module can ensure an instant server side synchronization.
The synchronization module will ensure that any rescheduling and deletion of Outlook appointments, performed on ex. mobile phones, tablets or on any calendar where the Pronestor Outlook add-in isn't enabled, are handled server side.
- All users that have access to book an Exchange resource must have an account in the Pronestor solution.
- All users that have access to book an Exchange resource must have an Exchange account in the same Exchange environment as the Exchange resources
- Pronestor must be able to follow all actions in the users’ Exchange account as well as the Exchange resources’ accounts
- Exchange service account with application impersonation permissions on rooms and users including other settings - please see in "Setting Exchange permissions"
- Exchange service account must have a mailbox and the primary email address for that account must be the original one and not an alias
- The Exchange service account must be dedicated the Pronestor solution and not a shared service account for other services as well.
- AutoDiscover on Exchange must be reachable from Pronestor - please see comments regarding how-to.
- Its highly recommended that the Exchange service account is set without a password expiration date
- One and same Exchange server end-point must be able to resolve all users, rooms and their calendars via the EWS that Pronestor uses.
- Server must have the feature "Message Queuing Server" enabled
- Syncronization module be installed on the same web server as the Pronestor web site
- All rooms and users within Pronestor - must have their primary smtp set to the original and not an alias
- Any user that can book Exchange resources must have a Pronestor user account
- No contraints must exist for the rooms in Exchange, since these are controlled by Pronestor
- Exchange Web Services (EWS) must be reachable from Pronestor
Overall installation/configuration process
- Install and configure AD Integration - all users have been imported into Pronestor (see guide here)
- Create Exchange account for Pronestor with Application Impersonation (see section below)
- Install and configure Sync Module has as a service (see section below)
- Enable Coexistence and connect to Exchange Room Resources (see section below)
Setting Exchange Permissions
Please see refer to the following article regarding permissions on Exchange - http://helpdesk.pronestor.com/hc/en-us/articles/203580165-Settings-permissions-for-Exchange
Installing and Configuring the Sync Module
Pronestor Room has to be configured to be aware that synchronization is enabled.
Install the syncronization module
- Download the ExchangeBookingSyncService.zip from Pronestor's download site
- Unzip in c:\program files\pronestor aps\sync
- With Notepad open "ExchangeBookingSyncService.exe.config"
- Set the dbConnectionString
- Set dryRun to "true" for testing, or set to "false" for alive sync
- Save and Exit
In the Administration interface in Pronestor Room:
Set the EWS with the credentials for your Exchange Web Services (using the service account above).
You can start by running the Sync Module in a console to ensure that the module has been properly configured before installing it as a Service.
Install as a Service
- Open a command prompt
- Navigate to the "Sync" folder
- Type "ExchangeBookingSyncService.exe install" (if installing multiple service instances, use -i [optionalservicename] to name the specific instance name - ex. ExchangeBookingSyncService install -instance:SyncServiceXYZ)
- Once installed - open "Services.msc"
- Open the "ExchangeBookingSyncService"
- "Log on"-tab, use an account with local administrative permissions
- Go to "General" and click "Start"
For any issues - please check log.txt or check event viewer
With coexistence Pronestor Room and MS Exchange are synchronized and room resources are shared. You keep all resources on your Exchange server and create the same resources in Pronestor Room. All bookings of meeting rooms done in Outlook/MS Exchange will be reflected in Pronestor Room and vice versa.
Configure Pronestor Room
- Open "appSettings.config" within the configuation folder of Pronestor
- Ensure that the key "ExchangeIntegrationMode" is set to "Coexistence".
i.e. <add key="ExchangeIntegrationMode" value="Coexistence"/>
- If you have changed this value - you must recycle the app pool
Please note that using Pronestor Room with Co-Exist ence requires spedific setting on the Exchange resources. These settings can be seen in the document attached here.
Administration Configuration Guide - Step by Step
- With Pronestor Room & Catering open, go to Administration --> Settings --> Exchange integration. Input relevant Microsoft Exchange information (URL, Username, Password and/or Domain) and select the Username of the fallback user*.
- Click Save and test connection. Confirm that Exchange Web Services status is OK and that Synchronization service status is Online.
- Go to Administration --> Settings --> Other settings --> Attendees. Set a regex which encompasses email domains that are to be considered for internal (as opposed to external) attendees. Example: pronestor.com|pronestorhr.com would grant all attendees with those two email domains internal status for meetings. IMPORTANT: This step should be carried out before importing rooms and their respective calendars.
- Go to Administration --> Resources. Click New resource.
- For Exchange rooms that need to be coexisted in Pronestor, click Yes. Else, click No.
- Input the Exchange email of the room resource and check/uncheck "Only import future bookings" depending on your preference**.
- Click Validate and set up the remaining settings for the room. Click Save.
- Repeat step 5 through 7 for each room resource.
- When a room is imported it takes some time (depends on the amount of meetings that needs to be loaded) for Pronestor to import all the meetings in the room's calendar. To the left of the room resource name a status icon will be displayed.
- There are the following states:
- Room calendar is currently being imported
- Room calendar has been succesfully imported
- Pronestor is currently synchronizing with the Exchange calendar
- Connection to the Exchange server has been lost. Troubleshoot by verifying that the Exchange server is up and running and, subsequently, that the Microsoft Exchange information in Administration --> Settings --> Exchange integration is correct.
- Pronestor has received an error message from Exchange. Pronestor will try to recover from this state.
- When the room calendar has been succesfully imported, remember to Activate the resource in the right side of the respective row.
* If a user that is not registered in Pronestor books a coexisted room resource, Pronestor will assign the fallback user as the meeting owner.
** For room resources with a long history, we recommend to only import future bookings.