Proposed Asterisk Dialplan

From LinuxMCE
Revision as of 03:48, 18 July 2013 by Tschak909 (Talk | contribs) (Ring specific user (3xx))

Jump to: navigation, search

We desperately need to write a new Asterisk dial plan to replace the AMP generated one that has become far too bit-rotten to be of any substantial use. This page will track the conceptual flow of what will be needed for the new post Asterisk 1.8+ dialplan.

Dial Plan Flow

Call from outside line (1xx)

  • Call comes in from outside line
    • Get house mode and branch between four possible states:
      • Ring extensions
        • All checked extensions (2xx) are rung.
      • Transfer to a specific user
        • Transfer to specified (3xx) extension
      • Go to a specific user's voicemail
        • Transfer to selected user's voicemail
      • Present a menu to select Home user (101)
        • Is the number listed in Callers for me(?) for a user.
          • Transfer to user extension. (3xx)
        • Present menu audio, and select between options:
        • If explicit extension is selected, ring said extension. (Do we want to allow all extensions to be pressed here?)
        • If User number is selected, Transfer to user (3xx)
        • If General Voicemail, drop to general voicemail box (100)
      • Transfer to outside number
        • Dial outside #

Ring specific extension (2xx)

  • Does current house mode allow extension to be rang?
    • No? Bounce to Menu (101)
    • Yes? ...then
      • Ring specified extension
        • If extension does not pick up within specified IVR delay time, Transfer to (101) for IVR menu

Ring specific user (3xx)

  • Find user via AGI script, map to a list of (2xx) extensions.
  • Is number on Priority caller list?
    • No, it is a normal caller, Process normal caller routing (see normal/priority user routing below)
    • Yes, it is a priority caller, Process priority caller routing (see normal/priority user routing below)