[Freeswitch-users] Polycom phone registration problem
Matthew S. Crocker
matthew at corp.crocker.com
Fri Nov 18 02:39:00 MSK 2011
Couldn't you do something like
if $contact.address != ip.src_addr && sip_agent contains Polycom THEN NDLB-connectile-dysfunction
-Matt
----- Original Message -----
> From: "Michael Collins" <msc at freeswitch.org>
> To: "FreeSWITCH Users Help" <freeswitch-users at lists.freeswitch.org>
> Sent: Thursday, November 17, 2011 2:48:32 PM
> Subject: Re: [Freeswitch-users] Polycom phone registration problem
> Hi Elliot,
> IIRC, the scenario where the Polycom is behind NAT and the FS is on a
> public IP is one where Polycom fails because they are too stubborn
> to add rport to their SIP handling. (We've been barking at them for
> over 5 years on this issue.)
> There is a workaround in FS but it breaks non-Polycom phones that are
> on the same profile, so you'll need to have a separate profile for
> your Polycoms if you are in a mixed environment. In any case, for
> the sofia profile that has the Polycoms you should check out these
> two parameters:
> http://wiki.freeswitch.org/wiki/Sofia.conf.xml#NDLB-force-rport
> http://wiki.freeswitch.org/wiki/NAT_Traversal#NDLB-connectile-dysfunction
> You might also want to hop into #freeswitch on irc.freenode.net and
> talk to some of our resident Polycom veterans.
> -MC
> On Wed, Nov 16, 2011 at 9:14 PM, Elliott Vogel <
> elliott at zoogmedia.com > wrote:
> > Hello, I’m trying to setup freeswitch and I’m having a problem with
> > a
> > polycom phone registering. The phone is behind nat but the
> > freeswitch is on a public network can anyone tell me if I don’t
> > have
> > something configured correctly or where should look for the
> > problem?
>
> > < include >
>
> > < domain name = " zoogmedia.com " >
>
> > < params >
>
> > < param name = " dial-string " value = "
> > {sip_invite_domain=${dialed_domain},presence_id=${dialed_user}@${dialed_domain}}${sofia_contact(${dialed_user}@${dialed_domain})}
> > " />
>
> > </ params >
>
> > < variables >
>
> > < variable name = " record_stereo " value = " true " />
>
> > < variable name = " default_gateway " value = "
> > $${default_provider}
> > " />
>
> > < variable name = " default_areacode " value = " 312 " />
>
> > < variable name = " transfer_fallback_extension " value = "
> > operator
> > " />
>
> > </ variables >
>
> > < groups >
>
> > < group name = " default " >
>
> > < users >
>
> > < user id = " 14149823263 " >
>
> > < params >
>
> > < param name = " password " value = " 123456 " />
>
> > </ params >
>
> > < variables >
>
> > < variable name = " sip-force-contact " value = "
> > NDLB-connectile-dysfunction " />
>
> > < variable name = " toll_allow " value = "
> > domestic,international,local " />
>
> > < variable name = " accountcode " value = " 1000 " />
>
> > < variable name = " user_context " value = " default " />
>
> > < variable name = " outbound_caller_id_name " value = " Sales " />
>
> > < variable name = " outbound_caller_id_number " value = "
> > +14149823263 " />
>
> > </ variables >
>
> > </ user >
>
> > </ users >
>
> > </ group >
>
> > </ groups >
>
> > </ domain >
>
> > </ include >
>
> > < configuration name = " sofia.conf " description = " sofia
> > Endpoint
> > " >
>
> > < global_settings >
>
> > < param name = " log-level " value = " 0 " />
>
> > <!-- <param name="auto-restart" value="false"/> -->
>
> > < param name = " debug-presence " value = " 0 " />
>
> > <!-- <param name="capture-server" value="udp: homer.domain.com:5060
> > "/> -->
>
> > </ global_settings >
>
> > < profiles >
>
> > < profile name = " endpoints " >
>
> > < gateways >
>
> > < gateway name = " TNG " >
>
> > < param name = " username " value = " user " />
>
> > < param name = " password " value = " password " />
>
> > < param name = " proxy " value = " 69.25.128.195:5060 " />
>
> > < param name = " from-domain " value = " $${local_ip_v4}:5060 " />
>
> > < param name = " dtmf-type " value = " rfc2833 " />
>
> > < param name = " extension-in-contact " value = " true " />
>
> > < param name = " caller-id-in-from " value = " true " />
>
> > < param name = " register " value = " false " />
>
> > </ gateway >
>
> > </ gateways >
>
> > < aliases >
>
> > </ aliases >
>
> > < domains >
>
> > < domain name = " all " alias = " false " parse = " true " />
>
> > </ domains >
>
> > < settings >
>
> > < param name = " debug " value = " 0 " />
>
> > < param name = " sip-trace " value = " no " />
>
> > < param name = " sip-capture " value = " no " />
>
> > < param name = " rtp-ip " value = " $${external_rtp_ip} " />
>
> > < param name = " sip-ip " value = " $${external_sip_ip} " />
>
> > < param name = " ext-rtp-ip " value = " $${external_rtp_ip} " />
>
> > < param name = " ext-sip-ip " value = " $${external_sip_ip} " />
>
> > < param name = " sip-port " value = " 5070 " />
>
> > < param name = " tls " value = " $${external_ssl_enable} " />
>
> > < param name = " tls-bind-params " value = " transport=tls " />
>
> > < param name = " tls-sip-port " value = " $${external_tls_port} "
> > />
>
> > < param name = " tls-cert-dir " value = " $${external_ssl_dir} " />
>
> > < param name = " tls-version " value = " $${sip_tls_version} " />
>
> > < param name = " rfc2833-pt " value = " 101 " />
>
> > < param name = " dialplan " value = " XML " />
>
> > < param name = " context " value = " default " />
>
> > < param name = " dtmf-duration " value = " 2000 " />
>
> > < param name = " inbound-codec-prefs " value = "
> > $${global_codec_prefs} " />
>
> > < param name = " outbound-codec-prefs " value = "
> > $${outbound_codec_prefs} " />
>
> > < param name = " hold-music " value = " $${hold_music} " />
>
> > < param name = " rtp-timer-name " value = " soft " />
>
> > < param name = " local-network-acl " value = " localnet.auto " />
>
> > < param name = " manage-presence " value = " false " />
>
> > < param name = " inbound-codec-negotiation " value = " greedy " />
>
> > < param name = " nonce-ttl " value = " 60 " />
>
> > < param name = " auth-calls " value = " false " />
>
> > < param name = " rtp-timeout-sec " value = " 300 " />
>
> > < param name = " rtp-hold-timeout-sec " value = " 1800 " />
>
> > < param name = " rtp-rewrite-timestamps " value = " true " />
>
> > < param name = " track-calls " value = " true " />
>
> > </ settings >
>
> > </ profile >
>
> > </ profiles >
>
> > </ configuration >
>
> > <? xml version = " 1.0 " encoding = " utf-8 " ?>
>
> > <!-- http://wiki.freeswitch.org/wiki/Dialplan_XML -->
>
> > < include >
>
> > < context name = " default " >
>
> > < extension name = " unloop " >
>
> > < condition field = " ${unroll_loops} " expression = " ^true$ " />
>
> > < condition field = " ${sip_looped_call} " expression = " ^true$ "
> > >
>
> > < action application = " deflect " data = " ${destination_number} "
> > />
>
> > </ condition >
>
> > </ extension >
>
> > < extension name = " check_auth " continue = " true " >
>
> > < condition field = " ${sip_authorized} " expression = " ^true$ "
> > break = " never " >
>
> > < anti-action application = " respond " data = " 407 " />
>
> > </ condition >
>
> > </ extension >
>
> > < extension name = " local " >
>
> > < condition field = " ${toll_allow} " expression = " local " />
>
> > < condition field = " destination_number " expression = "
> > ^([0-9]{7})$ " >
>
> > < action application = " set " data = "
> > effective_caller_id_name=${outbound_caller_id_name} " />
>
> > < action application = " set " data = "
> > effective_caller_id_number=${outbound_caller_id_number} " />
>
> > < action application = " bridge " data = "
> > sofia/gateway/TNG/+1${default_areacode}$1 " />
>
> > </ condition >
>
> > </ extension >
>
> > < extension name = " domestic " >
>
> > < condition field = " ${toll_allow} " expression = " domestic " />
>
> > < condition field = " destination_number " expression = "
> > ^(1{0,1}\d{10})$ " >
>
> > < action application = " set " data = "
> > effective_caller_id_name=${outbound_caller_id_name} " />
>
> > < action application = " set " data = "
> > effective_caller_id_number=${outbound_caller_id_number} " />
>
> > < action application = " bridge " data = " sofia/gateway/TNG/+$1 "
> > />
>
> > </ condition >
>
> > </ extension >
>
> > < extension name = " international " >
>
> > < condition field = " ${toll_allow} " expression = " international
> > "
> > />
>
> > < condition field = " destination_number " expression = "
> > ^011?(\d+)$
> > " >
>
> > < action application = " set " data = "
> > effective_caller_id_name=${outbound_caller_id_name} " />
>
> > < action application = " set " data = "
> > effective_caller_id_number=${outbound_caller_id_number} " />
>
> > < action application = " bridge " data = " sofia/gateway/TNG/+$1 "
> > />
>
> > </ condition >
>
> > </ extension >
>
> > </ context >
>
> > </ include >
>
> > _________________________________________________________________________
>
> > Professional FreeSWITCH Consulting Services:
>
> > consulting at freeswitch.org
>
> > http://www.freeswitchsolutions.com
>
> >
>
> >
>
> > Official FreeSWITCH Sites
>
> > http://www.freeswitch.org
>
> > http://wiki.freeswitch.org
>
> > http://www.cluecon.com
>
> > FreeSWITCH-users mailing list
>
> > FreeSWITCH-users at lists.freeswitch.org
>
> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>
> > UNSUBSCRIBE:
> > http://lists.freeswitch.org/mailman/options/freeswitch-users
>
> > http://www.freeswitch.org
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20111117/0e6e6581/attachment-0001.html
Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users
mailing list