Configuring a Pexip Exchange Integration

The VMR Scheduling for Exchange feature allows you to create an add-in that enables Microsoft Outlook desktop and Web App users in Office 365 or Exchange environments to schedule meetings using Pexip VMRs as a meeting resource.

The first step in enabling VMR Scheduling for Exchange is Configuring Exchange/Office 365 for scheduling. You must do that before you can complete the following configuration on the Pexip Infinity Management Node.

Adding a Pexip Exchange Integration to Pexip Infinity and generating the add-in file

A Pexip Exchange Integration defines a specific connection between your Pexip Infinity deployment and a Microsoft Exchange deployment. In some cases a single Pexip Infinity deployment will have more than one Pexip Exchange Integration. Adding a new Pexip Exchange Integration involves the following steps:

  • add details of your Microsoft Exchange deployment and accounts to your Pexip Infinity deployment
  • configure the aliases that will be used for VMRs created using the VMR Scheduling for Exchange service
  • configure the text used by the add-in
  • generate the add-in file.

From the Pexip Infinity Management Node go to System configuration > Pexip Exchange Integrations and complete the following fields:

Option Description
Name The name used to refer to this Pexip Exchange Integration.
Description An optional description of the Pexip Exchange Integration.
Exchange server information
EWS URL

The URL used to connect to Exchange Web Services (EWS) on the Microsoft Exchange server.

For Office 365 deployments this will be https://outlook.office365.com/EWS/Exchange.asmx

For Exchange on-prem this will usually be https://<exchange_server>/EWS/Exchange.asmx

Note:

  • If you have multiple Exchange servers in your deployment, this can be the URL of EWS on any one of the servers.
  • If you are using a load balancer, this can use the FQDN of the load balancer within the URL (e.g. https://<load_balancer>/EWS/Exchange.asmx).

However, in both the above cases you must also ensure that the FQDNs of all Exchange servers are provided in the Exchange domains section.

Service account username

The username of the service account to be used by the VMR Scheduling for Exchange service.

This is the username you assigned when Creating a service account.

For Office365 deployments, the format is usually name@example.com; for on-premises deployments, the format may be either example\name or name@example.com, depending on your domain.

A single service account can be used by more than one Pexip Exchange Integration.

Service account password

The password of the service account to be used by the VMR Scheduling for Exchange service.

This is the password you assigned when Creating a service account.

Mailbox name

The name of the equipment resource that is to be used by the VMR Scheduling for Exchange service.

This is the name you assigned when Creating an equipment resource.

An equipment mailbox must only be used by a single Pexip Exchange Integration.

Mailbox email address

The email address of the equipment resource that is to be used by the VMR Scheduling for Exchange service.

This is the email address you assigned when Creating an equipment resource.

VMR configuration
Conference name template

A jinja2 template that is used to generate the name of scheduled conferences. The name is used by the Management Node to identify the conference, and may also appear to conference participants (depending on the endpoint being used).

Note that conference names must be unique, so a random number may be appended if the name that is generated is already in use by another service (Virtual Meeting Room, Virtual Auditorium, Virtual Reception, scheduled conference, or Test Call Service).

Default: {{subject}} ({{organizer_name}})

Conference description template

A jinja2 template that is used to generate the description of scheduled conferences.

Default: Scheduled Conference booked by {{organizer_email}}

Conference subject template

A jinja2 template that is used to generate the subject field of scheduled conferences. This will be shown on the Management Node when viewing information about the conference, and by default will use the subject line of the meeting invitation so the default should be deleted or amended if you do not want administrators to be able to view the meeting subject.

Default: {{subject}}

Scheduled alias prefix

The prefix to use when generating aliases for scheduled conferences.

Note: this must be between 1 and 8 characters long.

Scheduled alias suffix length

The length of the random number suffix part of aliases generated for scheduled conferences.

Default: 6.

Scheduled alias domain The domain to use when generating aliases for scheduled conferences.
Join before buffer

The number of minutes before the meeting's scheduled start time that participants will be able to join the VMR.

Range: 0 to 180.

Default: 30.

Join after buffer

The number of minutes after the meeting's scheduled end time that participants will be able to join the VMR.

Range: 0 to 180.

Default: 60.

Scheduled conference theme

The theme used by all conferences scheduled using the add-in. For more information, see Customizing conference images and voice prompts using themes.

Default: <use Default theme> (the global default theme is used).

Add-in configuration
Add-in server FQDN*

The FQDN of the reverse proxy or Conferencing Node (which can be either a Proxying Edge Node or Transcoding Conferencing Node) that provides the add-in content. This reverse proxy or Conferencing Node must:

  • be reachable by all Outlook clients, whether they are located on an internal network or on the public internet
  • have installed a valid, trusted certificate; in particular, there must be a server certificate with a subject name that matches the FQDN, and which is signed by a trusted root CA.

Pexip's Reverse Proxy and TURN Server v3 and later supports the VMR Scheduling for Exchange feature; we recommend v5 for additional security.

If you do not have a reverse proxy in your deployment, you can chose any Conferencing Node that meets the above criteria.

Add-in provider name*

The name of the organization which provides the add-in.

Default: Pexip.

Add-in display name*

The display name of the add-in.

Default: Pexip Scheduling Service.

Add-in description*

The description of the add-in. Maximum length: 250 characters.

Default: Turns meetings into Pexip meetings.

Add-in group label*

The name of the group in which to place the add-in button on desktop clients.

Default: Pexip Meeting.

Add-in button label*

The label for the add-in button on desktop clients.

Default: Create a Pexip Meeting.

Add-in supertip title*

The title of the supertip help text for the add-in button on desktop clients.

Default: Makes this a Pexip Meeting.

Add-in supertip text*

The text of the supertip for the add-in button on desktop clients.

Default: Turns this meeting into an audio or video conference hosted in a Pexip VMR. The meeting is not scheduled until you select Send.

Add-in pane title

The title of the add-in on the side pane.

Default: Add a VMR.

Add-in pane description

The description of the add-in on the side pane.

Default: This assigns a Virtual Meeting Room for your meeting.

Add-in pane button label

The label of the button on the side pane.

Default: Add a VMR.

Add-in pane success heading

The message that appears on the side pane when an alias has been obtained successfully from the Management Node.

Default: Success.

Already video meeting heading

The heading that appears on the side pane when the add-in is activated after an alias has already been obtained for the meeting.

Default: VMR already assigned.

Unable to add joining instructions heading

The heading that appears on the side pane when the Management Node cannot be contacted to obtain an alias.

Default: Cannot assign a VMR right now.

General error heading

The heading that appears on the side pane when an error occurs trying to add the joining instructions.

Default: Error.

Success message

The message that appears on the side pane when an alias has been obtained successfully from the Management Node.

Default: This meeting is now set up to be hosted as an audio or video conference in a Virtual Meeting Room. Please note this conference is not scheduled until you select Send.

Already video meeting message

The message that appears on the side pane when the add-in is activated after an alias has already been obtained for the meeting.

Default: It looks like this meeting has already been set up to be hosted in a Virtual Meeting Room. If this is a new meeting, select Send to schedule the conference.

Unable to add joining instructions message

The message that appears on the side pane when the Management Node cannot be contacted to obtain an alias.

Maximum length: 250 characters.

Default: Sorry, we are unable to assign a Virtual Meeting Room at this time. Select Send to schedule the meeting, and all attendees will be sent joining instructions later.

General error message

The message that appears on the side pane when an error occurs trying to add the joining instructions.

Default: There was a problem adding the joining instructions. Please try again.

Add-in image icon Select the image file to use as the add-in icon. Images must be in PNG file format and 80 x 80 pixels in size.
Email text (for more information, see Formatting the email text)
Joining instructions template

A jinja2 template that is used to generate the joining instructions that are added by VMR Scheduling for Exchange to the body of the meeting request.

Note that the {{alias_uuid}} variable, which inserts the PXPS: token, must be included.

For examples of templates that use images and other formatting, see Example joining instructions.

Default:

<br>
<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
<b>Please join my Pexip Virtual Meeting Room in one of the following ways:</b><br>
<br>
From a VC endpoint or a Skype/Lync client:<br>
{{alias}}<br>
<br>
From a web browser:<br>
<a href="https://{{addin_server_domain}}/webapp/conference/{{alias}}">https://{{addin_server_domain}}/webapp/conference/{{alias}}</a><br>
From a Pexip Infinity Connect client:<br>
pexip://{{alias}}<br>
<br>
From a telephone:<br>
[Your number], then {{numeric_alias}} #<br>
<br>
{{alias_uuid}}<br>
</div>

If the legacy Infinity Connect client is used by default, the web browser link in the template uses this format instead:

<a href="https://{{addin_server_domain}}/webapp/?conference={{alias}}">https://{{addin_server_domain}}/webapp/?conference={{alias}}</a>

Placeholder instructions text

The text that is added by VMR Scheduling for Exchange to email messages when the actual joining instructions cannot be obtained.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This meeting will be hosted in a Virtual Meeting Room. Joining instructions will be<br>
sent to you soon in a separate email.<br>
</div>
Accept new single meeting template

A jinja2 template that is used to produce the message sent to meeting organizers when VMR Scheduling for Exchange has successfully scheduled a new single meeting.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This meeting has been successfully scheduled using the aliases: {{alias}} and {{numeric_alias}}.<br>
</div>
Accept edited single meeting template

A jinja2 template that is used to produce the message sent to meeting organizers when VMR Scheduling for Exchange has successfully scheduled an edited single meeting.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This meeting has been successfully rescheduled using the aliases: {{alias}} and {{numeric_alias}}.<br>
</div>
Accept new recurring meeting template

A jinja2 template that is used to produce the message sent to meeting organizers when VMR Scheduling for Exchange has successfully scheduled a new recurring meeting.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This recurring meeting series has been successfully scheduled.<br>
All meetings in this series will use the aliases: {{alias}} and {{numeric_alias}}.<br>
</div>
Accept edited occurrence template

A jinja2 template that is used to produce the message sent to meeting organizers when VMR Scheduling for Exchange has successfully scheduled an edited occurrence in a recurring series.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This meeting occurrence in a recurring series has been successfully rescheduled using the aliases: {{alias}} and {{numeric_alias}}.<br>
</div>
Accept edited recurring meeting template

A jinja2 template that is used to produce the message sent to meeting organizers when VMR Scheduling for Exchange has successfully scheduled an edited recurring meeting.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This recurring meeting series has been successfully rescheduled.<br>
All meetings in this series will use the aliases: {{alias}} and {{numeric_alias}}.<br>
</div>
Reject invalid alias ID text

The text that is sent to meeting organizers when VMR Scheduling for Exchange has failed to schedule a meeting because the alias ID in the meeting email is invalid.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This meeting request does not contain currently valid scheduling data, and therefore cannot be processed.<br>
Please use the add-in to create a new meeting request, without editing any of the content that is inserted by the add-in.<br>
If this issue continues, please contact your system administrator.<br>
</div>
Reject alias conflict template

A jinja2 template that is used to produce the message sent to meeting organizers when VMR Scheduling for Exchange has failed to schedule a meeting because the alias conflicts with an existing alias.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
We are unable to schedule this meeting because the alias: {{alias}} is already <br>
in use by another Pexip Virtual Meeting Room. Please try creating a new meeting.<br>
</div>
Reject alias deleted text

The text that is sent to meeting organizers when VMR Scheduling for Exchange has failed to schedule a meeting because the alias for this meeting has been deleted.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
We are unable to schedule this meeting because its alias has been deleted.<br>
Please try creating a new meeting.<br>
</div>
Reject recurring series in past text

The text that is sent to meeting organizers when VMR Scheduling for Exchange has failed to schedule a recurring meeting because all instances occurred in the past.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This recurring series cannot be scheduled because all<br>
occurrences happen in the past.<br>
</div>
Reject single meeting in past text

The text that is sent to meeting organizers when VMR Scheduling for Exchange has failed to schedule a meeting because it occurred in the past.

Default:

<div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;">
This meeting cannot be scheduled because it occurs in the past.<br>
</div>
Exchange domains
Domain

The FQDN of the Microsoft Exchange server that is configured in the EWS URL field.

For Office 365 deployments this will be outlook.office365.com.

If your Exchange deployment uses more than one FQDN (for example, if you have an on-premises Microsoft Exchange deployment with more than one Microsoft Exchange server, or your Exchange server has more than one FQDN), you must include all the FQDNs of all the Exchange servers in your deployment. To do this, select Add another Exchange Domain and add the FQDN of each.

* If you change this setting, you must re-generate and re-install the add-in XML file.

When you have finished, select Save. You will be taken back to the main Pexip Exchange Integrations page. The Infinity Connect platform will attempt to contact the Microsoft Exchange deployment, and if there are any issues, it will raise an alarm on the Management Node.

Formatting the email text

All the templates and text specified in the Email text section can be entered as HTML. This allows you to customize the text (for example, the font, size, and color). When using HTML, you must ensure all HTML tags are closed properly, otherwise you may affect the format of any existing text in the email body.

The add-in pane headings and text can also be formatted using HTML, although some formatting may be overridden by the base HTML. We recommend that you check that any formatting applied to add-ins appears as expected in all clients used in your environment.

Working with jinja2 templates

VMR Scheduling for Exchange uses a subset of the jinja2 templating language (http://jinja.pocoo.org/docs/dev/) to create the text used in emails. Note that Pexip Infinity also uses jinja2 when Provisioning VMRs and devices from Active Directory via LDAP and when Writing local policy scripts.

Variables

The following variables can be used when creating the jinja2 templates used for VMR Scheduling for Exchange:

Variable Description
{{subject}} †

Inserts the subject line of the meeting invitation sent by the meeting organizer.

Note that this information will be visible to anyone with access to the Management Node, so do not use this variable if privacy is an issue.

{{organizer_name}} † Inserts the name of the meeting organizer, as it appears in the meeting invitation.
{{organizer_email}} † Inserts the email address of the meeting organizer.
{{addin_server_domain}} *

Inserts the FQDN configured in the Add-in server FQDN field. This FQDN is used by Infinity Connect clients as part of the address to use when connecting to the meeting. For more information, see Creating preconfigured links to launch conferences via Infinity Connect.

{{alias}}

Inserts the full alias that was generated for the VMR that will be used for this meeting. This is in the format:

<prefix><random_number>@domain.

{{numeric_alias}}

Inserts the numeric part of the alias that was generated for the VMR that will be used for this meeting. This is in the format:

<prefix><random_number>.

{{alias_uuid}} *

Inserts the PXPS:- ID. For more information, see PXPS:- and TOK:- security tags.

The Joining instructions template must contain this variable.

{{start_time}} **

Inserts the start time of the meeting, as per the meeting request. (This time does not include the Join before buffer.)

Note that this will use the format hh:mm on DD/MM/YYYY, e.g. 15:30 on 31/07/2017; this format cannot be changed.

{{end_time}} **

Inserts the end time of the meeting, as per the meeting request. (This time does not include the Join after buffer.)

Note that this will use the format hh:mm on DD/MM/YYYY, e.g. 15:30 on 31/07/2017; this format cannot be changed.

* Can only be used in joining instructions.

** Can only be used in acceptance messages.

† Can only be used in the name, description or subject fields of the VMR to be created for this meeting.

Deleting and replacing Pexip Exchange Integrations

If you delete an existing Pexip Exchange Integration and replace it with another, you must also re-generate and re-install the add-in XML file, even if the configuration of the new Pexip Exchange Integration is identical to that of the old one.

Using multiple Pexip Exchange Integrations

Different groups of users within the same Microsoft Exchange deployment

You can provide different groups of users within your Microsoft Exchange deployment with different options when using the VMR Scheduling for Exchange feature. For example, you may wish to vary the prefix used as part of the VMR alias, or use different text for the joining instructions. To do this, create multiple Pexip Exchange Integrations that connect to the same Exchange environment. (Note however that each Pexip Exchange Integration must have a separate equipment resource.)

Each Pexip Exchange Integration that you create will have an associated add-in which you can then make available to specific users by using Exchange PowerShell commands.

The diagram below shows a single Pexip Infinity deployment with two Pexip Exchange Integrations to the same Microsoft Exchange deployment. Each Pexip Exchange Integration uses the same EWS URL and is configured with the FQDNs of all the Exchange servers in the Exchange deployment.

The first connection provides an add-in for sales staff; the second provides an add-in for development staff. Both add-ins are uploaded to Microsoft Exchange, but each user will only see the add-in relevant to their group.

Different Microsoft Exchange deployments

If you are a service provider, you can configure one or more Pexip Exchange Integrations for each of your customers.

The diagram below shows a single Pexip Infinity deployment with two Pexip Exchange Integrations to two different Microsoft Exchange deployments. The first connection provides an add-in for everyone at Example Corp; the second provides an add-in everyone at Acme Corp.

Next step