Color me confused, hence my request to become better educated on DTMF commands.
Situation: I have a new ASL3 node 588416 running on a fresh Debian 12 install, connecting over a wired network. This is a radio-less node connected to a Polycom VVX 401 SIP phone. ASL3 is working well. Allmon3 works. AllScan works. Except…some of the DTMF commands are not working when sent from the Polycom phone or when sent internally via the Asterisk CLI (for example, “rpt fun 588416 *712” does tell the local time but *921 does not initiate the local parrot).
By the way, I saw the same behavior with the Snom D710 phone I set up a few days ago, making me lean toward a problem in my installation of ASL3 or configuration of same, not with the phones.
The Asterisk CLI sees all of the numeric and symbol keys when pressed on the Polycom phone.
rpt.conf has duplex=3, telemdefault=1, telemdynamic=yes, parrotmode=1, and the semicolons in front of 921 and 922 have been removed. Node rebooted. *921 and *921 still don’t work, either from the phone keypad or from the Asterisk CLI. But *712 works from the phone and the CLI.
What else should I be digging into to try to diagnose and resolve the lack of response to some DTMF commands, specifically the *921 and *921 to enable/disable the local parrot?
IIRC, the parrot commands I think only work directly with a channel driver, I.E. simpleusb, usbradio, usrp, etc.
so I think it won’t work at all within app_rpt on a SIP connection. Someone who knows more about the app_rpt codebase could advise on that.
That’s one of the things I ran into when I was building out my public parrot on node 55553.
Tom,
The ilink commands and cop commands are commented out in /etc/asterisk/rpt.conf by default. You need to go in and remove the leading ; to uncomment them and restart asterisk and they should work then.
Oh very interesting. Thank you. I just tested on a different SIP phone and node combo that has been running for more than a year. Same thing. I can get a response from *712 but not *921. Fascinating!
What Patrick said makes sense, I now recall that in the channel drivers the echo functionality is implemented there, which implies that audio that didn’t come in through USB is not going to get echoed. And there probably would have been no need to implement it elsewhere in app-rpt, as Asterisk already has an Echo dialplan function, eg. as described here, below code could probably be used similarly to how a eg. *690 say IP address function works, so you could maybe try extending that under [my-ip] context in extensions.conf:
; *698 - Echo test for IAX/SIP
exten => 8,1,Answer()
exten => 8,n,Playback(welcome)
exten => 8,n,Echo()
exten => 8,n,Playback(demo-echodone)
exten => 8,n,Hangup()
I have no idea if this would actually work but might be a fun experiment.
Make sure you don’t have any other DTMF command starting with 9 enabled if you’re trying to use 912, etc. There’s a default 99 in the configuration. That’s why all the three digit codes are recommended to be a 7nn or 8nn.
perhaps something like this
functions = functions ; Repeater Function stanza phone_functions = functions ; Phone Function stanza
But that is a guess. Make sure phone functions are getting the same commands as the node. Because you are connecting in '‘phone mode’, it may be different or non-existent.
But I don’t know what the defaults are for asl3 since I tossed my original file. So, a look and/or a test never hurt anyone… LOL