SIP Provider Examples
From FreeSWITCH Wiki
Example Configuration
The following is a list of phone providers that have been successfully tested with the FreeSwitch software.
Please note that you should stick with adding these phone providers under the {FreeSWITCH installation}/conf/directory/default/ location. This means creating an xml file per specified phone provider under the conf/directory/default/ directory. Alternatively, you can also add the provider of your choice under the {FreeSWITCH installation}/conf/sip_profiles/ directory. The recommendation is to stick with using the "conf/directory/default" location. When in doubt copy the examples found in the source code under freeswitch/conf/directory/default/. They are named like ideasip.com.noload
When adding a provider to this list within the wiki please observe these guidelines:
- include a generic configuration
- no marketing information
- keep them alphabetically listed
AQL.com
Inbound and outbound works. UK provider.
File: conf/sip_profiles/external/aql.xml
<include>
<gateway name="aql.com">
<param name="username" value="61XXXX"/>
<param name="password" value="XXXXX"/>
<param name="realm" value="sip.aql.com"/>
<param name="register" value="true"/>
</gateway>
</include>
Belcentrale.nl
Incoming and Outgoing works
In conf/directory/default/ (or default) create a file belcentrale.xml:
<include>
<user id="31XXXXXXXXX">
<gateways>
<gateway name="belcentrale.nl">
<param name="username" value="31XXXXXXXXX"/>
<param name="realm" value="sip1.belcentrale.nl"/>
<param name="password" value="your_password"/>
<param name="register" value="true"/>
</gateway>
</gateways>
<params>
<param name="password" value="your_password"/>
</params>
</user>
</include>
then in sip_profiles/nat.xml (or default.xml when not using NAT) edit the setting for auth_calls and set to false: <param name="auth-calls" value="false"/>
DTMF does not seem to work with RFC2833. Had to set phone to use in-audio DTMF.
Broadvoice
Incoming and Outgoing works with UDP only
As of 12 February 2008 Broadvoice is not RFC 3261 compliant. Broadvoice does not support the usage of TCP within their SIP stack. This means you have to set the absolute_codec_string channel variable to PCMU.
- Broadvoice has a funny DNS situation, use the following fix. (Broadvoice kept on returning 403 Forbidden messages until I modified my DNS entries within the hosts file)
- This is according to the directions on broadvoice.com [1]
Ping the following, and choose the best time.
proxy.lax.broadvoice.com
proxy.dca.broadvoice.com
proxy.mia.broadvoice.com
proxy.atl.broadvoice.com
proxy.chi.broadvoice.com
proxy.bos.broadvoice.com
proxy.nyc.broadvoice.com
Modify your hosts (*nix world: /etc/hosts, windows: C:\Windows\System32\drivers\etc\hosts) file
with the correct IP address as follows:
{ip} sip.broadvoice.com
- Chris 11:24, 31 January 2008 (EST) It was brought up on the IRC channel, Broadvoice apparently isn't following the SIP specifications for MTU packet sizes.
- You will receive a 4xx error message unless you trim down the number of codecs contained in the UDP packets. By setting the absolute_codec_string channel variable to PCMU, you will play by their rules.
-
originate {absolute_codec_string=PCMU}sofia/gateway/broadvoice/12221231234 15551231234
- Edited within conf/directory/default/sip_broadvoice.xml
Add the user:
<user id="5555551234">
<gateways>
<gateway name="broadvoice">
<param name="username" value="5555551234"/>
<param name="realm" value="BroadWorks"/>
<param name="from-domain" value="sip.broadvoice.com"/>
<param name="password" value="hackmybroadvoiceaccount"/>
<param name="extension" value="5555551234"/>
<param name="proxy" value="sip.broadvoice.com"/>
<param name="expire-seconds" value="3600"/>
<param name="register" value="true"/>
<param name="retry_seconds" value="3600"/>
</gateway>
</gateways>
<params>
<param name="password" value="hackmybroadvoiceaccount"/>
</params>
</user>
Callcentric
Forwarded DID works
forward did like 18005558355@freeswitch.org
NOTE: works in revision 5834 but not in 7785
DIDX.NET
DID's work
forward did like 18005558355@freeswitch.org
Digisip
Incoming and Outgoing works. Digisip are one of the few SIP Providers that use both username and autherisation username when registering
- Create the file /conf/directory/default/digisip.xml
Add the user:
<include>
<gateway name="Digisip">
<param name="username" value="<digisip username>"/>
<param name="from-user" value="<digisip DID number>"/>
<param name="password" value="<digisip password>"/>
<param name="realm" value="proxy.digisip.net"/>
<param name="proxy" value="proxy.digisip.net"/>
<param name="register" value="true"/>
<param name="expire-seconds" value="3600"/>
</gateway>
</include>
Free World Dialup (FWD)
Incoming and Outgoing works
- Create the file /conf/directory/default/freeworld.xml
Add the user:
<user id="<fwd number>">
<gateways>
<gateway name="fwd">
<param name="username" value="<fwd number>"/>
<param name="from-domain" value="fwd.pulver.com"/>
<param name="password" value="<super secret password>"/>
<param name="extension" value="<fwd number>"/>
<param name="realm" value="fwd.pulver.com"/>
<param name="proxy" value="fwd.pulver.com"/>
<param name="expire-seconds" value="3600"/>
<param name="register" value="true"/>
<param name="retry_seconds" value="3600"/>
</gateway>
</gateways>
<params>
<param name="password" value="<super secret password>"/>
</params>
</user>
FreeDigits.net
DID works, haven't tried outgoing
Example: conf/sip_profiles/external/freedigits.xml
<include>
<gateway name="freedigits.net">
<param name="username" value="515*******"/>
<param name="password" value="********"/>
<param name="register-transport" value="udp"/>
<param name="caller-id-in-from" value="false"/>
</gateway>
</include>
The user name and password are the phone number and password you receive in your registration email.
I routed it to extension 1001 with this: conf/dialplan/freedigits.xml
<include>
<context name="public">
<extension name="freedigits.net">
<condition field="destination_number" expression="^515*******$">
<action application="transfer" data="1001 XML default"/>
</condition>
</extension>
</context>
</include>
The example on the wiki didn't include the <context> tag, and it wouldn't work until I added that.
Gafachi
Outgoing works well, I haven't tried a DID.
Example: /conf/sip_profiles/external/gafachi.xml
<include>
<gateway name="sip.gafachi.com">
<param name="username" value="<assigned username>"/>
<param name="password" value="<assigned password>"/>
<param name="register" value="true"/>
</gateway>
</include>
Note: the username / password are provided inside your account, not the ones you use to login to your account.
Note: Gafachi requires that you *must* provide a valid caller id with each request, or the call will fail with a 604 error. Something like:
[effective_caller_id_number=YOUR_NUMBER,effective_caller_id_name=YOUR_NAME]/sofia/gateway/sip.gafachi.com
Gizmo Project/sipphone.com
To prevent choppy audio problems from the network add the following to your 'config/sip_profiles/default.xml' settings section:
<param name="supress-cng" value="true"/>
If you originate to this network and get long pauses before the call connects then uncomment the following in the same section: (This is no longer needed as they have fixed their SRV Records)
<param name="bind-params" value="transport=udp"/>
Incoming error: nta: Via check: invalid transport "SIP/2.0/UDP" from 198.65.166.156:7070
Outgoing works
- Create the file /conf/directory/default/gizmo.xml
Add the user:
<user id="1747NXXXXXX">
<!-- Outbound Registrations Related to this user -->
<gateways>
<gateway name="gizmo">
<param name="username" value="1747NXXXXXX"/>
<param name="from-domain" value="proxy01.sipphone.com"/>
<param name="password" value="YOUR PASSWORD"/>
<!-- making it true will send caller ip instead which will result in 401. -->
<param name="caller-id-in-from" value="false"/>
<param name="proxy" value="proxy01.sipphone.com"/>
<param name="expire-seconds" value="3600"/>
<param name="register" value="true"/>
<param name="retry_seconds" value="3600"/>
</gateway>
</gateways>
<params>
<!-- omit password for authless registration -->
<param name="password" value="YOUR PASSWORD"/>
</params>
</user>
Inphonex
Works with incoming and outgoing SIP
Junction Networks
- [junctionnetworks.com]
- Works with incoming and outgoing SIP (Junction's PSTN Gateway service).
- Edited within conf/directory/default/junctionnetworks.xml
<gateways>
<gateway name="junctionnetworks">
<param name="username" value="YOUR JUNCTION USERNAME HERE"/>
<param name="realm" value="jnctn.net"/>
<param name="password" value="YOUR JUNCTION VOIP PASSWORD HERE"/>
<param name="extension" value="YOUR JUNCTION DID HERE"/>
<param name="proxy" value="sip.jnctn.net"/>
<param name="expire-seconds" value="3600"/>
</gateway>
</gateways>
Les.Net
- [les.net]
<include>
<gateway name="did.voip.les.net">
<param name="username" value="166xxxxxxx"/>
<param name="from-user" value="166xxxxxxx"/>
<param name="realm" value="did.voip.les.net"/>
<param name="password" value="secret"/>
</gateway>
</include>
MixMeeting
Don’t use a gateway config with mixmeeting.
- Outbound works
- Just app=”bridge” data=”sofia/profile/18005551212@mixmeetings.gateway.ip”
Metrostat
- [wholesale.metrostat.net]
- Outbound and Inbound Calls work.
- IP CNAM works with FS
MyNetFone
Incoming and outgoing calls work. In conf/sip_profiles/outbound/ create a mynetfone.xml file with the following contents:
<include>
<gateway name="MyNetFone">
<param name="username" value="xxxxxxxx"/>
<param name="password" value="xxxxxxxx"/>
<param name="realm" value="sip00.mynetfone.com.au"/>
<param name="proxy" value="sip00.mynetfone.com.au"/>
<param name="register" value="true"/>
</gateway>
</include>
PennyTel
Incoming and outgoing calls work. In conf/sip_profiles/outbound/ create a pennytel.xml file with the following contents:
<include>
<gateway name="PennyTel">
<param name="username" value="61xxxxxxxxx"/>
<param name="password" value="xxxxxxxx"/>
<param name="realm" value="sip.pennytel.com"/>
<param name="proxy" value="sip.pennytel.com"/>
<param name="register" value="true"/>
</gateway>
</include>
Sipgate.de
Works with incoming and outgoing SIP calls.
<gateway name="sipgate.de"> <param name="proxy" value="sipgate.de"/> <param name="username" value="your_usernumber"/> <param name="password" value="your_password"/> <param name="extension" value="extension_that _should_be_called_in_your_dialplan"/> </gateway>
Talklite
Talklite examples are now broken. It was bought or merged with another company. Talklite no longer supports registration and requires a static IP for its customers.
Outbound Gateway
<include>
<user id="MYUSER">
<gateways>
<gateway name="g711.talklite.net">
<param name="username" value="MYUSER"/>
<param name="password" value="MYPASS"/>
<param name="from-user" value="MYUSER"/>
<param name="proxy" value="g711.talklite.net"/>
<param name="realm" value="talklite.net"/>
<param name="from-domain" value="talklite.net"/>
<param name="register" value="true"/>
<param name="expire-seconds" value="600"/>
<param name="register" value="true"/>
<param name="retry_seconds" value="30"/>
<param name="context" value="public"/>
</gateway>
</gateways>
<params>
<param name="password" value="MYPASS"/>
</params>
</user>
</include>
Inbound Gateway
<include>
<user id="MYUSER">
<gateways>
<gateway name="inbound.talklite.net">
<param name="username" value="MYUSER"/>
<param name="password" value="MYPASS"/>
<param name="from-user" value="MYUSER"/>
<param name="proxy" value="inbound.talklite.net"/>
<param name="realm" value="talklite.net"/>
<param name="from-domain" value="talklite.net"/>
<param name="register" value="true"/>
<param name="expire-seconds" value="600"/>
<param name="register" value="true"/>
<param name="retry_seconds" value="30"/>
<param name="context" value="public"/>
</gateway>
</gateways>
<params>
<param name="password" value="MYPASS"/>
</params>
</user>
</include>
This example does not register the gateway. Not sure if this example still works.
<include>
<gateway name="talklite.net">
<param name="username" value="MYUSER"/>
<param name="password" value="MYPASS"/>
<param name="from-user" value="MYUSER"/>
<param name="proxy" value="vps.talklite.net"/>
<param name="extension" value="inbound"/>
<param name="realm" value="talklite.net"/>
<param name="from-domain" value="talklite.net"/>
<param name="register" value="false"/>
</gateway>
</include>
Teliax
- [teliax.com]
- Works with incoming and outgoing SIP.
- Added within conf/directory/default/teliax.xml
<include>
<user id="teliax">
<gateways>
<gateway name="teliax">
<param name="username" value="Your Username"/>
<!-- Add in your teliax realm here, follow the instructions on the teliax website -->
<!--<param name="realm" value="den.teliax.com"/>-->
<param name="realm" value="voip.lax.teliax.com"/>
<param name="password" value="Your Password"/>
</gateway>
</gateways>
<params>
<param name="password" value="Your Password"/>
</params>
</user>
</include>
- You may need to change your realm to a different Teliax server other than voip.lax.teliax.com.
ViaTalk
inbound and outbound
dialplan/default.xml(the snippet below is for 11 and 10 digit dialing)
<extension name="Long Distance">
<condition field="destination_number" expression="^(1{0,1}\d{10})$">
<action application="bridge" data="sofia/gateway/viatalk/$1"/>
</condition>
</extension>
sip_profiles/external/viatalk.xml
<include>
<gateway name="Viatalk">
<param name="username" value="1Xxxxxxxxxx" />
<param name="password" value="XXXXXXXXX" />
<param name="realm" value="chicago-1a.vtnoc.net" />
<param name="proxy" value="chicago-1a.vtnoc.net" />
<param name="register" value="true" />
</gateway>
</include>
--JulianL 02:29, 21 August 2008 (EDT)
Vitelity
<include>
<gateway name="vitelity">
<!--/// account username *required* ///-->
<param name="username" value="your-username"/>
<!--/// auth realm: *optional* same as gateway name, if blank ///-->
<param name="realm" value="vitel-outbound"/>
<!--/// account password *required* ///-->
<param name="password" value="your-password"/>
<!--/// extension for inbound calls: *optional* same as username, if blank ///-->
<param name="extension" value="default"/>
<!--/// proxy host: *optional* same as realm, if blank ///-->
<param name="proxy" value="outbound1.vitelity.net"/>
<!--/// expire in seconds: *optional* 3600, if blank ///-->
<param name="expire-seconds" value="600"/>
</gateway>
</include>
VoiceMeUp
- [VoiceMeUp.com]
- Nationwide DID and Tollfree coverage
- Works with incoming and outgoing SIP.
- conf/sip_profiles/PROFILE_NAME/voicemeup.xml
<include>
<gateway name="voicemeup">
<param name="realm" value="sip.voicemeup.com"/>
<param name="proxy" value="sip.voicemeup.com"/>
<param name="username" value="PEER_USERNAME"/>
<param name="password" value="PEER_PASSWORD"/>
</gateway>
</include>
Voicepulse
<include>
<gateway name="voicepulse">
<param name="username" value="''your-username''"/>
<param name="realm" value="nyc.voicepulse.com"/>
<param name="password" value="''your-password''"/>
<param name="proxy" value="nyc.voicepulse.com"/>
<param name="expire-seconds" value="600"/>
<param name="register" value="true"/>
</gateway>
<gateway name="voicepulse-backup">
<param name="username" value="''your-username''"/>
<param name="realm" value="nyc-backup.voicepulse.com"/>
<param name="password" value="''your-password''"/>
<param name="extension" value="1NXXNXXXXXX"/>
<param name="proxy" value="nyc-backup.voicepulse.com"/>
<param name="expire-seconds" value="600"/>
<param name="register" value="true"/>
</gateway>
<gateway name="connect03.voicepulse.com">
<param name="username" value="''your-username''"/>
<param name="realm" value="connect03.voicepulse.com"/>
<param name="password" value="''your-password''"/>
<param name="extension" value="1NXXNXXXXXX"/>
<param name="proxy" value="connect03.voicepulse.com"/>
<param name="expire-seconds" value="600"/>
<param name="register" value="true"/>
</gateway>
</include>
You should check here for detailed information on VoicePulse.
Vonage Business Plus
- Vonage normally doesn't offer a SIP service, but they do offer through resellers a product called "Vonage Business Plus", you can do some google searches to find a reseller fairly easily.
- Added the following in conf/sip_profiles/external/vonage.xml
<include>
<gateway name="sphone1.voncp.com">
<param name="username" value="15555551212"/>
<param name="password" value="<Your Password>"/>-->
</gateway>
</include>
Vonics Digital
- [vonics.com]
- After signing up for an account you must contact a representative at the company and they will email you your SIP specific information.
- Added the following in conf/directory/default/sip_vonics.xml
<include>
<user id="15551231234">
<gateways>
<gateway name="sip.vonics.net">
<param name="username" value="15551231234"/>
<param name="realm" value="sip.vonics.net:13412"/>
<param name="password" value="MyPassword"/>
</gateway>
</gateways>
<params>
<param name="password" value="MyPassword"/>
</params>
</user>
</include>
Yahoo! Messenger
Place holder for now. Information gathered so far
- TCP SIP signalling
- sip.yahoo.com port 5061 appears to be correct
- speex is the reported codec by some that it uses, the SDP should be looked at to give a list of all they support.
- no SRV records that I could find
See Also
Providers (deprecated, and probably soon to be removed)
