Category: Skype for Business

February 22nd, 2019 by Skype for Business News Aggregator

Learn the migration strategies your organization needs beyond lift and shift with our webinar, Out-Hustle The Hassle: Office 365 Migration Prep and Planning

This is part three of our FED UP series. Check out our previous posts:

Hi everyone! Roxy from Microsoft here, back again with another FEDUp video. Dux and I are joined by a special guest, Paul Olenick, who is AvePoint’s Director of Product Strategy and in-house records management expert!

In this episode, the three of us talk about the NARA mandate and how government organizations need to be cognizant of how they are managing their records. We cover important dates government agencies need to be aware of. Not only that, but we also provide answers to common questions we see from customers on how they should be managing, storing, and archiving their records and how to best prepare for NARA requirements. Check out the video below for all the details!

Want to stay up to date on the latest NARA news? Be sure to subscribe to our blog!

Posted in Skype for Business

February 22nd, 2019 by Skype for Business News Aggregator
By Robert Vis
As “new, now, next” becomes the norm, technical teams are looking to bring more people into developer roles and expand skill sets.

Posted in Skype for Business

February 22nd, 2019 by Skype for Business News Aggregator

I’m excited to let you know that when Microsoft Ignite | The Tour comes to London next week, I’m going to be delivering some sessions:

BRK3605 – Building your first Microsoft Teams application – a guide for non-developers

THR3243 – 15 minutes of code – creating a Teams IVR Bot

THR2540 – Enable Service Updates Using Connectors in Teams

If you’re going to be at the event, then ping me on Twitter and lets meet up for a chat, I’d love to hear about what you’re doing with Teams and the developer platform; whether that’s new bots you’ve built, a compose extension to surface data better, or something else!

Posted in Skype for Business

February 22nd, 2019 by Skype for Business News Aggregator
I've been asked by Experts Live to do a presentation at an event in my own hometown. So I'm joining fellow MVP's Ståle Hansen, Olav Tvedt and Alexander S. Rødland at Experts Live Café Bergen I'll be talking about Interop, Meetings and how to enable phone capabilities with Norwegian providers in Microsoft Teams. It is not often these kind of events takes place in Bergen, so if you're

Posted in Skype for Business

February 22nd, 2019 by Skype for Business News Aggregator

One of the coolest parts of the Office 365 Teams Admin Centre is the built in Devices management portal.

From here, you can view and control your deployed Microsoft Teams handsets, create and apply policies, firmware updates, and even reboot them.

The Dashboard

To access the dashboard, sign in to the Office 365 Portal, then choose Teams under Admin Centres.

From the menu on the left, choose Devices > Manage Devices

The dashboard will show you all Microsoft Teams devices that are registered to your Office 365 tenant.

At a quick glance, you can see:

  • Device Name
  • Manufacturer
  • Device Model
  • The last user who signed in
  • The current status (Offline, Online)
  • Any available updates
  • The last reported online time

This gives you a great snapshot of how healthy your Teams devices are looking right now.

A quick note too that only Microsoft Teams devices will appear. Your Skype for Business handsets (such as VVX500) won’t appear.

Device Information

Clicking a device’s name will take you to the device information page, that contains a little further info, including the devices serial number

User Information

To view user information about a device, click the username in the device list:

Firmware updates

Managing firmware updates for all Teams registered devices is super simple. You can view any new updates from the device management portal, and then with one click, install them.

From initial testing, once you have clicked install, the handset will download and begin installing the update as soon as it goes idle. Keep this in mind if you’re doing this throughout the day.

Rebooting handsets

Alright, i’ll admit that I LOVE this simple feature. How many times have you had to instruct a user to unplug and replug in a handset to reboot it? Well, now you can initiate a reboot right from within the portal!

Overall, the device management portal within the Teams Admin Centre is a really great addition, and a super simple way of managing your device deployment. What features would you like to see added?

Posted in Skype for Business

February 21st, 2019 by Skype for Business News Aggregator


This week I had a customer that moved from Skype for Business on-premises to Skype Online. He was used to be able to choose default federation policy for his users, and if a user needed federation he added them to an AD group.  The problem in Skype Online is that you cant choose what ExternalAccessPolicy that is default. In my tenant the default one is FederationAndPICDefault. The customer wanted it to be NoFederationAndPIC.

So what could about that? I created an AD group called AllowFederationSkypeOnline. Then I created a script that finds every Skype Online user that is not a member of this group, and give them the ExternalAccessPolicy NoFederationAndPIC if they have not been assigned this one already. Then the script gives every member of the group the policy FederationAndPICDefault policy if they have not been assigned this policy.

Now you just need to set up this as a scheduled task at a suitable interval.

#"password" | ConvertTo-SecureString -AsPlainText -Force | ConvertFrom-SecureString | Out-File "C:Scriptspassword.txt"

$Credentials = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "", (Get-Content "C:Scriptspassword.txt" | ConvertTo-SecureString)
$sfb = New-CsOnlineSession -Credential $Credentials
Import-PSSession $sfb

$results = @()
$users = Get-ADUser  -Properties memberof -SearchBase "OU=Users,DC=Contoso,DC=com" -Filter *
foreach ($user in $users) {
    $groups = $user.memberof -join ';'
    $results += New-Object psObject -Property @{'User'=$;'Groups'= $groups;'UPN'=$user.UserPrincipalName}
$results2 = $results | Where-Object { $_.groups -notmatch 'AllowFederationSkypeOnline' } | Select-Object user,upn

$UsersNoFederation = $results2.UPN | Get-CsOnlineUser | Select-Object UserPrincipalName,ExternalAccessPolicy
foreach($UserNoFederation in $UsersNoFederation){
If($UserNoFederation.ExternalAccessPolicy -notmatch 'NoFederationAndPIC') {
    Grant-CsExternalAccessPolicy -Identity $UserNoFederation.UserPrincipalName -PolicyName 'NoFederationAndPIC'

$FederatedUser = Get-ADGroupMember 'Skype-AllowedFederation' | Get-ADUser | Select-Object userprincipalname
$FederatedUsersSkype = $FederatedUser.UserPrincipalName | Get-CsOnlineUser

foreach($FederatedUserSkype in $FederatedUsersSkype){
If($FederatedUserSkype.ExternalAccessPolicy -notmatch 'FederationAndPICDefault') {

    Grant-CsExternalAccessPolicy -Identity $FederatedUserSkype.userprincipalname -PolicyName 'FederationAndPICDefault'

Posted in Skype for Business

February 21st, 2019 by Skype for Business News Aggregator

Learn the migration strategies your organizations need beyond lift and shift with our webinar, Out Hustle The Hassle: Office 365 Migration Prep and Planning

Catch up with our other #ChewNChat posts below!

Tuna tartare was invented in 1984 by Chef Tachibe in Beverly Hills, CA. As the executive chef, he had to improvise as some customers were not fans of the more common, at the time, steak tartare. As the popularity of sushi and raw tuna grew, so did the dish we now all enjoy. I had the pleasure of enjoying this dish with my good friend and community champion Patrick Guimonet on his birthday! Happy birthday, Patrick!

And just like tuna tartare came about from improvising on the spot, you can also learn how to open-source React RSS Reader in SharePoint by checking out a recent video from one our community champions, Eric Overfield! And if you’re in the UK, be sure to check out our workshop on how to increase adoption of Microsoft Teams in your own organization!

Want to stay up to date with the latest news in the industry? Subscribe to our blog for weekly updates!

Posted in Skype for Business

February 21st, 2019 by Skype for Business News Aggregator
As part of my job at Nectar Corp, I'm always looking at ways to get call detail information from various Microsoft-based UC telephony components. It's easy to get a wealth of detail from an on-prem deployment of Skype for Business, using either direct access to the SfB monitoring databases (for historical info) or via the Skype for Business SDN dialog listeners (for realtime call data).  As mentioned in my recent blog post, the same cannot be said for Office 365 UC workloads such as SfB Online and Teams.

Nectar has a tool that relies on knowing when a call starts and stops in realtime so we can gather information from various network components as the call is happening. Nectar uses the SfB SDN interface for this realtime info. Since both SfBO and Teams lack ANY sort of call data API, we have to resort to other methods to learn about realtime calls.

A Nectar customer has deployed several Skype for Business Cloud Connector Edition (CCE) instances to provide on-prem PSTN call routing for SfB Online users. CCE is the precursor of Teams Direct Routing, and it does essentially the same thing but in a WAAAAAAY more complex manner. It consists of several pre-packaged VMs running a vastly slimmed down Skype for Business environment.

We were in discussions with the customer to see if there was any way we could get realtime call info from the CCE instances, by installing the Microsoft SDN Dialog Listener on any of the CCE VMs. Nobody seemed to know for certain, so I elected to setup a CCE instance of my own to run some tests. The question I was trying to answer was:

Can you get call data out of a CCE instance using the MS SDN Listener service??? 

TL;DR:  No.

I had built myself a fancy new work PC at home that I figured would be ideal for this test. I put in 32GB of RAM so I could spin up VMs as needed for my tests, and this would be an excellent test OR SO I THOUGHT!

My first hurdle was that I needed a virtual machine host that would host the VMs required for CCE. In other words, I needed to run VMs from within a VM.
Just like the movie, except much more boring.
CCE only supports Windows 2012 R2 as the VM host OS, so I started with that as my VM host for my VMs, but it blocked me from installing the Hyper-V components, since it was already a VM. A bit of research showed that I could use Windows Server 2019, which had no such limitation. I spun up my Hyper-V host VM, gave it 24 GB of RAM, all the processor cores I had, and off I went.

...OR SO I THOUGHT (AGAIN). I ran into issues right off the bat when installing the CCE components, where most of the CCE PowerShell commands were available. Thanks to a workaround from Shawn Harry, I was soon off to the races and installing CCE.

...BUT NO! FOILED AGAIN!!! There are a number of steps to deploy a CCE instance, most of which require running various CCE PowerShell commands. One of these commands performed a hardware check to make sure the Hyper-V host had enough resources to run the required VMs. I was rudely informed that my super-awesome, brand-new workstation PC did not have enough memory, processor cores or disk space to run CCE.

Keanu is sad, and so am I
Time to implement my hacker skilz.

The big red, failure message that PowerShell spit out at me helpfully included the path to the script that did the hardware check:

C:Program FilesWindowsPowerShellModulesCloudConnectorInternalMtCommon.ps1

A quick review of that script, and a few edits to the $logicalProcessorsCount, TotalPhysicalMemory, FreePhysicalMemory, and FreeDiskSize variables and the script was convinced that I had a super-server with 999999999999 MB of memory, diskspace and processor cores.

With a few more tweaks here and there, I was finally able to get a full Skype for Business Cloud Connector Edition instance running in my modest home lab. Since the CCE environment consists of several standard Windows VMs, I was able to login to them and attempt to install the SDN Listener on what I hoped would be possible candidates: the CMS or the Mediation VM.

Neither of those were running as a full front-end server, but I still held out hope. The CMS VM was running the Centralized Logging Service Agent, File Transfer Agent and Master/Replica Replicator Agents. The Mediation VM was running the Centralized Logging Service Agent, Mediation service and Replica Replicator Agents.

I attempted to install the SDN Listener on both those VMs and got the following message:

And there you go. The answer to a question that nobody else was looking for. No, you can't run SDN on any CCE VM role.

Hope you're happy @ucomsgeek.

Posted in Skype for Business

February 21st, 2019 by Skype for Business News Aggregator
If you are a cool kid you have an iPhone X, or at least an iPhone, and if you are trying to be really cool of course you play Pokemon GO like I do. When doing so battery life is a problem. Unlike my good old Nokia 8210 which could go on for days on one charge you will find yourself constantly changing and always carrying a large extra battery pack.

Now, there are some tricks to get more battery life out of your iPhone, such as not using it, killing background activity and notifications, etc., but a so called "dark mode" can be a major power saver: How to squeeze more battery life out of iPhone X

Therefore it is really exciting that Microsoft Teams on iOS now supports a Dark Theme, since version 1.0.66.

Version 1.0.66 where the darkness begins...
So, how do you turn it on?

1. Click the three bars in the top left of the application to expose your profile and click Settings.

2. Click General.

3. Flip the switch to turn on "Dark Theme" and close the application.

4. Next time you start your Teams client it will look much cooler (and preserve battery life)

If you want to use the dark theme even on your desktop you find a nice guide here.

I would also like to point out that this is an idea coming from users of the Microsoft Teams mobile app through Uservoice. Please continue to send in new ideas and vote on Uservoice to make Microsoft Teams even better in the future.

Posted in Skype for Business

February 21st, 2019 by Skype for Business News Aggregator

It’s a fairly common request, from another application, you want to be able to click a button and start a chat with a specific person. Perhaps you want to provide useful contact links to the account manager in your Sales application or integrate your HR intranet to make it easy for people to contact each other.

In Skype for Business, the way to do this was to use a sip address in an anchor link – something like <a href=””>User</a>.  This would open the chat window, from which you could either type an IM or start a call.

It turns out there is a way to do this in Teams. Thanks to Jayesh Gandhi in the Microsoft Tech Community for finding this out, I was not aware of it.

You can construct an anchor tag to jump directly to a Teams chat with a user: <a href=””>Chat with User</a>.

You can even add multiple people to start a group conversation by separating the users with a comma: <a href=”,”>Chat with Group</a>.

Even cooler (when adding links in other applications) you can pre-select the message to be sent and the title of the group conversation. The message is added to the conversation input box ready to be sent:

<a href=”, these widgets&message=Please order more widgets”>Order more</a>




These are great features for developers looking to add basic Teams messaging functionality into existing applications. Thanks again to Jayesh for bringing this to my attention!

Posted in Skype for Business