Provider Configuration: Callcentric

From FreeSWITCH Wiki
Jump to: navigation, search

Callcentric

* "Recently" in the next line appears to be in 2009

Recently users have had issues when making outbound calls using FreeSWITCH on CallCentric. The issue was usually a fast-busy, Call Rejected, or Proxy Auth Required. You could usually get 3 or so calls and then the next call might give one of those errors. This fix will work for now if you use CallCentric.

/usr/local/freeswitch/conf/sip_profiles/external.xml

<param name="disable-srv" value="true" />

Update: As of August 2009, CallCentric has stated they have temporarily fixed the issue with DNS Weight with their DNS SRV so the above method shouldn't be required, but if you do start to experience the above mentioned issues try the solution above and see if that does work to solve the issue.

conf/dialplan/public/callcentric_did.xml

<extension name="from_callcentric">
        <condition field="${sip_to_user}" expression="^1206XXXXXXX$">
                <action application="set" data="domain_name=$${domain}"/>
                <action application="transfer" data="1000 XML default"/>
        </condition>
</extension>
conf/dialplan/default/01_callcentric.com.xml

<extension name="Local Dial">
   <condition field="destination_number" expression="^([0-9]{7})$">
     <action application="set" data="effective_caller_id_name=YOURNAMEHERE"/>
     <action application="set" data="effective_caller_id_number=YOURDIDHERE"/>
     <!-- This allows 9 digit dialing to area code 206 for example -->
     <action application="bridge" data="sofia/gateway/callcentric.com/1206$1@callcentric.com"/>
   </condition>
</extension>

<extension name="Long Distance">
  <condition field="destination_number" expression="^1?([2-9]\d{2}[2-9]\d{6})$">
     <action application="set" data="effective_caller_id_name=YOURNAMEHERE"/>
     <action application="set" data="effective_caller_id_number=YOURDIDHERE"/>
     <action application="bridge" data="sofia/gateway/callcentric.com/1$1"/>
  </condition>
</extension>
conf/sip_profiles/external/callcentric.xml

<include>
      <gateway name="callcentric.com">
      <param name="username" value="CALLCENTRICID"/>
      <param name="from-user" value="CALLCENTRICID"/>
      <param name="password" value="PASSWORD"/>
      <param name="expire-seconds" value="600"/>
      <param name="register" value="true"/>
      <param name="retry-seconds" value="30"/>
    </gateway>
</include>

If you notice that Cepstral is having problems with a ptime of 30 vs 20, and you're getting errors like this:

2009-03-13 18:13:28 [WARNING] mod_sofia.c:739 sofia_read_frame() We were told to use ptime 30 but what they meant to say was 20
This issue has so far been identified to happen on the following broken platforms/devices:
Linksys/Sipura aka Cisco
blah blah ...

You will need to set this in the sofia profile that you've configured to register with CallCentric:

<!-- There are two other options such as generous, greedy, but scrooge seems to work with CallCentric -->
<param name="inbound-codec-negotiation" value="scrooge"/>

DID Forwarding Works.