Proposed Asterisk Dialplan

From LinuxMCE
Revision as of 14:51, 22 July 2013 by Foxi352 (Talk | contribs) (Call to extension - Context: ext-local)

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.

This is being added to, as I write more and more of the schema, and will get much...much bigger. --Tschak909 07:30, 18 July 2013 (CEST)

Dial Plan Flow

Call from outside line (1xx)

  • Call comes in from outside line
    • Get house mode and branch between five possible states:
      • Ring extensions
        • All checked extensions (2xx) are rung in parallel.
      • 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
        • While ringing, user has the opportunity to:
          • Transfer to a specific phone (2xx)
          • Transfer to a specific user (3xx)
          • Transfer to an outside number (dial specified number given to dial pad)
          • dial someone else in to conference before we all pick up (this is strange, but the button is there!)
          • Send to General voicemail (100)
          • Drop the call
        • 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)

Normal/Priority User Routing

For each user, there is a set of routing steps to be executed serially, depending on if the user is a normal or priority caller, and then based on the current USER mode. A user is a priority caller if they are listed in the priority callers list. Any number of steps can be created, and a dial plan segment should be created for each one.

  • Get house mode
    • If Normal caller, select normal caller steps given house mode
    • If Priority caller, select priority caller steps given house mode
    • If checkbox is selected for give option for voicemail, play message, listen for "#"
      • If checkbox selected, and If # pressed, go to user voicemail
      • Execute next step which is one of four possible states: (TOP)
        • Ring Extensions
          • Parallel ring selected extensions (2xx)
        • Transfer to another user
          • Transfer call to specified (3xx) extension
        • Go to user's voicemail
          • Transfer call to specified user voicemail
        • Transfer to an outside number
      • Loop back around to (TOP)
    • If all instructions are carried out and still unresolved, drop back to menu (101)

Security Plugin Phone Extensions

Security Notfiications (999)

  • run AGI to determine which rooms have been affected, generate audio message
  • Determine priority in the following order
    • Orbiters then Other numbers (uses one outgoing channel)
      • Ring each orbiter for 15 seconds, if no answer, then ring the next orbiter
        • If answer, Play Security IVR
      • If no more orbiters, ring each "other number" for 15 seconds, if no answer, then ring next other number.
        • If answer, Play security IVR
      • (what to do here if everybody has been rung, and no answer?)
    • Other numbers then Orbiters (uses one outgoing channel)
      • Ring each "other number" for 15 seconds, if no answer, then ring the next number.
        • If answer, Play security IVR
      • If no more "other numbers", ring each Orbiter for 15 seconds, if no answer, then ring the next orbiter.
    • Both orbiters and other numbers at the same time. (uses two outgoing channels)
      • spawn two threads, one for "Orbiters" one for "Other numbers", for each thread
        • Ring each number for 15 seconds, if no answer, then ring the next number.
          • If answer, Play security IVR
        • (What to do when all numbers have been rung?)
Security IVR
  • 1 to Reset the Alarm
    • Play "Alarm has been reset."
  • 2 to Ignore the alarm
  • 3 to call emergency contacts
  • 4 to Notify neighbors
  • 5 to speak to the person in the house


Lists for...

House Modes

  • Armed - At Home
  • Armed - Away
  • Armed - Extended Away
  • Entertaining
  • Sleeping
  • Unarmed - At Home

User Modes

  • At Home
  • Away
  • Do Not Disturb
  • Sleeping

Incoming Call extensions

  • 100 - General Voicemail box
  • 101 - IVR menu

Example Phone extensions

  • 201 - Living Room
  • 202 - Bedroom Master
  • 203 - Den
  • ...

Example User extensions

  • 301 - Thom
  • 302 - Lana
  • 303 - Nina
  • ...

Example User voicemail extensions

  • 401 - Thom
  • 402 - Lana
  • 403 - Nina

Security Extensions

  • 999 - Security
  • 998 - Fire
  • 997 - Air Quality
  • 996 - Movement
  • 995 - Information
  • 994 - Doorbell
  • 993 - Monitor Mode
  • 992 - Babysitter Mode
  • 991 - Speak to person inside house (this needs to be changed in all the code, this was 998)

Contexts

  • from-trunk - Calls from outside lines
  • from-internal - Calls originating from inside the system

Actual dialplan

Call to extension - Context: ext-local

  • This is an example of a standard SIP phone extension 204
+-------+----------+--------+-------------------+
| exten | priority | app    | appdata           |
+-------+----------+--------+-------------------+
| 204   |        1 | Macro  | exten-vm,novm,204 |
| 204   |        2 | Hangup |                   |
+-------+----------+--------+-------------------+
  • The macro itself is still in the extensions.conf file (flatfile)
[macro-exten-vm]
exten => s,1,Macro(user-callerid)
exten => s,n,Set(FROMCONTEXT=exten-vm)
exten => s,n,Set(VMBOX=${ARG1})
exten => s,n,Set(EXTTOCALL=${ARG2})
exten => s,n,Set(CFUEXT=${DB(CFU/${EXTTOCALL})})
exten => s,n,Set(CFBEXT=${DB(CFB/${EXTTOCALL})})
exten => s,n,Set(RT=${IF($[$["${VMBOX}"!="novm"] | $["foo${CFUEXT}"!="foo"]]?${RINGTIMER}:"")})
exten => s,n,Macro(record-enable,${EXTTOCALL},IN)
exten => s,n,Macro(dial,${RT},${DIAL_OPTIONS},${EXTTOCALL})
exten => s,n,Set(SV_DIALSTATUS=${DIALSTATUS})
exten => s,n,GosubIf($[$["${SV_DIALSTATUS}"="NOANSWER"] & $["foo${CFUEXT}"!="foo"]]?docfu,1) ; check for CFU in use on no answer
exten => s,n,GosubIf($[$["${SV_DIALSTATUS}"="BUSY"] & $["foo${CFBEXT}"!="foo"]]?docfb,1) ; check for CFB in use on busy
exten => s,n,Set(DIALSTATUS=${SV_DIALSTATUS})
exten => s,n,NoOp(Voicemail is '${VMBOX}')
exten => s,n,GotoIf($["${VMBOX}" = "novm"]?s-${DIALSTATUS},1) ; no voicemail in use for this extension
exten => s,n,NoOp(Sending to Voicemail box ${EXTTOCALL})
exten => s,n,Macro(vm,${VMBOX},${DIALSTATUS})
exten => docfu,1,Set(RTCFU=${IF($["${VMBOX}"!="novm"]?${RINGTIMER}:"")})
exten => docfu,n,Dial(Local/${CFUEXT}@from-internal/n,${RTCFU},${DIAL_OPTIONS})
exten => docfu,n,Return
exten => docfb,1,Set(RTCFB=${IF($["${VMBOX}"!="novm"]?${RINGTIMER}:"")})
exten => docfb,n,Dial(Local/${CFBEXT}@from-internal/n,${RTCFB},${DIAL_OPTIONS})
exten => docfb,n,Return
exten => s-BUSY,1,NoOp(Extension is reporting BUSY and not passing to Voicemail)
exten => s-BUSY,n,Playtones(busy)
exten => s-BUSY,n,Busy(20)
exten => _s-.,1,Playtones(congestion)
exten => _s-.,n,Congestion(10)

Call to user - Context: from-lmce-custom

  • This context handles the call to a user, means 3xx number
  • This is only an example. Actual dialplan depends on routing choosen in "Webadmin -> Telecom -> Call Routing"
+-------------------------------+----------+--------+----------------------------------------------------------------------------+
| exten                         | priority | app    | appdata                                                                    |
+-------------------------------+----------+--------+----------------------------------------------------------------------------+
| 301                           |        1 | AGI    | lmce-getusermode.agi                                                       |
| 301                           |        2 | Goto   | from-lmce-custom,301-um${USERMODE}-pri${PRIORITYCALLER},1                  |
| 301                           |        3 | Hangup |                                                                            |
| 301-um1-pri0                  |        1 | Goto   | from-lmce-custom,301-um1-pri0-try1,1                                       |
| 301-um1-pri0-try1             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um1-pri0-try1             |        2 | Goto   | from-lmce-custom,301-um1-pri0-try1-${DIALSTATUS},1                         |
| 301-um1-pri0-try1             |        3 | Hangup |                                                                            |
| 301-um1-pri0-try1-BUSY        |        1 | Goto   | from-lmce-custom,301-um1-pri0-try2,1                                       |
| 301-um1-pri0-try1-CHANUNAVAIL |        1 | Goto   | from-lmce-custom,301-um1-pri0-try2,1                                       |
| 301-um1-pri0-try1-CONGESTION  |        1 | Goto   | from-lmce-custom,301-um1-pri0-try2,1                                       |
| 301-um1-pri0-try1-NOANSWER    |        1 | Goto   | from-lmce-custom,301-um1-pri0-try2,1                                       |
| 301-um1-pri0-try2             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um1-pri0-try2             |        2 | Hangup |                                                                            |
| 301-um2-pri0                  |        1 | Goto   | from-lmce-custom,301-um2-pri0-try1,1                                       |
| 301-um2-pri0-try1             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um2-pri0-try1             |        2 | Goto   | from-lmce-custom,301-um2-pri0-try1-${DIALSTATUS},1                         |
| 301-um2-pri0-try1             |        3 | Hangup |                                                                            |
| 301-um2-pri0-try1-BUSY        |        1 | Goto   | from-lmce-custom,301-um2-pri0-try2,1                                       |
| 301-um2-pri0-try1-CHANUNAVAIL |        1 | Goto   | from-lmce-custom,301-um2-pri0-try2,1                                       |
| 301-um2-pri0-try1-CONGESTION  |        1 | Goto   | from-lmce-custom,301-um2-pri0-try2,1                                       |
| 301-um2-pri0-try1-NOANSWER    |        1 | Goto   | from-lmce-custom,301-um2-pri0-try2,1                                       |
| 301-um2-pri0-try2             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um2-pri0-try2             |        2 | Hangup |                                                                            |
| 301-um3-pri0                  |        1 | Goto   | from-lmce-custom,301-um3-pri0-try1,1                                       |
| 301-um3-pri0-try1             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um3-pri0-try1             |        2 | Goto   | from-lmce-custom,301-um3-pri0-try1-${DIALSTATUS},1                         |
| 301-um3-pri0-try1             |        3 | Hangup |                                                                            |
| 301-um3-pri0-try1-BUSY        |        1 | Goto   | from-lmce-custom,301-um3-pri0-try2,1                                       |
| 301-um3-pri0-try1-CHANUNAVAIL |        1 | Goto   | from-lmce-custom,301-um3-pri0-try2,1                                       |
| 301-um3-pri0-try1-CONGESTION  |        1 | Goto   | from-lmce-custom,301-um3-pri0-try2,1                                       |
| 301-um3-pri0-try1-NOANSWER    |        1 | Goto   | from-lmce-custom,301-um3-pri0-try2,1                                       |
| 301-um3-pri0-try2             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um3-pri0-try2             |        2 | Hangup |                                                                            |
| 301-um3-pri1-try1             |        1 | Dial   | Local/200@trusted&Local/202@trusted&Local/203@trusted&Local/204@trusted,15 |
| 301-um3-pri1-try1             |        2 | Goto   | from-lmce-custom,301-um3-pri1-try1-${DIALSTATUS},1                         |
| 301-um3-pri1-try1             |        3 | Hangup |                                                                            |
| 301-um3-pri1-try1-BUSY        |        1 | Goto   | from-lmce-custom,301-um3-pri1-try2,1                                       |
| 301-um3-pri1-try1-CHANUNAVAIL |        1 | Goto   | from-lmce-custom,301-um3-pri1-try2,1                                       |
| 301-um3-pri1-try1-CONGESTION  |        1 | Goto   | from-lmce-custom,301-um3-pri1-try2,1                                       |
| 301-um3-pri1-try1-NOANSWER    |        1 | Goto   | from-lmce-custom,301-um3-pri1-try2,1                                       |
| 301-um3-pri1-try2             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um3-pri1-try2             |        2 | Hangup |                                                                            |
| 301-um4-pri0                  |        1 | Goto   | from-lmce-custom,301-um4-pri0-try1,1                                       |
| 301-um4-pri0-try1             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um4-pri0-try1             |        2 | Goto   | from-lmce-custom,301-um4-pri0-try1-${DIALSTATUS},1                         |
| 301-um4-pri0-try1             |        3 | Hangup |                                                                            |
| 301-um4-pri0-try1-BUSY        |        1 | Goto   | from-lmce-custom,301-um4-pri0-try2,1                                       |
| 301-um4-pri0-try1-CHANUNAVAIL |        1 | Goto   | from-lmce-custom,301-um4-pri0-try2,1                                       |
| 301-um4-pri0-try1-CONGESTION  |        1 | Goto   | from-lmce-custom,301-um4-pri0-try2,1                                       |
| 301-um4-pri0-try1-NOANSWER    |        1 | Goto   | from-lmce-custom,301-um4-pri0-try2,1                                       |
| 301-um4-pri0-try2             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um4-pri0-try2             |        2 | Hangup |                                                                            |
| 301-um4-pri1                  |        1 | Goto   | from-lmce-custom,301-um4-pri1-try1,1                                       |
| 301-um4-pri1-try1             |        1 | Dial   | Local/200@trusted&Local/202@trusted&Local/203@trusted&Local/204@trusted,15 |
| 301-um4-pri1-try1             |        2 | Goto   | from-lmce-custom,301-um4-pri1-try1-${DIALSTATUS},1                         |
| 301-um4-pri1-try1             |        3 | Hangup |                                                                            |
| 301-um4-pri1-try1-BUSY        |        1 | Goto   | from-lmce-custom,301-um4-pri1-try2,1                                       |
| 301-um4-pri1-try1-CHANUNAVAIL |        1 | Goto   | from-lmce-custom,301-um4-pri1-try2,1                                       |
| 301-um4-pri1-try1-CONGESTION  |        1 | Goto   | from-lmce-custom,301-um4-pri1-try2,1                                       |
| 301-um4-pri1-try1-NOANSWER    |        1 | Goto   | from-lmce-custom,301-um4-pri1-try2,1                                       |
| 301-um4-pri1-try2             |        1 | Macro  | vm,301,DIRECTDIAL                                                          |
| 301-um4-pri1-try2             |        2 | Hangup |                                                                            |
+-------------------------------+----------+--------+----------------------------------------------------------------------------+

Context: applications

Extension: *43 - echotest

+----------+----------+---------------+
| priority | app      | appdata       |
+----------+----------+---------------+
|        1 | Answer   |               |
|        2 | Wait     | 1             |
|        3 | Playback | demo-echotest |
|        4 | Playback | beep          |
|        5 | Echo     |               |
|        6 | Playback | demo-echodone |
|        7 | Hangup   |               |
+----------+----------+---------------+

Extension: *60 - speaking clock

+----------+-------------+---------------------------------------+
| priority | app         | appdata                               |
+----------+-------------+---------------------------------------+
|        1 | Answer      |                                       |
|        2 | Wait        | 1                                     |
|        3 | Set         | NumLoops=0                            |
|        4 | Set         | FutureTime=$[${EPOCH} + 11]           |
|        5 | Playback    | at-tone-time-exactly                  |
|        6 | GotoIf      | $["${TIMEFORMAT}" = "kM"]?9           |
|        7 | SayUnixTime | ${FutureTime},,IM 'and' S 'seconds' p |
|        8 | Goto        | 10                                    |
|        9 | SayUnixTime | ${FutureTime},,kM 'and' S 'seconds'   |
|       10 | Set         | TimeLeft=$[${FutureTime} - ${EPOCH}]  |
|       11 | GotoIf      | $[${TimeLeft} < 1]?14                 |
|       12 | Wait        | 1                                     |
|       13 | Goto        | 10                                    |
|       14 | Playback    | beep                                  |
|       15 | Wait        | 5                                     |
|       16 | Set         | NumLoops=$[${NumLoops} + 1]           |
|       17 | GotoIf      | $[${NumLoops} < 5]?4                  |
|       18 | Playback    | goodbye                               |
|       19 | Hangup      |                                       |
+----------+-------------+---------------------------------------+

Extension: *65 - get current extension number

+----------+-----------+---------------+
| priority | app       | appdata       |
+----------+-----------+---------------+
|        1 | Answer    |               |
|        2 | Wait      | 1             |
|        3 | Macro     | user-callerid |
|        4 | Playback  | your          |
|        5 | Playback  | extension     |
|        6 | Playback  | number        |
|        7 | Playback  | is            |
|        8 | SayDigits | ${AMPUSER}    |
|        9 | Wait      | 2             |
|       10 | Hangup    |               |
+----------+-----------+---------------+

Extension: *70 - incoming fax

+----------+------------+-------------------------------------------------------+
| priority | app        | appdata                                               |
+----------+------------+-------------------------------------------------------+
|        1 | Answer     |                                                       |
|        2 | Wait       | 6                                                     |
|        3 | Set        | FAXFILE=/var/spool/asterisk/fax/${CALLERID(num)}.tif  |
|        4 | Set        | FAXFILENOEXT=/var/spool/asterisk/fax/${CALLERID(num)} |
|        5 | Receivefax | ${FAXFILE}                                            |
|        6 | Hangup     |                                                       |
|        1 | Answer     |                                                       |
|        2 | Noop       | Receiving fax for DID ${CALLERID(DNID)}               |
|        3 | Wait       | 3                                                     |
|        4 | Set        | FAXFILE=/var/spool/asterisk/fax/${CALLERID(num)}.tif  |
|        5 | Set        | FAXFILENOEXT=/var/spool/asterisk/fax/${CALLERID(num)} |
|        6 | Receivefax | ${FAXFILE}                                            |
|        7 | Hangup     |                                                       |
+----------+------------+-------------------------------------------------------+

Extension: *96 - listen to music on hold

+----------+-------------+---------+
| priority | app         | appdata |
+----------+-------------+---------+
|        1 | Answer      |         |
|        2 | Wait        | 1       |
|        3 | MusicOnHold |         |
|        4 | Hangup      |         |
+----------+-------------+---------+

Actual config files in database

sip.conf

+------------+------------+----------+------------------+---------------------------------------+
| cat_metric | var_metric | category | var_name         | var_val                               |
+------------+------------+----------+------------------+---------------------------------------+
|          0 |          0 | general  | bindport         | 5060                                  |
|          0 |          1 | general  | bindaddr         | 0.0.0.0                               |
|          0 |          2 | general  | videosupport     | yes                                   |
|          0 |          3 | general  | disallow         | all                                   |
|          0 |          4 | general  | allow            | alaw                                  |
|          0 |          5 | general  | allow            | ulaw                                  |
|          0 |          6 | general  | allow            | h263p                                 |
|          0 |          7 | general  | allow            | h263                                  |
|          0 |          8 | general  | context          | from-sip-external                     |
|          0 |          9 | general  | callerid         | Unknown                               |
|          0 |         10 | general  | tos              | 0x68                                  |
|          0 |         11 | general  | notifyringing    | yes                                   |
|          0 |         12 | general  | notifyhold       | yes                                   |
|          0 |         13 | general  | limitonpeers     | yes                                   |
|          0 |         14 | general  | rtcachefriends   | yes                                   |
|          0 |         15 | general  | rtupdate         | yes                                   |
|          0 |         16 | general  | tcpenable        | yes                                   |
|          0 |         17 | general  | tcpbindaddr      | 0.0.0.0                               |
|          0 |         18 | general  | registerattempts | 0                                     |
|          0 |         19 | general  | registertimeout  | 15                                    |
|          0 |         20 | general  | language         | en                                    |
|          0 |         21 | general  | alwaysauthreject | yes                                   |
|          0 |        101 | general  | register         | username:password@sipserver/extension |
+------------+------------+----------+------------------+---------------------------------------+

iax.conf

+------------+------------+----------+-------------------+-------------------+
| cat_metric | var_metric | category | var_name          | var_val           |
+------------+------------+----------+-------------------+-------------------+
|          0 |          0 | general  | bindport          | 4569              |
|          0 |          1 | general  | bindaddr          | 0.0.0.0           |
|          0 |          2 | general  | disallow          | all               |
|          0 |          3 | general  | allow             | alaw              |
|          0 |          4 | general  | allow             | ulaw              |
|          0 |          5 | general  | allow             | gsm               |
|          0 |          6 | general  | context           | from-sip-external |
|          0 |          7 | general  | mailboxdetail     | yes               |
|          0 |          8 | general  | iaxcompat         | yes               |
|          0 |          9 | general  | nochecksums       | no                |
|          0 |         10 | general  | delayreject       | yes               |
|          0 |         11 | general  | bandwidth         | high              |
|          0 |         12 | general  | dtmfmode          | auto              |
|          0 |         13 | general  | rtcachefriends    | yes               |
|          0 |         14 | general  | rtupdate          | yes               |
|          0 |         15 | general  | tos               | 0x18              |
|          0 |         16 | general  | maxjitterbuffer   | 1000              |
|          0 |         17 | general  | maxjitterinterps  | 10                |
|          0 |         18 | general  | jitterbuffer      | yes               |
|          0 |         19 | general  | resyncthreshold   | 1000              |
|          0 |         20 | general  | trunktimestamps   | yes               |
|          0 |         21 | general  | minregexpire      | 120               |
|          0 |         22 | general  | maxregexpire      | 300               |
|          0 |         23 | general  | iaxthreadcount    | 256               |
|          0 |         24 | general  | iaxmaxthreadcount | 256               |
+------------+------------+----------+-------------------+-------------------+

voicemail.conf

+------------+------------+--------------+------------------+-------------------------------------------------------------+
| cat_metric | var_metric | category     | var_name         | var_val                                                     |
+------------+------------+--------------+------------------+-------------------------------------------------------------+
|          0 |          0 | general      | format           | wav|gsm                                                     |
|          0 |          1 | general      | serveremail      | LinuxMCE@dcerouter                                          |
|          0 |          2 | general      | maxlogins        | 3                                                           |
|          0 |          3 | general      | emaildateformat  | %A, %B %d, %Y at %r                                         |
|          0 |          4 | general      | sendvoicemail    | yes                                                         |
|          0 |          5 | general      | skipms           | 3000                                                        |
|          0 |          6 | general      | maxsilence       | 10                                                          |
|          0 |          7 | general      | silencethreshold | 128                                                         |
|          0 |          8 | general      | maxlogins        | 3                                                           |
|          1 |          0 | zonemessages | eastern          | America/New_York|'vm-received' Q 'digits/at' IMp            |
|          1 |          1 | zonemessages | central          | America/Chicago|'vm-received' Q 'digits/at' IMp             |
|          1 |          2 | zonemessages | central24        | America/Chicago|'vm-received' q 'digits/at' H N 'hours'     |
|          1 |          3 | zonemessages | military         | Zulu|'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p' |
|          1 |          4 | zonemessages | european         | Europe/Copenhagen|'vm-received' a d b 'digits/at' HM        |
+------------+------------+--------------+------------------+-------------------------------------------------------------+

musiconhold.conf

+------------+------------+----------+-----------+-------------------------------+
| cat_metric | var_metric | category | var_name  | var_val                       |
+------------+------------+----------+-----------+-------------------------------+
|          0 |          0 | default  | mode      | files                         |
|          0 |          1 | default  | directory | /var/lib/asterisk/mohmp3      |
|          1 |          0 | none     | mode      | files                         |
|          1 |          1 | none     | directory | /var/lib/asterisk/mohmp3/none |
+------------+------------+----------+-----------+-------------------------------+

cdr_mysql.conf

  • This is for "Call Detail Records". In webadmin -> Telecom -> Call Detail Records is a parser interface
+------------+------------+----------+----------+-----------------------------+
| cat_metric | var_metric | category | var_name | var_val                     |
+------------+------------+----------+----------+-----------------------------+
|          0 |          0 | global   | dbname   | asterisk                    |
|          0 |          1 | global   | table    | cdr                         |
|          0 |          2 | global   | password | lmce                        |
|          0 |          3 | global   | user     | asteriskuser                |
|          0 |          4 | global   | sock     | /var/run/mysqld/mysqld.sock |
+------------+------------+----------+----------+-----------------------------+

google talk

  • This is for google talk. Apparently the api's changed once again, and this is no more the recommended way of getting it to work. But for new modules i *think* we need asterisk 1.10+. This has to be researched and confirmed.

jabber.conf

+------------+------------+----------+--------------+---------+
| cat_metric | var_metric | category | var_name     | var_val |
+------------+------------+----------+--------------+---------+
|          0 |          0 | general  | autoregister | yes     |
+------------+------------+----------+--------------+---------+

gtalk.conf

+------------+------------+----------+------------+------------+
| cat_metric | var_metric | category | var_name   | var_val    |
+------------+------------+----------+------------+------------+
|          0 |          0 | general  | context    | from-trunk |
|          0 |          1 | general  | bindaddr   | 0.0.0.0    |
|          0 |          2 | general  | allowguest | yes        |
|          1 |          0 | guest    | disallow   | all        |
|          1 |          1 | guest    | allow      | ulaw       |
|          1 |          2 | guest    | context    | from-trunk |
|          1 |          3 | guest    | connection | asterisk   |
+------------+------------+----------+------------+------------+