Reference:PBX Locations

From innovaphone wiki
Revision as of 23:29, 4 April 2007 by Gd (talk | contribs)
Jump to navigation Jump to search

The fundamental idea of v6 locations is to seperate the location where a user registers (registration PBX) from the location of the user inside the numbering plan (numbering node) and again from the physical location of the user (physical-location).

The registration PBX is important for group features. Group features like pickup, partner keys etc. are possible only for users registered on the same PBX.

The numbering node defines the complete phone number of an user. Users within the same node can call each other with the subscriber number only. If the users are in different nodes the respective node prefixes have to be dialed. Nodes can be defined in multiple levels (like the international numbering plan with country codes, area codes, subscriber numbers). Escape digits are used to move up one level in the hierachy (like prefixes for the national/international network).

The physical location of a user is relevant for routing calls to objects marked 'local' and to 'extern' interfaces.

Concepts

The numbering node

For each numbering node a number has to be assigned and the node has to be assigned to another node of the next higher level in the hierachy. The number of the node has to be unique inside the node to which the node has been assigned. There is one predefined non-configurable node which is called 'root'. This is the root of the numbering node tree. If only one level of nodes is needed, all nodes can be assigned to 'root'.

All objects defined on the PBX have to be assigned to a numbering node. If an object is assigned to the 'root' node it can be called without without a prefix.

For each numbering node a 'escape' can be configured. With this escape the call is sent to the next higher node within the node hierachy. This escape takes precedence over any conflicting number inside the node.

The registration PBX

Each PBX entity running on a gateway is a registration PBX, with a name configured locally on this gateway. Each object is assigned to a registration PBX. If a device registers for an object, this registration is accepted only by the registration PBX defined for the object. By definition, a registration PBX always needs to be assigned to a numbering node as well.

The physical-location

The physical-location is not configured but determined for each device on runtime depending on the PBX the original registration was sent to. This physical-location is not necessarily identical to the registration PBX since if the registration is sent first to a PBX which is not the registration PBX for this object, it will be the physical-location anyway, but the registration is redirected to the registration PBX.

Local Objects

Any object can be marked as “Local”, which means that it can be called from endpoints with the physical-location being the registration PBX of this object without prefix. From endpoints with other physical locations it can be called with the respective prefixes. This is esspecially useful for Trunk Objects for outside lines which should have the same number all over the system (e.g. 0), but the call shall be sent to the different local break-outs.

Routing

The routing of calls works by applying the following rules in this precedence on each PBX the call is handled:

  • The dialed number is searched within the numbering node of the calling endpoint.
  • If there is no match the call is sent to EXTERN if such a registration exists
  • If there is no match in the current or the call to EXTERN fails with “unallocated number” numbering node, the search is continued on the next higher node
  • If the destination cannot be resolved locally the call is sent to the respective master.
  • If the call is already at the master and a “local-only” object was found, the physical location of the endpoint is searched for a match.
  • If there is still no match, the call is terminated with cause “unallocated number”

Redundancy

The master of a registration PBX (the PBX where this PBX is registered) always acts as standby for the registration PBX. One registration PBX which is registrated at a given master can be configured as standby to this master. If the physical location of a user is different from the registration PBX this physical location will also act as standby if the connection to the master fails. On the endpoint the physical location has to be configured as primary gatekeeper. As alternate gatekeeper the respective master (where the physical-location is registered) has to be configured, or a PBX which is registered at the physical location and is configured as standby.

Configuration

PBX Object

Defines the prefix of a numbering node. The numbering node of the location definitions itself defines the location of this node within the complete numbering plan.

Defines a number which is used to route the call to the next higher numbering node. This way a numbering scheme like in the public telephone network can be established: define a numbering node for each country, inside each country define Escape(0) to access the international numbers, define numbering nodes for each area code, define Escape(0) inside each area code to access the national numbers. This is esspecially useful if a multi-level numbering scheme has to be implemented to avoid conflicts of location prefixes with normal user numbers.

PBX/General

Replication

Relpication is done based on the multi-value attribute rep. Each object with an attribute rep matching the location name is replicated to the respective registration PBX. These attributes rep are not configured manually but the master PBX is attaching these attributes to objects so that in each replication PBX the required objects are present. To allow the physical-location to act as standby, the registration PBX adds a rep attribute indicating the physical-location whenever a registration comes in from a physical-location which is not the registration PBX. For the replicator on a given PBX only the location-name has to be configured. On PBXs which are configured as standby for a master, the replicator is configured to replicate the complete database from its master without the configuration of a location.

Implementation

GatekeeperId

As GatekeeperId for the registrations of endpoints at the PBX, the registration PBX is used. If a PBX has to redirect a registration, because the user is not defined on this location it is redirected to a gatekeeperId with the form new-location/old-location. This way the incoming GatekeeperId can be used to determin the physical location of an endpoint.