What characters are permitted in a Feature code?

Hi all,

I’m starting to look at configuring feature codes so that I can transfer calls, set up conferences, etc and so I’m reading up on the feature codes documentation. A question in my mind is what characters are permitted. 0-9, * and # are obvious inclusions, but what else?

From what I can see it looks like its sent using DTMF codes, which makes me wonder what happens when you’re interacting with a random IVR and the codes you need to enter into it clash with your own feature codes. This will be on a home telephone service, and I cannot know what DTMF codes an unknown IVR will ask me to dial.

Thus I figure using the hook flash and/or the A/B/C/D DTMF symbols (NOT the letter codes that appear on the same buttons as the digits!) might be a way to do it.

The ATA I’m using is a Grandstream HT814, and I will have (not yet connected, but they will be once I migrate the PSTN line to VoIP) a Telecom Australia Touchfone 200 (yes, one of those ancient things) and a Telstra 9200 cordless phone plugged into it. While the cordless handsets do not have any special feature buttons, the old 1980s clunker does feature a Recall/Flash button.

Even if I can’t use the flash button, I do not mind taking a screwdriver to the handsets to add in a 1633Hz tone generator and 4 extra buttons if needed. (Yes, due to Austel approval I’ll have to wait until we disconnect from the PSTN before doing such surgery to the T200 but since the cordless phones do not directly connect to the PSTN, they are fair game!)

So…

  • Is it possible to use the “Flash” button as a symbol in a call feature code? If so what character do I use to represent it?
  • Is it possible to use the A/B/C/D (i.e. that 4th column that most domestic telephones do not implement) in a call feature code? Would those be written in upper case, lower case, or is there some other special characters used?

Thanks in advance.

Since doing some research… literature seems to suggest that SIP itself should support sending extended DTMF (the A/B/C/D column), the hook flash seems to have been deprecated by RFC4733.

I found ToneDef for Android will allow me to send the extended DTMF tones by holding my mobile phone up to the handset and using its loudspeaker to inject a tone into the PSTN handset, so there’s a non-invasive way to test call features. I might try that next weekend.

I’m on the look-out for a way of sending these events via a soft-phone on Android, as it’s difficult to use ToneDef whilst on a SIP call. Maybe hacking SIPDroid’s code is the way forward.

Digging through code, I did see this:

Event 16 in RFC-2833 is the hook flash.

So, while Asterisk does know what ! means, something behind the scenes does not… after tweaking the hook flash delay in the ATA, I found I could send a DTMF event 16 from the cordless handset (Telstra 9200) by pressing the “RECALL” button (same button you use for answering calls).

Twinkle reports the DTMF 16 if I leave the flags off for call features in the dial plan. If I turn those on however, I see this in the logs:

[May  2 17:00:55] WARNING[-1][C-00000001] chan_pjsip.c: Don't know how to indicate condition 9                                     
[May  2 17:00:55] WARNING[-1][C-00000001] chan_pjsip.c: Don't know how to indicate condition 9                                     
[May  2 17:00:59] WARNING[-1][C-00000001] chan_pjsip.c: Don't know how to indicate condition 9                                     
[May  2 17:00:59] WARNING[-1][C-00000001] chan_pjsip.c: Don't know how to indicate condition 9                                     
[May  2 17:01:03] WARNING[-1][C-00000001] chan_pjsip.c: Don't know how to indicate condition 9  

So it would seem PJSIP has no idea what a hook flash is, and I’m back to the drawing board.

… and the solution, seems to be in my case, to use the features built into the HT814.

So, in the profile settings, turn off “Send Hook Flash Event”, then read up their documentation for how to do a call transfer. Basically it involves hitting the flash button (RECALL in my case), at which point you are presented with a dial tone.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.