An IMS Analysis Challenge – Find the answers to the questions through analysis of PCAPs.
Tag Archives: IMS
Improving WiFi Calling quality for WiFi Operators
Profiling ePDG addresses to provide a better experience for Voice over WiFi users on your WiFi network.
Verify Android Signing Certificate for ARA-M Carrier Privileges in App
Calculating SHA-1 Digest of an Android App to be used on the SIM to grant Carrier Privileges
Authenticating Fixed Line Subscribers into IMS
A look at how PyHSS handles fixed line subscribers attaching to an IMS Network
IMS iFC – SPT Session Cases
Valid Session Cases for use in an IMS iFC
SQN Sync in IMS Auth
A look at how the SQN resync procedure is performed in the IMS Authentication flows
Failures in cobbling together a USSD Gateway
Adventures in setting up a non-working USSD Gateway for IMS
SMS-over-IP Message Efficiency – K
How much overhead is used to send the message “K” back to an SMS?
Diameter Routing Agents – Part 5 – AVP Transformations with FreeDiameter and Python in rt_pyform
Using FreeDiameter, Python and our newly released “rt_pyform” module to rewrite AVPs in your FreeDiameter based Diameter Routing Agent.
Diameter Routing Agents – Part 5 – AVP Transformations
A look at why we’d want to apply translations to Diameter AVPs inside a Diameter Routing Agent
Diameter Routing Agents – Part 4 – Advanced FreeDiameter DRA Routing
Looking at overriding the default Diameter routing logic in FreeDiameter with rt_default
Diameter Routing Agents (Why you need them, and how to build them) – Part 2 – Routing
Diving back into the world of Diameter Routing Agents with a look at the logic that defines how a DRA routes traffic from one place to another.
Kamailio I-CSCF – SRV Lookup Behaviour
Recently I had a strange issue I thought I’d share. Using Kamailio as an Interrogating-CSCF, Kamailio was getting the S-CSCF details from the User-Authorization-Answer’s “Server-Name” (602) AVP. The value was set to: sip:scscf.mnc001.mcc001.3gppnetwork.org:5060 But the I-CSCF was only looking up A-Records for scscf.mnc001.mcc001.3gppnetwork.org, not using DNS-SRV. The problem? The Server-Name I had configured as a … Continue reading Kamailio I-CSCF – SRV Lookup Behaviour
Sending SMS with an alphanumeric String as the Source
If you’ve ever received an SMS from your operator, and the sender was the Operator name for example, you may be left wondering how it’s done. In IMS you’d think this could be quite simple – You’d set the From header to be the name rather than the MSISDN, but for most SMSoIP deployments, the … Continue reading Sending SMS with an alphanumeric String as the Source
FreeSWITCH – Incompatible Destination
A quick look at a possible cause for “INCOMPATIBLE DESTINATION” errors in FreeSWITCH.
Kamailio, IMS & DNS Headches
A quick post on a lesson that took me a while to learn with DNS, Kamailio and IMS.
FreeSWITCH, Kamailio & IMS Extensions
Recently I’ve been doing some work with FreeSWITCH as an IMS Conference Factory, I’ve written a bit about it before in this post on using FreeSWITCH with the AMR codec.
Pretty early on in my testing I faced a problem with subsequent in-dialog responses, like re-INVITEs used for holding the calls.
Every subsequent message, was getting a “420 Bad Extension” response from FreeSWITCH.


So what didn’t it like and why was FreeSWITCH generating 420 Bad Extension Responses to these subsequent messages?
Well, the “Extensions” FreeSWITCH is referring to are not extensions in the Telephony sense – as in related to the Dialplan, like an Extension Number to identify a user, but rather the Extensions (as in expansions) to the SIP Protocol introduced for IMS.
The re-INVITE contains a Require header with sec-agree which is a SIP Extension introduced for IMS, which FreeSWITCH does not have support for, and the re-INVITE says is required to support the call (Not true in this case).
Using a Kamailio based S-CSCF means it is easy to strip these Headers before forwarding the requests onto the Application Server, which is what I’ve done, and bingo, no more errors!
The Surprisingly Complicated World of SMS: Apple iPhone MT SMS
Quirks and gotchas of working with SMS on IMS on iPhones.
Lifecycle of a Dedicated Bearer – From Flow-Description AVP to Traffic Flow Templates
A look at how Dedicated Bearers get established for VoLTE.
Basics of EPC/LTE Online Charging (OCS)
A glimpse into the complexities of prepaid billing (Online Charging) Diameter based networks.