At a minimum you will need:
Partitions:
- building_a_trans_pt
- building_b_trans_pt
Calling Search Spaces:
- building_a_device_css
- building_a_trans_pt
- global_on_net_pt (or whatever your internal partition is)
- pstn_pt (or whatever your pstn partition is)
- building_b_device_css
- building_b_trans_pt
- global_on_net_pt (or whatever your internal partition is)
- pstn_pt (or whatever your pstn partition is)
- line_css
- various blocking patterns
Translation Patterns:
- 9 in building_a_trans_pt
- Called Party Xlate = Building A Operator DN
- CSS = building_a_device_css
- 9 in building_b_trans_pt
- Called Party Xlate = Building B Operator DN
- CSS = building_b_device_css
Phones:
- Phone A
- Device CSS = building_a_device_css
- Line CSS = line_css
- Phone B
- Device CSS = building_b_device_css
- Line CSS = line_css
Now, when Phone A calls "9", it will hit the 9 translation pattern in buildin_a_trans_pt, and translate to the Building A operator DN and ring their line. The same goes for a Building B phone, only it will ring the Building B operator DN.
Direct calls to phones within and outside of buildings will route in the global_on_net_pt.
Does that make sense?