Skip to content

Comment on How to (actually) send DTMF on Android without being the default call app

Comments

There is a sort of way around this.

You can generate phone numbers with embedded DTMF codes - including pause and wait.

For example `<a href="tel:+447700900000,12#">` will pre-fill the dialler with that number. After dialling, it will pause for a few seconds then sent DTMF 1 2 #.

You can make it slightly interactive with the "wait" command. For example `<a href="tel:+447700900000;#9">`. The semicolon should* give the user a prompt asking them if they want to send the DTMF `#9`.

Of course, this is no use if the app is to be used interactively. But if you know that you need to send a predefined sequence, it is useful.

Is there a spec for these anywhere? the , and ; specifically.

This sounds like it exactly solves a problem I have in automating interaction with my phone carrier's IVR interface for adding billing credit. Each of the delays are different, but predictable, and the whole process is about 30 seconds long.

DTMF [0] which also points to SDP, along with the tel scheme RFC [2]. It's a bit of a rabbithole to find what exactly is supported.

[0] https://www.rfc-editor.org/rfc/rfc4733#section-2.4.1

[1] https://www.rfc-editor.org/rfc/rfc3555#section-3

[2] https://www.rfc-editor.org/rfc/rfc3966#section-5.1.3

I knew about the comma, but not about the semicolon. Very cool information!

yes, this is particularly useful ! but sadly yep, the app needs to be interactive as it's basically users controlling their phone using their pc, and a much bigger screen :)

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.