Alarm Communicator with FreePBX

Hello,
i am having a full working FreePBX system (ver. 2.11) with a DAHDI card installed. Yesterday, i installed a Security Alarm System, too. There is a telephone communicator there where i can connect a phone line, as a normal extension.

My problem is that everything seems ok but when the alarm is activated the FreePBX creates a call to my mobile number but it bypasses some digits. For example if my mobile number is 1234567890 the system tries to call at 1256780. Every time it bypasses different digits. It looks like that the dialing of the alarm communicator is too fast and the FreePBX system cannot catch all digits in a row.

I tried to spy on channel so to hear the calling procedure and i found out that there is kind of noise but not too much, if this clue helps the conversation here.

Do you have any idea of what should i do to solve my problem ?
Thank you

Typically an alarm should not run through your PBX it should run direct to the DMARC.

With more help we may be more helpful…

  • What DAHDI Card?
  • What platform?
  • Can you provide a call trace?

You can also adjust your logs and add DTMF to see the digits in the call trace.

You can ignore the alarm systems dial features with a custom dialplan and a little magic.

[alarm-pannel]
exten => s,1,NoOP(ALARM CALL HAPPENING)
exten => s,n,Read(DIALED,,10,,2)
exten => s,n,NoOP(ALARM CALL GOT DTMF - ${DIALED}
exten => s,n,answer()
exten => s,Dial(DAHDI/g0/yournumber)

Then set that channels context to alarm-pannel

NOTE THE ABOVE DIALPLAN IS OFF THE TOP OF MY HEAD AND IS UNTESTED. IT MAY NOT FUNCTION AS INTENDED AND IS ONLY PROVIDED AS AN LAUNCHING POINT.

Thank you for your reply jfinstrom!
If i have understand well, you propose with your dial plan template the alarm just to give a “signal” when it tries to dial a number and then the PBX will undertake the call ?

My DAHDI card is TDM800P (but i haven’t bought it by Digium) with 8 FXS ports for my analog devices.
I am using FreePBX 2.11 using DAHDI Version: 2.9.0.1

My problem as i said in my first post is that the alarm system dials sending DTMF tones but i suppose the DTMFs can’t be recognized all of them so the PBX finally dials a number with less digits than the right number. ( for example, my number is 1234567890 and the PBX dials 235790)

There is a good chance there is clipping… like yelling into a microphone. This will cause digits to be lost…

I forgot to say in the original post set immediate to yes for that channel.

What this all does is build what is called a “bat phone”

When the phone goes off hook (immediate=yes) the dialplan starts going. down the line… I added a capture to get the digits it is not really needed. The prior dial plan explained in english

  • Line goes off hook
  • Log line added indicating something happening
  • Listen for DTMF for up to 10 digits or 2 seconds
  • Log line added showing any digits we got in case you care about this info
  • Line Answered (this may actually not be needed)
  • Dial out DAHDI group 0 to yournumber, this should be changed to match your setup

I don’t really care about finding out what DTMF have been dialed. I haven’t though before that we can “trigger” our dial plan when a line goes off hook.
I have to follow your instructions, without keeping logs about what DTMFs have been sent, just dial DAHDI to my number.

Can you explain me please how PBX realizes that the DAHDI/4 channel for example is going off hook and what I have to write inside the dial plan?
And I am thinking also that I have to terminate the faulty call that alarm system has initiated and make a call by my rules. Or this is happening by switching the default dial plan to ours?