Version 5.4 |
||||||||||||||||||||||||||||||||||
|
|
PSTN Gateways can direct incoming PSTN calls to a SIP entity, such as a CommuniGate Pro Server. These incoming Gateways usually are unable to transfer calls, inability to switch media streams, etc.
To overcome PSTN Gateway limitations, incoming calls from those gateways are usually directed to
a CommuniGate Pro Real-Time applications acting as a B2BUA.
There is a stock gatewayincoming application designed to be used for this purpose.
The stock gatewayincoming application expects the destination address to be delivered to it as an application parameter. If the Gateway sends incoming requests to your system using addresses in a special domain incoming.company.dom, then the following Router record will direct them to the gatewayincoming application:
Some PSTN Gateways cannot be configured to direct incoming calls to a specific address (such
as a CommuniGate Pro Account). Instead, these Gateways expect SIP REGISTER requests to be sent
to them periodically.
These SIP requests specify the Gateway target account (usually - a PSTN phone number),
the credentials (such as some username and password), and the SIP address to direct incoming PSTN
calls to.
Each CommuniGate Pro Account can contain zero, one, or several RSIP records. Each RSIP record specifies an account information for some remote PSTN Gateway. The CommuniGate Pro server periodically sends the SIP REGISTER requests to that gateway using the specified information, and then the PSTN Gateway receives a phone call, it directs it to this CommuniGate Pro Account.
A Server or a Domain Administrator with the RSIP Registrations Access Right can manage the Account RSIP Registration records.Each RSIP record should have a unique name, used solely for its identification with the Account.
To create a new RSIP record, select some name for it and enter it into the Name field in the last table row. Fill other fields and press the Update button.
To modify an RSIP record, modify values in the record fields and press the Update button.
To remove an RSIP record, set its Period value to Never and press the Update button.
The last field contains the time when the last SIP REGISTER request completed, and, optionally, an error code received from the PSTN Gateway.
The RSIP Registration functionality is implemented using the Chronos component. At the scheduled time, the component starts the rsipRegister Real-Time Application, which performs the REGISTER transaction.
The SIP REGISTER request Contact field is composed so that incoming calls from the PSTN Gateway
are sent to the gatewayincoming application which acts as a B2BUA and bridges the call to this Account
(or to the Account specified with the Target field).
If you want to send the incoming calls directly to this Account, bypassing the B2BUA, add the asterisk (*)
symbol in front of the At Host setting value.
Account users can review their RSIP Registration records and (if the RSIP Registration setting is enabled) modify them using the WebUser Interface.
The CommuniGate Pro Router processes every Signal address in the system.
The Router can route calls to the PSTN network via a
Real-Time Application.
The CommuniGate Pro Server comes with a "stock" gatewaycaller application that
can be used for relaying outgoing PSTN calls to one or several PSTN gateways. This section
describes this application functionality.
When the gatewayCaller application receives an incoming call, it requires authentication. As a result, only the users with the Accounts on your CommuniGate Pro Server or Cluster can place calls via this application.
When an authenticated call request is received, the application retrieves and uses the following Account PSTN Settings:
A CommuniGate Pro Account can use a default value for each of its setting (taken either from the Domain-wide or Server-wide/Cluster-wide Default Settings) or a setting value can set explicitly for that Account. As a result, all Accounts in all Domains can use the same Gateway and same Gateway credentials, but different Caller ID settings, or each Domain and/or each Account can use its own Gateway, with Domain or Account-specific credentials.
The application needs to retrieve Settings from other Accounts,
so it should be started on behalf of an Account with the Domain Administrator access rights.
The automatically created postmaster or pbx Accounts can be used.
The application expects to get the destination number as its parameter.
The following Router record routes all addresses in the fictitious pstn domain
to the gatewaycaller application started on behalf of the pbx Account in the Main Domain,
and it passes the "user part" of the pstn domain address as the application parameter:
After processing all Account Settings, the application starts a new Task and instructs that Task
to send a call request to the selected Gateway using the retrieved Account settings. If the call
succeeds, the original and new Tasks "bridge" the media streams.
The original Task processes Signal requests from the caller, the second Task processes
the requests from the Gateway. Some of these requests are processed with the Tasks themselves,
some are relayed to the peering Task for relaying to the caller or to the gateway.
The technology used to implement this type of call setup (when a call is established using two formally independent Signaling sessions) is called a Back-to-Back User Agent (B2BUA).
When a caller wants to Transfer a call, the Transfer request is sent to the original Task. This Task implements the requested call transfer itself, switching to some other VoIP device/entity. The second Task does not send any Transfer request to the Gateway, but it may send a call update (SIP re-INVITE or UPDATE) request to the gateway in order to redirect its media streams to the new call participant.
Some PSTN Gateways do not support even the simple call update requests. Specify the name of those Gateways with a leading asterisk (*) symbol. The application will remove that symbol from the name, and it will not bridge media streams. The application will use a CommuniGate Pro Media Server channel to relay media between the caller and gateway. If the caller switches its media address by sending a call Update request, or if the caller sends a call Transfer request, the Media Server channel updates its internal information, and no request is sent to the Gateway, which continues to exchange media data with the Media Server channel.
If you need to use several different gateways per user or per domain (depending on the destination), you can specify the gatewaycaller PSTNxxxxxx settings as dictionaries. For example:All calls to unprocessed numbers in the pstn domain will be routed to the gatewaycaller application,
and this application will get the second parameter of "gw1" if the callee is in Sweden (a E.164 number starting with +46),
and "gw2" in all other cases.
The gatewaycaller application reads all required PSTNxxxxxx settings. If a settings value is a dictionary,
it takes either the "gw1" or the "gw2" element from the dictionary.
When a user dials a "short" number (a number without the country code and the area code), the call is expected to be delivered to the that number with the user's own area code.
A Router record created during a CommuniGate Pro Server installation routes all calls to 7 digit number address in any local Domain to the localAreaCall application.
The stock localAreaCall application requires the caller to authenticate, and then it retrieves the following Account PSTN Settings:
The applications needs to retrieve Settings from other Accounts,
so it should be started on behalf of an Account with the Domain Administrator access rights.
The automatically created postmaster or pbx Accounts can be used.
The application retrieves the callers country code and the local area code from the caller's PSTNAreaCode Account Settings, removes all non-digit symbols from the Setting value, catenates the "cleaned" with the dialed number and the @telnum domain name, and Redirects the call request to the resulting address.
The Signal module processes the redirected request using the Router, so it can be directed to a PSTN Gateway or (after successful mapping) directly to some VoIP address.
Many countries traditionally use separate calling prefixes for out-of-area domestic and international calls. Many countries use 0area_code local_number numbers for domestic calls, while 00country_code area_code local_number numbers are used for international calls.
If all CommuniGate Pro users are located in the same country, domestic calls can be properly routed with a single Router Record. For example, if all CommuniGate Pro users are located in Germany (country code 49, 0 is the out-of-area prefix), the following Router record can be used (note the order of these records):
Call to Emergency Response Centers are done by dialing a well-known number, such as 911 in North America or 112 in Western Europe.
Use the Router to redirect calls to these numbers (in any Domain) to the emergency application:The applications needs to retrieve Settings from other Accounts,
so it should be started on behalf of an Account with the Domain Administrator access rights.
The automatically created postmaster or pbx Accounts can be used.
When the application receives an HTTP response, the HTTP response body should contain a string or an array with the destination address(es).
The application redirects the call to the specified address(es).
PSTN Settings are implemented as Custom Account Settings. The main WebAdmin Account Management page does not show the Custom Settings with names starting with the PSTN prefix. Instead, a link to a special PSTN Settings page is available on the Account Settings and Account Default Settings pages.
Click the PSTN link to open the PSTN Settings page:
A Domain Administrator should have the PSTN Settings Access Right to modify PSTN Settings.