Upgrade 3CX to v18 and get it hosted free!

DISAplus Advanced DISA Authentication Module

Author image

Synopsis

DISAplus is at it’s core an authentication extension wrapper around the built-in DISA() Asterisk Application. It was inspired by the FreePBX DISA Module.

DISAMBIGUATION: THIS IS NOT AN ASTERISK MODULE. IT IS AN AGI APPLICATION WRITTEN WITH PHP

 

Call Flow

  1. Caller dials DISAplus extension
  2. DISAplus recognizes user based on Caller ID => extension mapping
  3. *DISAplus greets caller with name prompt
  4. If Caller ID isn’t provided standard VMAuthenticate authenticates user
  5. Caller ID Name is set to Extension Name, Caller ID Number is set to original inbound Caller ID
  6. Caller gets DISA Dialtone

Implementation

Three files make up the DISAplus implementation:

  1. /var/lib/asterisk/agi-bin/led_disaplus/disaplus.php
  2. /var/lib/asterisk/agi-bin/led_disaplus/disaplus.conf
  3. /var/lib/asterisk/agi-bin/led_disaplus/disaplus.log

The codebase is PHP and uses the [http://phpagi.sourceforge.net/|PHPAGI]] class that is freely available and included in all Trixbox/FreePBX implementations. The main script disaplus.php is just 56 lines and handles all the pre-authentication before passing control back to the disaplus.conf dialplan. The final file, disaplus.log, is a simple logging file that tracks calls through the application.

Step-by-Step

  1. Download led_disaplus.tgz:
  2. tar -zxf led_disaplus.tgz /var/lib/asterisk/agi-bin/
  3. ln -s /var/lib/asterisk/agi-bin/led_disaplus/disaplus.conf /etc/asterisk
  4. EDIT: /etc/asterisk/disaplus.conf
  5. *Change 1080 to whatever extension you prefer
  6. include disaplus.conf
  7. *Add this to your dialplan at the appropriate context.

 

Usage

DISAplus uses the authentication information stored in /etc/voicemail.conf. If an unknown user calls in the user is prompted for mailbox number and password before being passed to DISA dialtone. Up to three additional external numbers can be pre-linked to extensions. This saves the user 1 step when calling in by recognizing them before prompting for password and greeting them with their name prompt.

Limitations

  1. “Only” three external numbers are supported per internal extension
  2. Name Lookup may only work for FreePBX users as it looks up the AMPUSER context in the the astdb
  3. *This could be overcome by using the name in voicemail.conf if the AMPUSER astdb lookup fails

 

Related Posts:

Get 3CX - Absolutely Free!
Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.