Summary: | ASTERISK-09261: SIP - Bridge Call - Not all DTMF tones send when multiple digits are needed. | ||
Reporter: | Erik Sundberg (sunder) | Labels: | |
Date Opened: | 2007-04-13 13:55:50 | Date Closed: | 2007-08-03 09:56:30 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Channels/chan_sip/CodecHandling |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) Capture_from_span_the_port_that_the_phone_is_one.pcap ( 1) Out_side_of_our_pbx_to_sip_provider.pcap | |
Description: | Issue -------- Not all of the DTMF tone are being sent when a SIP call is bridge through the system. And you are required to hit multiple digits in a row. When you have to hit a single digit it works fine. Systems Setup ---------------------- Asterisk 1.2.17 SIP Trunk with CBeyond They use a broadsoft SIP Proxy at CBeyond DTMF is set to INBAND All codecs are ULAW Canreinvite is set to no for both peers. From my cell phone call our customer is works with no problems. I have used the following phones to verify this Hitcachi IP 4000 Polycom 501 Polcyom 601 Polycom 4000 Aastra 480i I have tried inband and rfc2833 with the same results on the phones. The SIP trunk to the provider is ULAW and inband DTMF The setup --------------- SIP Phone ------ Our PBX --------sip trunk ------------ CBeyond Internet/VoIP -----------sip trunk------------customer pbx The process to reproduce ------------------------------------ We call from our office to our customer There pbx pickups up Press 1 for the company directory Press 2 for a directory by last name Enter the last name of the person who I am calling Gordon 467 Our pbx see 467 from the phone But only send 4 to the Provider Then I hang-up the call. What Happens --------------------- Between the phone and the PBX there is DTMF 467 and the PBX see this. Between our pbx and the SIP provider when the audio stream goes back out there is only 4 not the 67 So think there is a dtmf issue when bridging calls. ****** ADDITIONAL INFORMATION ****** System Calling from (Our office) ---------------------------------------------- Apr 13 13:37:50 DEBUG[8937] pbx.c: Launching 'Goto' Apr 13 13:37:50 DEBUG[8937] pbx.c: Launching 'Verbose' Apr 13 13:37:50 DEBUG[8937] pbx.c: Launching 'Answer' Apr 13 13:37:50 DEBUG[8937] chan_sip.c: sip_answer(SIP/4808-09866668) Apr 13 13:37:50 DEBUG[8937] pbx.c: Launching 'Set' Apr 13 13:37:50 DEBUG[8937] pbx.c: Launching 'Dial' Apr 13 13:37:50 DEBUG[8937] chan_sip.c: Allocating new SIP dialog for (No Call-ID) - INVITE (With RTP) Apr 13 13:37:50 DEBUG[8937] chan_sip.c: Setting NAT on RTP to 0 Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable STACK-dialtrunk-8735540-4. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable STACK-dialtrunk-8735540-3. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable STACK-dialtrunk-8735540-2. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable STACK-dialtrunk-8735540-1. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable STACK-group1-8735540-1. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable SIPCALLID. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable SIPUSERAGENT. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable SIPDOMAIN. Apr 13 13:37:50 DEBUG[8937] channel.c: Not copying variable SIPURI. Apr 13 13:37:50 DEBUG[8937] chan_sip.c: Outgoing Call for 8735540 Apr 13 13:37:50 DEBUG[8937] chan_sip.c: Updating call counter for outgoing call Apr 13 13:37:51 DEBUG[8937] rtp.c: Ooh, format changed from unknown to ulaw Apr 13 13:37:51 DEBUG[8937] rtp.c: Got RTCP report of 88 bytes Apr 13 13:37:52 DEBUG[8937] rtp.c: Ooh, format changed from unknown to ulaw Apr 13 13:37:56 DEBUG[8937] chan_sip.c: * Detected inband DTMF '1' Apr 13 13:37:56 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format slin Apr 13 13:37:56 DEBUG[8937] channel.c: Scheduling timer at 160 sample intervals Apr 13 13:37:56 DTMF[8937] channel.c: SIP/cbeyond-0985e208 : 1 Apr 13 13:37:56 DEBUG[8937] channel.c: Generator got voice, switching to phase locked mode Apr 13 13:37:56 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:37:57 DEBUG[8937] rtp.c: Difference is 8000, ms is 1020 Apr 13 13:37:57 DEBUG[8937] channel.c: Auto-deactivating generator Apr 13 13:37:57 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format ulaw Apr 13 13:37:57 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:37:59 DEBUG[8937] chan_sip.c: * Detected inband DTMF '2' Apr 13 13:37:59 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format slin Apr 13 13:37:59 DEBUG[8937] channel.c: Scheduling timer at 160 sample intervals Apr 13 13:37:59 DTMF[8937] channel.c: SIP/cbeyond-0985e208 : 2 Apr 13 13:37:59 DEBUG[8937] channel.c: Generator got voice, switching to phase locked mode Apr 13 13:37:59 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:37:59 DEBUG[8937] channel.c: Auto-deactivating generator Apr 13 13:37:59 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format ulaw Apr 13 13:37:59 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:38:01 DEBUG[8937] rtp.c: Got RTCP report of 88 bytes Apr 13 13:38:03 DEBUG[8937] chan_sip.c: * Detected inband DTMF '4' Apr 13 13:38:03 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format slin Apr 13 13:38:03 DEBUG[8937] channel.c: Scheduling timer at 160 sample intervals Apr 13 13:38:03 DTMF[8937] channel.c: SIP/cbeyond-0985e208 : 4 Apr 13 13:38:03 DEBUG[8937] channel.c: Generator got voice, switching to phase locked mode Apr 13 13:38:03 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:38:03 DEBUG[8937] chan_sip.c: * Detected inband DTMF '6' Apr 13 13:38:04 DEBUG[8937] chan_sip.c: * Detected inband DTMF '7' Apr 13 13:38:06 DEBUG[8937] rtp.c: Difference is 24008, ms is 3021 Apr 13 13:38:06 DEBUG[8937] channel.c: Auto-deactivating generator Apr 13 13:38:06 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format ulaw Apr 13 13:38:06 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:38:11 DEBUG[8937] rtp.c: Got RTCP report of 88 bytes Apr 13 13:38:11 DEBUG[8937] chan_sip.c: * Detected inband DTMF '4' Apr 13 13:38:11 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format slin Apr 13 13:38:11 DEBUG[8937] channel.c: Scheduling timer at 160 sample intervals Apr 13 13:38:11 DTMF[8937] channel.c: SIP/cbeyond-0985e208 : 4 Apr 13 13:38:11 DEBUG[8937] channel.c: Generator got voice, switching to phase locked mode Apr 13 13:38:11 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:38:12 DEBUG[8937] chan_sip.c: * Detected inband DTMF '6' Apr 13 13:38:12 DEBUG[8937] chan_sip.c: * Detected inband DTMF '7' Apr 13 13:38:14 DEBUG[8937] rtp.c: Difference is 23848, ms is 3001 Apr 13 13:38:14 DEBUG[8937] channel.c: Auto-deactivating generator Apr 13 13:38:14 DEBUG[8937] channel.c: Set channel SIP/cbeyond-0985e208 to write format ulaw Apr 13 13:38:14 DEBUG[8937] channel.c: Scheduling timer at 0 sample intervals Apr 13 13:38:18 DEBUG[8937] channel.c: Didn't get a frame from channel: SIP/4808-09866668 Apr 13 13:38:18 DEBUG[8937] channel.c: Bridge stops bridging channels SIP/4808-09866668 and SIP/cbeyond-0985e208 Apr 13 13:38:18 DEBUG[8937] channel.c: Hanging up channel 'SIP/cbeyond-0985e208' Apr 13 13:38:18 DEBUG[8937] chan_sip.c: Hangup call SIP/cbeyond-0985e208, SIP callid 0df62b717c11ead026af93ab6b7c51da@sipconnect.chi0.cbeyond.net) Apr 13 13:38:18 DEBUG[8937] chan_sip.c: update_call_counter(8735540) - decrement call limit counter Apr 13 13:38:18 DEBUG[8937] chan_sip.c: Updating call counter for outgoing call Apr 13 13:38:18 DEBUG[8937] app_dial.c: Exiting with DIALSTATUS=ANSWER. Apr 13 13:38:18 DEBUG[8937] pbx.c: Spawn extension (dialtrunk,8735540,4) exited non-zero on 'SIP/4808-09866668' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '"E. Sundberg" <7084684800>' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '7084684800' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '8735540' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is 'dialtrunk' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is 'SIP/4808-09866668' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is 'SIP/cbeyond-0985e208' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is 'Dial' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is 'SIP/cbeyond/8735540|60' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '2007-04-13 13:37:50' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '2007-04-13 13:37:50' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '2007-04-13 13:38:18' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '28' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '28' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is 'ANSWERED' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is 'DOCUMENTATION' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '(null)' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '1176489470.1278' Apr 13 13:38:18 DEBUG[8937] pbx.c: Function result is '(null)' Apr 13 13:38:18 DEBUG[8937] channel.c: Hanging up channel 'SIP/4808-09866668' Apr 13 13:38:18 DEBUG[8937] chan_sip.c: Hangup call SIP/4808-09866668, SIP callid 58e263c7-bea5e321-5872b140@10.10.0.197) Apr 13 13:38:18 DEBUG[8937] chan_sip.c: update_call_counter(4808) - decrement call limit counter Apr 13 13:38:18 DEBUG[8937] chan_sip.c: Updating call counter for incoming call Our Customers PBX ----------------------------- What our customer PBX sees Apr 13 12:37:34 DEBUG[28943] channel.c: Scheduling timer at 58 sample intervals Apr 13 12:37:34 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:34 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:34 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:37:34 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:37:34 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals Apr 13 12:37:34 DEBUG[28943] chan_sip.c: * Detected inband DTMF '1' Apr 13 12:37:34 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:34 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:37:34 DEBUG[28943] pbx.c: Oooh, got something to jump out with ('1')! Apr 13 12:37:34 DEBUG[28943] pbx.c: Launching 'Goto' Apr 13 12:37:34 DEBUG[28943] pbx.c: Launching 'NoOp' Apr 13 12:37:34 DEBUG[28943] pbx.c: Launching 'Answer' Apr 13 12:37:34 DEBUG[28943] pbx.c: Launching 'Wait' Apr 13 12:37:35 DEBUG[28943] pbx.c: Launching 'BackGround' Apr 13 12:37:35 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:37:35 DEBUG[28943] rtp.c: Difference is 7880, ms is 1005 Apr 13 12:37:35 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals Apr 13 12:37:45 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:45 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:45 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:37:45 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:37:45 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals Apr 13 12:37:48 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:48 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:48 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:37:48 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:37:48 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals #2 for last name directory Apr 13 12:37:56 DEBUG[28943] chan_sip.c: * Detected inband DTMF '2' Apr 13 12:37:56 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:37:56 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:37:56 DEBUG[28943] pbx.c: Oooh, got something to jump out with ('2')! Apr 13 12:37:56 DEBUG[28943] pbx.c: Launching 'NoOp' Apr 13 12:37:56 DEBUG[28943] pbx.c: Launching 'Directory' Apr 13 12:37:56 DEBUG[28943] config.c: Parsing /etc/asterisk/voicemail.conf Apr 13 12:37:56 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:37:56 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals #Please enter the first 3 letter of your parties last name #Entering 467 for Gordon #System only sees the number 4 pressed Apr 13 12:38:05 DEBUG[28943] chan_sip.c: * Detected inband DTMF '4' Apr 13 12:38:05 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:38:05 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:38:08 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:38:08 DEBUG[28943] rtp.c: Difference is 23872, ms is 3004 Apr 13 12:38:08 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals Apr 13 12:38:10 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:38:10 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:38:10 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:38:10 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:38:10 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals # sorry Apr 13 12:38:15 DEBUG[28943] chan_sip.c: * Detected inband DTMF '4' Apr 13 12:38:15 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:38:15 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:38:18 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:38:18 DEBUG[28943] rtp.c: Difference is 23952, ms is 3014 Apr 13 12:38:18 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals Apr 13 12:38:20 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:38:20 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:38:20 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:38:20 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format gsm Apr 13 12:38:20 DEBUG[28943] channel.c: Scheduling timer at 160 sample intervals #sorry # I hangup Apr 13 12:38:31 DEBUG[28943] channel.c: Scheduling timer at 0 sample intervals Apr 13 12:38:31 DEBUG[28943] channel.c: Set channel SIP/7084684269-b7ca10b0 to write format ulaw Apr 13 12:38:31 DEBUG[28943] pbx.c: Spawn extension (ivr-directory,2,2) exited non-zero on 'SIP/7084684269-b7ca10b0' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '"NR-Cipher Consulting Group" <7084684800>' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '7084684800' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '2' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is 'ivr-directory' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is 'SIP/7084684269-b7ca10b0' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '(null)' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is 'Directory' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is 'default|extensions' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '2007-04-13 12:37:07' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '2007-04-13 12:37:07' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '2007-04-13 12:38:31' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '84' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '84' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is 'ANSWERED' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is 'DOCUMENTATION' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '(null)' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '1176485827.11791' Apr 13 12:38:31 DEBUG[28943] pbx.c: Function result is '(null)' Apr 13 12:38:31 DEBUG[28943] channel.c: Hanging up channel 'SIP/7084684269-b7ca10b0' Apr 13 12:38:31 DEBUG[28943] chan_sip.c: Hangup call SIP/7084684269-b7ca10b0, SIP callid BW133707090130407-590672023@bwas1-vir.atl0.cbeyond.net) Apr 13 12:38:31 DEBUG[28943] chan_sip.c: update_call_counter(7084684269) - decrement call limit counter Apr 13 12:38:31 DEBUG[28943] chan_sip.c: Updating call counter for incoming call | ||
Comments: | By: Erik Sundberg (sunder) 2007-04-13 15:01:47 logs and captures are from different calls around the same time, but they all have the same results Someone please change the bug type i put the wrong on in. By: Erik Sundberg (sunder) 2007-04-13 15:03:09 I have also seen this on the following versions of asterisk: BE-1.3, 1.2.9.1, 1.2.12.1, 1.2.13 1.2.15, 1.2.16, 1.2.17 By: Joshua C. Colp (jcolp) 2007-05-17 10:44:10 DTMF in Asterisk 1.2 isn't that good... so much in fact that we rewrote it in Asterisk 1.4. If you try Asterisk 1.4 from SVN does it improve the situation? By: Joshua C. Colp (jcolp) 2007-08-03 09:56:30 1.2 has now entered a security fixes only state. If this is still an issue under 1.4 please reopen. |