Configure Integration to Microsoft Exchange

As of 44.1, Update 24, the testing function on pamconfig.aspx will test the FindItems, GetUserAvailability, Create, Edit, and Cancel EWS calls used by the EMS integration. Previously, only FindItems was tested. There is not necessarily a 1:1 guide as to what would cause a failure for each specific call, however this does not mean that scenarios exist where ‘create’ would succeed but ‘cancel’ would fail for example. The ‘GetUserAvailability’ call does not leverage ApplicationImpersonation, so if this is succeeding and the create/edit/cancel calls are failing then the issue is likely around permissions for the service account. Testing will be logged in the logfile, which has a default location of ExchangeIntegrationWebService\LogFiles and can be modified in the web.config file.

Configuring EMS to work with Exchange Online (Office 365) or Exchange 2013 is the same as configuring EMS to work with a 2007/2010 Exchange environment that is hosted on your network. See Configure EWS Impersonation for Microsoft® Exchange for information on configuring impersonation on Exchange Online (Office 365). For assistance, contact support@emssoftware.com.

Note:

Integration to Exchange requires the use of a mail-enabled service account that has the Application/Impersonation role in Exchange for all users who will be accessing EMS. Learn how to Configure Exchange Web Service Impersonation.

This topic provides information on the following: 

Configure Integration to Exchange Instructions

As of Update 28, access to the PAMconfig.aspx page is restricted by default. Customers who do not enable Windows Authentication in IIS for the Exchange Integration Web Service should comment out the following section for EIWS to work properly:

<remove users="*" roles="" verbs=""/>
<add accessType="Allow" roles="Users"/>”
  1. After following the installation instructions, access the Integration to Exchange configuration area by opening a browser and entering the following:

    http://[ServerName]/ExchangeIntegrationWebService/PamConfig.aspx (replace [ServerName] with the name of your web server)

  2. Go the Account Info tab. 
  3. Select your email system in the Provider field using the instructions provided on the page.
  4. Select the box “... use AutoDiscover to locate the best Client Access Server for the user…” If you do not select this box, you must fill in the URL to Exchange Web Services field.
  5. Within the Authentication Information section, enter your Integration to Exchange Account User Name and Password. The User Name should be prefixed with your domain (example – YourDomain\Integration to Exchange Account, or Integration to Exchange Account@YourDomain).

    Make a note of this URL for use later in this topic.

  6. (Optional) The “Use application pool identity…” option allows you to set the Integration to Exchange Account credentials at the Application Pool level instead of storing the credentials in the EMS database. See the Use Application Pool Identity for Integration for Exchange Service Account topic for more information about this option. If this option is selected, you must check the box to use Impersonation. 
  7. If you selected “Exchange Web Services” as your Provider, select the checkbox if the account specified has Exchange Impersonation access to all mailboxes in your Exchange mailbox store.
  8. Select the Authentication Type:
    • Anonymous – No authentication
    • Specify Account – Relies on a custom account (not the Integration to Exchange Account) that you create and manage. Please contact Customer Support (or a member of the Professional Services group if you are working with one) to discuss the configuration process for this option.
    • Default Credentials – Relies on security context of EMS application calling the Integration with Exchange Web Service. If using this option, Integrated Windows Authentication should be enabled for the Integration with Exchange Web Service.
    • For MS Exchange 2007/2010 environments, click Save.

    When testing Integration to Exchange, the email account that is being used (either on the Test Settings tab or in the Testing Integration to Exchange section below) MUST exist in the Exchange environment being tested. If you are testing Integration with Exchange in a development environment, please verify that a mailbox for the email being used exists in that domain/environment.

  9. Click Test Configuration

    If you encounter errors, verify your configuration. Otherwise, your Integration to Exchange configuration is complete. 

Test Your Exchange Integration

To test your  configuration, you will need to log into EMS Web App with a user account (configured with the user’s primary email address) belonging to a Everyday Application Process Template (within the EMS client application) that has the Enable Integration to Microsoft Exchange option checked.

To test your Exchange integration:

  1. Log into EMS Web App, then start a reservation and select a room.
  2. Select Add to my calendar. If this option is not available, please verify (within the EMS client application) that your user account belongs to a Everyday User Process Template that has the Allow Invitations option checked. 
  3. In Find Attendee, search for and add an attendee.
  4. Complete necessary information on the Details tab and click Submit Reservation.
  5. Verify that an appointment was added to your Outlook Calendar and that your attendee received an invitation.

Optional Messaging Settings​

The options on the Message tab (as reached above in Step 2)  guide you further configure your integration.

Message Tab Fields

Field

Description

Message To Append

Message appended to the bottom of the appointment body. This message is seen by all users.

To view the details of this reservation click the below link

Message added to the appointment body, above a link that takes a user to a view-only EMS Web App page for the appointment. This message is seen by all users.

If you are the meeting organizer click the below link to edit the reservation

Message added to the appointment body, above a link that takes the meeting organizer to the EMS Web App Reservation Summary page for that reservation. This message is seen by all users, but only the meeting organizer can access the Reservation Summary page to make changes.

Allow Attachments

Allows users to add attachments within EMS Web App when making an appointment.

Maximum Attachment Size

If attachments are allowed, set the maximum file size allowed for an attachment.

Enable Larger File Attachments On The Config File

By default, Exchange Integration attachments will only accept files 4MB or less. If your implementation needs to allow files of larger sizes to be attached to reservations, the following config updates will be required, both in EMS Web App and in the Exchange Integration Web Service. 

The maximum file size is 2 GB.

  1. In the <system.webServer> section, include this xml node:
    <security>
          <requestFiltering>
            <requestLimits maxAllowedContentLength="51200000"/> <!--maxAllowedContentLength in bytes, 50MB=51200000-->                                              
          </requestFiltering>
        </security>
  2. In the <httpRuntime element, add these highlighted attributes with the end result looking like this:
    <httpRuntime targetFramework="4.5" requestLengthDiskThreshold="2147483644" 
    maxRequestLength="51200"  />  <!—-requestLengthDiskThreshold in bytes, & maxRequestLength in KB, 50MB-->
  3. Under the <appSettings> look for the “MaximumUploadSizeInBytes” key.  Update this value to the number of bytes allowed.  For instance, 50MB would look like this:
    <add key="MaximumUploadSizeInBytes" value="52428800000"/>  <!—- in bytes50MB--> 

Enable Larger File Attachments in the Exchange Integration Web ServiceEdit section

By default Exchange Integration attachments will only accept files 4MB or less. If your implementation needs to allow for Exchange message attachments larger than 4MB, the config updates above will need to be applied in the Exchange Integration Web Service.

Due to the size of the xml sent, we recommend adding 5MB to the desired file upload size. (i.e., if you want to allow a max of 20MB files, calculate a total of 25MB worth of Kilobytes and bytes.

In addition to these web.config settings above, a web administrator will need to update the file size in the Exchange Integration Web Service as follows:

  1. Navigate to the Exchange Integration Web Service/PAMConfig.aspx.
  2. Click the Message tab.
  3. Update the Maximum Attachment Size text box and Save.

For Externally Exposed Web App sites

If your EMS Web App site is externally exposed, some of the web.config settings above could make the site vulnerable to DoS site attacks. We highly recommend setting network-level protection to prevent DoS attacks.