Patent Publication Number: US-8982871-B2

Title: System and method for providing location information to a public safety answering point during an emergency 911 call from a softphone

Description:
CROSS REFERENCE TO RELATED APPLICATION 
     This application is a continuation of U.S. patent application Ser. No. 11/974,775, filed Oct. 16, 2007 now U.S. Pat. No. 8,289,953 by Amar N. Ray et al. and entitled, “System and Method for Providing Location Information to a Public Safety Answering Point During an Emergency 911 Call from a Softphone,” which is hereby incorporated by reference in its entirety. 
    
    
     BACKGROUND 
     The National Telecommunications Information Administration (NTIA) is the executive branch&#39;s advisory agency on telecommunications issues. In the early 1980s, this agency proposed a plan to raise awareness of a single emergency telephone number to the general public. From that program, the National Emergency Number Association (NENA), a non-profit organization, was created. NENA has since become a leading organization to improving technology and developing guidelines for 9-1-1 (“911”) telephone calls (i.e., emergency telephone calls) to improve response by emergency rescue teams. 
     Telecommunications has been changing rapidly over the past several years, primarily since the development and growth of the mobile telephone industry and the Internet. New forms of telecommunications have been developing as well. Traditional telecommunications were performed over the public switch telephone network (PSTN). A system to maintain location of subscribers of telecommunications companies operating on the PSTN was developed. Determining the location of subscribers of the telecommunications companies was relatively easy as the locations of telephones were known by the telecommunications companies or carriers due to installing the telephones, establishing billing, or otherwise. However, with the new forms of telecommunications, subscribers are able to use wireless devices that may access different wireless access points to communicate over a communications network, such as the Internet. One common interface for wireless access to a communications network includes an IEEE 802.11 communications protocol, which is commonly known by the brand name WiFi. Wireless devices are being configured to have WiFi communications protocols to enable a subscriber to access WiFi enabled access points. Many WiFi enabled wireless devices have global positioning system (GPS) capabilities that are able to communicate GPS location information (i.e., latitude and longitude coordinates) of the WiFi enabled device. While GPS location information may be helpful to track or locate a person at a precise geographical location, such information is not extremely useful in an emergency situation where emergency rescue teams, such as firemen and police, better understand address information for performing an emergency rescue in an emergency situation. 
     A softphone is commonly understood to mean a software application that is executed by a computing device for initiating and communicating voice calls using voice over Internet Protocol (VoIP) or other protocol. The number of softphone users is growing due to advancement of broadband and WiFi technology. 
     As understood in the art, DHCP servers are used to manage IP addresses. The DHCP servers ensure that no two computers or devices use the same IP address. Because softphones operate on computing devices and each computing device has an associated IP address, each softphone is associated with a unique IP address. 
     A public safety answering position (PSAP) is used by emergency services to answer calls from the public to notify emergency personnel, such as police or firemen, to respond to an emergency situation. Traditionally, a caller would contact a PSAP and provide location information during the telephone call. When caller identification (i.e., caller ID) was introduced, PSAPs were installed with telephone systems compatible with caller ID to identify names and phone numbers of individuals placing emergency 911 calls. This first version of caller ID is known as type I caller ID. Type I caller ID operates in a single data message format (SDMF) as well as multiple data message format (MDMF) that provide a caller&#39;s telephone number, date and time of the call during the ringing interval. 
     A second type of caller ID or type II caller ID was later developed to communicate name and address information of a second calling party to a called party when a call between a called party and a first calling party is in progress. Type II caller ID uses a multiple data message format (MDMF) that communicates a caller&#39;s name, telephone number, date and time. Enhanced 911 is a North American Telephone Network (NATN) feature of the 911-emergency-calling system that uses a reverse telephone directory provided by cellular telephone companies to determine location information of a caller. 
     There are two types of E911 systems that operate within the United States, Phase I and Phase II. E911 Phase I systems are required to provide an operator with the telephone number, originator, and location of the cell site or base station receiving a 911 call. E911 Phase II systems are required to use an automatic location identification (ALI). However, only 18% of all PSAPs are configured with E911 Phase II systems. The remaining 82% of PSAPs are configured with E911 Phase I systems, which are incapable of handling GPS coordinates, and, therefore, subscribers who have wireless telephones that use GPS coordinates for 911 emergency calls cannot be properly serviced by these PSAPs. If a caller is using a non-cellular wireless device, such as a WiFi enabled wireless device (e.g., softphone), an operator at a PSAP with E911 Phase I capabilities is unable to determine address location based on GPS coordinates that are received from the caller. As softphones are often used in laptop computers that are moved from one network access point, such as a WiFi access point, to another, emergency 911 calls may be placed from locations other than a user&#39;s home. Many newer laptop computers are installed with GPS capabilities to be used for certain applications, such as an emergency 911 calls. Softphones with GPS capabilities suffer from the limitations described above. Furthermore, there is currently no solution for softphone that connect to wireless network access points in handling emergency 911 calls. 
     SUMMARY 
     To enable softphone with emergency 911 capabilities, the principles of the present invention provide for softphones to store current address locations and communicate the current address locations when communicating with a public safety answering point. The softphone may generate a type II caller ID data packet and include the current address location in the type II caller ID data packet in by placing the current address location in a name field so that the address location information may be displayed at the public safety answering point. As the softphone is moved between network access points, a DHCP server that determines that the softphone has a new location or IP address may notify the softphone to update the current address location. 
     One embodiment of a system for providing location information to a public-safety answering point during an emergency 911 call from a softphone may include a network access point configured to receive calls from softphones. A soft-switch may be in communication with the network access point, and the network access point may be configured to communicate a call from a softphone to the soft-switch. A database may be configured to store network address information of selective routers on a network through which information is communicated to public safety answering points operating to service emergency 911 calls. A gateway may be in communication with the network access point, soft-switch, and database, and, in response to receiving an emergency 911 call from the softphone via the soft-switch, the gateway may request selective router information, from the database, of a selective router through which information is to be sent to a public safety answering point servicing an area including the network access point during the emergency 911 call. The softphone, in response to receiving an indication that an emergency 911 call is connected with a public safety answering point, may communicate address location information of the softphone to the public safety answering point. In one embodiment, the address location information is communicated in a type II caller ID data packet from the softphone. A user of the softphone may be requested by the softphone to provide a current address location at which the softphone is located in response to a DHCP server providing an indication to the softphone that the softphone has changed locations. 
     One method for providing location information to a public safety answering point from a softphone may include receiving, at a network access point, an emergency 911 call from the softphone. The emergency 911 call may be communicated to a public safety answering point. In response to a call connection message being received, an address location of the network access point to which the softphone is in communication in placing the emergency 911 call to the public safety answering point may be communicated in a type II caller ID data packet. 
     One embodiment of a softphone operating on a computing device may include a telephone module configured to enable a user to place emergency 911 telephone calls. An address location update module may be configured to determine that location of the softphone has changed, request a current address location from a user of the softphone, and store the current address location. The telephone module may further be configured to look-up the current address location in response to receiving notification that an emergency 911 call is connected with a public safety answering point, and communicate the current address location to the public safety answering point. 
     A method for identifying location of a softphone fur use in placing emergency 911 calls may include enabling a user to place a telephone call including emergency 911 telephone calls from a softphone. A determination that location of the softphone has changed may be made. A current address location may be requested from a user of the softphone. The current address location may be stored and looked-up in response to receiving notification that an emergency 911 call is connected with a public safety answering point. The current address location may be communicated to the public safety answering point. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       A more complete understanding of the method and apparatus of the present invention may be obtained by reference to the following Detailed Description when taken in conjunction with the accompanying Drawings wherein: 
         FIG. 1A  is a block diagram of an exemplary network to enable a softphone to communicate with a PSAP and provide the PSAP with address location information of a caller using the softphone; 
         FIG. 1B  is a block diagram of an exemplary softphone application; 
         FIG. 1C  is a screen shot of an exemplary user interface to enable a user to change current address location of the softphone; 
         FIG. 2  is another exemplary network showing signals communicating location information of a user using a softphone; 
         FIG. 3  is a block diagram of a softphone connecting to a network via a broadband network access point; 
         FIG. 4  is a block diagram of an exemplary signaling structure for communicating address information of a network access point in a type II caller ID data packet; 
         FIG. 5  is a flowchart of an exemplary process for updating current location information of a softphone; and 
         FIG. 6  is a flowchart of an exemplary process for a softphone being connected with a PSAP and communicating address location information of a network access device to the PSAP using a type II caller ID data packet. 
     
    
    
     DETAILED DESCRIPTION OF DRAWINGS 
       FIG. 1A  is a block diagram of an exemplary network  100  for enabling a user of computing device  102  with a voice interactive device  104  to operate softphone software. The computing device  102  that executes softphone software and combined with the voice interactive device  104  is considered a softphone  105 , which may be used by a user to place phone calls over the network  100 . As understood in the art, a softphone is a computing device that executes telephony software that enables users to place telephone calls over data networks, such as the Internet, with other softphones operating on the data networks and over telephony networks, such as the public switched telephone network (PSTN) and mobile networks via the data networks. 
     The network  100  may include one or more network access points  106   a - 106   n  (collectively  106 ) that enables the softphone  105  to access the network. The softphone  105  may communicate via the softphone using a wire or wireless connection. In one embodiment, the network access points  106   a - 106   n  are wireless and utilize an 802.11 communications protocol, which is commonly known as (WiFi) communications protocol, and may enable the softphone, if WiFi enabled, to communicate wirelessly therewith. Alternatively, other communications protocols may be utilized. An access point controller and gateway (“Gateway”)  108  may be in communication with each of the access points  106 . The controller may operate to register each of the access points  106  to enable communications from the access points  106  to be recognized and processed. The gateway  108  may be in communication with or operate a soft-switch  110 , which is software that operates to receive and route calls from softphones and other network devices. The controller  108  may also be in communication with a database  112  that stores network addresses of selective routers located on the network  100 . 
     As understood in the art, the PSTN includes many selective routers that are associated with thousands of PSAPs in the United States. Because there are so many selective routers and PSAPs located on the PSTN, the gateway  108  has to determine which selective router to send information to handle an emergency 911 call being placed via a network access point. The database  112  that stores the network address information of selective routers associated with PSAPs servicing an area which the network access points  106  are located enables the gateway  108 , in response to receiving an emergency 911 call, to route information to the correct PSAP to handle the emergency 911 call. 
     A local exchange carrier selective router  114 , which is one of many selective routers located on the PSTN, is used to route emergency 911 calls to PSAPs. The selective router  114  may be in communication with a selective router database  116 , which operates to manage network address information of PSAPs  118  that service emergency 911 calls for geographic locations in which the network access points  106  are operating. A PSAP  118  is used to receive emergency 911 calls from the public. As shown, the PSAP  118  may receive calls from softphones, such as softphone  105 . Automated location identifier (ALI) engine  120  may receive GPS information from the PSAP  118  and determine specific address location information closest to or at the GPS coordinates received from the PSAP. The ALI  120  may be local or remote, but a remote ALI may be operated by a third-party on a mainframe computer and have increased capabilities over a local ALI. 
     A dynamic host configuration protocol server (DHCP)  122  may be in communication with the gateway  108 . As understood in the art, DHCP is a set of rules used by communications devices, such as a computer, router, or network adapter, to enable communications devices to request and obtain unique IP addresses from a DHCP server, such as DHCP server  122 , that has a list of IP addresses available for assignment. In the event that DHCP server  122  or controller  108  determines that a computing device, such as computing device  102 , on which a softphone is operating has changed locations or IP addresses, a request or command may be issued from the DHCP server  122  to the softphone  105  to request that a user enter a new address location for the softphone  105 . 
       FIG. 1B  is a block diagram of an exemplary softphone software application  124  that may be executed on a computing device, such as computing device  102 . The softphone software application  124  may include a telephone module  126  and address location update module  128 . It should be understood that each of the modules  126  and  128  may include additional and more specific modules that perform functions to enable each of the modules  126  and  128  to operate as a softphone. For example, current GPS location module  130  and generate type II caller ID module  132  may be utilized to determine current GPS coordinates and generating type II caller ID data packets. 
     The telephone module  126  is configured to enable a user to be able to place and receive telephone calls from a computing device, such as computing device  102 . The telephone module  126  may provide a graphical user interface that displays digit and function keys to enable a user to dial a phone number, select previously dialed phone numbers, answer incoming calls, adjust volume, select voice interactive device (e.g., wired and wireless headsets), receive and manage voicemails, select call waiting calls, perform three-way calling, set call forwarding, or perform any other telephony operation. The telephone module  126  is configured to enable a user to place an emergency 911 call by pressing a single function key (e.g., “911” key) or dial 9-1-1 and press a dial soft-button, as normally done. The telephone module  126  may further be configured to look-up the current address location of the softphone in response to receiving notification that an emergency 911 call is connected with a public safety answering point and communicate the current address location to the public safety answering point. 
     The address location update module  128  may be configured to manage address locations that the softphone has been and set current addresses in response to a signal or command indicative of the softphone changing location based on being assigned a different IP address than previously assigned or otherwise. The address location update module  128  may automatically request a current address location from a user of the softphone by prompting the user with a text entry field, map interface, or any other graphical user interface function or feature. In addition, the address location update module  128  may be manually activated in response to a user requesting to provide a current address location. The address location update module  128  may access a local or remote database that includes previous address locations at which the softphone was located to enable a user to simply select from a list of previous address locations, thereby simplifying entering a current address location for the user. In one embodiment, the list is a drop down list, as further described with regard to  FIG. 1C . 
     Current GPS location module  130  may enable the softphone to access a current location from a GPS receiver or other location determination module (e.g., triangulation) configured within the computing device. Generate type II caller ID module  132  may be configured to generate type II caller ID data packets. In accordance with the principles of the present invention, when the softphone software application  124  is being utilized to place an emergency 911 call, the generate type II caller ID module  132  may include current address location in a name data field, thereby causing the current address location of the softphone to be displayed on a type II caller ID device at the PSAP. 
       FIG. 1C  is a screen shot of an exemplary softphone user interface  134  to enable a user to change current address location of the softphone. A keypad interface  136  may enable to press number keys  138   a - 1381  to dial a telephone number, such as 911, and feature codes, such as *67 (block caller ID). Function keys  140   a - 104   e  may also be included in the user interface  134  to enable the user to perform certain functions that are conventional and/or particular to softphones. For example, a “talk” function key  140   a  may enable a user to initiate a call or dial a telephone number after entering the telephone number. A “name” function key  140   e  may enable a user to associate a name with a telephone number, such as “Tom Brady” with telephone number 617 555-1278, thereby enabling the user to select, sort, or search for a name for selection to place a telephone call to the named telephone number. As shown, the named telephone numbers may be alphabetically listed in a list  142 . 
     A current address location section  144  may show a current address location of the softphone. A “new” softbutton  146  may enable a user to manually enter or select a new address location in which the softphone is located. A previous locations list  148  may be displayed to enable the user to select a location at which the softphone was located. If the user is at a location not previously located, he or she may be provided with an address location entry template (not shown) in which the address location, including name (e.g., stadium, airport, building, etc.), street address, floor, terminal, office, city, state, and zip code may be entered. It should be understood that a wide variety of address location information fields may be provided in the address location entry template for the user to enter the address location. 
       FIG. 2  is another exemplary network showing signals  200  communicating location information of a user using softphone  105 . In placing an emergency 911 call, the softphone  105  may communicate a mobile directory number (MDN), global positioning system coordinates (GPS), and abbreviated dialing code (ADC) to the network access point  106   a  at step  202 . The ADC may be a code pre-defined to represent an 911 code that is used to notify the network access point  106   a  and gateway/soft-switch  108  that a call is an emergency 911 call. The MDN, GPS, and ADC are communicated to the gateway/soft-switch  108 / 110  at step  204 . At step  206 , the gateway/soft-switch  108 / 110  may look-up in a database, such as database  112  ( FIG. 1 ), a selective router network address of selective router  116  that is in communication with public safety answering point  118  that is servicing an area in which the network access point  106   a  is located. 
     The gateway/soft-switch  108 / 110  may communicate the MDN and GPS information to the selective router  116  at step  208 . At step  210 , the selective router  116  may look-up a PSAP servicing a geographic area in which the network access point  106   a  is operating. The selective router  116  may communicate the MDN and GPS information to the PSAP  118  that was determined to be servicing the network access point  106   a . The PSAP  118  may communicate the MDN and GPS information to the ALI  120  at step  214 . In response, the ALI  120  may communicate information, including name and GPS coordinates, to the PSAP  118  in a table format for display to an operator. 
     At step  220 , a release answer call message (RACM) that indicates that the PSAP  118  goes off-hook may be sent from the PSAP  118  or switch located in the PTSN (not shown) to the gateway/soft-switch  108 / 110 . In response, a 200OK message, which is a data packet network analogous message to the analog network RACM message for session initiation protocol (SIP) signaling, may be communicated to the softphone  105  at step  222 . At step  224 , the softphone  105  may communicate an address location to the PSAP  118 . In one embodiment, the softphone  105  may generate a type II caller ID data packet to the PSAP  118  by placing the address location in a name field. The softphone  105  may perform such a communication because unlike a conventional WiFi telephone, a softphone  105  is operating on a computer that is capable of generating type II caller ID data packets or any other type of data packets. At step  226 , the address location may be displayed on a type II caller ID device at the PSAP  118 . 
       FIG. 3  is a block diagram of a softphone connecting to a network  300  via a broadband network access point, such as a DSL network access point. As shown, a computing device  302  with an audio interactive device  304  may operate as a softphone  305  by executing a softphone software application (not shown). A DSL/cable router  306 , which are broadband access devices, may provide an interface to an IP network  308 . A soft-switch  310  may be utilized to handle calls from the softphone  305 , including emergency 911 calls, to determine that a call is an emergency 911 call and communicate the call via gateway  312  to selective router  314 . The call is ultimately communicated to PSAP  316 . In essence, the network  300  and communications thereon operate in the same or similar manner as the network shown in  FIGS. 1A and 2 . Address location information may be communicated in a data packet  318 , such as a type II caller ID data packet, generated by the softphone  305  to the PSAP  316  in response to the PSAP going off-hook. 
       FIG. 4  is a block diagram of an exemplary signaling structure for communicating address information in a type II caller ID data packet. The signaling structure format  400  may be the same or substantially the same signaling structure as a conventional caller ID type II signaling structure as understood in the art. The signaling structure  400  includes a number of fields, including marks  402 , message type  404 , message length  406 , parameter type  408 , parameter length  410 , data  412 , parameter type  414 , parameter length  416 , data  418  and check sum  420 . Although the signaling structure  400  is configured for caller ID information, such as name and telephone number to be included in data fields  412  and  418 , which are 168 bits (21 characters) and 144 bits (18 characters), respectively, the principles of the present invention provide for including street number and street name (14 characters-112 bits), street type (2 characters-16 bits), and zip code (5 characters-40 bits) in the first data field  412  and date, time and phone number in the second data field  418 . This FSK signaling structure  400  may be generated by a softphone from address location information stored in the softphone and included in the first data field  412 . It should be understood that the format  400  is exemplary and that each of the data fields  412  may be allocated with different address information having different number of characters or bits assigned thereto. 
     More specifically, the address parameter may be ASCII equivalent of the characters that represent the address associated with the calling access line. The character subfields may be coded in 8-bit ASCII (no parity) with one octet per character. No characters (e.g., spaces, commas, periods, etc.) are assumed and the relevant characters are sent. The first character of the address may be transmitted first and subsequent characters may be transmitted in order until the last character is transmitted. For example, the address “12345John Rd” may be coded over 12 octets as 00110001, 00110010, 00110011, 00110100, 00110101, 01001010, 01001111, 01001000, 01001110, 00100000 (space), 01010010, and 01000100. If the street number plus the street name combined is more than 14 characters, then the characters after 14 characters are ignored by the system. If the street number plus the street name combined occupies 11 characters then one space may be put before the street name, one space before the street type, and another space before the street code. If the street number plus the street name combined occupies 12 characters, then one space may be put before the street name and another space may be put before the zip code. If the street number plus the street name combined occupies 13 characters, then one space may be put before the street name. To minimize the total length of the displayed address message on the public-safety answering point side, no more than one space is put before the street name, street type, or zip code. If the street number plus the street name combined occupies 14 characters, then no spaces are included. Additional description of the signaling structure format  400  and communication thereof is described in co-owned U.S. Pat. No. 8,014,341 issued Sep. 6, 2011, which is incorporated herein by reference in its entirety. 
       FIG. 5  is a flowchart of an exemplary process  500  for updating current location information of a softphone. The process  500  may start at step  502 , where the softphone may use (i) a registration request from a network access point or controller of a gateway or (ii) change of IP address as determined from a DHCP server or otherwise to detect a change in address location. In response, the softphone may alert a user to update current address location at step  504 . In alerting the user, a pop-up window or status notification message may be displayed and/or audio signal may be played. At step  506 , the user may update the address location at the softphone so that, if an emergency 911 call is placed while at the address location, the address location may be communicated to a PSAP. 
       FIG. 6  is a flowchart of an exemplary process  600  for a softphone being connected with a PSAP and communicating address location information of a network access device to the PSAP using a type II caller ID data packet. The process  600  starts at step  602 , where a softphone software application or client is configured with a current address location. At step  604 , an emergency 911 call may be made from the softphone and received at a network access point, which may or may not be a broadband network access point. At step  606 , the network access point sends the emergency 911 call to a soft-switch, which, in turn, detects the call as an emergency 911 call and sends a request or command to the network access point to route the call to a selective router associated with an PSAP that is servicing the network access point at step  608 . In routing the call to the selective router, the network access point looks-up in a database the correct selective router to which to send the call. At step  612 , the selective router connects the emergency 911 call to the correct PSAP that the selective router determines to be servicing the area in which the network access point is operating. In response to the PSAP going off-hook in answering the emergency 911 call, the softphone may detect a message, such as a 200OK message, to notify the softphone of a successful call set-up. At step  616 , the softphone may send address location information using a type II caller ID data packet. If the softphone is a fixed location softphone (e.g., if operating on a desktop computer rather than a portable computer), then an ALI, either local or remote, may look up the address at which the softphone is located. 
     The above description has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the illustrative embodiments in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art.