Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

DTMF problem

Posted on 2008-10-02
6
Medium Priority
?
560 Views
Last Modified: 2013-12-27
Dear Sir,
 
I have the following Scenario:
 
1- I have a DID number from Voxbone mapped to my asterisk server with RFC 2833 protocol used for DTMF
2- On asterisk Server I configured an incoming peer that receives calls from VoxBone and send calls to a2billing context as follow:
 
sip.conf
[sip_proxy1]
type=peer
context=a2billing
host=81.201.82.39
dtmfmode=RFC2833
rfc2833compensate=yes
 
extensions.conf
[a2billing]
exten => _X.,1,Gotoif($[${EXTEN} = 111] ? 21)
exten => _X.,2,DeadAGI,a2billing.php
exten => _X.,3,Wait,2
exten => _X.,4,Hangup
exten => _X.,21,Playback(AR_GetGiveToID)
exten => _X.,22,Wait(2)
exten => _X.,23,Record(/tmp/asterisk-recording:ulaw,,5)
exten => _X.,24,Wait(2)
exten => _X.,25,Playback(/tmp/asterisk-recording)
exten => _X.,26,Wait(2)
exten => _X.,27,Hangup
 
My problem is that when entring the PIN number I did not notice that any DTMF digits has been sent from VoxBone to my asterisk server, and the IVR continue asking to enter the PIN number all the time as you can see in the below log messages:
 
----->
    -- <SIP/voxbone.com-0a02e0d8> Playing 'prepaid-enter-pin-number' (language 'en')
  a2billing.php: file:Class.A2Billing.php - line:1790 - RES DTMF :
  a2billing.php: file:Class.A2Billing.php - line:1794 - CARDNUMBER ::>
  a2billing.php: file:Class.A2Billing.php - line:1798 - PREPAID-NO-CARD-ENTERED
  a2billing.php: file:Class.A2Billing.php - line:1780 - PREPAID-NO-CARD-ENTERED
  a2billing.php: file:Class.A2Billing.php - line:1788 - Requesting DTMF, CARDNUMBER_LENGTH_MAX 15
    -- <SIP/voxbone.com-0a02e0d8> Playing 'prepaid-enter-pin-number' (language 'en')
  a2billing.php: file:Class.A2Billing.php - line:1790 - RES DTMF :
  a2billing.php: file:Class.A2Billing.php - line:1794 - CARDNUMBER ::>
  a2billing.php: file:Class.A2Billing.php - line:1798 - PREPAID-NO-CARD-ENTERED
  a2billing.php: file:Class.A2Billing.php - line:1780 - PREPAID-NO-CARD-ENTERED
  a2billing.php: file:Class.A2Billing.php - line:1788 - Requesting DTMF, CARDNUMBER_LENGTH_MAX 15
    -- <SIP/voxbone.com-0a02e0d8> Playing 'prepaid-enter-pin-number' (language 'en')
 
What do you think the issue could be?
 
Regards
0
Comment
Question by:michofreiha
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
6 Comments
 
LVL 8

Expert Comment

by:MrJemson
ID: 22630579
Try:

dtmfmode=auto

Also, what codec are you using for the voice channel? If g.729, try ulaw/alaw and test again.
0
 
LVL 9

Author Comment

by:michofreiha
ID: 22631728
When i used dtmfmode=auto it worked better but not all the time...Please let me know where I can find in my SIP packet the DTMF type sent by the carrier?

Regards
0
 
LVL 8

Expert Comment

by:MrJemson
ID: 22631880
If that is the case, I would suggest trying dtmfmode=inband

dtmfmode=auto will use inband if it finds that rfc2833 is unsupported by your carrier.
If its not working with rfc2833, and sometimes works with auto, I would imagine that the negotiation is failing sometimes and not others.

As for the DTMF type in the SIP packet, I am not sure as I have never had to diagnose anything like that.
It may be easier for you to check with the carrier what they are using if inband is still having issues.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 9

Author Comment

by:michofreiha
ID: 22632095
Dear MrJemson,

I turned on the rtp debug on my asterisk server and found out that sometimes the DTMF packets with RFC2833 format appears on the Logs  and sometimes not...Do you think the Provider is not sending these packets or the asterisk is not listing them in the RTP packet flow?

Regards
0
 
LVL 9

Author Comment

by:michofreiha
ID: 22634659
Dear Sir,

The DID that provide to us the DID number said that asterisk server is not sending back OK message to their server that's why they are not sending us the DTMF packets...How to force Asterisk server t reply back by sending OK message?

Regards
0
 
LVL 8

Accepted Solution

by:
MrJemson earned 1500 total points
ID: 22646473
Still sounding like a bad negotiation to me...
Did you try inband?
0

Featured Post

Meet the Family that is Made for Collaboration

The TeamConnect Family product group as part of the Sennheiser for Business Portfolio comprising high-quality, technically well-conceived meeting solutions for business communication – designed for any meeting room and any meeting situation.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Although VoiceOver IP has been around for a while, internet connections have only recently become fast enough to provide good call quality. Now, VoIP has become a real option for businesses looking at ways to improve their business model. In this ar…
I recently purchased a Bluetooth headset called the Music Jogger (model BSH10). The control buttons on it look like this: One of my goals is to use it as the microphone and speakers for Skype calls. In that respect, it works well. However, I …
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…

722 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question