Cisco 7942 DTMF issue on outgoing calls

Get help with installing, upgrading and running Asterisk.

Moderators: muppetmaster, Moderator, Support

Cisco 7942 DTMF issue on outgoing calls

Postby skibumatbu » Mon Jul 16, 2012 7:56 am

This is a cross post to a posting I put on the Cisco forums, but got no traction with... Maybe the team here has seen the issue.

I just bought a Cisco 7942 phone to connect to my asterisk PBX. I have installed the latest SIP firmware, and put together a SEP<MAC>.cnf.xml. I'm able to make phone calls at this point. When I try to use the keypad to select options on a remote call system, it doesn't work. On most phones, I'm able to set the DTMF mode to be rfc2833 compliant and it works fine, however there seems to be a lack of documentation on the possible settings that can go in the SEP<MAC>.cnf.xml files.

My SEP<MAC>.cnf.xml file and sip.conf file for asterisk are below. Two questions:
1) Where can I go for details on SEP<MAC>.cnf.xml files (and the other needed files). The asterisk, voip-info try hard to define the different parameters, but all the options aren't fully doucmented. A good document to configure the phone would be great.
2) What are the correct DTMF settings that I should be using for this?
3) Any other suggestions for my configuration? Security wise, sanity wise, etc.

Thanks,
Scott


Relevent sip.conf:
[general]
context=default_context
allowguest=no
allowoverlap=no
udpbindaddr=0.0.0.0
tcpenable=yes
tcpbindaddr=0.0.0.0
transport=udp,tcp
srvlookup=yes
dynamic_exclude_static = yes
buggymwi=yes
contactpermit=192.168.1.0/24

[laura_office]
type=friend
host=dynamic
context=home
username=laura_office
secret=************
mailbox=100@home
subscribemwi=yes
dtmfmode=info
disallow=all
allow=ulaw
insecure=invite
; deny=0.0.0.0/0.0.0.0
; permit=192.168.1.0/255.255.255.0


SEP<MAC>.cnf.xml
<device>
<deviceProtocol>SIP</deviceProtocol>
<sshUserId>username</sshUserId>
<sshPassword>************</sshPassword>
<devicePool>
<dateTimeSetting>
<dateTemplate>M-D-YA</dateTemplate>
<timeZone>Eastern Standard/Daylight Time</timeZone>
<ntps>
<ntp>
<name>192.168.1.1</name>
<ntpMode>Unicast</ntpMode>
</ntp>
</ntps>
</dateTimeSetting>
<callManagerGroup>
<members>
<member priority="0">
<callManager>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>
<securedSipPort>5061</securedSipPort>
</ports>
<processNodeName>192.168.1.15</processNodeName>
</callManager>
</member>
</members>
</callManagerGroup>
</devicePool>
<sipProfile>
<sipProxies>
<registerWithProxy>true</registerWithProxy>
</sipProxies>
<sipCallFeatures>
<cnfJoinEnabled>true</cnfJoinEnabled>
<callForwardURI>x--serviceuri-cfwdall</callForwardURI>
<callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
<callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
<callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
<meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
<abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
<rfc2543Hold>false</rfc2543Hold>
<callHoldRingback>2</callHoldRingback>
<localCfwdEnable>true</localCfwdEnable>
<semiAttendedTransfer>true</semiAttendedTransfer>
<anonymousCallBlock>2</anonymousCallBlock>
<callerIdBlocking>2</callerIdBlocking>
<dndControl>0</dndControl>
<remoteCcEnable>true</remoteCcEnable>
</sipCallFeatures>
<sipStack>
<sipInviteRetx>6</sipInviteRetx>
<sipRetx>10</sipRetx>
<timerInviteExpires>180</timerInviteExpires>
<timerRegisterExpires>3600</timerRegisterExpires>
<timerRegisterDelta>5</timerRegisterDelta>
<timerKeepAliveExpires>120</timerKeepAliveExpires>
<timerSubscribeExpires>120</timerSubscribeExpires>
<timerSubscribeDelta>5</timerSubscribeDelta>
<timerT1>500</timerT1>
<timerT2>4000</timerT2>
<maxRedirects>70</maxRedirects>
<remotePartyID>false</remotePartyID>
<userInfo>None</userInfo>
</sipStack>
<autoAnswerTimer>1</autoAnswerTimer>
<autoAnswerAltBehavior>false</autoAnswerAltBehavior>
<autoAnswerOverride>true</autoAnswerOverride>
<transferOnhookEnabled>false</transferOnhookEnabled>
<enableVad>false</enableVad>
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<kpml>3</kpml>
<phoneLabel>Laura Office</phoneLabel>
<callStats>false</callStats>
<silentPeriodBetweenCallWaitingBursts>3</silentPeriodBetweenCallWaitingBursts>
<disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>
<startMediaPort>16384</startMediaPort>
<stopMediaPort>32766</stopMediaPort>
<sipLines>
<line button="1">
<featureID>9</featureID>
<featureLabel>Laura Office</featureLabel>
<proxy>USECALLMANAGER</proxy>
<port>5060</port>
<name>laura_office</name>
<displayName>Laura Office</displayName>
<autoAnswer>
<autoAnswerEnabled>2</autoAnswerEnabled>
</autoAnswer>
<callWaiting>3</callWaiting>
<authName>laura_office</authName>
<authPassword>***************</authPassword>
<sharedLine>false</sharedLine>
<messageWaitingLampPolicy>1</messageWaitingLampPolicy>
<messagesNumber>9999</messagesNumber>
<ringSettingIdle>4</ringSettingIdle>
<ringSettingActive>5</ringSettingActive>
<contact>laura_office</contact>
<forwardCallInfoDisplay>
<callerName>true</callerName>
<callerNumber>false</callerNumber>
<redirectedNumber>false</redirectedNumber>
<dialedNumber>true</dialedNumber>
</forwardCallInfoDisplay>
</line>
</sipLines>
<dialTemplate>dialplan.xml</dialTemplate>
</sipProfile>
<vendorConfig>
<disableSpeaker>false</disableSpeaker>
<disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
<pcPort>1</pcPort>
<settingsAccess>1</settingsAccess>
<garp>0</garp>
<voiceVlanAccess>0</voiceVlanAccess>
<videoCapability>0</videoCapability>
<autoSelectLineEnable>0</autoSelectLineEnable>
<sshAccess>0</sshAccess>
<sshPort>22</sshPort>
<webAccess>0</webAccess>
<spanToPCPort>1</spanToPCPort>
<loggingDisplay>1</loggingDisplay>
<loadServer></loadServer>
</vendorConfig>
<userLocale>
<name></name>
<uid></uid>
<langCode>en_US</langCode>
<version></version>
<winCharSet></winCharSet>
</userLocale>
<networkLocale></networkLocale>
<networkLocaleInfo>
<name></name>
<uid></uid>
<version>1.0.0.0-1</version>
</networkLocaleInfo>
<deviceSecurityMode>1</deviceSecurityMode>
<transportLayerProtocol>1</transportLayerProtocol>
<loadInformation>SIP42.9-3-1-1S</loadInformation>
</device>
skibumatbu
Newsterisk
 
Posts: 1
Joined: Mon Jul 16, 2012 7:53 am

Re: Cisco 7942 DTMF issue on outgoing calls

Postby taylork » Wed Jul 18, 2012 2:14 am

I've had a problem when using SIP info messages to transmit DTMF.

Have you configured the phone to send SIP info message for DTMF?

The RFC specifies to use uppercase characters for the DTMF A to D. some SIP phones (Linksys for example) use lowercase characters. Asterisk followed the RFC to the letter (ha ha) and only looked for uppercase A to D.

Can you turn on SIP debug and see what your phone is transmitting for the DTMF?

If you are seeing lowercase characters in the SIP info messages you can patch chan_sip.c where it is looking for only uppercase.
method: handle_request_info
add
else if ((buf[0] >= 'a') && (buf[0] <= 'd'))
event = 12 + buf[0] - 'a';

method: add_digit
add
else if ((digit >= 'a') && (digit <= 'd'))
event = 12 + digit - 'a';
taylork
Newsterisk
 
Posts: 5
Joined: Tue Aug 02, 2011 3:52 am


Return to Asterisk Support

Who is online

Users browsing this forum: Majestic-12 [Bot], urzy26 and 40 guests