Incredible PBX 2027
From VoIP.ms Wiki
| [checked revision] | [checked revision] |
(→Route settings) |
|||
| (28 intermediate revisions not shown) | |||
| Line 1: | Line 1: | ||
[[File:IncrediblePBX-VoIPms.jpg|300px|right|link=https://incrediblepbx.com/|IncrediblePBX]] | [[File:IncrediblePBX-VoIPms.jpg|300px|right|link=https://incrediblepbx.com/|IncrediblePBX]] | ||
| - | Incredible PBX is an open source, GPL aggregation which bundles industry-leading components to provide a production-ready, turnkey unified communications VoIP platform with support for SIP and IAX. IncrediblePBX® includes a choice of CentOS®, Rocky®, Debian®, Ubuntu®, or Raspbian® operating systems coupled with the Apache® web server, PHP®, MariaDB®/MySQL® DBMS, SendMail® or Exim® mail server, HylaFax®/AvantFax®, WebMin®, OpenVPN®, NeoRouter® VPN, IPtables firewall plus Fail2Ban® and PortKnocker®, and the latest releases of Asterisk® and FreePBX®. It is the only aggregation offering the ability to customize and recompile Asterisk from source code with your choice of Asterisk versions. Versions of Incredible PBX can be deployed with on-premise hardware including the Raspberry Pi®, in the cloud on a variety of platforms, or on virtual machine platforms: VirtualBox®, VMware®. | + | Incredible PBX is an open source, GPL aggregation which bundles industry-leading components to provide a production-ready, turnkey unified communications VoIP platform with support for SIP and IAX. IncrediblePBX® includes a choice of CentOS®, Rocky®, Debian®, Ubuntu®, or Raspbian® operating systems coupled with the Apache® web server, PHP®, MariaDB®/MySQL® DBMS, SendMail® or Exim® mail server, HylaFax®/AvantFax®, WebMin®, OpenVPN®, NeoRouter® VPN, IPtables firewall plus Fail2Ban® and PortKnocker®, and the latest releases of Asterisk® and FreePBX®. It is the only aggregation offering the ability to customize and recompile Asterisk from source code with your choice of Asterisk versions. Versions of Incredible PBX can be deployed with on-premise hardware including the Raspberry Pi®, in the cloud on a variety of platforms, or on virtual machine platforms: VirtualBox®, VMware®. Proxmox®, Windows 11 WSL, Mac UTM, and Linux LXC Containers. |
== Pre-requisites == | == Pre-requisites == | ||
| - | + | Before proceeding, a sub-account is required. This will be your SIP trunk. | |
| - | + | You can create one under your VoIP.ms client portal, under '''Sub Account''' > '''Create Sub-Account'''. Be sure you have those following setting in it. | |
| - | Before proceeding, a sub-account is required. This will be your SIP trunk | + | |
:- '''Authentication type''': (x) User/Password Authentication | :- '''Authentication type''': (x) User/Password Authentication | ||
:- '''Device type''': (x) Asterisk, IP PBX, Gateway or VoIP Switch | :- '''Device type''': (x) Asterisk, IP PBX, Gateway or VoIP Switch | ||
:- '''CallerID Number''': (x) I use a system capable of passing its own CallerID | :- '''CallerID Number''': (x) I use a system capable of passing its own CallerID | ||
:- '''Allowed Codecs''': Only select '''[x] G722''' for HD voice | :- '''Allowed Codecs''': Only select '''[x] G722''' for HD voice | ||
| - | |||
= Trunk Configuration = | = Trunk Configuration = | ||
| Line 20: | Line 18: | ||
We will reuse the one that is already present and adapt the configuration. | We will reuse the one that is already present and adapt the configuration. | ||
| - | :[1] Log into your IncrediblePBX admin. | + | : '''[1]''': Log into your IncrediblePBX admin. |
| - | :[2] Go under '''"Connectivity"''' tab then '''"Trunk"'''. | + | : '''[2]''': Go under '''"Connectivity"''' tab then '''"Trunk"'''. |
| - | :[3] Search for the trunk '''"VoIPms-Registered"''' and click on '''"Edit"''' | + | : '''[3]''': Search for the trunk '''"VoIPms-Registered"''' and click on '''"Edit"''' |
| - | == General | + | == General tab == |
| - | : '''Trunk Name''': You can change the name of the trunk. Must be in lowercases. Hyphen is accepted. | + | : '''[1]''': '''Trunk Name''': You can change the name of the trunk. Must be in lowercases. Hyphen is accepted. |
| - | : '''Outbound CallerID''': (Optional, you can leave it empty and define the caller ID on your outbound route instead. | + | : '''[2]''': '''Outbound CallerID''': (Optional, you can leave it empty and define the caller ID on your outbound route instead. |
:: If you want to define a specific outbound caller ID Name and Number for all outbound calls that will use this trunk. | :: If you want to define a specific outbound caller ID Name and Number for all outbound calls that will use this trunk. | ||
:: If you do so, after setting the caller ID, you will need to select '''Force Trunk CID''' on the ''CID Option''. The format whould be: | :: If you do so, after setting the caller ID, you will need to select '''Force Trunk CID''' on the ''CID Option''. The format whould be: | ||
| + | :: Enter your CallerID Name and Number in the following format: | ||
<div style="margin-left:50px; | <div style="margin-left:50px; | ||
padding:5px; | padding:5px; | ||
| Line 38: | Line 37: | ||
box-shadow: 8px 6px 9px -2px #f2f2f2; | box-shadow: 8px 6px 9px -2px #f2f2f2; | ||
background-color: black; | background-color: black; | ||
| - | width: | + | width:70%;"> |
| - | + | "CALLERID NAME" <##########> | |
</div> | </div> | ||
| - | |||
| - | |||
<div style="margin-left:50px; | <div style="margin-left:50px; | ||
padding:8px; | padding:8px; | ||
| Line 51: | Line 48: | ||
width:70%;"> | width:70%;"> | ||
| - | '''IMPORTANT - Outbound CallerID'''<br/> | + | '''⚠️ IMPORTANT - Outbound CallerID'''<br/> |
* Entering outbound Caller ID Name, it must be in '''CAPITAL LETTERS'''. ''This will appears more clearly/visible on some devices.'' <br/> | * Entering outbound Caller ID Name, it must be in '''CAPITAL LETTERS'''. ''This will appears more clearly/visible on some devices.'' <br/> | ||
* You must '''NOT use any special characters'''. ''They will not be displayed and it prevents potential outbound call issues.'' <br/> | * You must '''NOT use any special characters'''. ''They will not be displayed and it prevents potential outbound call issues.'' <br/> | ||
| Line 57: | Line 54: | ||
* Spaces are allowed in a caller ID name but count as a characters. ''(do not exceed 15 chars. in total)''. | * Spaces are allowed in a caller ID name but count as a characters. ''(do not exceed 15 chars. in total)''. | ||
</div> | </div> | ||
| - | : '''Disable Trunk''': Set it to '''No''' | + | : |
| + | : '''[3]''': '''Disable Trunk''': Set it to '''No''' | ||
== Dial Number Manipulation Rules Tab == | == Dial Number Manipulation Rules Tab == | ||
| - | + | : Leave this section empty. | |
== sip Settings Tab == | == sip Settings Tab == | ||
| - | === Outgoing === | + | === Outgoing tab === |
You will need to adapt the '''PEER Details''' | You will need to adapt the '''PEER Details''' | ||
: '''Trunk Name''': You can change the name of the trunk. Must be in lowercases. Hyphen is accepted. | : '''Trunk Name''': You can change the name of the trunk. Must be in lowercases. Hyphen is accepted. | ||
| Line 77: | Line 75: | ||
width:58%;"> | width:58%;"> | ||
| - | : username=######_SubAccount | + | : <font color="#FFFF00">username</font>=<font color="#00FF00">######_SubAccount</font> |
| - | : type=friend | + | : <font color="#FFFF00">type</font>=<font color="#FF00FF">friend</font> |
| - | : trustrpid=yes | + | : <font color="#FFFF00">trustrpid</font>=<font color="#FF00FF">yes</font> |
| - | : sendrpid=yes | + | : <font color="#FFFF00">sendrpid</font>=<font color="#FF00FF">yes</font> |
| - | : secret= | + | : <font color="#FFFF00">secret</font>=<font color="#00FF00">YourSubaccountPasswordHere</font> |
| - | : qualify=yes | + | : <font color="#FFFF00">qualify</font>=<font color="#FF00FF">yes</font> |
| - | : nat=yes | + | : <font color="#FFFF00">nat</font>=<font color="#FF00FF">yes</font> |
| - | : insecure=port,invite | + | : <font color="#FFFF00">insecure</font>=<font color="#FF00FF">port,invite</font> |
| - | : host=atlanta.voip.ms | + | : <font color="#FFFF00">host</font>=<font color="#00FF00">atlanta.voip.ms</font> ;This is the pop server that matches your DID. |
| - | : fromuser=######_SubAccount | + | : <font color="#FFFF00">fromuser</font>=<font color="#00FF00">######_SubAccount</font> |
| - | : disallow=all | + | : <font color="#FFFF00">disallow</font>=<font color="#FF00FF">all</font> |
| - | : context=from-trunk | + | : <font color="#FFFF00">context</font>=<font color="#FF00FF">from-trunk</font> |
| - | : canreinvite=nonat | + | : <font color="#FFFF00">canreinvite</font>=<font color="#FF00FF">nonat</font> |
| - | : allow=g722&ulaw | + | : <font color="#FFFF00">allow</font>=<font color="#00FF00">g722&ulaw</font> |
</div> | </div> | ||
| - | + | === Incoming tab === | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | === Incoming === | + | |
Adjust the '''register String''' with your sub-account credentials. It must be formated this way. | Adjust the '''register String''' with your sub-account credentials. It must be formated this way. | ||
| Line 115: | Line 109: | ||
== Inbound Route == | == Inbound Route == | ||
| + | === General tab === | ||
| + | :'''[1]''': Go under '''Connectivity''' then '''Inbound Routes''' | ||
| + | :'''[2]''': Click on '''+ Add Inbound Route''' | ||
| + | ::'''-''' '''Description''': Enter a description for this inbound route. | ||
| + | ::'''-''' '''DID Number''': Enter your DID Number. ''(Without Hyphen, dot or parentheses)'' | ||
| + | ::'''-''' '''Set destination''': Choose the destination where you want to route the incoming call. | ||
| + | :'''[3]''': Click '''Save''' | ||
| + | :'''[4]''': Click '''Reload''' on the corner Right of the window. | ||
| + | |||
== Outbound Routes == | == Outbound Routes == | ||
| - | If you just install IncrediblePBX, you will find | + | If you just install IncrediblePBX, you will find an outbound route named "default". You can adapt it to use the VoIP.ms route you have created. |
:'''[1]''': Go under '''Connectivity''' then '''Outbound Routes''' | :'''[1]''': Go under '''Connectivity''' then '''Outbound Routes''' | ||
| - | :'''[2]''': Where the '''Default''' | + | :'''[2]''': Where the outbound route named '''Default''', click on the '''Edit''' button. ''(Or you can create a new Outbound route by clicking on "+ Add Outbound Route")'' |
| - | === Route settings === | + | === Route settings tab=== |
:'''[1]''': '''Route Name''': You can change the name of your default route if you need. | :'''[1]''': '''Route Name''': You can change the name of your default route if you need. | ||
:'''[2]''': '''Route CID''': (Optional, you can leave it empty if you defined the caller ID directly in the trunk settings. | :'''[2]''': '''Route CID''': (Optional, you can leave it empty if you defined the caller ID directly in the trunk settings. | ||
| Line 150: | Line 153: | ||
* Spaces are allowed in a caller ID name but count as a characters. ''(do not exceed 15 chars. in total)''. | * Spaces are allowed in a caller ID name but count as a characters. ''(do not exceed 15 chars. in total)''. | ||
</div> | </div> | ||
| + | |||
:'''[3]''': '''Trunk Sequence for Matched Routes''': Replace the current Trunk to the one we have edited. Eg: VoIPms-Registered. (Or then name you have entered.) Then delete the other trunks below by pressing the trash icon. | :'''[3]''': '''Trunk Sequence for Matched Routes''': Replace the current Trunk to the one we have edited. Eg: VoIPms-Registered. (Or then name you have entered.) Then delete the other trunks below by pressing the trash icon. | ||
| - | == Dial Pattern == | + | === Dial Pattern tab === |
| - | You can customize this section if you need specific rules matching your needs, such as a '''"prefix"''' to dial out. | + | You can customize this section if you need specific rules matching your needs, such as a '''"prefix"''' to dial out through the trunk you have selected. |
:''Eg: if you enter '''9''' on prefix section'', you will need to dial 9 following the matching pattern to make the call. The prefix will be removed when it will be send to the trunk. | :''Eg: if you enter '''9''' on prefix section'', you will need to dial 9 following the matching pattern to make the call. The prefix will be removed when it will be send to the trunk. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | : '''You can use the following | + | ::'''You can use the following patterns compatible for VoIPms in the colomn "[Match Pattern]"'''. |
<div style="margin-left:50px; | <div style="margin-left:50px; | ||
| Line 179: | Line 170: | ||
box-shadow: 8px 6px 9px -2px #f2f2f2; | box-shadow: 8px 6px 9px -2px #f2f2f2; | ||
background-color: black; | background-color: black; | ||
| - | width: | + | width:70%;"> |
{| style="background: inherit; color: silver;" | {| style="background: inherit; color: silver;" | ||
| Line 218: | Line 209: | ||
|} | |} | ||
</div> | </div> | ||
| + | |||
| + | :'''[4]''': Click '''Save''' | ||
Latest revision as of 20:55, 27 February 2024
Incredible PBX is an open source, GPL aggregation which bundles industry-leading components to provide a production-ready, turnkey unified communications VoIP platform with support for SIP and IAX. IncrediblePBX® includes a choice of CentOS®, Rocky®, Debian®, Ubuntu®, or Raspbian® operating systems coupled with the Apache® web server, PHP®, MariaDB®/MySQL® DBMS, SendMail® or Exim® mail server, HylaFax®/AvantFax®, WebMin®, OpenVPN®, NeoRouter® VPN, IPtables firewall plus Fail2Ban® and PortKnocker®, and the latest releases of Asterisk® and FreePBX®. It is the only aggregation offering the ability to customize and recompile Asterisk from source code with your choice of Asterisk versions. Versions of Incredible PBX can be deployed with on-premise hardware including the Raspberry Pi®, in the cloud on a variety of platforms, or on virtual machine platforms: VirtualBox®, VMware®. Proxmox®, Windows 11 WSL, Mac UTM, and Linux LXC Containers.
Contents |
Pre-requisites
Before proceeding, a sub-account is required. This will be your SIP trunk. You can create one under your VoIP.ms client portal, under Sub Account > Create Sub-Account. Be sure you have those following setting in it.
- - Authentication type: (x) User/Password Authentication
- - Device type: (x) Asterisk, IP PBX, Gateway or VoIP Switch
- - CallerID Number: (x) I use a system capable of passing its own CallerID
- - Allowed Codecs: Only select [x] G722 for HD voice
Trunk Configuration
When you install IncrediblePBX, it comes with multiple trunk preset that helps you to get up and running faster. VoIP.ms is present in the list.
We will reuse the one that is already present and adapt the configuration.
- [1]: Log into your IncrediblePBX admin.
- [2]: Go under "Connectivity" tab then "Trunk".
- [3]: Search for the trunk "VoIPms-Registered" and click on "Edit"
General tab
- [1]: Trunk Name: You can change the name of the trunk. Must be in lowercases. Hyphen is accepted.
- [2]: Outbound CallerID: (Optional, you can leave it empty and define the caller ID on your outbound route instead.
- If you want to define a specific outbound caller ID Name and Number for all outbound calls that will use this trunk.
- If you do so, after setting the caller ID, you will need to select Force Trunk CID on the CID Option. The format whould be:
- Enter your CallerID Name and Number in the following format:
"CALLERID NAME" <##########>
⚠️ IMPORTANT - Outbound CallerID
- Entering outbound Caller ID Name, it must be in CAPITAL LETTERS. This will appears more clearly/visible on some devices.
- You must NOT use any special characters. They will not be displayed and it prevents potential outbound call issues.
- Do NOT exceed 15 characters. Traditional canadian providers will not show more than 15 characters. We suggest shrinking or adapt the name.
- Spaces are allowed in a caller ID name but count as a characters. (do not exceed 15 chars. in total).
- [3]: Disable Trunk: Set it to No
Dial Number Manipulation Rules Tab
- Leave this section empty.
sip Settings Tab
Outgoing tab
You will need to adapt the PEER Details
- Trunk Name: You can change the name of the trunk. Must be in lowercases. Hyphen is accepted.
- PEER Details: Change the username, secret, host, fromuser, allow
- username=######_SubAccount
- type=friend
- trustrpid=yes
- sendrpid=yes
- secret=YourSubaccountPasswordHere
- qualify=yes
- nat=yes
- insecure=port,invite
- host=atlanta.voip.ms ;This is the pop server that matches your DID.
- fromuser=######_SubAccount
- disallow=all
- context=from-trunk
- canreinvite=nonat
- allow=g722&ulaw
Incoming tab
Adjust the register String with your sub-account credentials. It must be formated this way.
- Sub-account username : Sub-account Password @ VoIPmsPOP.voip.ms / Sub account username
######_SubAccount:YourSubAccountPassword@montreal1.voip.ms/######_SubAccount
Inbound Route
General tab
- [1]: Go under Connectivity then Inbound Routes
- [2]: Click on + Add Inbound Route
- - Description: Enter a description for this inbound route.
- - DID Number: Enter your DID Number. (Without Hyphen, dot or parentheses)
- - Set destination: Choose the destination where you want to route the incoming call.
- [3]: Click Save
- [4]: Click Reload on the corner Right of the window.
Outbound Routes
If you just install IncrediblePBX, you will find an outbound route named "default". You can adapt it to use the VoIP.ms route you have created.
- [1]: Go under Connectivity then Outbound Routes
- [2]: Where the outbound route named Default, click on the Edit button. (Or you can create a new Outbound route by clicking on "+ Add Outbound Route")
Route settings tab
- [1]: Route Name: You can change the name of your default route if you need.
- [2]: Route CID: (Optional, you can leave it empty if you defined the caller ID directly in the trunk settings.
- If you want to define a specific outbound caller ID Name and Number for all outbound calls that will use this outbound route.
- Enter your CallerID Name and Number in the following format:
"CALLERID NAME" <##########>
⚠️ IMPORTANT - Outbound CallerID
- Entering outbound Caller ID Name, it must be in CAPITAL LETTERS. This will appears more clearly/visible on some devices.
- You must NOT use any special characters. They will not be displayed and it prevents potential outbound call issues.
- Do NOT exceed 15 characters. Traditional canadian providers will not show more than 15 characters. We suggest shrinking or adapt the name.
- Spaces are allowed in a caller ID name but count as a characters. (do not exceed 15 chars. in total).
- [3]: Trunk Sequence for Matched Routes: Replace the current Trunk to the one we have edited. Eg: VoIPms-Registered. (Or then name you have entered.) Then delete the other trunks below by pressing the trash icon.
Dial Pattern tab
You can customize this section if you need specific rules matching your needs, such as a "prefix" to dial out through the trunk you have selected.
- Eg: if you enter 9 on prefix section, you will need to dial 9 following the matching pattern to make the call. The prefix will be removed when it will be send to the trunk.
- You can use the following patterns compatible for VoIPms in the colomn "[Match Pattern]".
| MATCH PATTERN COL
| Description
|
|---|---|
| NXXNXXXXXX | (North American phone number) |
| 1NXXNXXXXXX | (North American phone number with country code 1) |
| 4443 | (Echo test) |
| 4747 | (DTMF test) |
| 988 | (Health line) |
| 911 | (Emergency) |
| 822 | (CallerID playback) |
| 511 | (Weather service) |
| 411 | (Directory assistance) |
| 311 | (Non-emergency) |
| 211 | (Municipality line) |
| 00XX. | (Int. prefix, that uses the route set under the sub-account) |
| 011XX. | (Int. prefix, that uses the route set under the sub-account) |
| 033XX. | (Int. prefix, that will force using the Value route only for the call) |
| 044XX. | (Int. prefix, that will force using the Premium route only for the call) |
- [4]: Click Save
