Voxout it is the trunk service that Voxbone offers to make outgoing calls and emergency ones. I must say it is tricky to configure it, the PDF they give as a tech guide is next to useless and so far, if you google, you won't find any example of FreeSWITCH gateway configuration with Voxout. I will talk about how I did it.
Reading the Voxbone PDF "Interconnection Guide"
And I put it between quotes because this document is a joke. However, if you read between lines you will find some useful information:
- The SIP server you will need to point is given by voxout.voxbone.com
- The RTP flow comes from the network 18.104.22.168/20
- The From header should be in E164 format, and it must be from one of their DID's. The document doesn't say anything about it (I learned the hard way), but you can only send calls using from numbers of their own.
- The To header must be in the international format, including the + sign. The document also specifies that if you are using their emergency call, you should use the local format and for toll-free numbers the international format or the national (no country code).
- DTMF should be RFC2833. You can set this in the SIP profile or in the dialplan.
- No comfort noise
- Allowed codecs are 711a, 711u, 729 and 723. You can set this in the gateway definition or in the dialplan.
- You must authenticate if you want to pass traffic from the public network (not VPN, not dedicated link). And because we are all about cloud PBX'es, this article will assume you are using the public network.
Configuring the Gateway
Here it comes the tricky thing. The SBC server at voxout.voxbone.com doesn't support the REGISTER. The Interconnection Guide shows that the server will require that all the INVITES come authenticated, so configuring the gateway in the FreeSWITCH is a little ticket. Lucky for all, there is a way.
<param name="username" value="SIP_USER"/>
<param name="auth-username" value="SIP_USER"/>
<param name="password" value="SIP_PASSWORD"/>
<param name="from-user" value="SIP_USER"/>
<param name="proxy" value="voxout.voxbone.com"/>
<param name="expire-seconds" value="800"/>
<param name="register" value="false"/>
<param name="register-transport" value="udp"/>
<param name="retry-seconds" value="30"/>
<param name="context" value="public"/>
<param name="caller-id-in-from" value="true"/>
<param name="extension-in-contact" value="true"/>
<variable name="sip_cid_type" value="rpid"/>
After that, you can configure your dialplans (outbound routes) as always).
Changing the Caller ID (aka Caller ID Spoofing)
By default, Voxbone won't allow it. You will need to ask them to enable this feature. After that, you will need to add the following line in your outbound route:
Where 99999999999 is a valid Voxbone DID. Remember they use the DID's to link the billing so you may want to use one specific DID per customer. The effective_caller_id_number variable can now have a "false" DID number.
Good luck!blog comments powered by Disqus