# Patent

## Title
Efficient usage of emergency services keys

## Abstract

An emergency services key (e.g., ESQK or ESRK) is guaranteed to be available from a limited size ESQK pool, such that an available ESQK is always selected and associated with an ongoing emergency call with no measurable impact to existing calls, even if all ESQK pool members are marked as unavailable. A plurality of ESQKs are grouped into a pool of emergency service keys “ESQK Pool ID”, each including anywhere from 1 to N number of ESQKs. Each ESQK preferably has a “Timestamp”, and information relating to the specific emergency E911 call (“Call Data ID”). The ESQK having a Call Data ID=“NULL”, and having the oldest Timestamp, is chosen for selection. If no such ESQK has both Call Data ID=NULL and the oldest Timestamp is found, then the ESQK with merely the oldest Timestamp is selected.

## Background
The present application claims priority from U.S. Provisional Application No. 60/797,359, filed May 4, 2006 entitled “Optimal Selection of a Limited Sized Pool of Unique Numbers”, by Geldenbott et al., the entirety of which is expressly incorporated herein by reference.


BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates generally to long distance carriers, Internet Service Providers (ISPs), and information content delivery services/providers and long distance carriers. More particularly, it relates to emergency call systems (e.g., E9-1-1) including wireless and Internet Protocol (IP) based Voice Over Internet Protocol (VoIP) emergency call systems.
2. Background of Related Art
9-1-1 is a phone number widely recognized in North America as an emergency phone number that is used to contact emergency dispatch personnel. Enhanced 9-1-1 (E9-1-1) is defined by an emergency call being selectively routed to an appropriate PSAP, based on a special identifier (P-ANI, or “Pseudo Automatic Number Identifier”, also referred to as “ESxK”), and includes the transmission of callback number and location information when 9-1-1 is used. E9-1-1 may be implemented for landline, cellular or VOIP networks. Regardless of the network type, a 9-1-1 service becomes E-9-1-1 when automatic number identification and automatic location information related to the call is provided to the 9-1-1 operator at the PSAP.
A Public Service Answering Point (PSAP) is a dispatch office that receives 9-1-1 calls from the public. A PSAP may be a local, fire or police department, an ambulance service or a regional office covering all services. As used herein, the term “PSAP” refers to either a public safety access point (PSAP), or to an Emergency Call Center (ECC), a VOIP term.
FIG. 4 shows a conventional landline public safety access point (PSAP) to automatic location identifier (ALI) connection.
In particular, FIG. 4 shows a PSAP 400 connected to one Automatic Location Identifier (ALI) database 401. An ALI is a database that accepts a PSAP query with telephone number, relates the telephone number to an address and provides that address (location information) back to the PSAP in a manner that works for the customer premise equipment (CPE) display. An ALI is typically owned by a LEC or a PSAP, and may be regional (i.e. connected to many PSAPs) or standalone (i.e. connected to only one PSAP). There is no one single standard interface protocol for PSAP-ALI connection/communication.
Upon receiving a 9-1-1 call, the PSAP 400 queries the ALI 401 for location data. The ALI database 401 accepts the query from the PSAP 400 for location. The query includes the telephone number of an emergency caller. The ALI database 401 relates the received telephone number to a physical street address and provides that street address (location information) back to the PSAP 400 in a manner that works for the customer premise equipment (CPE) display at the PSAP 400.
FIG. 5 shows a context diagram for a conventional non-landline positioning center (e.g., an Internet based voice over Internet Protocol (VOIP) positioning center).
In particular, the ALI database 401 includes a conventional emergency services key (ESQK or ESRK) in a location request sent to an appropriate positioning center 402 (XPC). The emergency services key (ESQK or ESRK) is used by the positioning center 402 as a key to look up the location and other call information associated with the emergency call.
In non-landline telephony, the PSAPs 400 query the ALI 401 for location information. However, the ALI 401 is not pre-provisioned with location data for non-landline calls (e.g. cellular, VOIP etc) and must communicate with other network entities to obtain and deliver location data to the PSAP 400.
Non-landline telephony standards (e.g. cellular, VoIP etc) have mandated that ALIs 401 maintain connectivity to a positioning center 402 that is able to provide current location data for a non-landline call. In the current state of technology, the positioning center 402 provides the caller's location and the callback number to the ALI, which passes it to the requesting PSAP. As can be seen in FIG. 5, an ALI may maintain connectivity to more than one positioning center via multiple interface types—both standard and non-standard (e.g. NENA-02, E2/E2+/V−E2(ESP), PAM, etc.).
Whether landline or non-landline, conventional emergency call centers, e.g., public safety access points (PSAPs) 400, use emergency services keys such as an emergency services query key (ESQK) or an emergency services routing key (ESRK), collectively referred to herein as ESxK, to query for location information. An emergency services key identifies an emergency call, and is associated with a particular selective router 417 associated with a given public safety access point (PSAP) 400. The emergency services keys ESQK and ESRK are conventionally used to query the automatic location identification (ALI) database 401 for the location of a given emergency caller. An emergency services key is delivered to the E9-1-1 selective router 417 and is the calling number/ANI for the call to the PSAP 400. The emergency services key is used by a selective router 417 as a key to selective routing data associated with the emergency call. The emergency services key is delivered by the selective router 417 to a PSAP 400 as the calling number/ANI for the emergency call, and is subsequently used by the PSAP 400 to request automatic location information (ALI) information indicating the location of the device making the emergency call. Conventional emergency services keys conform to ten-digit North American Numbering Plan Number definitions.
Existing, standardized solutions prescribe a finite pool of emergency services keys (ESQK and ESRK) which are allocated individually, one associated for each emergency call in progress. ESxK numbers are used to request updated location information from the ALI 401 while an emergency call is active, and as such, as appreciated by the inventors hereof, are subject to number exhaustion if the number of active emergency calls exceeds the number of ESxKs in the pool. But because ESxKs (ESQKs and ESRKs) are dynamically assigned at the time of call origination, and because the pool of ESxKs is limited, the inventors appreciate that it is possible for the pool of available ESxKs to run out.
For systems which implement ESQK and/or ESRK keys, it is a well known technique to use timers and default ESxKs to avoid problems associated with a limited pool of ESxKs. Timers have been specified and implemented to limit the amount of time that an ESxK can remain allocated to an emergency call, without regard for the actual call duration. For example, if a call continues after the timer has expired; the specific ESxK which was used to obtain updated location information can get reassigned to a new incoming emergency call.
However, timers are based solely on estimated call duration, a value which could be exceeded. Since emergency calls are numerous, and can remain active for long periods of time once initiated, some service providers have increased the number of allocated ESxK pools in an effort to minimize number pool exhaustion. Additionally, reliance on timers requires much larger pools of ESxKs to be allocated, which is an inefficient use of numbers, and may potentially lead to number exhaustion.
The conventional technique of using timers to expire the ESQK and ESRK allocation could prove to be devastating if a given emergency call using that expiring ESxK is still active. This is especially true if there is updated location information which would help provide emergency assistance to the caller.
Moreover, ESxK numbers must be purchased, so large numbers of ESxKs represent a direct cost to a provider. Also, as requirements for capacity increase, existing systems must often increase the size of the ESQK and ESRK number pool that they purchase, leading to additional costs for ESQK and ESRK number purchases, additional costs to implement, and additional costs to maintain these larger number pool sizes.
Thus, emergency services keys, e.g., the emergency services query key (ESQK) or the emergency services routing key (ESRK), identify a call instance at a VoIP positioning center (VPC). The ESQK is selected from a pre-provisioned pool by the VPC and delivered to the PSAP (Public Safety Answering Point) as the calling number for an emergency call. The ESQK is subsequently used by the PSAP to request ALI (Automatic Location Identification) information for the call from the VPC. The ESQK is used by the VPC as a key to look up the location object and other call information associated with the emergency call instance. This information is returned to the PSAP.
The size of an ESQK pool is limited for VoIP emergency calls. During normal operation emergency calls are associated with an ESQK as long as the emergency call is in process. As soon as the call is terminated, the ESQK is “released” and marked as free. Once all pre-provisioned ESQKs have been associated with emergency calls they are marked as “unavailable/in-use.” New incoming emergency calls coming in at that time must still be served and assigned an ESQK from the given pre-provisioned pool.
Currently systems conform to NENA VoIP Architecture For Enhanced 9-1-1 Services, NENA standard 08-001. However, such systems are complicated in nature, and thus not practical.
There is a need for a more efficient use of available emergency services keys.
SUMMARY OF THE INVENTION
In accordance with the principles of the present invention, apparatus and a method for selecting an emergency services key from a limited size pool comprises first attempting selection of an emergency services key from a limited size pool containing a plurality of emergency services keys, having an indication of not being currently associated with an emergency call, and having an oldest timestamp associated therewith from among those in the pool. In the event that no emergency services key in the pool meets the first attempt selecting criteria, second attempting selection of the emergency services key from the limited size pool having merely an oldest timestamp associated therewith from among those in the pool. In this way, selection of the emergency services key is ensured from the limited size pool is assured to be available when selected.



BRIEF DESCRIPTION OF THE DRAWINGS
Features and advantages of the present invention will become apparent to those skilled in the art from the following description with reference to the drawings:
FIG. 1 shows an exemplary ESQK data store, in accordance with the principles of the present invention.
FIG. 2 shows an exemplary ESQK data store contents, in accordance with the principles of the present invention.
FIG. 3 illustrates exemplary selection of an emergency services key (e.g., an emergency services query key (ESQK)) from a pool of ESQK keys, in accordance with the principles of the present invention.
FIG. 4 shows a conventional landline public safety access point (PSAP) to automatic location identifier (ALI) connection.
FIG. 5 shows a context diagram for a conventional non-landline positioning center (e.g., an Internet based voice over Internet Protocol (VOIP) positioning center).



DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
The present invention provides for the management of a limited size emergency services key pool (e.g., an ESQK pool) in such a way as to ensure that an ESQK can always be handed out to an incoming emergency call, even if all ESQK pool members are marked as unavailable. The invention applies equally to efficient use of emergency services routing keys (ESRKS) used in the wireless industry where the gateway mobile location centre (GMLC) takes the functional role of the voice over Internet Protocol (VOIP) positioning center (VPC). Ultimately the invention applies to any limited size pool of unique numbers that need to be dynamically allocated to a resource for a limited time in such a way to always guarantee the availability of a pool element.
Selecting an ESQK from a Pool:
FIG. 1 shows an exemplary ESQK data store 200, in accordance with the principles of the present invention.
In particular, as shown in FIG. 1, a plurality of ESQKs are grouped into a pool of emergency service keys, identified herein with an “ESQK Pool ID” 201.
The ESQK pool ID includes ESQK(s) 202. The ESQKs 202 element of the ESQK data store 200 is capable of containing anywhere from 1 to N number of ESQKs, N being any number greater than 1, as depicted row 202 of FIG. 1.
The size of N is limited by network factors, such as the size of a database, but mostly based on the number of ESQKs assigned for use by the given network element.
Each ESQK 202 preferably has a “Timestamp” associated therewith, as shown in row 203. The timestamp preferably relates to a representation of the current time of day of assignment to a specific emergency E911 call.
Each ESQK 202 also includes information relating to the specific emergency E911 call, referred to herein as “Call Data ID”, as depicted in row 204 of FIG. 1. The Call Data ID information identifies the specific emergency E911 call.
FIG. 2 shows exemplary contents of an ESQK data store 200 in more detail, in accordance with the principles of the present invention.
In particular, as shown in FIG. 2, an exemplary ESQK Data Store includes two (2) ESQK pools: ESQK pool #1 (rows 301 and 302) and ESQK pool #2 (rows 303 and 304). Each of the exemplary ESQK pools #1 and #2 contain two ESQKs, as shown in column 202.
FIG. 3 illustrates an exemplary selection of an emergency services key (e.g., an emergency services query key (ESQK)) from a pool of ESQK keys, in accordance with the principles of the present invention.
In particular, as shown in FIG. 3, an ESQK is picked as follows for a given ESQK pool.
In step 100 of FIG. 3, the ESQK in the ESQK pool having a Call Data ID equal to “NULL” (NULL is used as a synonym for “not set” in this context), and having the oldest Timestamp, is chosen for selection.
In decision step 102, it no such ESQK having both Call Data ID=NULL and the oldest Timestamp is found in the given ESQK pool 200, then the method moves to step 104 where the ESQK with merely the oldest Timestamp is selected.
The inherent logic is that in the latter scenario ESQKs that are no longer associated with active emergency calls are still incorrectly marked to be in use for whatever system related issues. This logic is no longer true under extreme conditions, such as an ESQK pool sized too small, or extremely high call volume, typically generated in a lab stress test environment. For most practical purposes the likelihood of this happening is extremely low. In this way, the inventive method always guarantees the selection of an ESQK as long as the number of ESQKs in a given pool is >=1.
In step 106, the Timestamp and Call Data ID are preferably updated.
Returning an ESQK to a Pool:
When an emergency call is terminated the ESQK that has been associated with this call up to that point is released. To achieve this, the ESQK record is retrieved from the ESQK data store 200, and the Call Data ID 204 parameter for that particular ESQK record is set to NULL.
However, in the call termination process, the Timestamp 203 parameter for that ESQK record is left unchanged. In this way, the ESQK record that was used retains the Timestamp of the last time it was selected.
As an example use of the inventive method, a request for an ESQK from ESQK pool #1 shown earlier in FIG. 2 would follow the method described and shown with respect to FIG. 3. In the given example, ESQK “11111111111” (row 301) would be chosen since it has a Call Data ID=NULL, and the oldest Timestamp.
A request for an ESQK from ESQK pool #2 would also follow the method described and shown with respect to FIG. 3. All ESQKs in ESQK pool #2 as depicted still have a value assigned as a Call Data ID. For instance, the ESQK in row 303 has a Call Data ID=1234, and the ESQK in row 304 has a Call Data ID=5678. Because the values for these Call Data ID is NOT NULL, they are both considered to be marked as “in-use” as referred to herein.
In this particular example, ESQK “33333333333” (row 303) would be chosen since no ESQK in the ESQK pool (i.e., ESQK pool #2) has a Call Data ID=NULL, and that ESQK (i.e., ESQK “3333333333” (row 303) is the ESQK in that ESQK pool having the oldest Timestamp. In this example, the oldest Timestamp is “Two days ago @8:00 AM”.
While the Timestamp is represented as “Two days ago @8:00 AM”, it is entirely within the principles of the present invention that other representations for a Timestamp are possible. For instance, the Timestamp may be represented in YYYY/MM/DD/HH/MM/SS format, or equivalent, as an example.
Accordingly, the invention guarantees that for a limited size ESQK pool, an ESQK can always be selected and associated with an ongoing emergency call with no measurable impact to existing calls.
While the disclosed examples relate to the selection of an emergency services query key (ESQK), the present invention is equally applicable to the selection of an emergency services routing key (ESRK).
While the invention has been described with reference to the exemplary embodiments thereof, those skilled in the art will be able to make various modifications to the described embodiments of the invention without departing from the true spirit and scope of the invention.

## Claims

1. A method of selecting an emergency services key from a limited size pool, comprising:
first attempting selection of an emergency services key, from a limited size pool, marked as not currently associated with an emergency call and having an oldest timestamp from among those in said limited size pool; and
when no emergency services key in said limited size pool is selected with said first attempting selection, second attempting selection of said emergency services key, from said limited size pool, marked as currently associated with an emergency call and having an oldest timestamp from among those in said limited size pool;
whereby selection of said emergency services key is ensured from said limited size pool and is assured to be available when selected; and
wherein said emergency services key is useable by a physical positioning center to obtain location information associated with said emergency call.

2. The method of selecting an emergency services key from a limited size pool according to claim 1, wherein:
said emergency services key is an emergency services query key (ESQK).

3. The method of selecting an emergency services key from a limited size pool according to claim 1, wherein:
said emergency services key is an emergency services routing key (ESRK).

4. The method of selecting an emergency services key from a limited size pool according to claim 1, wherein:
said indication contains a NULL if not currently associated with an emergency call.

5. Apparatus for selecting an emergency services key from a limited size pool, comprising:
means for first attempting selection of an emergency services key, from a limited size pool, marked as not currently associated with an emergency call and having an oldest timestamp from among those in said limited size pool; and
means for second attempting selection of said emergency services key, from said limited size pool, marked as currently associated with an emergency call and having an oldest timestamp from among those in said limited size pool, when no emergency services key in said limited size pool is selected with said first attempting selection;
whereby selection of said emergency services key is ensured from said limited size pool and is assured to be available when selected; and
wherein said emergency services key is useable by a physical positioning center to obtain location information associated with said emergency call.

6. The apparatus for selecting an emergency services key from a limited size pool according to claim 5, wherein:
said emergency services key is an emergency services query key (ESQK).

7. The apparatus for selecting an emergency services key from a limited size pool according to claim 5, wherein:
said emergency services key is an emergency services routing key (ESRK).

8. The apparatus for selecting an emergency services key from a limited size pool according to claim 5, wherein:
said indication contains a NULL if not currently associated with an emergency call.