Introduction

TelecomsXChange (TCXC) is a wholesale communication service provider platform that doesn’t require SIP registration to send traffic. However, two of their enterprise customers had a change in their infrastructure and now need SIP registration to send traffic. TCXC had to find a way to serve their customers without adding a SIP Registrar to the platform due to performance and security concerns.

Jambonz and TCXC integration:

TCXC chose to move SIP registration to the edge using Jambonz, an open-source CPaaS platform. Jambonz was selected because it allows developers to choose their own carrier and can easily integrate with any SIP/SMPP carriers.

How TCXC Built a SIP Registrar Service at the Edge using Jambonz

To make this idea work, TCXC had a short list of needs:

  1. Registrar Authentication: TCXC created a new sub-domain and pointed it to Jambonz in their DNS records. When a SIP registration request comes, Jambonz calls a SIP Registration web-hook URL to check if the user entered the proper username and password. If the credentials are correct, the SIP client will register successfully.
  2. Dial Plan Rules: TCXC needed special caller-id rules for their customers. Dave Horton, the Jambonz founder, quickly wrote a web-hook for TCXC to apply these rules whenever a call is made.
  3. Outbound Calling: TCXC routed calls to TCXC SIP Providers using different credentials for each customer. They created a different buyer account for each customer on the TCXC platform with unique SIP Digest Authentication for each one to differentiate billing and routing.

Building a SIP Registrar at the Edge with Jambonz

The below code few lines of code are responsible for handling all the business rules that we needed:


{
  "register.telecomsxchange.com": {
    "AcmeInc": {
      "password": "sip-pass",
      "techPrefix": "444242#",
      "outboundAuth": {
        "username": "siptrunk1-username",
        "password": "siptrunk1-password"
      },
      "callerId": {
       "default":"+18009992222",
        "patterns": [;
          { "match":"^966", "callerId": "0598888833" },
          { "match":"^971", "callerId": "045677777" }
        ]
      }
    },
    "JaneDoe": {
      "password": "sip-password",
      "techPrefix": "444924#", 
      "outboundAuth": {
        "username": "siptrunk2-username",
        "password": "siptrunk2-password
      },
      "callerId": "+12127771222"
    }
  }
}

Full Web Hook App Source Code available here

Conclusion

To meet our customers’ needs without building a SIP registrar in our platform, we decided to move it to the edge as a micro-service. With Jambonz’s help and their cloud-native platform running on AWS, we were able to quickly build a SIP registrar service using hosted services and web-hooks. This solution not only satisfied our existing customers but also allowed us to offer SIP registrar services to new customers without worrying about scaling up. Jambonz’s auto-scaling and Geo-distribution capabilities made it easy for us to keep our customers happy and continue to provide excellent service.