I have read all the posts about DTMF and iPhone. I know that the characters "#" and "*" are disallowed by the SDK for security reasons. I have tried the stringByAddingPercentEscapesUsingEncoding: and the FURLCreateStringByAddingPercentEscapes workarounds. It is not possible, in my case, to generate the DTMF tones as one post suggested and even Touch Dial Emoji does not support # and *. I have also used ABPeoplePicker et. al. and have not found a way to use # and *. Now. Some one on my project swears that he has used an app that directly employs the native dial/phone app in order to use the # and * characters. I can not find any way to do that. I have not found any APIs nor even posts about that.
****NOTE**** if you put a number in the Contacts app with a # or a * it dials out and uses the DTMF commands just fine.
Our app generates a phone number 123 123 1234,,1234#,,1234567*,,123456# internally; so it can't be exploited. Additionally we could used the contacts list to create a formatted number which in theory would satisfy the SDK security desires. But there seems to be no way to use the native dialing app in order to satisfy iOS that we are not being malicious. Does anyone know if there is a way to directly use the dialing app so that we can use the DTMF commands "#" and "*"?
Thanks much.
Just in case this is still a question for anyone: It is in fact disallowed. Apple shows not sign of changing this despite the fact that all other smartphone platforms allow it. There as some clever approches to getting around this but they all seem to be little better than hacks. I think that t's best to give in on this one and tell people that it's just not possible on iOS.