November 9th, 2018 | Tags:

Just a brief update, I was asked to put together a RealConnect for Microsoft Teams provisioning walk-thru. This includes some recent updates to the Polycom provisioning Web App.

October 1st, 2018 | Tags:

For those not able to join the session Sri and I presented at Ignite (from session feedback, a lot of people were turned away), the video is now live on YouTube

 

September 24th, 2018 | Tags:

The dulcet screaming from youngsters, toddlers running up and down my airplane’s aisles and folks donning their Mickey-branded attire can only mean one thing – I’m Microsoft Ignite bound.

This is the Microsoft IT Pro event of the year and a big deal for my Polycom/Plantronics colleagues.

This year I’ve been closely involved in building the next cloud iteration of RealConnect, specifically geared toward bringing a standards-based video room system or VTC into a Microsoft Teams meeting. Today the only room systems compatible with Microsoft Teams are exclusively Skype Room System v2 based – and this isn’t likely to change any time soon. Making this new service, RealConnect for Teams, extremely relevant for customers that don’t have Skype Room Systems in situ and can’t rip and replace their existing estate of VTCs.

For the past few months a number of large enterprises have been in beta and as of today this new Azure-based multi-tenanted solution is live and orderable!

Polycom has proven track record in providing Microsoft video interop solutions since, OCS, Lync, Skype for Business and now Teams, in fact they created the category for scheduled Microsoft video interop technology – I’m on of the patent holders 😉

Also Polycom is the only CVI service provider with a Microsoft supported interop solution for Skype for Business Online.

We learnt a lot of valuable lessons since we launched RealConnect for O365 (the cloud RealConnect Service for Skype for Business Online users).

  • Customers prefer concurrency-based licensing
    • Integration with Office 365 Admin Portal is no longer a requirement and replaced with PowerShell
  • Cloud Solution Provider (CSP) integration is optional for RealConnect for Teams (only required for RealConnect for O365)
    • Single license SKU for both Teams and SfBO (concurrent licenses shared across tenant)
  • Completely re-architected and purpose-built MCU infrastructure – designed for Teams and Azure multi-tenancy
  • First-party scheduling and support for Office 2013 or greater, Teams mobile etc.

With this service now live, Microsoft added some new PowerShell cmd-lets.

New-CsVideoInteropServiceProvider and CsTeamsVideoInteropServicePolicy

CsVideoInteropServiceProvider is used to define your provider, there will be additional providers (Pexip and Blue Jeans) so customers have the ability to create up to three providers. All of which can be active within a single tenant.

Users can then be granted via the CsTeamsVideoInteropServicePolicy with a video interop service policy, each user can have a single provider allocated. Once these are defined a user’s Teams meeting invitation will contain additional VTC co-ordinates (see below)

So let’s run through an example setup.

Step 1. Define video interop service provider. Note, items in bold are tenant-specific and issued when a tenant is provisioned

New-CsVideoInteropServiceProvider -Identity Polycom -AadApplicationIds a39192d4-7b9b-4c07-87d7-cbcd3fd97af7 -TenantKey “123456@t.plcm.vc” -InstructionUri https://dialin.plcm.vc/teams/?key=123456&conf={ConfId}

Step 2a. Enable CVI for a user. user@domain.onmicrosoft.com is an example user account

Grant-CsTeamsVideoInteropServicePolicy -PolicyName PolycomServiceProviderEnabled -Identity user@domain.onmicrosoft.com

Step 2b. Enable CVI for your entire tenant

Grant-CsTeamsVideoInteropServicePolicy -PolicyName PolycomServiceProviderEnabled

Step 3. (optional) Enable lobby bypass for VTCs

Set-CsVideoInteropServiceProvider -Identity Polycom -AllowAppGuestJoinsAsAuthenticated $true

Within 8 hours of policy assignment the users Teams invite will then have the new co-ordinates. That’s it!

For those attending Ignite this week there are a number of sessions that will go into more information in regard to Cloud Video Interoperability – one of which is delivered by yours truly 😊

BRK3122 – Connecting Microsoft Teams to third-party meeting room devices with Cloud Video Interop

Microsoft Teams and its partners are enabling integration with third-party meeting room systems with our high quality meeting experience. Learn more with demonstrations and resources that will set you on the path to a better meeting experience.

VIEW DETAILS

BRK3398 – Best practices for a successful Video and Voice deployment on Microsoft Teams

Hear best practices from Adam Jacobs, Microsoft MVP, around how to get the best voice, video and cloud video interoperability experiences for Microsoft Teams. Plus, learn how to seamlessly transition your existing Skype for Business devices into your Microsoft Teams environment. As part of this session, we walk through solution options, deployment recommendations, and even perform live test calls.

VIEW DETAILS

THR2342 – Microsoft Teams communication and collaboration made easy with Plantronics and Polycom

Ignite success with Microsoft Teams with voice and video solutions that meet all of your use cases. From personal spaces, to conference rooms to home offices, having the right integrated solutions will make or break your communication and collaboration experience. An increasingly mobile and collaborative workforce requires flexible, dynamic solutions and services to power the most human experiences. In this session, Jose Mateo, Polycom’s Microsoft Solution Architect and Jennifer Adams, Plantronics Solution Expert will showcase the newest Microsoft Teams voice and video solutions from Plantronics/Polycom and share best practices around driving adoption within your organization.

VIEW DETAILS

July 6th, 2018 | Tags:

It’s no secret that existing IP Phones have been granted an upgrade path to Microsoft Teams and I’m not talking about Android-based IP Phones (which have a native upgrade story), refer to a video I took back at Enterprise Connect of Polycom’s Trio 8800 running the native Teams IP Phone experience

3PIP interop was originally announced via a blog post from Thomas Binder and has since been updated multiple times, the key information that can be gleamed here is that a 3PIP phone registered to a Teams-enabled SfBO account will be capable of:

  • Incoming/outgoing P2P calls (when calling a Teams-enabled Skype for Business phone user)
  • In-call controls via UI (mute, hold/resume, transfer, end call)
  • Phone notifications about upcoming meetings
  • Calendar access and meeting details
  • One-click join for prescheduled meetings
  • Mute/unmute for conferences
  • List of meeting participants
  • Hold/resume for conferences
  • Hang up from conference calls
  • Ability for IP phones to add another Skype for Business user to an ongoing meeting by using the Add Participant feature

In this post I want to look at “One-click join for prescheduled meetings”. Firstly note prescheduled meetings, this is not “Meet Now” and it’s also only possible at the moment by leveraging the Outlook Microsoft Teams scheduling add-in.

So in my test I created a Teams meeting invite via Outlook and sent this to a user that was signed into a Polycom Trio (in this case the Trio was running in Skype for Business mode). Both users were running in “Islands” mode, more on these coexistence modes can be read here

Sure enough within the Trio calendar there was a “join” button, but how?

Let’s look at the invite, I decided to open the calendar invite and save the meeting as an HTML file. I then opened the file within my browser

 

There we see a Conference Uri, the “OnlineMeetingConfLink”, this URL clearly re-directs the endpoint to a Teams-specific meeting gateway which then allows the Trio to join the meeting (audio only)

Very cool!

June 20th, 2018 | Tags: ,

Just a quick post, I’m currently camped out at Microsoft and we’re executing the RealConnect on-premises certification for Skype for Business Server 2015. I had to rack my brains when I was asked about how we could:

  1. Remove a single VTC from a meeting via a Skype for Business client (without ejecting others)
  2. As an organizer end the meeting for all participants both Skype for Business users and VTCs

This can be enabled on the RealPresence Collaboration Server via a system flag and is the same flag used to enable the roster for individual VTC participants, specifically:

ENABLE_POLYCOM_EPS_IN_LYNC_ROSTER

This flag value can be specified as:

  1. ENABLE_CONSIDER_ORGANIZER  – enables VTCs within Skype for Business roster, conference organizers can disconnect individual VTCs and “ending the meeting” will result in both Skype for Business and VTCs being disconnected
  2. ENABLE_IGNORE_ORGANIZER  – enables VTCs within Skype for Business roster, conference organizers cannot disconnect individual VTCs and “ending the meeting” will not result VTCs being disconnected
  3. DISABLED – disables VTCs from being displayed within the roster (only cascaded link is shown)
  4. <BLANK> this will result in the same behavior as ENABLE_CONSIDER_ORGANIZER

It’s also documented that VTCs can also be prefixed to help identify them versus Skype for Business participants by updating the system flag POLYCOM_EPS_DISPLAY_NAME_PREFIX_IN_LYNC_ROSTER, I usually set this value to “VTC/” (without the quotes)

 

January 16th, 2018 | Tags:

As most folks are already aware Microsoft Teams has a dramatically different architecture to Skype for Business, gone is the baggage that came with on-premises technology – Teams is built for cloud first so with that comes a number of changes, one of which is the meeting URL.

The first thing that you will notice when you create a Teams meeting is that it is presented with percentage encoding, this is the first thing we’ll need to strip out or decode prior to deciphering the Teams meeting URL. Below is an example of a meeting generated via the Teams Outlook add-in.

Before:
https://teams.microsoft.com/l/meetup-join/19%3ameeting_MjM2NzczMmEtMmRiNi00MGNhLWI1ZTYtMjI0ODQxMjI4NGNk%40thread.skype/0?context=%7b%22Tid%22%3a%22d0880d3f-e6d1-4a41-9e81-b8fbcddf7b6c%22%2c%22Oid%22%3a%22803e81b2-4fa5-4a82-8d7a-ff38aa202977%22%7d

After:
https://teams.microsoft.com/l/meetup-join/19:meeting_MjM2NzczMmEtMmRiNi00MGNhLWI1ZTYtMjI0ODQxMjI4NGNk@thread.skype/0?context={“Tid”:”d0880d3f-e6d1-4a41-9e81-b8fbcddf7b6c”,”Oid”:”803e81b2-4fa5-4a82-8d7a-ff38aa202977″}
Various URL decoders are available, one such example here

Let’s next break this URL into four sections:

1: Thread ID
https://teams.microsoft.com/l/meetup-join/19:meeting_MjM2NzczMmEtMmRiNi00MGNhLWI1ZTYtMjI0ODQxMjI4NGNk@thread.skype

2: Thread Message ID
0

3: Tenant ID
“d0880d3f-e6d1-4a41-9e81-b8fbcddf7b6c”

4: Organizer ID
“803e81b2-4fa5-4a82-8d7a-ff38aa202977”

Now one of the things you’ll notice within the example above is that the thread message ID is not populated or zero, this is due to the fact that we created the meeting within Outlook, if we create a meeting within a Teams channel and also perform the same decoding outlined above the message ID is now populated: