Microsoft Teams and IOT controled Robotics — The BOT

Part 2 of 4 series into Teams Controlled Robotics

Part 1

Microsoft Teams is an excellent collaboration tool with person to person communication workloads like, Messaging, Voice and Video collaboration. Microsoft Teams can also use Microsoft AI and cognitive services to collaborate with machines and devices. The Azure suite of services allows person to machine control, remote diagnostics and telemetrics analytics of internet connected devices.

To demonstrate how Microsoft Teams can control remote robotics, I have created a fun project that allows Teams to manage a RoboRaptor through Teams natural language messages.… [Keep reading] “Microsoft Teams and IOT controled Robotics — The BOT”

Skype for Business Standard Edition – Unable to failback once DR is invoked

During the process of “Invoke-CsPoolFailover” the process changes the “PoolState” of the primary server from Active to FailedOver state, if this is not addressed after the restoration of the primary server the failback will not work.

Figure 1: Primary Server FailedOver State

In order to failback the pool back to the primary server the “PoolState” will need to be set back to Active. This can be done by running the following command:

PS C:\Set-CsRegistrarConfiguration -Identity “”[Keep reading] “Skype for Business Standard Edition – Unable to failback once DR is invoked”

DR Failover for Skype for Business Standard Edition

The article takes you through step by step of carrying out both health check and invoking disaster recovery (DR) a standard edition environment. The diagram below shows the layout of the environment where the DR was carried out on:

Figure 1 – Environment Overview

Before proceeding to test DR you need to make sure the appropriate registrar information is available/configured in the environment otherwise you will get the following error during Pool Failover process:

Please check that the pool <Prod_S4B> is healthy as conditions such as high CPU, low available memory
 or any disabled services can delay (or in some cases result in unsuccessful) fail over operations.… [Keep reading] “DR Failover for Skype for Business Standard Edition”

Configure SBC to forward calls out from the original SG where incoming call comes in

Issue Description:

Recently I did a project of adding additional Telstra SIP trunks into Sonus production environment. The customer Sonus environment has primary SIP trunks with another SIP provider. They are going to use the new Telstra SIP trunks set up for new established small office. After the new trunk set up. I had one issue: when the calls were forwarded from SFB clients to users’ mobile phones, the A party number didn’t Pass through, instead, the number shown on mobile phones is the pilot number of the primary SIP trunk.… [Keep reading] “Configure SBC to forward calls out from the original SG where incoming call comes in”

Skype for Business Mac Client – General Availability

I currently run a MacBook Pro for my daily driver, it’s the ‘spice of life’ I say! A MacBook Pro, a Google Pixel phone and the Microsoft Office 365 collaboration suite is what makes up my toolset. Now more then ever collaboration and data is becoming more accessible via a device flavour that you prefer. Running Mac OSX while working with the Microsoft stack presents two issues I’ve had to endure to this point as an end user and adminstrator:

  1. I want to leverage the full capability of Kloud’s Skype for Business platform while in OSX
  2. I want to execute PowerShell CLI natively in OSX

I’ve marked October 26th in my calendar as the day where I get to put a line through one of my wish list items.… [Keep reading] “Skype for Business Mac Client – General Availability”

Querying Skype for Business Online using UCWA and PowerShell


Recently a colleague from a previous employer of mine pinged me about connecting to Skype for Business using the Unified Communications Web API (UCWA). UCWA is the REST API that comes with Skype for Business 2015 and exposes Instant Messaging and Presence capabilities. Initially UCWA was only for the OnPremise release of S4B, but this has recently been extended to Skype for Business Online.

The detail on leveraging the UCWA is all here however when it comes to actually doing it, it gets a little daunting.… [Keep reading] “Querying Skype for Business Online using UCWA and PowerShell”

Change ring tone behaviour with a Sonus SBC and SIP trunk provider

I recently had an issue with calls originating from a SIP trunk provider to Skype for Business Server(s) that needed to change who supplied the ring back tone. This would have been a much simpler process with ISDN, but SIP trunks are a much more involved PSTN connection. If you’re having problems with ring back this should help provide a quick troubleshooting step to expose a problem in this area. This article specifically describes what to change in Skype for Business and Sonus 1000/2000 SBC to get the desired outcome with a SIP trunk.… [Keep reading] “Change ring tone behaviour with a Sonus SBC and SIP trunk provider”

Provisioning Users for Lync / Skype for Business with FIM / MIM using the Granfeldt PowerShell Management Agent

Forefront / Microsoft Identity Manager contains numerous Management Agents (MA’s) out of the box. However, a MA for Lync / Skype for Business isn’t one of them.

Over the years I’ve accomplished lifecycle management for users in Lync via FIM using methods that aren’t strictly best practice / supported (e.g. calling PowerShell from within a Management Agent Extension to enable/disable/manage policies). Whilst this functionally works the ability for end customers to maintain the implementation for changes is limited.… [Keep reading] “Provisioning Users for Lync / Skype for Business with FIM / MIM using the Granfeldt PowerShell Management Agent”

Block Inbound/Outbound Calls on Sonus SBC 1000/2000

At Kloud we had an interesting chat amongst the UC group on how to best implement call blocking/screening on a Sonus Session Border Controller 1000/2000. We proceeded to trial various methods including a well documented ‘Action Set’ scenario, which proved to be unreliable in our implementation. It was from this we looked to a simpler method that I will share with you in this article.

The process to block a call will be to use a Call Route Type with ‘deny’ action as the destination type, rather than the standard process of the destination being a FXS, FXO or SIP signalling group.… [Keep reading] “Block Inbound/Outbound Calls on Sonus SBC 1000/2000”

Federated User – Presence Unknown

Here at Kloud we have just been busy updating our Skype for Business Public Certificate before it expired. Our SAN certificate provided by GoDaddy is used on our Edge Server and Reverse Proxy for all external communication to be encrypted with TLS or HTTPS.

After updating our certificate and restarting services to make the certificate take effect, we started to get some feedback from Kloudies (Kloud Employees) of federated contacts showing up with ‘Presence Unknown’ in their contacts list.… [Keep reading] “Federated User – Presence Unknown”