Skype for Business inbound Ringtone
29/09/17 16:56 Filed in: Skype
No ringtone for callers from certain regions/carriers.
I ran in to an interesting problem a few weeks ago with regards to callers to a Skype for Business platform. Some users were not getting the 'ring ring' when dialling in. I.e. The ringtone or ringback as it's often called.
What made it harder to locate was the fact that it wasn't all users, and it wasn't all of the time. I.e. It seemed random across a user DDI range, and for different callers. It took a lot of logging and reading.
Here's the thing. I never did spot a real instance of it actually happening. If you can't see an event how do you trace it?
By a complete fluke I was using my Skype consumer client - and I was logged in to my Australian account, rather than my normal day to day. Guess what - no ringback tone. The experience is dial - hear nothing for a while - person answers.
This was predictable and reproducible. Also found the issue dialling in from the US.
This explains the randomness of the event, and made me feel happier about my log-reading skills.
So, the scenario is a SIP trunk terminating on a Sonus SBC, and a SIP trunk from the Sonus SBC to a Skype for Business mediation server.
Investigating a failed call and one that worked however yielded exactly the same call behaviour. You see the 100 trying, the 183 with SDP…and the SIP conversation happens exactly the same way. So it can't be our end then, right?
So off to the carrier I go with a list of stuff that isn't happening. They're still investigating.
In the meantime, there is a way to force ringback on the carrier - I.e. Make sure the carrier is providing it. It's fixed the issue for us in that all users now always get the ringtone/ringback or whatever you want to call it. So I thought I'd share how to do it - some people may find it useful.
Essentially we're going to change the 183/SDP messages to the carrier to 180 ringing. You can see the full list of SIP response codes here.
So, how do we do it? Well, the Sonus can apply message translation rules to routes - so you can change one SIP message to another for incoming calls. In our case, we're going to change 183's to 180.
Let's have a look at how this was done.
The first thing we're going to do, is to define the translation in the 'Telephony Mapping Tables'. You get to this in the 'Settings' part of the Sonus configuration:
Expand the 'Message Translations' section and add in a translation. In my configuration, the translation looks like this:
The important bit is the incoming message type, and the outgoing message type. We're going to convert 183 Session Progress to 180 Ringing.
Once you have set up the translation, you need to find your incoming route.
We have multiple SIP trunks on this one, from two different providers. Select the one from your provider, and edit it. In there you'll see the option to select your message translation. Click on the picture to see a larger version.
Once you apply it, you should see a change in behaviour on the inbound calls. An example from before the change is shown below - you'll see the 183 conversation.
After you implement the change, you'll see we send the 180 Ringing. This is causing the service provider to deliver the ringback to the calling party.
Now it could be that the service provide will nail why they're having this behaviour when being called by certain countries - at which point I can take this configuration off.
If you're having issues with no ringback however, this brute force approach to asking your provider to deliver may give you a solution.