Question on DTMF recoginition issue from cellphone


#1

Moderator Note: Title of thread edited from original to be more concise.

This is my second attampt at finding an answer to this connundrum…

I have a DIAL command simultaneously ringing both a SIP extension and my cellphone via an IAX2 terminating service provider. I am using the “t” option. If I answer from the SIP phone, I can hit the “#” and transfer the call. If I answer from my cell phone (going thru the pstn) the “#” is ignored. I would really like to be able to transfer calls from my cell phone. Is it a volume level problem? Inband vs. out of band? Any ideas?

Thanks for the assistance!!!

Norm :frowning:


#2

is this too hard ? obviously, otherwise you wouldn’t be here patronising us all :open_mouth:

it sounds like a DTMF issue, what DTMF method are you using ? if you record the channel do you hear the DTMF ? is there a notransfer option in iax.conf ?? have you checked with your termination provider about DTMF ?


#3

sounds like could be a DTMF recognition problem. Create an IVR menu, see if you can navigate it from your cell phone. If not, this is likely your culprit.

If you are using DTMF via inband (i.e. transmitted as audio signal within G.711 payload), you probably need to enable an out-of-band mechanism such as via SIP INFO method or via RFC 2833 tones in a separate RTP stream.

also check this thread: forums.digium.com/viewtopic.php?t=4307


#4

Please do not double post => forums.digium.com/viewtopic.php? … highlight=


#5

Unfortunately I don’t have an answer but will be interested to find out what the solution is since it is not necessarily a dtmf recognition issue.

I just ran the following quick tests:

  1. call from internal extension out through telasip to cell phone. Neither side could initiate a transfer.

  2. call from internal extension out through PSTN (through SPA3000) to cell phone. Neither side could initiate a transfer.

  3. call from cell phone to telasip DID into asterisk and to internal extension. Both sides could initiate a transfer.

  4. call from cell phone to PSTN line into asterisk (through SPA3000) and to internal extension. Both sides could initiate transfer.

  5. call from internal extension out through telasip back to PSTN into asterisk (through SPA3000) and to another internal extension. Both sides could initiate a transfer.

So the conclusions:
- Cell phone can make DTMF and get through IVR system
- Both sides can initiate a transfer in multiple scenarios
- No calls originated from asterisk to cell phone could initiate transfer

Basically - it is only calling to the cell phone that the ability to initiate a transfer from either end fails, even though calling in from the cell phone through all the same channels works fine? And recall - this was calls to the cell phone through both telasip and PSTN, neither worked.

So - any thoughts would be great. I haven’t investigated beyond these tests I mention as I was only intrigued by this posting.

Some relevant settings:

telasip settings are: dtmfmode=rfc2833
spa3000 settings are: dtmfmode=info (both to and from asterisk to SPA3000)

p


#6

Remember, cellphone networks are an additional network to the PSTN and have other transcodings and DTMF handling in place. Things may be getting ‘list in translation’.


#7

The problem is not confined to my cell phone. I tried the same arrangement terminating to a PSTN landline and could not initiate a xfer.

As a test, I added a Monitor function to record the audio of the call. I found that I could hear (clearly) the DTMF coming in from the called party. Since this is an IAX2 connection, and DTMF is never sent “in band”, I am guessing that my service provider is not converting the DTMF to the IAX2 native format. My asterisk IAX2 channel is expecting that format on the receiving end, not the inband tones and therefore ignores the tones.

I have sent an email to my service provider (SellVoIP) to see if they can alter their configuration to do the translation. I’ll report back my findings!

Thanks for the previous replies!


#8

MuppetMaster:

I understand the additional translations going on to the cellphone network. But would you have any thoughts as to why I can’t initiate the transfer from inside? It ‘should’ start off as any normal outbound call and all reinvites are off.

All:

This isn’t a priority for me at this point so I’m not ready to pull out ethereal and start analyzing tcpdumps between the working model and the non-working model to see if it sheds any light - however that would be a suggestion to others if you can’t get it going (and post back your findings.) If I get any better info - I’l post back.

p


#9

This has nothing to do with the call going to my cell phone.

It also fails if the call goes to a PSTN line. And there are no “translations in the cell network” that are at effect. I can dial from the cell phone INTO asterisk and make menu selections. But in the other direction… no response.

I still think this has to do withe the IAX2 protocol and my serving carrier not passing the out of band dtmf to my asterisk IAX2 channel.


#10

[quote=“NZimon”]This has nothing to do with the call going to my cell phone.

It also fails if the call goes to a PSTN line. And there are no “translations in the cell network” that are at effect. I can dial from the cell phone INTO asterisk and make menu selections. But in the other direction… no response.

I still think this has to do withe the IAX2 protocol and my serving carrier not passing the out of band dtmf to my asterisk IAX2 channel.[/quote]

Good to see that you did more test scenarios from your previous post where you indicated it was an issue with your mobile phone. Could you post your configs and verbose CLI output for a good case and a bad case?

But, it does sound like it could be the fact that your provider is not sending it to you when they interconnect to the PSTN for you.


#11

I’ve noticed, depending on the VoIP carrier, codec and protocol, that the # is not recognized often when I hit it once but almost always when I hit it twice in a row quickly. Try that…


#12

RESOLVED!!! Apparently it did have to do with my service provider’s IAX2 configuration.

I ordered the exact same configuration from another carrier (EXGN), consisting of one toll free incoming number and outgoing service, both via IAX2 protocol. Using EXGN, I am able to receive a toll free call on my Asterisk server, have it forward to my cell phone, and then dial a “#” to transfer the call to another extension. Yay!!!

I have no idea why it didn’t work with SellVoIP, but I now recommend EXGN as a service provider. They were friendly and helpful.