Custom extensions

Hello

My setup

FreePBX - 192.168.1.81
CO/PSTN Matrix Gateway -192.168.1.240 with 4 FXO and 4 FXS ports
BSNL WINGS SIP service (India)
Pfsense+ firewall with NAT and firewall rules
Dynamic public IP allocation by ISP - attached to DDNS domain by pfsense.
softphone - GSwave Lite on android and on iOS

I want to know whether i can create a custom extension which can dial the FXS extension on the matrix gateway.

for example create a extension 333 on freepbx which will be connected to extension 30 on matrix gateway. so if anyone dials ext 333 it will automatically be directed to ext 30.

I need that so that i can assign the custom extension as the default extension for my inbound route.
If yes can you direct me to a step by step tutorial…
i tried checking the freepbx website but its not noob friendly

What is connected to the FXS ports on the Matrix? If analog phones, most of these gateways can be configured to register each FXS port as its own extension, so Custom Extensions would not be needed. Please post a link to the admin manual so we can see if it is possible and how to set that up.

If you really need custom extensions, see

hello

  1. Matrix FXS ports have analog phones connected with extensions - 30,31,32,33
  2. freePBX has extensions 301,302,303 …999
  3. all CO lines are connected to FXO ports of the matrix gateway
  4. by default any calls landing on the FXO port are directed to extension 30
  5. wings service SIP trunk is registered on the freePBX
  6. Wings SIP trunk inbound route is to send all calls to 999

Now what i wish to implement is -

A) make default inbound extension for wings SIP trunk as 30, but there is no extension by 30 in freepbx

So i want to know is there a way i can make a custom extension in free pbx say “666” which will forward all calls to extension “30” using dial option

reference thread
system manual of the matrix gateway - setu VFX 844

then next step

B) transfer all calls on SIP trunk to IVR so that it can be transferred to multiple extensions as per the caller needs.

IMO, it is more straightforward to make each FXS port a normal pjsip extension on the PBX. Pick some numbers that don’t conflict with other extensions or services that you already have, for example 201-204.

Create 4 pjsip extensions numbered 201 through 204. On the Matrix, create 4 corresponding trunks. For the first trunk, set SIP Trunk Mode to Proxy, SIP ID and Authentication ID to 201 and Authentication Password to match Secret for the extension. With the trunks set up, they should all show as registered in FreePBX and Active on the Matrix.

Then, set up each FXS port with corresponding numbers 201 through 204, with Destination for outgoing calls set to Fixed, selecting the corresponding trunk. The dial plan logic on the Matrix is pretty complex and you will either need to set it up to match the numbering plan of your PBX, or set up up so that it sends calls after a delay or when the user presses # after entering the number. At this point you should be able to make calls from the FXS ports.

Set up each trunk to route incoming calls to a Fixed destination port, selecting the corresponding FXS port. You should now be able to dial 201 from a non-Matrix extension on the PBX and ring to FXS port 1.

Once you get this far, you can set up your IVR so that you can dial by extension. If the caller selects 201, it should ring the first FXS port. Or you could (for example) set it up so option 1 rings 201, option 2 rings 202, etc.

hello

MY matrix gateway is setup—
4 FXO lines - 3 occupied
4 FXS lines - all occupied - namely 30,31,32,33
default CO lines landing destination - first FXS port (ext 30)
Matrix is registered with freepbx on peer-2-peer basis.

All i want to achieve is have a custom extension (for internal use) on freepbx which should forward all calls on fixed extension on matrix FXS port (ext 30)

your implementation idea seems too complicated for my level.

In my mind, instead of changing so many settings on the matrix and high possibility of breaking it, i would prefer changing few settings on freepbx and transfering calls from freepbx to matrix rather than doing the opposite of it. Also in a event of freepbx failing at least the matrix will keep working and keep the workflow going.

Also with two extension numbers (30 and 201) for the same physical extension and pressing extra buttons after each number dialed, there would be more confusion for the staff.

Also i have implemented abbrivated dialing feature code in the freepbx which both matrix extensions and freepbx extensions are able to use.

Also the matrix gateway is presently in production environment in a hospital so i do not want to break anything with wrong configuration and affect the workflow of the hospital.

the SIP trunk (wings service) is on the freepbx and thus i could try to change config and still keep the matrix gateway working.

please let me know any other way

as a side note, I am also trying to
-get matrix rotate the CO lines for outbound calls
-make three different individual sip trunks for each CO lines with CID
-setup freepbx with three different trunks with corresponding CID
but still not able to do that.

For Custom extension to ring ext. 30, set the Dial field to
PJSIP/[email protected]
where Matrix is the name of the trunk to your gateway.

If the telco will do it, it’s best to have the CO lines in a ‘hunt group’, sometimes called ‘rotary’, which will automatically select the first not-busy line when someone calls in on the main number. It should also be possible to have calls made from any of the lines to show the main number as CID. That way, you only have to publicize one number that everyone will call.

Do you mean three trunks to the Matrix, with each one sending calls to the corresponding FXO port? That shouldn’t be a problem, but you must decide how the correct trunk will be chosen, e.g. the user dials a prefix code to select the trunk, he uses different line buttons on his IP phone to choose the trunk, specific extensions on FreePBX use different trunks, etc.

hello

i got freepbx extensions to Matrix extensions working
created a new custom extension and added local/[email protected] in the dial settings
all seems to work.

Now i need to learn how to make extensions with external numbers to be called.
edit:
got external numbers working
create new custom extenstion and add local/[email protected],30 in the dial settings

https://wiki.freepbx.org/display/FPG/Misc+Destinations+User+Guide

If the telco will do it, it’s best to have the CO lines in a ‘hunt group’, sometimes called ‘rotary’, which will automatically select the first not-busy line when someone calls in on the main number. It should also be possible to have calls made from any of the lines to show the main number as CID. That way, you only have to publicize one number that everyone will call.

No actually i have three different regular CO lines with individual CID. I have set the matrix to do rotation of the lines but somehow it picks up the first free line available going ascending from port 1 to port 4.

Do you mean three trunks to the Matrix, with each one sending calls to the corresponding FXO port? That shouldn’t be a problem, but you must decide how the correct trunk will be chosen, e.g. the user dials a prefix code to select the trunk, he uses different line buttons on his IP phone to choose the trunk, specific extensions on FreePBX use different trunks, etc.

yes i want to have three different trunk lines registered to freepbx from matrix and extensions can key in specific prefix to get the individual trunks or get the first available trunk if no prefix is dialed.
all physical phones are analog ones (have 4FXS ports on matrix) and all ip phones are soft phones registered via freepbx.