What I would like to do is provide sip trunks to a 908e which will provide a PRI to PBX. The PBX is a multitenant system where I would like to divide the individual channels of the PRI into groups of three or for channels. Can I use trunk lists to do this? I have browsed trough the Source and ANI Based Routing in AOS Voice Products, and it looks like I can only apply the trunk list to the entire PRI interface, but I would really like to find a way to make this work.
Thank You
Hi Nick,
That's a good question, thanks for asking in the Support Community. SABR does provide the gateway with much more robust call routing logic, but with what you are describing, there is a limitation in the ISDN stack, that is: a PRI can only support a D-channel on DS0 24. And there is no way for the ADTRAN IPBG to generate multiple D-channels on a single circuit. The syntax would allow you to split this T1 up into differnet TDM-groups with 3or4 channels each, but again there is no way to support the D-channel on any channel other than 24, therefore this would not work. The only way this would be possible with ISDN is to provide your PBX with multiple PRIs... one for each tenant.
Rarely do you hear anyone recommend CAS over PRI, but if your PBX T1 card supports CAS signaling, then you could potentially come up with a config by breaking that T1 into multiple TDM-groups. The problem with CAS though is channels are reserved for specific DIDs regardless if they are being used or not and the CAS circuit doesn't generate caller-ID number or name, so the gateway will have to generate a generic caller-id for calls destined to SIP trunk. Calls destined to the CAS trunk will receive caller-ID number as the SIP INVITE presents it but again CAS doesn't support caller-ID name (that is unless your PBX supports T1 Feature Group D signaling).
Here is a basic config of how you could use multiple CAS voice trunks in accordance with specific SIP trunks to support a multi-tenant application:
timing-source t1 0/1
interface t1 0/3
tdm-group 1 timeslots 1-4 speed 64
tdm-group 2 timeslots 5-8 speed 64
no shutdown
!
voice trunk-list Tenant1_SIPtrunk
trunk T01
!
voice trunk-list Tenant1_T1
trunk T25
!
voice trunk-list Tenant2_SIPtrunk
trunk T02
!
voice trunk-list Tenant2_T1
trunk T26
!
!
voice trunk T01 type t1-rbs supervision wink role network
no reject-external
caller-id-override number 9632000 //general caller ID that will be used in the SIP INVITE as this call leaves the SIP trunk
connect t1 0/3 tdm-group 1
voice trunk T02 type t1-rbs supervision wink role network
no reject-external
caller-id-override number 9633000 //general caller ID that will be used in the SIP INVITE as this call leaves the SIP trunk
connect t1 0/3 tdm-group 2
voice trunk T25 type sip
description "Tenant1"
! SIP SETTINGS
!
voice trunk T26 type sip
description "Tenant2"
! SIP SETTINGS
!
voice grouped-trunk TENANT1_T1
trunk T25
accept 9632XXX cost 0
permit list Tenant2_SIPtrunk
!deny all other trunks
!deny all other ani
!
!
voice grouped-trunk TENANT2_T1
trunk T26
accept 9633XXX cost 0
permit list Tenant2_SIPtrunk
!deny all other trunks
!deny all other ani
!
!
voice grouped-trunk TENANT1_SIP
trunk T01
accept $ cost 0
permit list Tenant1_T1
!deny all other trunks
!deny all other ani
!
voice grouped-trunk TENANT2_SIP
trunk T02
accept $ cost 0
permit list Tenant2_T1
!deny all other trunks
!deny all other ani
!
Don't hesitate to follow up if you have any other thoughts or questions.
Thanks,
Andy
Hi Nick,
That's a good question, thanks for asking in the Support Community. SABR does provide the gateway with much more robust call routing logic, but with what you are describing, there is a limitation in the ISDN stack, that is: a PRI can only support a D-channel on DS0 24. And there is no way for the ADTRAN IPBG to generate multiple D-channels on a single circuit. The syntax would allow you to split this T1 up into differnet TDM-groups with 3or4 channels each, but again there is no way to support the D-channel on any channel other than 24, therefore this would not work. The only way this would be possible with ISDN is to provide your PBX with multiple PRIs... one for each tenant.
Rarely do you hear anyone recommend CAS over PRI, but if your PBX T1 card supports CAS signaling, then you could potentially come up with a config by breaking that T1 into multiple TDM-groups. The problem with CAS though is channels are reserved for specific DIDs regardless if they are being used or not and the CAS circuit doesn't generate caller-ID number or name, so the gateway will have to generate a generic caller-id for calls destined to SIP trunk. Calls destined to the CAS trunk will receive caller-ID number as the SIP INVITE presents it but again CAS doesn't support caller-ID name (that is unless your PBX supports T1 Feature Group D signaling).
Here is a basic config of how you could use multiple CAS voice trunks in accordance with specific SIP trunks to support a multi-tenant application:
timing-source t1 0/1
interface t1 0/3
tdm-group 1 timeslots 1-4 speed 64
tdm-group 2 timeslots 5-8 speed 64
no shutdown
!
voice trunk-list Tenant1_SIPtrunk
trunk T01
!
voice trunk-list Tenant1_T1
trunk T25
!
voice trunk-list Tenant2_SIPtrunk
trunk T02
!
voice trunk-list Tenant2_T1
trunk T26
!
!
voice trunk T01 type t1-rbs supervision wink role network
no reject-external
caller-id-override number 9632000 //general caller ID that will be used in the SIP INVITE as this call leaves the SIP trunk
connect t1 0/3 tdm-group 1
voice trunk T02 type t1-rbs supervision wink role network
no reject-external
caller-id-override number 9633000 //general caller ID that will be used in the SIP INVITE as this call leaves the SIP trunk
connect t1 0/3 tdm-group 2
voice trunk T25 type sip
description "Tenant1"
! SIP SETTINGS
!
voice trunk T26 type sip
description "Tenant2"
! SIP SETTINGS
!
voice grouped-trunk TENANT1_T1
trunk T25
accept 9632XXX cost 0
permit list Tenant2_SIPtrunk
!deny all other trunks
!deny all other ani
!
!
voice grouped-trunk TENANT2_T1
trunk T26
accept 9633XXX cost 0
permit list Tenant2_SIPtrunk
!deny all other trunks
!deny all other ani
!
!
voice grouped-trunk TENANT1_SIP
trunk T01
accept $ cost 0
permit list Tenant1_T1
!deny all other trunks
!deny all other ani
!
voice grouped-trunk TENANT2_SIP
trunk T02
accept $ cost 0
permit list Tenant2_T1
!deny all other trunks
!deny all other ani
!
Don't hesitate to follow up if you have any other thoughts or questions.
Thanks,
Andy
Nickmoomaw,
I went ahead and flagged the "Correct Answer" on this post to make it more visible and help other members of the community find solutions more easily. If you don't feel like the answer I marked was correct, feel free to come back to this post and unmark it and select another in its place with the applicable buttons. If you still need assistance, we would be more than happy to continue working with you on this - just let us know in a reply.
Thanks,
David