I have read numerous stories of people discouraging others to use AlarmReceiver with recent versions of Asterisk.
It took me days to make it work, but it now works reliably.
Here is my setup :
- Asterisk 13.0.0 on a Raspberry Pi with Archlinux
- Alarm connected to Line 1 of a Linksys PAP2T adapter (hw 0.3.5 fw 5.1.6)
exten => 123,1,NoOp(Alarm received)
exten => 123,n,Answer
exten => 123,n,AlarmReceiver()
exten => 123,n,Hangup()
Panel is a DSC PC1832 v4.6 NA, programmed to dial phone number 123 with Contact ID protocol.
DTMF is inband, both in the PAP2T configuration and in sip.conf of Asterisk.
In asterisk.conf I have mindtmfduration = 20 (not sure if it’s required but the default is written to be 80 and the contact-id DTMF pulses are 50ms long…)
Most importantly here is my alarmreceiver.conf :
timestampformat = %a %b %d, %Y @ %H:%M:%S %Z
eventcmd = /home/pi/alarmrecv.pl
eventspooldir = /alarm
logindividualevents = no
fdtimeout = 4000
sdtimeout = 4000
loudness = 600
(change the directories accordingly to your setup)
[color=#FF0000]The CRITICAL setting here is “loudness”[/color]. Too high and the handshake is not detected by the panel, and nothing will work !!! Took me some trial and error to find that one out and I suspect it’s because of this that people report that AlarmReceiver doesn’t work…
I connected another phone to the line to listen in when the panel was calling. With a value too high for “loudness”, you can hear the tone, but the panel doesn’t react by sending the DTMF pulses. The natural reaction is to increase the volume… but no ! With a lower volume, it works !
Just wanted to share this information somewhere so that people who will Google it in the future will find it (hopefully). Have fun.