One of the most popular types of VoIP services provided by PortaSwitch is the residential telephony service, including a substitute for a traditional PSTN line using a VoIP adaptor. Here the issue of emergency services becomes very important, since customers may not fully switch to a VoIP service provider unless it is resolved. In most countries, ITSPs are required to provide emergency services to their customers by the local authorities (e.g., the FCC in the US). Using PortaSwitch, an ITSP can meet all such requirements and start providing residential or business IP telephony services. PortaSwitch offers an FCC-compliant framework for providing E911 services.
There are several components of E911 services:
- Subscriber and subscriber address. The subscriber is the person who is using the telephony service, and his address is his physical location, to which the police/fire department/ambulance should be sent in case of emergency.
- An ITSP is a company providing telephony services to the subscriber.
- PSAP (Public Safety Answering Point) is an agency responsible for answering emergency calls in a specific city or county.
- An E911 provider is the company that delivers emergency calls to the PSAP.
Basically, when a customer dials an emergency number he should be connected to the PSAP which is responsible for his location. The PSAP must immediately obtain the customer’s exact address (e.g., including floor number), so that if the customer is incapable of providing his address information an emergency response team may still reach him. How is this done?
E911 service providers
It is virtually impossible for an ITSP to establish a connection with every PSAP in a given country and meet all of their requirements (basically for the same reason why it is impossible for an ITSP to establish a direct interconnection with every telco operator in a country). Fortunately, this is not necessary, as there are companies who provide E911 services in a manner very similar to companies that offer wholesale call termination: you send a call to their network, and they deliver it to the designated destination. Currently, there are several companies in the US that provide these sorts of services (e.g., Intrado, Dash911), and their number will probably increase. Naturally, local E911 providers will be found in other countries as well.
To accommodate the demand for working with different providers, PortaBilling uses a plugin model similar to that used for online payments. A corresponding plugin can be developed for each new E911 provider, so that you can effortlessly interconnect with them.
Since it is impossible to locate a customer’s physical address using the IP address of his phone, and asking the customer to provide his address during emergency calls is simply not acceptable, every IP phone with a 911 service activated must have an address in the PSAP database before an actual emergency is ever made. Therefore, during registration the customer must provide an address where his device will be physically located, and when he changes location (e.g., goes on vacation) he must update this address. When a customer enters an emergency service address, PortaBilling will validate it with the E911 provider to ensure that the address is valid and contains all the required information. Then a link between phone number and address will be imported to the E911 provider database, so that now if someone calls E911 from this phone, the PSAP will receive complete information about the customer’s location.
Special handling of 911 calls
PortaBilling applies a special policy for processing and routing emergency calls. For instance, even if a customer’s account has exceeded its balance, and he cannot make outgoing calls, a 911 call will still go through.
Interconnection with an E911 provider
Two steps are involved here:
- Connecting to the E911 provider’s API to validate and populate the customer’s address. This API may be different for different providers (for instance, Intrado uses an XML interface). PortaBilling uses a plugin specific to each E911 vendor.
- Delivering a 911 call to the E911 provider network. The actual method of interconnection depends on the provider, e.g., via SIP, or connection to a provider via PSTN trunks. In PortaSwitch both these interconnection methods are configured using the standard routing tools.
Location aware emergency call routing
When a user dials an emergency number, the call must be redirected to the relevant emergency service agency (police or ambulance, etc.). There might be several emergency service agencies in that country or city; therefore, it is crucial to route the call to the emergency service center closest to the caller’s physical location.
An emergency service center operator has access to the countrywide central emergency database that contains the user phone number and address. When a call arrives at the emergency service center, an operator receives the user address and directs the emergency team to the user.
In traditional telephony, the landline phone is tied to a specific location, whereas in VoIP services, the phone may be mobile. Thus, the user location can only be determined by their static information (e.g., their actual address) entered by an administrator. Therefore, VoIP users must keep their locations up-to-date and inform their service providers as soon as it changes. They may also be required to verbally confirm their location when calling an emergency number.
As the service provider, you must ensure that the information about user location is correct and send regular updates to the central emergency database.
In PortaSwitch, a special emergency module performs emergency call handling. When a call arrives, PortaBilling detects the emergency center number based on the number dialed, identifies the emergency center number by using the special key – an emergency administrative unit associated with the user. An emergency administrative unit defines the user location as a combination of their country and region pattern (e.g., a city or a ZIP code, etc.), separated by a dot. For example, if you provide services in Norway and identify an emergency call by the city and ZIP code it came from, you will define the emergency administrative unit in the following format: no.Oslo.0131.
Emergency administrative units are associated with the number for the corresponding emergency service center and are stored in the database. There can be several emergency numbers in a country (e.g., 110 for fire prevention, 112 for police, and 113 for ambulance). To correctly redirect calls depending on the number dialed, you can define the routing rules so that calls to 110 are sent, for example, to 23255571, while calls to 112 are sent to 24155512.
An administrator adds emergency administrative units to PortaBilling and then defines one of them for the user’s account. Then when the user dials the emergency number, PortaBilling maps their emergency administrative unit with the corresponding record in the PortaBilling database, identifies the emergency service center number, and instructs PortaSIP to route the call there.