Showing results for 
Search instead for 
Did you mean: 
Walkthrough Wednesdays

different companies in one callmanager


we have a callmanager 3.3(4)sr2 installation and phone numbers with 3-digit extensions in germany, lets say company A. We have to integrate the telephony services of another company B which is located in the same area and belongs to the same corporate group. The pc's of the company are already located in the same lan, so we have to replace the installed PBX by a new cisco voice gateway. The company has to keep their old phone numbers with 2-digit extensions to be reachable for their customers. So my question is: is it possible to integrate two companies with different phone numbers into one callmanager? All outgoing calls for company A must be routed through voice gateway A and all outgoing calls for company B must be routed through voice gateway B. But internal calls between company A an B must be kept locally over the lan. I think to accomplish this functionality we have to separate the phones by partitions. But I'm not sure how the route patterns should be defined. Does anybody has accomplished this task?


This method sounds like called "Variable-Length On-Net Dial Plans with Flat Addressing" but you should read up on it to see if it fits your needs..there are other methods listed below but I am assuming??? this method will fit your needs

not sure about europe, but if you want to deal with variable length, this may be a good time to increase your digits to 7 or 8 digits just in case you get more integration. here it goes:

if you want to keep consistent 3 digit, then give B an code for example 8 and make sure it is unique against the 3digit meaning the 3 digit doesn't have any digits beginning with 8.

put the 8 in the same partition as the 3 digit (assuming all 3 digit lines belong to same partition)

create a Partition called something like prepend2

create a TP that prepends 8 to the 2 digit and associated prepend2 partition to the TP with whatever CSS you currently have to reach all internal phones

create CSS say CompanyB_CSS with just the Prepend2 partition and assign it to B's gw


pstn calls B's gw and it hits the CompanyB_CSS which has the prepend2 partition assocated with the TP.

TP matches the 2 digit and prepends 8 so makes it 3 digit, next the TP's CSS will send it to the internal phones


oops forgot to mention outgoing calls, well if you have a setup A, its not much diff but you will setup the appropriate P/CSS and point your RL/RG to B's GW


In order to keep your extensions unique within your enterprise, you will want to have at least three digit extensions internally to ensure there is no overlap. This is by far the most scalable, supportable, and simplest (read "cheapest") to implement.

So as aamercado said, for internal transfers, users could dial 'byy' where b is unique to company b. Think of it as a 'site code' - if you wnat to dial company B's users, dial b then the 2-digit ext yy. If a user at B has ext 34, and the site code is 8, then their new internal ext is 834.

Push management hard for this approach if possible!!

Inbound is actually pretty easy if your extensions are uniform and unique. Let's use the 834 example.

First, create some partitions and calling search spaces for company B. Use whatever names are meaningful to you, these are just for illustration.

css_Company_B (partions listed in order:)

1) pt_GW_B (contains outbound route-patterns for company B)

2) pt_Everyone (the partition that already containing your company A users + all your new users)

rl_Company_B (new route list)

rg_Company_B (new route group)

Company_B_Gateway (new Company B gateway)

You may have other partitions that you want to include, but since you're separating inbound/outbound, this CSS should not contain any partions where Company A route-patterns exist.

On GW-B's Inbound Calls section in CCM, set "Significant Digits" to 2 so they match your DID block (34 in our example)at company B, place the site code (8 in our example) number in the "Prefix DN" field, and assign the gateway a CSS that includes partitions containing any Directory numbers you require inbound access to. You'll be limited to Company B folks, though. Unless additional DIDs with Translation patterns are added, that's another whole thread. :-)

So a B customer calles DID '34', CCM prepends '8', CCM then checks the GW CSS's partitions for '834' and finds the user at 834.

For outbound,

Assign Company B phones the css_Company_B css.

Create your new outbound route patterns as you see fit for company B and assign them to pt_GW_B. Make the Rout List / Gateway rl_Company_B. So when our user at 834, whose phone has been assigned css_Company_B, dials a number, CCM will: 1) check the pt_GW_B & pt_Everyone partitions and 2) match either a pt_GW_B route-pattern or an internal extension.

Let me know if this helps.

nice and simple. I like it but off the top of my head, I just got to throw one wrench.

you ?may? need to educate your 2 digit users to dial 3 digits now while the variable...method allows users to continue dialing 2 digits...well..i think..anyways, it's probably a good idea to table out your dial plan and it will help you visualize and plan your integration. For example,

A_DID xxx


A_Actual_Ext xxx

B_DID aa <-this needs to be manipulate to ext below

B_NONDID bb <-this needs to manipulate to ext below

B_actual_Ext 8aa

B_actual_NonDID 8bb

when you visualize it, this should help you avoid overlap and choose a method depending on your user/business preference.


Thanks for all your replies. I try it next week and let you know how it works.

Everything works fine with the 3-digit-solution.



I'm glad we could help.

On a side note, please be sure to rate any posts you found helpful so other folks will know it was useful information. Helps them navigate through the noise, so to speak.

Content for Community-Ad

Spotlight Awards 2021