[App_rpt-users] DTMF codes to activate function

hwstar at rodgers.sdcoxmail.com hwstar at rodgers.sdcoxmail.com
Tue May 26 19:02:12 EDT 2009

> From: Matt Beasant <g4rky at yahoo.co.uk>
> Date: 2009/05/26 Tue PM 02:21:09 PDT
> To: Stephen Rodgers <hwstar at rodgers.sdcoxmail.com>
> CC: app_rpt <app_rpt-users at qrvc.com>
> Subject: DTMF codes to activate function
> Hi,
> Just as a heads up to anyone new reading this and learning about app_rpt and
> also as a question to the more experienced node owners out there, I have
> noticed a little niggle with the DTMF tone sequences used to activate
> functions on app_rpt.
> Here's the scenario:
> In my rpt.conf I have a function:
> 94 = cop,something or other
> All is fine until I try and add a command 941 to do something else.
> The new code wont work and app_rpt seems to ignore the extra digit on the
> end and just activates the function that is associated with the code 94.
> I'm not sure if this is really a bug or not but it certainly had me teased
> for a good few hours recently when I was adding some new functions to my
> node.
> I was expecting code 941 to work but it just wasnt - I was testing a new
> feature which had been added and I wasnt sure if I had busted the feature or
> something else had gone wrong!
> I changed the code to 95 and all worked as expected!
> Just something to be aware of really I guess unless its an easy fix for the
> app?
> Cheers,
> Matt
> Node 2250
Not! Once a match is found, its over! 

The function decoder will match on the shortest DTMF command first. All digits which follow will be directed to the "method" for further decoding until the method thinks it has enough digits to do something useful. The function method is the numerical value for the class of functions (e.g. COP) as documented in app_rpt.c

This is how the autopatch, and internet linking commands work with variable length node numbers and phone numbers. (And it is the only way something with a variable number of digits can work).

To use the function decoder effectively:

1. Make sure your most used functions are short digit sequences, and your least used functions are long digit sequences.

2. Make sure your function table does not have any short DTMF functions overriding longer DTMF functions.


More information about the App_rpt-users mailing list