Configuring Pexip Infinity for VMR Scheduling for Exchange
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 quickly and easily add a Pexip VMR to their meeting invitations, enabling any meeting to be held over video.
Users can host their meeting in a single-use VMR that is created specifically for the meeting and only available for its duration, or they can host their meeting in their own personal VMR. You can either let users decide which type of VMR to use for each meeting, or make just one type of VMR available in your deployment.
You can provide the VMR Scheduling for Exchange add-in button as the only option within Outlook for scheduling video meetings, or you can offer it alongside other add-ins. This means that if you already have a primary meeting solution, you can still offer a "two button" approach, with Pexip Infinity as a complementary meeting alternative — for example, when the meeting's content or security classification requires it, or for business continuity purposes. For more information about Pexip Secure Meetings, see our website.
Prerequisites
-
If you wish to enable single-use VMRs in your VMR Scheduling for Exchange deployment, you must first complete the steps in either Configuring Exchange on-premises for scheduling (for Exchange on-premises environments), or Configuring Office 365 for scheduling using app permissions (for Office 365 environments).
-
If you wish to enable personal VMRs in your VMR Scheduling for Exchange deployment, you must first complete the steps in either Configuring AD FS SSO for personal VMRs or Configuring Azure SSO for personal VMRs.
Adding a VMR scheduling for Exchange integration to Pexip Infinity
A VMR scheduling for 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 require more than one VMR scheduling for Exchange integration.
Adding a new VMR scheduling for Exchange integration involves the following steps:
- deciding whether VMRs used by the VMR Scheduling for Exchange service will be the users' personal VMR(s), single-use (dynamic) VMRs, or both
- (for single-use VMRs) adding details of your Microsoft Exchange deployment and accounts, defining how the single-use VMRs will be configured, and configuring the template to be used for joining instructions
- (for personal VMRs) adding details of your authentication provider (ADFS or Azure), and defining how the join instructions and meeting location will be generated from the existing personal VMR details
- configuring the wording and icon to be used by the add-in.
From the Pexip Infinity Management Node go to and select . Complete the following fields:
Option | Description | Notes |
---|---|---|
Name | The name used to refer to this VMR scheduling for Exchange integration. | |
Description | An optional description of this VMR scheduling for Exchange integration. | |
Enable single-use VMRs | Enable this option to allow Outlook users to schedule meetings in single-use (randomly generated) VMRs. | |
Enable personal VMRs | Enable this option to allow Outlook users to schedule meetings in their personal VMRs. | |
Exchange server information (available and required when single-use VMRs are enabled) | ||
EWS URL |
The URL used to connect to Exchange Web Services (EWS) on the Microsoft Exchange server.
|
|
Authentication method |
The method used to authenticate to Exchange.
|
|
Which of the following options appear will depend on the selected Authentication method — see Notes. |
||
Service account username |
The username of the service account to be used by this VMR scheduling for Exchange integration. This is the username you assigned when Creating a service account for Exchange on-premises or Creating a service account for O365.
A single service account can be used by more than one VMR scheduling for Exchange integration. |
Required for:
|
OAuth client ID |
Enter the Application (client) ID that was generated for you by Azure when you saved the App Registration. For more information, see Taking note of configuration (for OAuth using a service account) or Taking note of configuration (for OAuth using app permission). |
Required for:
|
OAuth client secret | The client secret which you generated when creating a Microsoft Entra ID App Registration. |
Required for:
|
OAuth redirect URI |
Enter the Redirect URI that you used when Enabling OAuth authentication for Office 365. This must be in the format https://<Management Node Address>/admin/platform/msexchangeconnector/oauth_redirect/. The OAuth redirect URI is the page on the Administrator interface to which the Pexip Infinity administrator will be returned after they have successfully signed in to the service account. Because it is a page on the Management Node, this URI is internal to your deployment and only needs to be accessible from the administrator's web browser; you do not need to make it externally accessible. This URI must be the same on Azure and Pexip Infinity in order for Azure to validate the sign-in request. |
Required for:
|
OAuth authorization endpoint |
Enter the URL of the OAuth 2.0 authorization endpoint (v1) (see Taking note of configuration). Ensure that you use the URL for ... endpoint (v1), not ... endpoint (v2). |
Required for:
|
OAuth token endpoint |
|
Required for:
|
Service account password |
The password of the service account to be used by this VMR scheduling for Exchange integration. This is the password you assigned when Creating a service account. |
Required for:
|
Mailbox name |
The name of the equipment resource that is to be used by this VMR scheduling for Exchange integration. This is the name you assigned when Creating an equipment resource in Exchange on-premises or Creating an equipment resource in O365. An equipment mailbox must only be used by a single VMR scheduling for Exchange integration. |
Required for all authentication methods |
Mailbox email address |
The email address of the equipment resource that is to be used by this VMR scheduling for Exchange integration. This is the email address you assigned when Creating an equipment resource in Exchange on-premises or Creating an equipment resource in O365. |
Required for all authentication methods |
Single-use VMR configuration (available and required when single-use VMRs are enabled) | ||
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, Media Playback Service, or Test Call Service). Default: {{subject}} ({{organizer_name}}) |
Accepted variables:
|
Conference description template |
A jinja2 template that is used to generate the description of scheduled conferences. Default: Scheduled Conference booked by {{organizer_email}} |
Accepted variables:
|
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}} |
Accepted variables:
|
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. This must be a number between 6 and 15. Default: 6. |
|
Scheduled alias domain | The domain to use when generating aliases for scheduled conferences. | |
Identity Provider group |
The set of Identity Providers used to authenticate participants attempting to join scheduled conferences. If this is blank, participants will not be required to authenticate. For more information, see About participant authentication. |
|
Other participants |
(Available when an Identity Provider Group has been selected) Determines whether participants joining a SSO-protected service from devices other than the Connect web app (for example SIP or H.323 endpoints) are allowed to dial in to the service.
For more information, see About participant authentication. Default: Disallow all |
|
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). |
|
Personal VMR configuration (available and required when personal VMRs are enabled) | ||
Allow new users |
Enable this option to allow users who do not have an existing Pexip Infinity User record ( ) to access the Outlook add-in. When these users sign in, Pexip Infinity will create a new user record for them. Disable this option to allow only those users with an existing User record to access the Outlook add-in. |
|
Authentication provider | The method by which users will sign into the Outlook add-in. | |
User OAuth authorization URI |
The authorization URI of the OAuth application used to authenticate users when signing in to the Outlook add-in. Azure This will be in the format https://login.microsoftonline.com/<UUID>/oauth2/v2.0/authorize
AD FS This will be in the format https://<Federation Service Name>/adfs/oauth2/authorize
|
|
User OAuth token URI |
The token URI of the OAuth application used to authenticate users when signing in to the Outlook add-in. Azure This will be in the format https://login.microsoftonline.com/<UUID>/oauth2/v2.0/token
AD FS This will be in the format https://<Federation Service Name>/adfs/oauth2/token
|
|
User OAuth client ID |
The client ID of the OAuth application used to authenticate users when signing in to the Outlook add-in.
|
|
AD FS Resource Identifier |
(Applies when an Auth Provider of AD FS has been selected) The URL which identifies the OAuth 2.0 resource in AD FS.
|
|
Azure OAuth client secret |
(Applies when an Auth Provider of Azure has been selected) The client secret of the OAuth application used to authenticate users when signing in to the Outlook add-in. For more information, see Creating and configuring a new App Registration in Azure. |
|
Personal VMR 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 when a personal VMR is being used. For more details on constructing the URLs used for joining from a web browser, see Creating preconfigured links to launch conferences via Connect apps. Default: {% if domain_aliases %} {% set alias = domain_aliases[0] %} {% elif other_aliases %} {% set alias = other_aliases[0] %} {% else %} {% set alias = numeric_aliases[0] %} {% endif %} {% if (not allow_guests) and pin %} {% set meeting_pin = pin %} {% elif allow_guests and guest_pin %} {% set meeting_pin = guest_pin %} {% else %} {% set meeting_pin = "" %} {% endif %} <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> <br> From a Pexip Infinity Connect client:<br> pexip://{{alias}}<br> <br> {% if numeric_aliases %} From a telephone:<br> [Your number], then {{numeric_aliases[0]}} #<br> <br> {% endif %} {% if meeting_pin %} Please join using the PIN <b>{{meeting_pin}}</b><br> <br> {% endif %} </div> |
Accepted variables:
|
Personal VMR location template |
A jinja2 template that is used to generate the text that will be inserted into the Location field of the meeting request when a personal VMR is being used. The output of this should be a single line of text. Default: {% if domain_aliases %} {% set alias = domain_aliases[0] %} {% elif other_aliases %} {% set alias = other_aliases[0] %} {% else %} {% set alias = numeric_aliases[0] %} {% endif %} https://{{addin_server_domain}}/webapp/#/?conference={{alias}} |
Accepted variables:
|
Personal VMR name template |
A jinja2 template that is used to generate the name of the personal VMR, as it appears on the button offered to users when selecting which VMR to use. By default, this uses the Name configured for the user's personal VMR. We recommend that the output is a single line. Default: {{name}} |
Accepted variables:
|
Personal VMR description template |
A jinja2 template that is used to generate the text that will appear when hovering over the button offered to users when selecting which VMR to use. By default this uses the Description configured for the user's personal VMR. Default: {{description}} |
Accepted variables:
|
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:
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 choose 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 single-use VMR button label |
The label of the button on the side pane. Default: Add a Single-use 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. |
|
Error inserting single-use VMR message |
The message that appears on the side pane when an error occurs trying to add the joining instructions of a single-use VMR. Default: There was a problem adding the joining instructions. Please try again. |
|
Add-in pane personal VMR button label |
The label of the button on the side pane used to add a personal VMR. Default: Add a Personal VMR |
|
Add-in pane sign in button label |
The label of the button on the side pane requesting users to sign in to obtain the list of their personal VMRs. Default: Sign In |
|
Select personal VMR message |
The message that appears on the side pane requesting users to select a personal VMR to use for the meeting. Default: Select the VMR you want to add to the meeting |
|
No personal VMR message |
The message that appears on the side pane when the user has no personal VMRs. Default: You do not have any personal VMRs |
|
Error getting personal VMRs message |
The message that appears on the side pane when an error occurs trying to obtain a list of the user's personal VMRs. Default: There was a problem getting your personal VMRs. Please try again. |
|
Error signing in message |
The message that appears on the side pane when an error occurs trying to sign the user in. Default: There was a problem signing you in. Please try again. |
|
Error inserting personal VMR meeting message |
The message that appears on the side pane when an error occurs trying to add the personal VMR details to the meeting. 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. Note that Outlook clients may cache the add-in icon, so it may be some time after uploading a new icon that it appears to end users. You can resolve this by deleting the cache. Default: |
|
Single-use VMR email text (available and required when single-use VMRs are enabled; for more information, see Formatting the email text) | ||
Single-use VMR 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 when a single-use VMR is being used. 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 for VMR Scheduling for Exchange. For more details on constructing the URLs used for joining from a web browser, see Creating preconfigured links to launch conferences via Connect apps. 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> <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> |
Accepted variables:
|
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> |
Accepted variables:
|
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> |
Accepted variables:
|
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> |
Accepted variables:
|
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> |
Accepted variables:
|
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> |
Accepted variables:
|
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> |
Accepted variable:
|
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> |
|
Reject general error 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 a general error has occurred. The {{correlation_id}} variable is a UUID which can be used to find more information from the administrator log. Default: <div style="font-size:11.0pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif;"> We are unable to schedule this meeting. Please try creating a new meeting.<br> If this issue continues, please forward this message to your system administrator, including the following ID:<br> CorrelationID="{{correlation_id}}".<br> </div> |
Accepted variable:
|
Advanced options | ||
Disable web proxy | Select this option to bypass the web proxy (where configured for the Management Node) for outbound requests sent from this VMR scheduling for Exchange integration. | |
Enable add-in debug logs | Enable this option to view debug logs within the add-in side pane in the desktop and web Outlook client. Only do this as a temporary measure if you are experiencing issues deploying the add-in. Note that these logs will appear for all users of this add-in. | |
Use custom add-in sources |
Enable this option to override the default locations from which the add-in JavaScript and CSS are served. This option is intended for use in deployments that are fully offline (where Outlook users will not have internet access) and therefore these resources must be available locally. If you enable this option, you must host these files on your own internal server, and enter the URLs for each in the relevant fields below. We recommend contacting your Pexip authorized support representative before enabling this option. |
|
Office.js URL |
(Available if Use custom add-in sources has been enabled) The URL used to download the Office.js JavaScript library. |
|
Microsoft Fabric CSS URL |
(Available if Use custom add-in sources has been enabled) The URL used to download the Microsoft Fabric CSS. |
|
Microsoft Fabric Components CSS URL |
(Available if Use custom add-in sources has been enabled) The URL used to download the Microsoft Fabric Components CSS. |
|
Additional add-in script sources |
(Available if Use custom add-in sources has been enabled) Optionally specify additional URLs from which to download JavaScript script files. These URLs will be used in preference to any other URLs specified elsewhere for the same resource. In particular, we recommend that you specify here the URL for MicrosoftAjax.js. Each URL must be entered on a separate line. |
|
Exchange Metadata Domains and URLs | ||
Domain or URL |
(Required for single-use VMRs and personal VMRs) An FQDN or URL which can be used to access a page containing the Exchange Metadata for your Exchange deployment. This page provides the public key of the Microsoft Exchange Server Auth Certificate used by the add-in to verify user identities. If a FQDN is supplied, the default URL path https://<FQDN>/autodiscover/metadata/json/1 will be used. This URL must be reachable by the management node. If you have a hybrid Exchange and Office 365 deployment, you must include outlook.office365.com in the list of domains as well as the domain of one of your Exchange on-premises servers. If your Exchange deployment uses more than one domain or URL (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), and they use separate signing certificates, you must include all the FQDNs of all the Exchange servers in your deployment. To do this, select and add the FQDN of each. |
|
|
Signing in to the service account
If you have enabled OAuth for the first time, you must sign in to the service account after saving the configuration of the VMR scheduling for Exchange integration.
You may also need to re-sign in to the service account if:
- the service account password has changed
- the service account uses multi-factor authentication (MFA) and the MFA is refreshed
- you disable and then subsequently re-enable OAuth
- you update any of the following configuration for the VMR scheduling for Exchange integration:
- Service account username
- OAuth client ID
- OAuth token endpoint
- the Management Node has been offline for more than 90 days.
To sign in to the service account:
- Ensure you have signed out of all Microsoft accounts on your device, including the Microsoft Azure portal.
-
From the Management Node, go to and select the VMR scheduling for Exchange integration. At the bottom of the page, select .
You will be taken to the Sign in to service account page.
- Copy the Sign in link and paste it into a new browser tab.
-
Sign in as the service account.
You are asked to permit the scheduling application registration to sign in as the service account:
If there is an option to Consent on behalf of your organization, do not select this — consent only needs to be given to the service account.
-
Select
.You are returned to the Management Node.
-
You may be asked to sign in to the Management Node again. If so, you must sign in to the Management Node (using your Management Node credentials) to complete the process of signing in to the service account.
When complete, you are returned to the Sign in to service account page and see the message Successfully signed in.
Saving and checking configuration
When you have finished, select Pexip Infinity platform will attempt to contact the Microsoft Exchange deployment, and if there are any issues, it will raise an alarm on the Management Node.
. You will be taken back to the main page. TheFormatting 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 (https://jinja.palletsprojects.com/en/2.10.x/templates/) to create the text used in emails.
For more reference information and to see where else jinja2 templates are used within Pexip Infinity, see Jinja2 templates and filters.
Variables
The following variables can be used when creating the jinja2 templates used for VMR Scheduling for Exchange. Note that not all variables can be used in all templates; see the descriptions of each template in Single-use VMR configuration, Personal VMR configuration and Single-use VMR email text for a list of which variables can be used in each template.
Variable | Description |
---|---|
Valid for Single-use VMRs | |
{{addin_server_domain}} |
Inserts the FQDN configured in the Add-in server FQDN field. This FQDN is used by Connect apps as part of the address to use when connecting to the meeting. For more information, see Creating preconfigured links to launch conferences via Connect apps. |
{{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. |
{{alias_uuid}} |
Inserts the PXPS:- ID. For more information, see PXPS:- and TOK:- security tags. The Single-use VMR joining instructions template must contain this variable. |
{{correlation_id}} |
Used in the Reject general error template only Inserts a UUID which can be used to find more information about the error from the administrator log. |
{{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. |
{{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>. |
{{organizer_email}} |
Inserts the email address of the meeting organizer. |
{{organizer_name}} |
Inserts the name of the meeting organizer, as it appears in the meeting invitation. |
{{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. |
{{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. |
Valid for Personal VMRs | |
{{addin_server_domain}} |
Inserts the FQDN configured in the Add-in server FQDN field. This FQDN is used by Connect apps as part of the address to use when connecting to the meeting. For more information, see Creating preconfigured links to launch conferences via Connect apps. |
{{aliases}} | Provides access to a jinja2 list object which contains all aliases that have been configured for the personal VMR. You can then access any particular alias by using a list index. See the Personal VMR joining instructions template for example usage. |
{{allow_guests}} | Returns true or false, which can then be used in an if statement. See the Personal VMR joining instructions template for example usage. |
{{description}} | Inserts the configured Description of the personal VMR. |
{{domain_aliases}} | Provides access to a jinja2 list object which contains all aliases configured for this personal VMR that include the @ character followed by a domain. You can then access any one of these aliases by using a list index. See the Personal VMR joining instructions template for example usage. |
{{guest_pin}} | Inserts the configured Guest PIN of the personal VMR. |
{{name}} | Inserts the configured Name of the personal VMR. |
{{numeric_aliases}} | Provides access to a jinja2 list object which contains all aliases configured for this personal VMR that include only digits. You can then access any one of these aliases by using a list index. See the Personal VMR joining instructions template for example usage. |
{{other_aliases}} | Provides access to a jinja2 list object which contains all aliases configured for this personal VMR that do not include either the @ character followed by a domain, or only digits. You can then access any one of these aliases by using a list index. See the Personal VMR joining instructions template for example usage. |
{{owners_email}} | Inserts the configured Owner's email address of the personal VMR. |
{{pin}} | Inserts the configured Host PIN of the personal VMR. |
{{service_type}} | Inserts a string to indicate whether the personal VMR is a "conference" (Virtual Meeting Room), "lecture" (Virtual Auditorium), or "two_stage_dialing" (Virtual Reception). |
|
Deleting and replacing VMR scheduling for Exchange integrations
If you delete an existing VMR scheduling for 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 VMR scheduling for Exchange integration is identical to that of the old one.
Using multiple VMR scheduling for 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 VMR scheduling for Exchange integrations that connect to the same Exchange environment. (Note however that each VMR scheduling for Exchange integration must have a separate equipment resource.)
Each VMR scheduling for 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 VMR scheduling for Exchange integrations to the same Microsoft Exchange deployment. Each VMR scheduling for 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 VMR scheduling for Exchange integrations for each of your customers.
The diagram below shows a single Pexip Infinity deployment with two VMR scheduling for 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
- Making the add-in available to users within your Exchange deployment.