How to put extensions in some logical groups so that only extensions from same group can call each other

Status
Not open for further replies.

svaba1012

New Member
Nov 13, 2023
6
0
1
24
I need to use FusionPBX as SIP registar(Session Initiation Protocol) or SIP server, to route SIP calls to appropriate SIP accounts (extensions).

Currently every extension has possibility to call any registered extensions and everything works fine. But for my purposes I need to set some logic to enabling extensions to call only some group of extensions. My idea is to mark/put extensions in some kind of groups so that only extensions from same group can call each other.

Here is example:

Suppose that there are 4 extensions with numbers 101, 102, 103, 104 and 105.
Extension 101 is in groupA and groupB.
Extension 102 is in groupA.
Extension 103 is in groupB.
Extension 104 is in groupA.
Extension 105 is in groupC.

I need to set that:
- extension 101 can call and be called by all users from groupA and groupB, which means extensions 102, 103 and 104
- extension 102 can call and be called by all users from groupA, which means extensions 101 and 104
- extension 103 can call and be called by all users from groupB, which means extension 101.
- extension 104 can call and be called by all users from groupA, which means extensions 101 and 102
- extension 105 can call and be called by all users from groupC, which means nobody because there is no extension whit group C in current example

It is important to note that **extension can be in multiple groups** which means that it can call and accept calls from extensions from both groups. Also all extensions are internal.

Is it possible to achieve this scenario and how?

I tried setting extension's call group but that resulted with scenario where for example when I call extension in groupA all extensions from that group starts to ring which is not what I wanted.
 

agree

Member
Aug 26, 2018
135
24
18
Fusion has the concept of having multiple extensions in their own group by having the context of the extensions to grp1@domain.com and grp2@domain.com etc. But Fusion doesn't support having extensions in multiple contexts.

You can accomplish this by playing with the XML handler to build the user_directory and dialplan according to the called extensions.
 

svaba1012

New Member
Nov 13, 2023
6
0
1
24
Fusion has the concept of having multiple extensions in their own group by having the context of the extensions to grp1@domain.com and grp2@domain.com etc. But Fusion doesn't support having extensions in multiple contexts.

You can accomplish this by playing with the XML handler to build the user_directory and dialplan according to the called extensions.
I'll try with context. What should I do in XML and which XML and how should I change it?
 

agree

Member
Aug 26, 2018
135
24
18
There are multiple ways to accomplish this, but you'll need to write some lua to handle this.
 

markjcrane

Active Member
Staff member
Jul 22, 2018
499
177
43
49
If the extension only has to be in one group then you can use the user context on the extension and the dialplan context on the dialplan.

FusionPBX does have support for multiple contexts per tenant and it can work fine. You can set a context of lobby@example.domain.com which is different than just context: example.domain.com. If you need it to be a part of multiple groups then the context will not work.

Another option is call groups. An extension could be part of multiple call groups. Then a dialplan or a script could control where calls can go based on the call group.
 

svaba1012

New Member
Nov 13, 2023
6
0
1
24
If the extension only has to be in one group then you can use the user context on the extension and the dialplan context on the dialplan.

FusionPBX does have support for multiple contexts per tenant and it can work fine. You can set a context of lobby@example.domain.com which is different than just context: example.domain.com. If you need it to be a part of multiple groups then the context will not work.

Another option is call groups. An extension could be part of multiple call groups. Then a dialplan or a script could control where calls can go based on the call group.
Thanks.
How to set dialplan for call groups to achieve my need and to disable ringing all extensions from same group when some is called.
 
Status
Not open for further replies.