Freepbx endpoint manager - Prepend a code before dialing from an fxo line

Good morning to all and merry Christmas.

Is there a way from endpoint manager on a key pressed to prepend a code before I start dialing the number.

What I need to do is to press a key predial the code for a fxo line and then to dial the number.

For example, I already have enabled my s505 to call the number 123XXXXXXXXXX and it works well.
Because I need to enable 4 fxo lines in an extension I need to predial the codes (123,124,125,126) before the number is dialed so that I can enable these four codes in 4 buttons.
The speedial is not working because it sends the number as you press the button.

Thank you in advance.

After some experimentation I used the speeddial with the plus sign.
At the speeddial I use 123+ .
The problem now is that the dialed number is 123123XXXXXXXXXX where the XXXXXXXXXX is the dialed number after the speeddial button pressed.
But I cannot figure out why the 123 code is dublicated.

Please explain what you are trying to accomplish. If these four lines belong to the same organization/department, the normal setup is that the user just dials the number and the PBX selects an available line automatically.

If the lines represent different organizations and the user is making calls on behalf of all of them (and wants to show the proper caller ID), the normal setup is that the user pushes a line button to select one of 4 extensions. Each extension has an Outbound Route that sends the call to the proper trunk. There should be no need for any prefix codes.

Hello and thanks for your reply.

I have a freepbx 15.0.23.

I have allready set up an outbound route that when someone press 9 and the number it is succesfully connected.

I have to enable 4 pstn lines through a sangoma card.
I have already enabled them and when someone presses 123 and the number the call goes through the first pstn line , 124 from the socond etc.

The thing that I wish to accomplish is to enable a button at my s505 sangoma phone to predial the 123 code before I start dialing the numbers of the actual phone.

I managed to do so with the speeddial with value 123+.
The problem is that I when use a 3digit code the outcome of the diles number is 123123XXXXXXXXXX vs the 123XXXXXXXXXX which is expected.
When I use the predial code 17 instead of 123 at the endpoint manager and at the outbound route everything works fine. The number diled is 17XXXXXXXXXX.
For some reason that I cannot find when I use 3 digit code at the speeddial with the plus sign it id dublicated.
For now I will use the 2digit predial code.

Why do you want to use a code at all? Codes are error prone and don’t work well when calling from contacts, device call history, etc.

You can define an Outbound Route that lists the four trunks in whatever order you like. Or, you can define a group.