asterisk

How to Read * terminated dtmf digits in asterisk


I know Read command gets # terminated dtmf digits. But how can I read dtmf digits terminated by asterisk character "*"? For example, if I have to enter "092", i press "092*" from keypad.


Solution

  • To modify the behaviour, see apps/app_read.c in the asterisk source directory.

    if (tmp[x-1] == '#') {
        tmp[x-1] = '\0';
        status = "OK";
        break;
    }
    

    Replace # with *.

    You only need to recompile that module:

    rm apps/app_read.o apps/app_read.so
    make
    cp -f apps/app_read.so /lib/asterisk/modules/
    service asterisk restart