Skip to content

Commit

Permalink
v21n README cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
chrsmj committed Feb 12, 2024
1 parent 4599ef9 commit b50700d
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 85 deletions.
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,11 @@ new extensions from your desk phone.

3. Download copy of AEL file you are currently reading from GitHub to your PBX:

wget https://raw.githubusercontent.com/chrsmj/always-be-conferencing/master/extensions-pngnpbx-abc-v21n.ael
wget https://raw.githubusercontent.com/chrsmj/always-be-conferencing/master/extensions-pngnpbx-abc-v21n.ael2

4. Copy in the new ABC AEL file:

sudo cp extensions-pngnpbx-abc-v21n.ael /etc/asterisk/
sudo cp extensions-pngnpbx-abc-v21n.ael2 /etc/asterisk/

5. Check if you already got some other AEL files active in your existing Asterisk install:

Expand Down Expand Up @@ -80,11 +80,11 @@ new extensions from your desk phone.

7A. Overwrite method

echo '#include "extensions-pngnpbx-abc-v21n.ael"' | sudo tee /etc/asterisk/extensions.ael
echo '#include "extensions-pngnpbx-abc-v21n.ael2"' | sudo tee /etc/asterisk/extensions.ael

7B. Append method

echo '#include "extensions-pngnpbx-abc-v21n.ael"' | sudo tee -a /etc/asterisk/extensions.ael
echo '#include "extensions-pngnpbx-abc-v21n.ael2"' | sudo tee -a /etc/asterisk/extensions.ael

8. Choose your integration method with FreePBX -- any or all of the following 8A-8G:

Expand Down
114 changes: 33 additions & 81 deletions extensions-pngnpbx-abc-v21n.ael2
Original file line number Diff line number Diff line change
Expand Up @@ -456,7 +456,6 @@ TODO LIST - generally
~ Speech-to-text recognition with Speech...() apps.



Quick Start mini-HOWTO demo for first time ABC users on FreePBX
===============================================================
Up and running in 15 minutes!
Expand All @@ -470,14 +469,14 @@ new extensions from your desk phone.

1. Start out by test dialing these numbers from your desk phone:

123*222*0
123*222*1
123*222*2
123*222
123#222
123222 (that's "123 ABC" on the phone keypad)
922
933
123*222*0
123*222*1
123*222*2
123*222
123#222
123222 (that's "123 ABC" on the phone keypad)
922
933

You'll probably hear some sort of error message on most of
them. This is different for each install. Use your judgement.
Expand All @@ -488,30 +487,30 @@ new extensions from your desk phone.

2. SSH into your PBX:

ssh muhpbx
ssh muhpbx

3. Download copy of AEL file you are currently reading from GitHub to your PBX:

wget https://raw.githubusercontent.com/chrsmj/always-be-conferencing/master/extensions-pngnpbx-abc-v21n.ael
wget https://raw.githubusercontent.com/chrsmj/always-be-conferencing/master/extensions-pngnpbx-abc-v21n.ael2

4. Copy in the new ABC AEL file:

sudo cp extensions-pngnpbx-abc-v21n.ael /etc/asterisk/
sudo cp extensions-pngnpbx-abc-v21n.ael2 /etc/asterisk/

5. Check if you already got some other AEL files active in your existing Asterisk install:

ls -last /etc/asterisk/*.ael*
ls -last /etc/asterisk/*.ael*

If you only see this ABC AEL file, then jump ahead to Step 7A.

6. If you see other exisiting AEL files, then check the hashes:

md5sum /etc/asterisk/extensions*.ael*
md5sum /etc/asterisk/extensions*.ael*

The Asterisk sample AEL file "extensions.ael" MD5 hash value
from versions ~1.8 to 18+ is:

9e8a0e48880f732345eac9ed889b6115
9e8a0e48880f732345eac9ed889b6115

If your hash matches that, great, you've got a default AEL file.
Proceed to Step 7A.
Expand All @@ -526,47 +525,47 @@ new extensions from your desk phone.

7A. Overwrite method

echo '#include "extensions-pngnpbx-abc-v21n.ael"' | sudo tee /etc/asterisk/extensions.ael
echo '#include "extensions-pngnpbx-abc-v21n.ael2"' | sudo tee /etc/asterisk/extensions.ael

7B. Append method

echo '#include "extensions-pngnpbx-abc-v21n.ael"' | sudo tee -a /etc/asterisk/extensions.ael
echo '#include "extensions-pngnpbx-abc-v21n.ael2"' | sudo tee -a /etc/asterisk/extensions.ael

8. Choose your integration method with FreePBX -- any or all of the following 8A-8G:

8A. GPS and other geolocation integration
8A. GPS and other geolocation integration

echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-gps' | sudo tee -a /etc/asterisk/extensions_custom.conf
echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-gps' | sudo tee -a /etc/asterisk/extensions_custom.conf

8B. Emergency Outbound Calling - 922 testing - TONGA WARNING: Do not enable this 922 just yet in TONGA and maybe more countries.
8B. Emergency Outbound Calling - 922 testing - TONGA WARNING: Do not enable this 922 just yet in TONGA and maybe more countries.

echo -e '[from-internal-custom]\nexten => 922,1,Goto(pngnpbx-abc-easy-goto-eoc,922,simple)' | sudo tee -a /etc/asterisk/extensions_custom.conf
echo -e '[from-internal-custom]\nexten => 922,1,Goto(pngnpbx-abc-easy-goto-eoc,922,simple)' | sudo tee -a /etc/asterisk/extensions_custom.conf

8C. Emergency Outbound Calling - 933 more testing
8C. Emergency Outbound Calling - 933 more testing

echo -e '[from-internal-custom]\nexten => 933,1,Goto(pngnpbx-abc-easy-goto-eoc,933,tincan)' | sudo tee -a /etc/asterisk/extensions_custom.conf
echo -e '[from-internal-custom]\nexten => 933,1,Goto(pngnpbx-abc-easy-goto-eoc,933,tincan)' | sudo tee -a /etc/asterisk/extensions_custom.conf

8D. Emergency Outbound Calling - parallel notifications - US AND CANADA AND OTHERS WARNING: DO NOT CHANGE 911 ROUTING
UNTIL AFTER YOU COMPLETE GOOD TESTS WITH 922 AND 933. ONLY THEN DO YOUR 911 CALL TEST AT OFF-PEAK PSAP HOURS.
JUST BE NICE - DO NOT HANG UP ON THE TEST - TELL THEM IT IS A TEST AND CHECK YOUR LOCATION AND CALLER ID INFO!
8D. Emergency Outbound Calling - parallel notifications - US AND CANADA AND OTHERS WARNING: DO NOT CHANGE 911 ROUTING
UNTIL AFTER YOU COMPLETE GOOD TESTS WITH 922 AND 933. ONLY THEN DO YOUR 911 CALL TEST AT OFF-PEAK PSAP HOURS.
JUST BE NICE - DO NOT HANG UP ON THE TEST - TELL THEM IT IS A TEST AND CHECK YOUR LOCATION AND CALLER ID INFO!

echo -e '[from-internal-custom]\nexten => 911,1,Goto(pngnpbx-abc-easy-goto-eoc,911,parallel)' | sudo tee -a /etc/asterisk/extensions_custom.conf
echo -e '[from-internal-custom]\nexten => 911,1,Goto(pngnpbx-abc-easy-goto-eoc,911,parallel)' | sudo tee -a /etc/asterisk/extensions_custom.conf

8E. Allow full demo integration with FreePBX managed internal phones:
8E. Allow full demo integration with FreePBX managed internal phones:

echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-demo' | sudo tee -a /etc/asterisk/extensions_custom.conf
echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-demo' | sudo tee -a /etc/asterisk/extensions_custom.conf

8F. Allow video door bell demo:
8F. Allow video door bell demo:

echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-doorbell' | sudo tee -a /etc/asterisk/extensions_custom.conf
echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-doorbell' | sudo tee -a /etc/asterisk/extensions_custom.conf

8G. Allow Insta Teams Mode:
8G. Allow Insta Teams Mode:

echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-itm' | sudo tee -a /etc/asterisk/extensions_custom.conf
echo -e '[from-internal-custom]\ninclude => pngnpbx-abc-easy-include-itm' | sudo tee -a /etc/asterisk/extensions_custom.conf

9. Double-check if permissions and just plain existence of files seems reasonable:

ls -last /etc/asterisk/extensions*.{conf,ael}*
ls -last /etc/asterisk/extensions*.{conf,ael}*

10. Press "Apply Changes" button in FreePBX GUI.
If you don't see the button, then make a small change elsewhere in the GUI,
Expand All @@ -593,53 +592,6 @@ new extensions from your desk phone.


Thus ends the mini-HOWTO for integration with FreePBX.
See further below for several more Examples with FreePBX.



PREREQUISITE: The ASTERISK Extension Language (AEL)
===================================================

This is not your standard dial plan "/etc/asterisk/extensions.conf" file!

ABC is configured in the ASTERISK Extension Language (AEL). AEL syntax is
converted into standard CONF file format when loaded in to system memory
by ASTERISK. But you should not need to edit this ABC AEL file very often,
if ever. It only needs to be *included* into your dialplan.

Please copy this file into your "/etc/asterisk/" directory and set it to
read-only permission for the user/group your ASTERISK process runs as (usually
"root" or "asterisk".)

To confirm you have AEL working in your install of ASTERISK, you can run this
command on the ASTERISK CLI:

sirius*CLI> core show help ael

...which, if loaded properly, should list "ael reload" and "ael set debug".

Otherwise, if this is your first time using AEL, then you may need to manually
load the module, or take other steps. This may include rebuilding from source
code eg. selecting the AEL module when using "make menuconfig".

After confirming AEL is active and working, edit (or make) this file:

/etc/asterisk/extensions.ael

And add this line (with no spaces at the front):

#include "extensions-pngnpbx-abc-v21n.ael2"

...then save the file. Now you should be able to load the AEL config and view
the in-memory dial plan in CONF format:

sirius*CLI> ael reload
sirius*CLI> dialplan show pngnpbx-abc-dial

If that works, and you see a bunch of dial plan looking output, Congratulations!
You are now able to use ABC from standard dial plan in "extensions.conf" file
-- or in the "extensions_custom.conf" file if you are using FreePBX.



Simple Mode vs. Tin Can Mode vs. Insta Teams Mode vs. Parallel Notification Mode
Expand Down

0 comments on commit b50700d

Please sign in to comment.