So now that v19 is finally out, we can now share how you deploy Pexip and Google Hangouts Meet integration. The official docs are here at https://docs.pexip.com/admin/gmeet_intro.htm.
Step One - Create an Access Token in G Suite Admin
On your Google Admin homepage, select Apps
Expand the Gateways for interoperability settings option.
The generated tokens are only displayed once in G Suite, at the time of creating them. These tokens need to be configured on your Pexip Infinity system. Therefore you should have your Pexip Infinity Administrator interface open and available at the same time as you are generating the tokens within G Suite.
Your G Suite account will be assigned two access tokens: a trusted and an untrusted token. You can use these two token types to control whether an endpoint that is routed via Pexip Infinity into a Hangouts Meet conference is automatically admitted into the conference, or whether an existing conference participant has to explicitly admit it into the conference. When you configure Pexip Infinity, you decide which type of token to associate with the access rules and dial patterns that allow devices to be routed into Hangouts Meet conferences.
Click on Add Gateway
Enter the name of your Pexip deployment and it is wise to add whether this is the trusted or untrusted token. Then click Generate.
Now copy the token to your clipboard.
Step 2 - Applying the Access Token to Pexip Infinity
Log into your Pexip deployment and head to Call Control > Google Meet Access Tokens
Then click on Add Google Hangouts Meet access token
Now type in the same name that you created above in the G Suite admin portal and then paste in your access token and click Save.
Step 3 - Setting config options in G Suite Admin
Now set the token to Trusted or Untrusted
Now head back to the Meet Settings
Once expanded, you will see some new options now that you have enabled interop.
First select a prefix number that will route calls towards your Pexip deployment. Then input your conference node public IP address followed by the domain name of your Pexip deployment such as vc.company.com
When you click on the Audit log you can see your changes.
Step 4 - Pexip configuration for Hangouts Meet interop
Now that the G Suite side is done, we need to route calls from Pexip to Hangouts Meet. To do this, we need a Call Routing Rule. Firstly, you need to ensure you have the Google Hangouts Meet license installed. Head to Platform Configuration > Licenses and input your licenses if you have not already done so. They should activate online with the Pexip servers.
Configuring Call Routing
Next head to Service Configuration > Call Routing
Click on Call Routing Rule and then provide a name, a priority (say number 10 so you have the option to add more rules above if needed), a description if needed and make sure it is selected for Incoming and Outgoing calls. Also select Any location.
Next we need to select protocols we want to match it to as well. Then create a Destination alias regex match rule. The first digit is the prefix we highlighted above in the G Suite admin portal. Then we are saying match between 3 and 9 digits, then the domain name. For example, you could use this with your domain name:
Then we need to strip off the domain by using \1
Next we need to set the Call target as Google Hangouts Meet meeting and set the Outgoing location as Automatic. Then select your Access token that was created earlier. Make sure Enable this rule is checked and click Save.
After the Call Routing Rule has been configured, third-party system and devices can now dial an alias that matches your specified pattern (e.g. 812345 or firstname.lastname@example.org) to be routed directly into the appropriate Hangouts Meet conference (in this example the conference with a meeting code of 812345).
Step 5 - Creating a Virtual Receptionist within Pexip
By using a Virtual Receptionist, this enables users to dial into a lobby and then enter the meeting ID. To do this, you head to Service Configuration > Virtual Receptions and then select Add Virtual Reception.
Now enter the details needed as per below. Name, change the Virtual Reception type to Google Hangouts Meet and select your access token. The post regex lookup is optional. In my example below, I am matching any digits between 4-13 digits long
then using the replace string of
You also just use (.*) to match anything in the lobby and just use \1 to let what has been entered.
Now you can specify any alias details on how you want users to call. This must match the domain name you provided step one.
Now that you have a Virtual Reception setup, users can dial this first (URI or IP Address) and then enter the Meeting ID.
Step 6 - Creating a Hangouts Meet Invite
Now that we have everything in place, you can head over to your Google Calendar and create a new invite.
One the new meeting invite, when you add Guest, it will automatically make the meeting a Hangouts Meet. So just fill in the normal things of date/time/description etc and click Save and send the invite to your guests.
You will now see the meeting invite in your calendar. You have the option to join via your browser or by phone. You will have the More Joining Options button to press. Click on this and it will open a new page.
When the new page opens, you will see all the different country dial in numbers available to you (if you have Enterprise). Just click on Third-party systems
Non Enterprise users, so just the Basic account will see this
On the Third-party systems you will now see the details how to connect in with standards based video conferencing systems and Skype for Business users such as Windows/Mac clients, Surface Hubs and Skype Room Systems.
Step 7 - The Hangouts Meet meeting
So open the hyperlink and start the meeting in your usual way with your browser.
Once you have joined the meeting, you will have the option to see the extra dialling instructions again by clicking on bottom left and then More numbers.
To join with a Third-party system, I am just going to copy/paste the Skype for Business details into my client to connect
Once I start calling in via a third-party, depending on whether you have used a trusted or untrusted access token, you make get a pop up in the Hangouts Meet window like below. To admit the third party to the meeting just select Admit.
I've also connected in a video conferencing system, so now we are three people in the call. You can then share content to/from any platform. You can also connect to the Hangouts Meet meeting with just presentation too, which can be useful in some scenarios.
If then switch to Chat, guess what....it works both ways. Just note that it is not possible to see which user in Hangouts Meet sent the message, just that it was from the Hangouts side.
Here is the view from the Pexip Management node. You can see the individual gateway calls in the middle and then on the right hand side you can see the mix of protocols in use, such as SIP, Hangouts and Skype for Business.
And here is an individual call leg
Step 8 - Theming your Pexip Deployment
You must apply a customised theme to the Virtual Reception and Call Routing Rules that are used to route callers into Hangouts Meet, otherwise the indicators for recording will not be correct, and the participants can get a confusing user experience.
For example, the theme could change the appearance of the Virtual Reception splash screen. It could also change the in-conference indicators, such as the streaming indicator, to provide gatewayed participants with alerts similar to those seen by native Hangouts Meet participants when a Hangouts Meet call is recorded or streamed.
To upload and apply the theme, head to Service Configuration > Themes
Here you will see the default themes, so just click Add Theme
Now lets add a New theme and enter the details as highlighted below and click Save. Then wait one minute for Pexip to replicate these changes
Now do another call to ensure all is good with your new theme. You won't see the "clouds any more, they were be a sunset". Full details on theming can be found here.
That's it, you have a full deployment with Pexip and interoperability to third party systems.