Emergency assistance calling for voice over IP communications systems
-
0Associated
Cases -
0Associated
Defendants -
0Accused
Products -
16Forward
Citations -
0
Petitions -
11
Assignments
First Claim
1. A process for handling emergency calls from a caller in a voice over IP system, the method comprising:
- receiving a routing request message including a caller identifier and a callee identifier;
retrieving a dialing profile associated with the caller, said dialing profile including an emergency call identifier field and an emergency response center identifier field;
setting an emergency call flag active when the contents of said emergency call identifier field of said dialing profile match said callee identifier;
determining whether said caller identifier is associated with a pre-associated direct inward dial (DID) identifier by searching a DID database for a DID record associating a DID identifier with said caller and determining that said caller identifier is associated with a pre-associated DID identifier when said record associating a DID identifier with said caller is found and determining that said caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with said caller is not found;
producing a DID identifier for said caller by;
associating a temporary DID identifier with said caller identifier when said emergency call flag is active and it is determined that said caller has no pre-associated DID identifier; and
using said pre-associated DID identifier as said DID identifier for said caller when said emergency call flag is active and it is determined that said caller has a pre-associated DID identifier;
producing a routing message for receipt by a call controller operable to cause a route to be established between the caller and an emergency response center, said routing message including;
an emergency response center identifier from said emergency response center identifier field of said dialing profile associated with the caller, said emergency response center identifier being associated with said emergency response center, andsaid DID identifier.
11 Assignments
0 Petitions

Accused Products

Abstract
In accordance with one aspect of the invention there is provided a process for handling emergency calls from a caller in a voice over IP system. The process involves receiving a routing request message including a caller identifier and a callee identifier. The process also involves setting an emergency call flag active in response to the callee identifier matching an emergency call identifier pre-associated with the caller. The process further involves producing an emergency response center identifier in response to the emergency call identifier. The process also involves determining whether the caller identifier is associated with a pre-associated direct inward dialing (DID) identifier. The process further involves producing a direct inward dialing (DID) identifier for the caller by associating a temporary DID identifier with the caller identifier when the emergency call flag is active and it is determined that the caller has no pre-associated DID. The process also involves producing a routing message including the emergency response center identifier and the temporary DID identifier for receipt by a routing controller operable to cause a route to be established between the caller and the emergency response center.
139 Citations
Allocating charges for communications services | ||
Patent #
US 8,774,378 B2
Filed 09/17/2013
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
Digifonica International Limited
|
Determining a time to permit a communications session to be conducted | ||
Patent #
US 9,137,385 B2
Filed 09/17/2013
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Intercepting voice over IP communications and other data communications | ||
Patent #
US 9,143,608 B2
Filed 04/15/2013
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Uninterrupted transmission of internet protocol transmissions during endpoint changes | ||
Patent #
US 9,154,417 B2
Filed 11/27/2013
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Producing routing messages for voice over IP communications | ||
Patent #
US 9,179,005 B2
Filed 08/13/2013
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Producing routing messages for voice over IP communications | ||
Patent #
US 9,537,762 B2
Filed 10/07/2015
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Intercepting voice over IP communications and other data communications | ||
Patent #
US 9,549,071 B2
Filed 07/17/2015
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Emergency assistance calling for voice over IP communications systems | ||
Patent #
US 9,565,307 B2
Filed 08/15/2013
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Producing routing messages for voice over IP communications | ||
Patent #
US 9,813,330 B2
Filed 12/30/2016
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Producing routing messages for voice over IP communications | ||
Patent #
US 9,826,002 B2
Filed 01/12/2017
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Producing routing messages for voice over IP communications | ||
Patent #
US 9,935,872 B2
Filed 10/11/2017
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Producing routing messages for voice over IP communications | ||
Patent #
US 9,948,549 B2
Filed 10/19/2017
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Allocating charges for communications services | ||
Patent #
US 9,998,363 B2
Filed 07/07/2014
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Uninterrupted transmission of internet protocol transmissions during endpoint changes | ||
Patent #
US 10,021,729 B2
Filed 07/17/2015
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Intercepting voice over IP communications and other data communications | ||
Patent #
US 10,038,779 B2
Filed 12/20/2016
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Producing routing messages for voice over IP communications | ||
Patent #
US 10,218,606 B2
Filed 03/30/2018
|
Current Assignee
VoIP-Pal.com Inc.
|
Sponsoring Entity
VoIP-Pal.com Inc.
|
Method, apparatus, system, medium, and signals for intercepting a multiple-party communication | ||
Patent #
US 7,950,046 B2
Filed 03/30/2007
|
Current Assignee
URANUS INTERNATIONAL LIMITED OF SEYCHELLES
|
Sponsoring Entity
URANUS INTERNATIONAL LIMITED OF SEYCHELLES
|
LAWFUL INTERCEPTION IN WIRELINE BROADBAND NETWORKS | ||
Patent #
US 20100086119A1
Filed 07/27/2007
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Sponsoring Entity
Telefonaktiebolaget LM Ericsson
|
CONTROLLED RELAY OF MEDIA STREAMS ACROSS NETWORK PERIMETERS | ||
Patent #
US 20090028146A1
Filed 09/08/2008
|
Current Assignee
Microsoft Technology Licensing LLC
|
Sponsoring Entity
Microsoft Technology Licensing LLC
|
SYSTEM AND METHOD FOR THE SECURE, REAL-TIME, HIGH ACCURACY CONVERSION OF GENERAL QUALITY SPEECH INTO TEXT | ||
Patent #
US 20090292539A1
Filed 05/22/2009
|
Current Assignee
Advanced Messaging Technologies Inc.
|
Sponsoring Entity
Advanced Messaging Technologies Inc.
|
METHOD OF COMPILING A LIST OF IDENTIFIERS ASSOCIATED WITH A MOBILE DEVICE USER | ||
Patent #
US 20090325558A1
Filed 07/17/2006
|
Current Assignee
Mmi Research Ltd.
|
Sponsoring Entity
Mmi Research Ltd.
|
Adaption of emergency calls to the emergency services network based on caller location | ||
Patent #
US 20080037715A1
Filed 06/29/2006
|
Current Assignee
Avaya Incorporated
|
Sponsoring Entity
Avaya Incorporated
|
Cellular-to-VoIP call establishment systems, methods, devices, and computer software | ||
Patent #
US 20080056235A1
Filed 08/31/2006
|
Current Assignee
Syniverse Technologies LLC
|
Sponsoring Entity
Syniverse Technologies LLC
|
SYSTEM AND METHOD FOR DELIVERING CALLBACK NUMBERS FOR EMERGENCY CALLS IN A VOIP SYSTEM | ||
Patent #
US 20080063153A1
Filed 08/21/2007
|
Current Assignee
West Safety Services Inc.
|
Sponsoring Entity
West Safety Services Inc.
|
Controlled relay of media streams across network perimeters | ||
Patent #
US 7,454,510 B2
Filed 05/29/2003
|
Current Assignee
Microsoft Technology Licensing LLC
|
Sponsoring Entity
Microsoft Corporation
|
Method and system for providing voice over IP managed services utilizing a centralized data store | ||
Patent #
US 20070036143A1
Filed 08/12/2005
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Verizon Patent and Licensing Incorporated
|
Communicating voice over a packet-switching network | ||
Patent #
US 7,212,522 B1
Filed 07/08/2004
|
Current Assignee
Cisco Technology Incorporated
|
Sponsoring Entity
Cisco Technology Incorporated
|
Caller-callee association of a plurality of networked devices | ||
Patent #
US 20070112964A1
Filed 05/15/2006
|
Current Assignee
Qualcomm Inc.
|
Sponsoring Entity
Qualcomm Inc.
|
ROUTING PATH OPTIMIZATION BETWEEN SIP ENDPOINTS | ||
Patent #
US 20070253418A1
Filed 04/26/2007
|
Current Assignee
DSP Group Incorporated
|
Sponsoring Entity
DSP Group Incorporated
|
System for the automatic notification that a 9-1-1 call has occurred | ||
Patent #
US 6,151,385 A
Filed 12/20/1999
|
Current Assignee
911 Notify LLC
|
Sponsoring Entity
911Notify.com LLC
|
Call charge control and notification | ||
Patent #
US 5,559,871 A
Filed 09/23/1994
|
Current Assignee
Lucent Technologies Inc.
|
Sponsoring Entity
Lucent Technologies Inc.
|
Virtual private networks for voice over networks applications | ||
Patent #
US 7,120,682 B1
Filed 03/08/2001
|
Current Assignee
Cisco Technology Incorporated
|
Sponsoring Entity
Cisco Technology Incorporated
|
Wireless internet network architecture for voice and data communications | ||
Patent #
US 5,910,946 A
Filed 01/13/1997
|
Current Assignee
Samsung Electronics Co. Ltd.
|
Sponsoring Entity
-
|
System and method for providing packet data and voice services to mobile subscribers | ||
Patent #
US 5,793,762 A
Filed 07/06/1995
|
Current Assignee
Qwest Communications International Incorporated
|
Sponsoring Entity
MediaOne Group Inc.
|
Method and system for customer selected direct dialed voice-over-internet protocol (VOIP) | ||
Patent #
US 7,046,658 B1
Filed 06/23/2000
|
Current Assignee
ATT Inc.
|
Sponsoring Entity
ATT Inc.
|
Economical call processing system and method, such as for providing one-number telecommunication services | ||
Patent #
US 7,068,772 B1
Filed 08/03/2004
|
Current Assignee
Accessline Communications Corporation
|
Sponsoring Entity
Accessline Communications Corporation
|
Unified messaging system and method | ||
Patent #
US 5,608,786 A
Filed 02/13/1995
|
Current Assignee
PayPal Inc.
|
Sponsoring Entity
ALPHANET TELECOM INC.
|
Method and apparatus for selecting an internet/PSTN changeover server for a packet based phone call | ||
Patent #
US 5,889,774 A
Filed 03/14/1997
|
Current Assignee
ITXC IP Holdings SARL
|
Sponsoring Entity
-
|
Enhanced internet domain name server | ||
Patent #
US 6,104,711 A
Filed 03/06/1997
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Verizon Services Corporation
|
Telecommunication network arrangement for providing real time access to call records | ||
Patent #
US 5,506,893 A
Filed 11/29/1994
|
Current Assignee
ATT Inc.
|
Sponsoring Entity
ATT Inc.
|
Method and apparatus for performing position-based call processing in a mobile telephone system | ||
Patent #
US 6,073,013 A
Filed 04/10/1997
|
Current Assignee
Qualcomm Inc.
|
Sponsoring Entity
Qualcomm Inc.
|
System and method for establishing internet communications links | ||
Patent #
US 5,907,547 A
Filed 10/24/1996
|
Current Assignee
ATT Inc.
|
Sponsoring Entity
ATT Inc.
|
System and method for routing telephone calls involving internet protocol network | ||
Patent #
US 6,963,557 B2
Filed 03/29/2003
|
Current Assignee
West Safety Services Inc.
|
Sponsoring Entity
Intrado Incorporated
|
Telephone call fee notifying system and telephone call fee notifying apparatus | ||
Patent #
US 5,937,045 A
Filed 03/15/1996
|
Current Assignee
NEC Corporation
|
Sponsoring Entity
-
|
Method and system for global communications network management | ||
Patent #
US 6,005,926 A
Filed 09/11/1997
|
Current Assignee
AIP Acquisition LLC
|
Sponsoring Entity
ANIP Inc.
|
System and method for generating multiple line appearances in a communication network | ||
Patent #
US 6,798,767 B1
Filed 11/16/1999
|
Current Assignee
Cisco Technology Incorporated
|
Sponsoring Entity
Cisco Technology Incorporated
|
System and method for routing special number calls in a telecommunication network | ||
Patent #
US 6,819,929 B2
Filed 03/12/2001
|
Current Assignee
Nokia US Holdings. Inc.
|
Sponsoring Entity
Lucent Technologies Inc.
|
Voice and data communication | ||
Patent #
US 6,141,404 A
Filed 06/13/1996
|
Current Assignee
Benhov GmbH LLC
|
Sponsoring Entity
TRACK COMMUNICATIONS INC.
|
Alpha tagging and type indication of emergency call number | ||
Patent #
US 6,766,159 B2
Filed 03/09/2001
|
Current Assignee
Conversant Wireless Licensing S..r.l. fka Core Wireless Licensing S.a.r.l.
|
Sponsoring Entity
Nokia Corporation
|
Network of voice and/or fax mail systems | ||
Patent #
US 5,454,030 A
Filed 02/08/1995
|
Current Assignee
Alcatel SA
|
Sponsoring Entity
Alcatel SA
|
Pro-active message delivery system and method | ||
Patent #
US 5,712,907 A
Filed 01/04/1996
|
Current Assignee
Net2Phone Inc.
|
Sponsoring Entity
Open Port Technology Inc.
|
Apparatus and method for internet telephony routing | ||
Patent #
US 6,597,686 B1
Filed 04/21/1998
|
Current Assignee
Nytell Software LLC
|
Sponsoring Entity
Telcordia Technologies Incorporated
|
Server of a computer network telephone system | ||
Patent #
US 5,991,291 A
Filed 12/13/1996
|
Current Assignee
Sony Corporation
|
Sponsoring Entity
Sony Corporation
|
Methods and apparatus for transmitting accurate emergency location identification numbers (ELINs) from behind a multi-line telephone system (MLTS) after an emergency caller disconnects | ||
Patent #
US 6,724,860 B2
Filed 03/23/2001
|
Current Assignee
Unify Inc.
|
Sponsoring Entity
Siemens Communications Incorporated
|
Apparatuses and mobile stations for providing packet data communication in digital TDMA cellular systems | ||
Patent #
US 5,590,133 A
Filed 12/09/1994
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Sponsoring Entity
Telefonaktiebolaget LM Ericsson
|
Area wide centrex | ||
Patent #
US 5,247,571 A
Filed 02/29/1992
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Bell Atlantic Network Services Inc.
|
System and method for supporting multiple call centers | ||
Patent #
US 6,744,858 B1
Filed 01/25/2002
|
Current Assignee
Vesta Solutions Inc.
|
Sponsoring Entity
Tel Control Inc.
|
Networked interactive call management subsystems with prevention of simultaneous use of a single account number | ||
Patent #
US 5,469,497 A
Filed 08/04/1994
|
Current Assignee
ITELSA INC.
|
Sponsoring Entity
Teledebit Sarasota FL
|
Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones | ||
Patent #
US 5,726,984 A
Filed 10/05/1995
|
Current Assignee
Avago Technologies General IP PTE Limited
|
Sponsoring Entity
Norand Corporation
|
Enhanced signaling for terminating resource | ||
Patent #
US 6,430,275 B1
Filed 07/28/1999
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Verizon Services Corporation
|
Internet telephone service | ||
Patent #
US 6,069,890 A
Filed 06/26/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Verizon Services Corporation
|
Toll call rate provider | ||
Patent #
US 5,930,343 A
Filed 11/21/1997
|
Current Assignee
Lucent Technologies Inc.
|
Sponsoring Entity
Lucent Technologies Inc.
|
System providing integrated services over a computer network | ||
Patent #
US 6,298,062 B1
Filed 10/23/1998
|
Current Assignee
Verizon Communications Inc.
|
Sponsoring Entity
GTE Laboratories Incorporated
|
Telecommunications custom calling services | ||
Patent #
US 6,014,379 A
Filed 11/09/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Bell Atlantic Network Services Inc.
|
Network session management | ||
Patent #
US 6,137,869 A
Filed 09/16/1997
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Verizon Services Corporation
|
Method, server and telecommunications system for name translation on a conditional basis and/or to a telephone number | ||
Patent #
US 6,282,574 B1
Filed 02/24/2000
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Bell Atlantic Network Services Inc.
|
Prepay telecommunications system | ||
Patent #
US 6,058,300 A
Filed 02/04/1997
|
Current Assignee
Freedom Wireless Incorporated
|
Sponsoring Entity
NATIONAL TELEMANAGEMENT CORPORATION
|
Fax routing system and method using standard fax machine and personal computer | ||
Patent #
US 6,052,445 A
Filed 09/04/1998
|
Current Assignee
OpenPrint LLC
|
Sponsoring Entity
Infotrieve Inc.
|
Public wireless/cordless internet gateway | ||
Patent #
US 6,359,880 B1
Filed 07/30/1999
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Bell Atlantic Network Services Inc.
|
System and method for providing an on-line directory service | ||
Patent #
US 5,850,433 A
Filed 05/01/1996
|
Current Assignee
Harley R. Ball
|
Sponsoring Entity
Harley R. Ball
|
Telecommunication number portability | ||
Patent #
US 6,021,126 A
Filed 10/09/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Bell Atlantic Network Services Inc.
|
Prepaid cash card | ||
Patent #
US 5,621,787 A
Filed 09/13/1995
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Bell Atlantic Network Services Inc.
|
Method for transmitting data in a telecommunications network and switch for implementing said method | ||
Patent #
US 6,954,453 B1
Filed 10/07/1997
|
Current Assignee
Sigram Schindler Beteiligungsgesellschaft Mbh
|
Sponsoring Entity
Teles Ag Informationstechnologien
|
Telecommunications network to internetwork universal server | ||
Patent #
US 5,940,598 A
Filed 01/28/1997
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
-
|
System, method and article of manufacture for communications utilizing calling, plans in a hybrid network | ||
Patent #
US 5,867,495 A
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
-
|
Providing CALEA/LegaI Intercept information to law enforcement agencies for internet protocol multimedia subsystems (IMS) | ||
Patent #
US 20060072550A1
Filed 10/06/2004
|
Current Assignee
Alcatel-Lucent USA Inc.
|
Sponsoring Entity
Alcatel-Lucent USA Inc.
|
Systems and methods for serving VolP emergency calls | ||
Patent #
US 20060072547A1
Filed 09/29/2004
|
Current Assignee
Lucent Technologies Inc.
|
Sponsoring Entity
Lucent Technologies Inc.
|
Methods and systems for signaling in a communications network for ported, migrated and/or dual-mode subscribers | ||
Patent #
US 20060111116A1
Filed 11/19/2004
|
Current Assignee
Tekelec Global Inc.
|
Sponsoring Entity
Tekelec Global Inc.
|
Method and apparatus for intercepting events in a communication system | ||
Patent #
US 20060093135A1
Filed 10/20/2005
|
Current Assignee
Seven Networks LLC
|
Sponsoring Entity
Seven Networks LLC
|
Method and system for wiretapping of packet-based communications | ||
Patent #
US 7,055,174 B1
Filed 02/26/2001
|
Current Assignee
Sprint Spectrum LP
|
Sponsoring Entity
Sprint Spectrum LP
|
Protocol for launching a software application remotely and for reserving network resources with quality of service | ||
Patent #
US 7,079,526 B1
Filed 10/02/2000
|
Current Assignee
MEC Management LLC
|
Sponsoring Entity
Orange S.A.
|
System and method for private wireless networks | ||
Patent #
US 20060160565A1
Filed 07/29/2005
|
Current Assignee
Nextel Communications
|
Sponsoring Entity
Nextel Communications
|
Emergency call system | ||
Patent #
US 20060153342A1
Filed 12/21/2005
|
Current Assignee
OKI Electric Industry Company Limited
|
Sponsoring Entity
OKI Electric Industry Company Limited
|
System and method for jurisdictional routing | ||
Patent #
US 20060177035A1
Filed 01/24/2005
|
Current Assignee
Sprint Communications Company LP
|
Sponsoring Entity
Sprint Communications Company LP
|
Service in wlan inter-working, address management system, and method | ||
Patent #
US 20060209768A1
Filed 01/14/2004
|
Current Assignee
Wi-Fi One LLC
|
Sponsoring Entity
Wi-Fi One LLC
|
Lawful interception of multimedia calls | ||
Patent #
US 20060264200A1
Filed 04/09/2003
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Sponsoring Entity
Telefonaktiebolaget LM Ericsson
|
User defined codes for emergency calls | ||
Patent #
US 20060258328A1
Filed 05/10/2005
|
Current Assignee
Lucent Technologies Inc.
|
Sponsoring Entity
Lucent Technologies Inc.
|
System and method for providing alternate routing in a network | ||
Patent #
US 20050025043A1
Filed 07/29/2003
|
Current Assignee
Level 3 Communications LLC
|
Sponsoring Entity
Level 3 Communications LLC
|
IP-based enhanced emergency services using intelligent client devices | ||
Patent #
US 20050083911A1
Filed 10/21/2003
|
Current Assignee
Hewlett Packard Enterprise Development LP
|
Sponsoring Entity
Hewlett Packard Enterprise Development LP
|
Lawful interception gateway | ||
Patent #
US 20050094651A1
Filed 09/29/2004
|
Current Assignee
Alcatel-Lucent SA
|
Sponsoring Entity
Alcatel-Lucent SA
|
Surveillance implementation in managed VOP networks | ||
Patent #
US 20050174937A1
Filed 02/10/2005
|
Current Assignee
Telogy Networks Inc.
|
Sponsoring Entity
Telogy Networks Inc.
|
Apparatus for vending and delivering telephone services | ||
Patent #
US 20050177843A1
Filed 07/23/2003
|
Current Assignee
NEWSTEP NETWORKS INC.
|
Sponsoring Entity
NEWSTEP NETWORKS INC.
|
Method and apparatus for providing in-band location information in an emergency response network | ||
Patent #
US 20050169248A1
Filed 02/04/2004
|
Current Assignee
Nortel Networks Limited
|
Sponsoring Entity
Nortel Networks Limited
|
Method and system for mapping phone numbers to IP addresses | ||
Patent #
US 6,674,745 B1
Filed 12/31/1998
|
Current Assignee
Uber Technologies Inc.
|
Sponsoring Entity
Hewlett-Packard Development Company L.P.
|
Voice over data telecommunications network architecture | ||
Patent #
US 20040022237A1
Filed 02/12/2003
|
Current Assignee
Level 3 Communications LLC
|
Sponsoring Entity
Level 3 Communications LLC
|
Method and system allowing lawful interception of connections such a voice-over-internet protocol calls | ||
Patent #
US 20040157629A1
Filed 12/31/2003
|
Current Assignee
Nokia Corporation
|
Sponsoring Entity
-
|
Stealth interception of calls within a VoIP network | ||
Patent #
US 20040165709A1
Filed 02/24/2003
|
Current Assignee
Robert Leslie Pence, Satish Gundabathula
|
Sponsoring Entity
Satish Gundabathula
|
Method and telecommunications system for monitoring a data flow in a data network | ||
Patent #
US 20040181599A1
Filed 09/22/2003
|
Current Assignee
Siemens AG
|
Sponsoring Entity
-
|
Lawful interception for VoIP calls in IP based networks | ||
Patent #
US 20040202295A1
Filed 07/25/2003
|
Current Assignee
Alcatel-Lucent SA
|
Sponsoring Entity
-
|
Method and system for lawful interception of packet switched network services | ||
Patent #
US 20040255126A1
Filed 06/05/2003
|
Current Assignee
RPX Clearinghouse LLC
|
Sponsoring Entity
-
|
Forced bearer routing for packet-mode interception | ||
Patent #
US 20040240439A1
Filed 05/30/2003
|
Current Assignee
Lucent Technologies Inc.
|
Sponsoring Entity
-
|
Pre-paid telephone calling card linked to a stored value account | ||
Patent #
US 6,507,644 B1
Filed 06/08/1999
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
WorldCom Inc.
|
Methods and apparatus for wiretapping IP-based telephone lines | ||
Patent #
US 20030200311A1
Filed 06/09/2003
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
-
|
Call-content determinative selection of interception access points in a soft switch controlled network | ||
Patent #
US 20030219103A1
Filed 02/12/2003
|
Current Assignee
Nokia Siemens Networks GmbH Company KG
|
Sponsoring Entity
-
|
Virtual second line hybrid network communication system | ||
Patent #
US 6,351,464 B1
Filed 09/20/1999
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
WorldCom Inc.
|
Communication network with a collection gateway and method for providing surveillance services | ||
Patent #
US 20020051518A1
Filed 04/05/2001
|
Current Assignee
Motorola Solutions Inc.
|
Sponsoring Entity
Motorola Solutions Inc.
|
Electronic communications system and method | ||
Patent #
US 20020116464A1
Filed 03/27/2001
|
Current Assignee
UGOTACALL PTE. LTD.
|
Sponsoring Entity
UGOTACALL PTE. LTD.
|
Method and system for providing audio conferencing services to users of on-line text messaging services | ||
Patent #
US 20020122391A1
Filed 12/21/2001
|
Current Assignee
SONEXIS INC.
|
Sponsoring Entity
SONEXIS INC.
|
Method and apparatus for providing prepaid telecommunications services | ||
Patent #
US 6,188,752 B1
Filed 11/12/1996
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Sponsoring Entity
Telefonaktiebolaget LM Ericsson
|
Methods and apparatus for gathering and processing billing information for internet telephony | ||
Patent #
US 6,104,704 A
Filed 03/20/1997
|
Current Assignee
ATT Inc.
|
Sponsoring Entity
ATT Inc.
|
System and method for accessing customer contact services over a network | ||
Patent #
US 6,115,737 A
Filed 07/24/1996
|
Current Assignee
Intellectual Ventures II LLC
|
Sponsoring Entity
Telcordia Technologies Incorporated
|
Network presence for a communications system operating over a computer network | ||
Patent #
US 6,128,304 A
Filed 10/23/1998
|
Current Assignee
Verizon Communications Inc.
|
Sponsoring Entity
Verizon Laboratories Incorporated
|
Interactive and information data services telephone billing system | ||
Patent #
US 5,864,610 A
Filed 01/26/1998
|
Current Assignee
Rakuten Inc.
|
Sponsoring Entity
-
|
Method and apparatus for increased quality of voice transmission over the internet | ||
Patent #
US 5,883,891 A
Filed 04/30/1996
|
Current Assignee
iCall Incorporated
|
Sponsoring Entity
Williams Wyatt
|
Method for the billing of transactions over the internet | ||
Patent #
US 5,905,736 A
Filed 04/22/1996
|
Current Assignee
ATT Inc.
|
Sponsoring Entity
ATT Inc.
|
Method and system for toll charge and rate inquiry service for portable numbers | ||
Patent #
US 5,915,005 A
Filed 05/23/1997
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
-
|
Telecommunications network | ||
Patent #
US 5,923,659 A
Filed 09/20/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
-
|
Billing in the internet | ||
Patent #
US 5,956,391 A
Filed 02/10/1997
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Sponsoring Entity
-
|
Public accessible terminal capable of opening an account for allowing access to the internet and E-mail by generating ID code and security code for users | ||
Patent #
US 5,953,504 A
Filed 10/10/1995
|
Current Assignee
SUNTEK SOFTWARE CORPORATION
|
Sponsoring Entity
-
|
Method and system for allocating costs in a distributed computing network | ||
Patent #
US 5,970,477 A
Filed 07/15/1996
|
Current Assignee
Bellsouth Intellectual Property Corporation
|
Sponsoring Entity
Bellsouth Intellectual Property Corporation
|
System and method for communicating information using the public switched telephone network and a wide area network | ||
Patent #
US 5,974,043 A
Filed 09/16/1996
|
Current Assignee
SOLRAM ELECTRONICS LTD.
|
Sponsoring Entity
SOLRAM ELECTRONICS LTD.
|
Network access to internet and stored multimedia services from a terminal supporting the H.320 protocol | ||
Patent #
US 5,724,355 A
Filed 10/24/1995
|
Current Assignee
ATT Inc.
|
Sponsoring Entity
ATT Inc.
|
900 number billing and collection system and method for on-line computer services | ||
Patent #
US 5,737,414 A
Filed 05/20/1997
|
Current Assignee
Qualcomm Inc.
|
Sponsoring Entity
Walker Asset Management Limited Partnership
|
Integrated internet system for translating logical addresses of internet documents to physical addresses using integrated service control point | ||
Patent #
US 5,751,961 A
Filed 01/31/1996
|
Current Assignee
Intellectual Ventures II LLC
|
Sponsoring Entity
Bell Communications Research Inc.
|
Telecommunications call management system | ||
Patent #
US 5,799,072 A
Filed 03/04/1996
|
Current Assignee
CALLMANAGE
|
Sponsoring Entity
CALLMANAGE
|
System for selective communication connection based on transaction pricing signals | ||
Patent #
US 5,802,502 A
Filed 04/26/1994
|
Current Assignee
British Telecommunications PLC
|
Sponsoring Entity
British Telecommunications PLC
|
Prepaid limited usage calling card | ||
Patent #
US 5,825,863 A
Filed 06/17/1996
|
Current Assignee
Inventor Holdings LLC
|
Sponsoring Entity
Walker Asset Management Limited Partnership
|
Prepaid calling card external/adjunct database processor | ||
Patent #
US 5,828,740 A
Filed 11/14/1996
|
Current Assignee
Sprint Communications Company LP
|
Sponsoring Entity
Sprint Communications Company LP
|
Method and apparatus for establishing communications with a remote node on a switched network based on hypertext dialing information received from a packet network | ||
Patent #
US 5,838,682 A
Filed 11/28/1995
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Sponsoring Entity
Bell Atlantic Network Services Inc.
|
System and method for billing for transactions conducted over the internet from within an intranet | ||
Patent #
US 5,845,267 A
Filed 09/06/1996
|
Current Assignee
ATT Inc.
|
Sponsoring Entity
ATT Inc.
|
Call back service for a regulatory restrictive area | ||
Patent #
US 5,661,790 A
Filed 11/03/1995
|
Current Assignee
Telefonaktiebolaget LM Ericsson
|
Sponsoring Entity
Telefonaktiebolaget LM Ericsson
|
Method and system for updating a call rating database | ||
Patent #
US 5,519,769 A
Filed 04/04/1994
|
Current Assignee
Epstein Drangel LLP
|
Sponsoring Entity
Rates Technology Inc.
|
Least cost routing device for separate connection into phone line | ||
Patent #
US 5,425,085 A
Filed 03/18/1994
|
Current Assignee
Epstein Drangel LLP
|
Sponsoring Entity
Rates Technology Inc.
|
Apparatus for prepayment of telecommunication connections in a telecommunication switching network without utilization of rate schedules and call cost computations | ||
Patent #
US 5,440,621 A
Filed 11/22/1993
|
Current Assignee
International Integrated Communications Ltd. New York NY, International Integrated Communications Ltd.
|
Sponsoring Entity
International Integrated Communications Ltd. New York NY, International Integrated Communications Ltd.
|
Dynamic pricing method and apparatus for communication systems | ||
Patent #
US 5,303,297 A
Filed 07/25/1991
|
Current Assignee
Motorola Inc.
|
Sponsoring Entity
Motorola Inc.
|
Method and apparatus for prepayment of telecommunication connections by registered groups of subscribers in a telecommunication switching network | ||
Patent #
US 5,359,642 A
Filed 02/26/1993
|
Current Assignee
INTERNATIONAL INTEGRATED COMMUNICATIONS INC.
|
Sponsoring Entity
INTERNATIONAL INTEGRATED COMMUNICATIONS INC.
|
Telephone billing method | ||
Patent #
US 5,146,491 A
Filed 08/08/1991
|
Current Assignee
COPLEY COLLETION INC. THE
|
Sponsoring Entity
Pilgrim Telephone Incorporated
|
Control device for a copier | ||
Patent #
US 4,916,491 A
Filed 10/27/1988
|
Current Assignee
Ricoh Company Limited
|
Sponsoring Entity
Ricoh Company Limited
|
Packet structure for mirrored traffic flow | ||
Patent #
US 8,116,307 B1
Filed 09/23/2004
|
Current Assignee
Juniper Networks Incorporated
|
Sponsoring Entity
Juniper Networks Incorporated
|
32 Claims
- 1. A process for handling emergency calls from a caller in a voice over IP system, the method comprising:
receiving a routing request message including a caller identifier and a callee identifier; retrieving a dialing profile associated with the caller, said dialing profile including an emergency call identifier field and an emergency response center identifier field; setting an emergency call flag active when the contents of said emergency call identifier field of said dialing profile match said callee identifier; determining whether said caller identifier is associated with a pre-associated direct inward dial (DID) identifier by searching a DID database for a DID record associating a DID identifier with said caller and determining that said caller identifier is associated with a pre-associated DID identifier when said record associating a DID identifier with said caller is found and determining that said caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with said caller is not found; producing a DID identifier for said caller by; associating a temporary DID identifier with said caller identifier when said emergency call flag is active and it is determined that said caller has no pre-associated DID identifier; and using said pre-associated DID identifier as said DID identifier for said caller when said emergency call flag is active and it is determined that said caller has a pre-associated DID identifier; producing a routing message for receipt by a call controller operable to cause a route to be established between the caller and an emergency response center, said routing message including; an emergency response center identifier from said emergency response center identifier field of said dialing profile associated with the caller, said emergency response center identifier being associated with said emergency response center, and said DID identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
- 11. An apparatus for handling emergency calls from a caller in a voice over IP system, the apparatus comprising:
means for receiving a routing request message including a caller identifier and a callee identifier; means for retrieving a dialing profile associated with the caller, said dialing profile comprising an emergency call identifier field and an emergency response center identifier field; means for setting an emergency call flag active when the contents of an emergency call identifier field of said dialing profile match said callee identifier; means for determining whether said caller identifier is associated with a pre-associated direct inward dial (DID) identifier by searching a database for a DID record associating a DID identifier with said caller and for determining that said caller identifier is associated with a pre-associated DID identifier when said record associating a DID identifier with said caller is found and for determining that said caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with said caller is not found; means for producing a DID identifier for said caller comprising; means for associating a temporary DID identifier with said caller identifier when said emergency call flag is active and it is determined that said caller has no pre-associated DID identifier; and means for causing said pre-associated DID identifier to be used as said DID identifier for said caller when said emergency call flag is active and it is determined that said caller has a pre-associated DID identifier; means for producing a routing message for receipt by a call controller operable to cause a route to be established between the caller and an emergency response center, said routing message including; an emergency response center identifier from said emergency response center identifier field of said dialing profile, said emergency response center identifier being associated with said emergency response center, and said DID identifier. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
- 22. An apparatus for handling emergency calls from a caller in a voice over IP system, the apparatus comprising:
a receiver operably configured to receive a routing request message including a caller identifier and a callee identifier; a processor circuit in communication with the receiver and operably configured to cause a database to be searched for a dialing profile associated with the caller, said dialing profile including an emergency call identifier field and an emergency response center identifier field; the processor circuit further operably configured to; set an emergency call flag active when the contents of said emergency call identifier field of said dialing profile match said callee identifier; determine whether said caller identifier is associated with a pre-associated direct inward dial (DID) identifier by causing a DID database to be searched for a DID record associating a DID identifier with said caller; determine that said Caller identifier is associated with a pre-associated DID identifier when said record associating a DID identifier with said caller is found and determine that said caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with said caller is not found; produce a DID identifier for said caller by; associating a temporary DID identifier with said caller identifier when said emergency call flag is active and it is determined that said caller has no pre-associated DID identifier; and using said pre-associated DID identifier as said DID identifier for said caller when said emergency call flag is active and it is determined that said caller has a pre-associated DID identifier; produce a routing message for receipt by a call controller operable to cause a route to be established between the caller and an emergency response center, said routing message including; an emergency response center identifier from said emergency response center indentifier field of said dialing profile associated with the caller, said emergency response center identifier being associated with said emergency response center, and said DID identifier. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31)
- 32. A non-transitory computer readable medium encoded with codes for directing a processor circuit to handle emergency calls from callers in a voice over IP system, said codes directing said processor circuit to:
receive a routing request message including a caller identifier and a callee identifier; retrieve a dialing profile associated with the caller, said dialing profile including an emergency call identifier field and an emergency response center identifier field; set an emergency call flag active when the contents of said emergency call identifier field of said dialing profile match said callee identifier; determine whether said caller identifier is associated with a pre-associated direct inward dial (DID) identifier by searching a DID database for a DID record associating a DID identifier with said caller and determining that said caller identifier is associated with a pre-associated DID identifier when said record associating a DID identifier with said caller is found and determining that said caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with said caller is not found; produce a DID identifier for said caller by; associating a temporary DID identifier with said caller identifier when said emergency call flag is active and it is determined that said caller has no pre-associated DID identifier; and using said pre-associated DID identifier as said DID identifier for said caller when said emergency call flag is active and it is determined that said caller has a pre-associated DID identifier; produce a routing message for receipt by a call controller operable to cause a route to be established between the caller and an emergency response center, said routing message including; an emergency response center identifier from said emergency response center identifier field of said dialing profile associated with the caller, said emergency response center identifier being associated with said emergency response center, and said DID identifier.
1 Specification
This invention relates to emergency assistance calling, voice over internet protocol communications and methods and apparatus for emergency assistance calling for voice over IP data communications.
An essential feature of traditional telephone systems (PSTN) is the ability of its subscribers to dial a universal emergency number (911 in North America) to access a host of emergency services such as fire, police and ambulance. Because of the hierarchical nature of telephone networks and numbering schemes, a call coming from a specific telephone number on the PSTN network is automatically routed to a nearest Emergency Response Center (ERC) based on the area code and exchange code contained in the specific telephone number. Normally, the specific telephone number will be compliant with the E.164 standard set by the International Telecommunication Union. When the call comes into the ERC, call information presended the ERC operator includes the phone number, and where available, the address associated with this phone number.
Since the late 1990s, an enhanced emergency service (E911) was mandated for PSTN and cellular carriers in North America and elsewhere. In particular, with this enhanced service the information automatically provided to the ERC includes the physical location of the person calling, even where the caller is using a cellular telephone. Moreover, a callback functionality is integrated into E911-compliant systems allowing an ERC operator to call back the person who placed the emergency call even if the original phone call was disconnected or if the calling line became busy.
In the realm of VoIP networks, implementation of 911 and E911 services often presents significant problems.
Even to provide basic 911 services, VoIP systems present a number of problems because they do not employ hierarchical numbering schemes, and the phone numbers assigned to VoIP system subscribers, while still in the E.164 format, do not actually reflect the subscribers physical location via area code and exchange codes. As a result, a VoIP provider is not able to automatically route an emergency call to an ERC nearest to the subscriber. Because VoIP subscriber phone numbers are assigned from a bulk of phone numbers that VoIP providers purchase from wireline PSTN carriers, a VoIP 911 emergency services call coming into the ERC is not associated with a subscriber address that can be accessed by the ERC operator.
In addition, because VoIP systems are not based on the Signaling System 7 (SS7) protocol, they do not natively support special short phone numbers such as 911. In particular, they do not natively support variable length phone number dialing, or dynamic translation of dialed universal phone numbers into actual destination phone numbers based on user attributes such as location or service type.
VoIP systems are also typically not able to comply with E911 service requirements, for the same reasons they are not able to comply with regular 911 services.
In accordance with one aspect of the invention, there is provided a process for handling emergency calls from a caller in a voice over IP system. The method involves receiving a routing request message including a caller identifier and a callee identifier. The method also involves setting an emergency call flag active in response to the callee identifier matching an emergency call identifier pre-associated with the caller. The method further involves producing an emergency response center identifier in response to the emergency call identifier. The method also involves determining whether the caller identifier is associated with a pre-associated direct inward dialing (DID) identifier. The method further involves producing a direct inward dialing (DID) identifier for the caller by associating a temporary DID identifier with the caller identifier when the emergency call flag is active and it is determined that the caller has no pre-associated DID identifier. The method also involves producing a routing message including the emergency response center identifier and the temporary DID identifier for receipt by a routing controller operable to cause a route to be established between the caller and the emergency response center.
Setting the emergency call flag active may involve retrieving a dialing profile associated with the caller and setting the emergency call flag active when the contents of an emergency call identifier field of the dialing profile match the callee identifier.
Determining whether the caller identifier is associated with a pre-associated DID identifier may involve searching a database for a DID record associating a DID identifier with the caller and determining that the caller identifier is associated with a pre-associated DID identifier when the record associating a DID identifier with the caller is found.
Associating a pre-assigned DID identifier with the caller identifier may involve copying the pre-associated DID identifier from the DID record to a DID identifier buffer.
Producing the routing message may involve causing the contents of the DID identifier buffer to define the DID identifier in the routing message.
Determining whether the caller identifier is associated with a pre-associated DID identifier may involve searching a database for a DID record associating a DID identifier with the caller and determining that the caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with the caller is not found.
Associating a temporary DID identifier with the caller identifier may involve associating with the caller identifier a DID identifier from a pool of pre-determined DID identifiers.
Associating the DID identifier from the pool may involve associating a temporary DID record with the caller, the temporary DID record having a DID identifier field populated with the DID identifier from the pool.
Associating the DID identifier from the pool may involve copying the DID identifier from the temporary DID record to a DID identifier buffer.
The method may involve canceling the temporary DID record after a pre-defined period of time.
Producing the emergency response center identifier may involve obtaining an emergency response center identifier from an emergency response center field of the dialing profile associated with the caller.
Obtaining may involve copying an emergency response center identifier from the dialing profile associated with the caller to a routing message buffer such that the emergency response center identifier is included in the routing message.
Producing the routing message may involve causing the routing message to specify a maximum call time for the emergency call, the maximum call time exceeding a duration of an average non-emergency telephone call.
In accordance with another aspect of the invention, there is provided an apparatus for handling emergency calls from a caller in a voice over IP system. The apparatus includes provisions for receiving a routing request message including a caller identifier and a callee identifier. The apparatus also includes setting provisions for setting an emergency call flag active in response to the callee identifier matching an emergency call identifier pre-associated with the caller. The apparatus further includes provisions for producing an emergency response center identifier in response to the emergency call identifier. The apparatus also includes provisions for determining whether the caller identifier is associated with a pre-associated direct inward dialing (DID) identifier. The apparatus further includes provisions for producing a direct inward dialing (DID) identifier for the caller including provisions for associating a temporary DID identifier with the caller identifier in response to the emergency call flag being active and the caller identifier not being pre-associated with direct inward dialing identifier. The provisions for producing a direct inward dialing (DID) identifier for the caller further include provisions for associating a pre-assigned DID identifier with the caller identifier when the caller identifier has no pre-associated direct inward dialing identifier. The apparatus also includes provisions for producing a routing message including the emergency response center identifier and the temporary DID identifier for receipt by a routing controller operable to cause a route to be established between the caller and the emergency response center.
The apparatus may further include provisions for accessing a database of dialing profiles associated with respective subscribers to the system, each of the dialing profiles including an emergency call identifier field and an emergency call center field and the setting provisions may comprise provisions for retrieving a dialing profile associated with the caller and for setting the emergency call flag active when the contents of the emergency call identifier field of the dialing profile match the callee identifier.
The apparatus may further include database accessing provisions for accessing a database including direct inward dialing (DID) records associated with at least some subscribers to the system, each of the direct inward dialing records comprising a system username and a direct inward dialing number, and wherein the determining provisions comprise searching provisions for searching a database for a DID record associating a DID identifier with the caller. The determining provisions may be operably configured to determine that the caller identifier is associated with a pre-associated DID identifier when a record associating a DID identifier with the caller is found.
The apparatus may further include a DID identifier buffer and the provisions for associating a pre-assigned DID identifier with the caller identifier may comprise provisions for copying the pre-associated DID identifier from the DID record to the DID identifier buffer.
The provisions for producing the routing message may include provisions for causing the contents of the DID identifier buffer to define the DID identifier in the routing message.
The apparatus may further include database accessing provisions for accessing a database including direct inward dialing records associated with at least some subscribers to the system, each of the direct inward dialing records comprising a system username and a direct inward dialing number and the determining provisions may comprise searching provisions for searching a database for a DID record associating a DID identifier with the caller and wherein the determining provisions may be operably configured to determine that the caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with the caller is not found.
The apparatus may further include provisions for accessing a pool of pre-determined DID identifiers and the provisions for associating a temporary DID identifier with the caller identifier may comprise provisions for associating a DID identifier from the pool of pre-determined DID identifiers with the caller identifier.
The provisions for associating the DID identifier from the pool may include provisions for associating a temporary DID record with the caller, the temporary DID record having a DID identifier field populated with the DID identifier from the pool.
The provisions for associating the DID identifier may include provisions for copying the DID identifier from the temporary DID record to a DID identifier buffer.
The apparatus may further include provisions for canceling the temporary DID record after a period of time.
The provisions for producing the emergency response center identifier may include provisions for obtaining an emergency response center identifier from an emergency response center field of the dialing profile associated with the caller.
The apparatus may include a routing message buffer and the provisions for obtaining may include provisions for copying the contents of the emergency response center field of the dialing profile associated with the caller to the routing message buffer such that the contents of the emergency response center field are included in the routing message.
The provisions for producing the routing message may include provisions for causing the routing message to include a maximum call time for the emergency call, the maximum call time exceeding a duration of an average non-emergency telephone call.
In accordance with another aspect of the invention, there is provided an apparatus for handling emergency calls from a caller in a voice over IP system. The apparatus includes an processor circuit operably configured to receive a routing request message including a caller identifier and a callee identifier. The processor circuit is also operably configured to set an emergency call flag active in response to the callee identifier matching an emergency call identifier pre-associated with the caller. The processor circuit is further operably configured to produce an emergency response center identifier in response to the emergency call identifier and to determine whether the caller identifier is associated with a pre-associated direct inward dialing (DID) identifier. The processor circuit is also operably configured to produce a direct inward dialing (DID) identifier for the caller by associating a temporary DID identifier with the caller identifier when the emergency call flag is active and it is determined that the caller identifier has no pre-associated DID identifier. The processor circuit is further operably configured to produce a routing message including the emergency response center identifier and the temporary DID identifier for receipt by a routing controller operable to cause a route to be established between the caller and the emergency response center.
The processor circuit may be operably configured to retrieve a dialing profile associated with the caller and to set the emergency call flag active when the contents of an emergency call identifier field of the dialing profile match the callee identifier.
The processor circuit may be operably configured to search a database for a DID record associating a DID identifier with the caller and to determine that the caller identifier is associated with a pre-associated DID identifier when the record associating a DID identifier with the caller is found.
The processor circuit may be operably configured to copy the pre-associated DID identifier from the DID record to a DID identifier buffer.
The processor circuit may be operably configured to cause the contents of the DID identifier buffer to define the DID identifier in the routing message.
The processor circuit may be operably configured to search a database for a DID record associating a DID identifier with the caller and to determine that the caller identifier is not associated with a pre-associated DID identifier when a record associating a DID identifier with the caller is not found.
The processor circuit may be operably configured to associate with the caller identifier a DID identifier from a pool of pre-determined DID identifiers.
The processor circuit may be operably configured to associate a temporary DID record with the caller, the temporary DID record having a DID identifier field populated with the DID identifier from the pool.
The processor circuit may be operably configured to copy the DID identifier from the temporary DID record to a DID buffer.
The processor circuit may be operably configured to cancel the temporary DID record after a period of time.
The processor circuit may be operably configured to obtain an emergency response center identifier from an emergency response center field of the dialing profile associated with the caller.
The apparatus may further a routing message buffer and the processor circuit may be operably configured to copy an emergency response center identifier from the dialing profile associated with the caller to the routing message buffer such that the emergency response center identifier is included in the routing message.
The processor circuit may be operably configured to cause the routing message to include a maximum call time for the emergency call, the maximum call time exceeding a duration of an average non-emergency telephone call.
In accordance with another aspect of the invention, there is provided a computer readable medium encoded with codes for directing a processor circuit to handle emergency calls from callers in a voice over IP system. The codes direct the processor circuit to receive a routing request message including a caller identifier and a callee identifier. The codes also direct the processor circuit to set an emergency call flag active in response to the callee identifier matching an emergency call identifier pre-associated with the caller. The codes further direct the processor circuit to produce an emergency response center identifier in response to the emergency call identifier. The codes also direct the processor circuit to determine whether the caller identifier is associated with a pre-associated direct inward dialing (DID) identifier. The codes further direct the processor circuit to produce a direct inward dialing (DID) identifier for the caller by associating a temporary DID identifier with the caller identifier when the emergency call flag is active and it is determined that the caller identifier has no pre-associated DID identifier. The codes also direct the processor circuit to produce a routing message including the emergency response center identifier and the temporary DID identifier for receipt by a routing controller operable to cause a route to be established between the caller and the emergency response center.
In drawings which illustrate embodiments of the invention,
Referring to
In the embodiment shown, the Vancouver supernode 11 provides telephone service to a geographical region comprising Western Canadian customers from Vancouver Island to Ontario and includes a Vancouver subscriber, a Calgary subscriber and an emergency response center (ERC) that is also a subscriber. The second supernode 21 may be located in London, England, for example, to service London and Glasgow subscribers, 22 and 25, for example through their own service providers 9 and 29. As will be seen below however, the emergency response center need not be a subscriber.
Other supernodes similar to the type shown may also be employed within the geographical area serviced by a supernode, to provide for call load sharing, for example within a region of the geographical area serviced by the supernode. However, in general, all supernodes are similar and have the properties described below in connection with the Vancouver supernode 11.
In this embodiment, the Vancouver supernode includes a call controller (CC) 14, a routing controller (RC) 16, a database 18 and a media relay (MR) 17. Subscribers such as the Vancouver subscriber, the Calgary subscriber and the Emergency Response Center subscriber communicate with the Vancouver supernode 11 using their own Internet Service Providers (ISPs) 13, 19 and 31 respectively which route Internet Protocol (IP) traffic from these subscribers to the Vancouver Supernode over the Internet. To these subscribers the Vancouver supernode 11 is accessible through their ISP at a pre-determined IP address or a fully qualified domain name (FQDN). The subscriber in the city of Vancouver uses a telephone 12 that is capable of communicating with the Vancouver supernode 11 using Session Initiation Protocol (SIP) messages, and the Calgary and Emergency Response Center subscribers use similar telephones 15 and 33 respectively, to communicate with the Vancouver supernode from their locations. The London supernode 21 also has a call controller 24, a routing controller 26 and a database 28 and functions in a manner similar to the Vancouver supernode 11.
It should be noted that throughout the description of the embodiments of this invention, the IP/UDP addresses of all elements such as the caller and callee telephones, call controller, media relay, and any others, will be assumed to be valid IP/UDP addresses directly accessible via the Internet or a private IP network, for example, depending on the specific implementation of the system. As such, it will be assumed, for example, that the caller and callee telephones will have IP/UDP addresses directly accessible by the call controllers and the media relays on their respective supernodes, and those addresses will not be obscured by Network Address Translation (NAT) or similar mechanisms. In other words, the IP/UDP information contained in SIP messages (for example the SIP Invite message or the RC Request message which will be described below) will match the IP/UDP addresses of the IP packets carrying these SIP messages.
It will be appreciated that in many situations, the IP addresses assigned to various elements of the system may be in a private IP address space, and thus not directly accessible from other elements. Furthermore, it will also be appreciated that NAT is commonly used to share a “public” IP address between multiple devices, for example between home PCs and IP telephones sharing a single Internet connection. For example, a home PC may be assigned an IP address such as 192.168.0.101 and a Voice over IP telephone may be assigned an IP address of 192.168.0.103. These addresses are located in so called “non-routable” (IP) address space and cannot be accessed directly from the Internet. In order for these devices to communicate with other computers located on the Internet, these IP addresses have to be converted into a “public” IP address, for example 24.10.10.123 assigned by the Internet Service Provider to the subscriber, by a device performing NAT, typically a home router. In addition to translating the IP addresses, NAT typically also translates UDP port numbers, for example an audio path originating at a VoIP telephone and using a UDP port 12378 at its private IP address, may have been translated to UDP port 23465 associated with the public IP address of the NAT device. In other words, when a packet originating from the above VoIP telephone arrives at an Internet-based supernode, the source IP/UDP address contained in the IP packet header will be 24.10.10.123:23465, whereas the source IP/UDP address information contained in the SIP message inside this IP packet will be 192.168.0.103:12378. The mismatch in the IP/UDP addresses may cause a problem for SIP-based VoIP systems because, for example, a supernode will attempt to send messages to a private address of a telephone—the messages will never get there.
It will be appreciated that a number of methods are available to overcome this problem. For example, the SIP NATHelper open source software module may run on the supernode to correlate public IP/UDP address contained in the headers of the IP packets arriving from SIP devices with private IP/UDP addresses in the SIP messages contained in these packets. Therefore, the embodiments of the invention described below will function whether or not any of the elements of the system are located behind NAT devices that obscure their real IP/UDP addresses.
Referring to
In an attempt to make an emergency call, generally the call is made by dialing a short number such as 911 and the call is routed to an emergency response center (ERC) associated with the caller such as the emergency response center associated with the telephone 33. However, as will be appreciated from the description below, this system will permit emergency calls originating from subscribers associated with one supernode to be received by emergency response centers associated with a different supernode, if necessary.
Subscriber Telephone
Referring to
The processor 32 stores the callee identifier in a dialed number buffer 41. Where the callee is the London subscriber, the callee identifier may be 4401 1062 4444, for example, identifying the London subscriber or the callee identifier may be a standard telephone number, or where the callee is the Emergency Response Center, the callee identifier may be 911, for example.
The I/O interface 36 also has a handset interface 46 for receiving and producing signals from and to a handset that receives user'"'"'s speech to produce audio signals and produces sound in response to received audio signals. The handset interface 46 may include a BLUETOOTH™ wireless interface, a wired interface or speakerphone, for example. The handset 45 acts as a termination point for an audio path (not shown) which will be appreciated later.
The I/O interface 36 also has a network interface 48 to an IP network, and is operable, for example, to connect the telephone to an ISP via a high speed Internet connection. The network interface 48 also acts as a part of the audio path, as will be appreciated later.
The parameter memory 38 has a username field 50, a password field 52, an IP address field 53 and a SIP proxy address field 54. The username field 50 is operable to hold a username associated with the telephone 12, which in this case is 2001 1050 8667. The username is assigned upon subscription or registration into the system and, in this embodiment includes a twelve digit number having a prefix 61, a country code 63, a dealer code 70 and a unique number code 74. The prefix 61 is comprised of the first or left-most digit of the username in this embodiment. The prefix may act as a continent code in some embodiments, for example. The country code 63 is comprised of the next three digits. The dealer code 70 is comprised of the next four digits and the unique number code 74 is comprised of the last four digits. The password field 52 holds a password of up to 512 characters, in this example. The IP address field 53 stores an IP address of the telephone 30, which for this explanation is 192.168.0.20. The SIP proxy address field 54 stores an IP address of a SIP proxy which may be provided to the telephone 12 through the network interface 48 as part of a registration procedure, for example.
The program memory 34 stores blocks of codes for directing the microprocessor 32 to carry out the functions of the telephone 12, one of which includes a firewall block 56 which provides firewall functions to the telephone, to prevent unauthorized access through the network interface 48 to the microprocessor 32 and memories 34, 38 and 40. The program memory 34 also stores codes 57 for establishing a call ID. The call ID codes 57 direct the microprocessor 32 to produce call identifiers, that may, for example have the format of a hexadecimal string and an IP address of the telephone stored in IP address field 53. Thus, an exemplary call identifier for a call might be FF10 @ 192.168.0.20.
Generally, in response to activating the handset 45 and using the dialing function 44, the microprocessor 32 produces and sends a SIP Invite message 59 as shown in
Referring to
Call Controller
Referring to
Generally, the I/O interface 106 includes an input 108 for receiving messages, such as the SIP Invite message shown in
While certain inputs and outputs have been shown as separate, it will be appreciated that some may be associated with a single IP address and TCP or UDP port. For example, the messages sent and received from the RC 16 may be transmitted and received at the same single IP address and TCP or UDP port.
The program memory 104 of the call controller circuit 100 includes blocks of code for directing the microprocessor 102 to carry out various functions of the call controller 14. For example, these blocks of code include a first block 120 for causing the call controller circuit 100 to execute a SIP Invite to RC request process to produce a RC Request message in response to a received SIP Invite message. In addition, there is a Routing Message to Media Relay message block 122 which causes the call controller circuit 100 to produce an MR Query message in response to a received routing message from the routing controller 16.
Referring to
Should the authentication process fail, the call controller circuit 100 is directed to an error handling block 134 which causes messages to be displayed at the caller telephone 12 to indicate that there was an authentication error. If the authentication process is successful, block 131 directs the call controller circuit 100 of
If at block 131 the caller identifier field 60 contents do not identify an IP address (for example, they may identify a PSTN number or Emergency Calling short number such as 911), then block 135 directs the call controller circuit 100 to associate a type code with the call to indicate the call type is a regular invite. Then, block 136 directs the call controller circuit 100 to establish a call ID by reading the call ID provided in the call ID field 65 of the SIP Invite message from the telephone 12, and at block 138 the call controller circuit is directed to produce a routing request message of the type shown in
Referring to
Routing Controller
Referring to
The I/O interface 208 includes a database output port 210 through which a request to the database 18 (
The program memory 204 includes blocks of codes for directing the RC processor circuit 200 to carry out various functions of the routing controller 16. One of these blocks includes an RC Request message handler process 250 which directs the RC processor circuit to produce a routing message in response to a received routing request message of the type shown at 150 in
RC Request Message Handler
Referring to
Referring to
An exemplary dialing profile for the Vancouver subscriber is shown generally at 276 in
Referring back to
In this embodiment, the supernode type identifier 284 includes the code “sp” identifying a supernode and the location code identifier 286 identifies the supernode as being in Vancouver (yvr). The system provider identifier 288 identifies the company supplying the service and the top level domain identifier 290 identifies the “corn” domain.
The NDD field 262 in this embodiment includes the digit “1” and in general includes a digit specified by the International Telecommunications Union—Telecommunications Standardization Sector (ITU-T) E.164 Recommendation which assigns national dialing digits to certain countries.
The IDD field 264 includes the code 011 and, in general, includes a code assigned by the ITU-T according to the country or geographical location of the subscriber.
The country code field 266 includes the digit “1” and, in general, includes a number assigned by the ITU-T to represent the country in which the subscriber is located.
The local area codes field 267 includes the numbers 604 and 778 and generally includes a list of area codes that have been assigned by the ITU-T to the geographical area in which the subscriber is located. The caller minimum and maximum local number length fields 268 and 270 each hold the number 10 representing minimum and maximum local number lengths permitted in the area code(s) specified by the contents of the local area codes field 267. The reseller field 273 holds a code identifying a retailer of the telephone services, and in the embodiment shown, the retailer is “Klondike”.
The address field 275 holds an address at which the subscriber telephone is normally located. The emergency short number field 277 holds the short emergency number such as “911” that the user is expected to dial in the event of an emergency. The ERC number field 279 holds a full PSTN number associated with an emergency response center that would desireably be geographically nearest to the address specified in the address field 275.
A dialing profile of the type shown at 256 in
A user wishing to subscribe to the system may contact an office maintained by a system operator. Personnel in the office may ask the user certain questions about his location and service preferences, whereupon tables can be used to provide office personnel with appropriate information to be entered into the username, domain, NDD, IDD, country code, local area codes and caller minimum and maximum local length fields, emergency short number field and ERC number field 258, 260, 262, 264, 266, 267, 268, 270, 277, 279 to establish a dialing profile for the user.
Referring to
In addition to creating dialing profiles when a user registers with the system, a direct-in-dial (DID) record of the type shown at 268 in
In this embodiment, the DID bank table records include a username field 291, a user domain field 272 and DID identifier field 274, for holding the username, hostname of the supernode and E.164 number respectively. Thus a DID bank table record pre-associates a DID identifier with a user (e.g. caller).
A DID bank table record may also include a creation time field and an expiration time field for use when the DID bank table record is a temporary record as will be explained below.
DID bank table records for the Vancouver, Calgary and London subscribers are shown in
In addition to creating dialing profiles and DID records when a user registers with the system, call blocking records of the type shown in
Referring back to
If the contents of the callee ID buffer 209 match the contents of the emergency call identifier field (277 in
In this embodiment, for regular and emergency call processing, beginning at location A in
IDD Testing
Referring to
NDD Testing
Referring back to
Block 382 directs the RC processor circuit 200 to examine the callee identifier to determine whether or not digits following the NDD code identify an area code that is the same as any of the area codes identified in the local area codes field 267 of the caller dialing profile 276 shown in
Area Code Testing
If at block 381 the callee identifier does not begin with an NDD code, block 390 directs the RC processor circuit 200 to determine whether the callee identifier in the callee ID buffer 209 begins with digits that identify the same area code as the caller. Again, the reference for this is the caller profile 276 shown in
Callee ID Length Testing
If at block 390, the callee identifier does not have the same area code as the caller, as may be the case with non-emergency calls, block 396 directs the RC processor circuit 200 to determine whether the callee identifier in the callee ID buffer 209 has the same number of digits as the number of digits indicated in either the caller minimum local number length field 268 or the caller maximum local number length field 270 of the caller profile 276 shown in
Valid Subscriber Testing
If at block 396, the callee identifier in the callee ID buffer 209 has a length that does not match the length specified by the contents of the caller minimum local number length field 268 or the caller maximum local number length field 270 of the caller profile 276, block 402 directs the RC processor circuit 200 to determine whether or not the callee identifier identifies a valid username. To do this, the RC processor circuit 200 searches through the database 18 of dialing profiles to find a dialing profile having a username field 258 that matches the callee identifier. If no match is found, block 404 directs the RC processor circuit 200 to send an error message back to the call controller (14). If at block 402, a dialing profile having a username field 258 that matches the callee identifier is found, block 406 directs the RC processor circuit 200 to set the call type to a code indicating the call is a network call and the processor is directed to block 275 of
From
Still referring to
Exemplary DID records for the Vancouver, Calgary and London subscribers are shown in
Referring back to
Subscriber to Subscriber Calls Between Different Nodes
Referring back to
If no such DID record is found, the RC processor circuit 200 has effectively determined that the caller has no pre-associated DID identifier. In this case, block 285 then directs the RC processor circuit 200 to produce a DID identifier for the caller by associating a temporary DID identifier with the caller identifier by associating with the caller identifier a DID identifier from a pool of pre-determined DID identifiers. This is done by creating and associating with the caller a temporary DID record of the type shown in
A temporary DID record may be canceled after a pre-defined period of time. For example, the temporary DID identifier records are desirably as shown in
After a temporary DID record has been created and stored in the DID bank table in the database 18 shown in
Thus, where the caller identifier has no pre-assigned DID identifier, the RC processor produces a routing message including the emergency response center identifier and the temporary DID identifier for receipt by the routing controller to cause the routing controller to establish a route between the caller and the emergency response center.
Referring to
Desirably, the time to live field holds a number indicating a maximum call time for the call and where the call is an emergency call, desirably the maximum call time exceeds a duration of an average non-emergency telephone call. The caller ID field 364 holds a caller identifier which in this case, is the temporary or pre-associated DID number from the DID record associated with the caller.
Referring to
The callee field 358 holds the full username of the callee, and where the call is an emergency call as shown, the full username of the callee is the username of the emergency response center. The route field 360 contains the identification of the domain with which the emergency response center is associated, i.e., sp.yvr.digifonica.com. The TTL field holds the value 9999 set at block 157 in
Referring to
Referring to
Subscriber to Subscriber Calls Within the Same Node
Referring back to
If at block 559 the emergency call flag has not been set, regular non-emergency call processing ensues beginning with block 600 which directs the RC processor circuit 200 to use the callee identifier to locate and retrieve a dialing profile for the callee identified by the callee identifier stored in the callee ID buffer 209. The dialing profile is of the type shown in
Referring to
Referring back to
Referring to
Referring back to
Referring to
Referring to
Referring back to
Block 644 of
Subscriber to Non-Subscriber Calls
Not all calls will be subscriber-to-subscriber calls and this will be detected by the RC processor circuit 200 when it executes block 269 of
If no such DID record is found, the RC processor circuit 200 has effectively determined that the caller identifier is not associated with a pre-associated DID identifier. In this case, block 413 then directs the RC processor circuit 200 to associate a temporary DID identifier with the caller identifier by associating with the caller identifier a DID identifier from the pool of pre-determined DID identifiers. Again, this is done by creating and associating with the caller a temporary DID record of the type shown in
After a temporary DID record has been created or if the caller already has a DID record, block 415 directs the RC processor circuit to store the DID number (274 in
After having loaded the caller ID buffer 209 with the temporary or pre-associated DID number, or after having determined that the emergency call flag is not set, block 410 (
Each master list record includes a master list ID field 500, a dialing code field 502, a country code field 504, a national sign number field 506, a minimum length field 508, a maximum length field 510, a NDD field 512, an IDD field 514 and a buffer rate field 516.
The master list ID field 500 holds a unique code such as 1019, for example, identifying the record. The dialing code field 502 holds a predetermined number pattern that the RC processor circuit 200 uses at block 410 in
Thus, for example, a master list record may have a format as shown in
Referring back to
After execution of block 410 in
Referring to
Referring back to
Block 560 of
Referring to
Referring back to
Response to Routing Message
Referring back to
Referring to
As a first step in the process for establishing audio paths, a message 1100 is sent from the call controller 14 to the media relay 17, the message including the call ID, the caller telephone IP address and UDP port as determined from the caller IP address field 67 and caller UDP port field 69 in the SIP Invite message 59 shown in broken outline.
In response, the media relay (MR) 17 sends a confirmation message 1102 back to the call controller 14, the message including a media relay IP address (192.168.2.10) and UDP port number (22123) defining a callee socket that the media relay will use to establish an audio path to the ERC telephone or a PSTN gateway to the ERC, where the Emergency Response Center is only available through the PSTN
The call controller 14 then sends a SIP Invite message 1104 of type shown in
The callee (ERC) telephone 33 of
The call controller 14 then sends a message 1108 to the media relay 17 including the IP address (192.168.3.10) and UDP port number (33123) identifying the socket at that the callee telephone 15 (or PSTN gateway) that is to be used for audio communications with the media relay. The media relay 17 then creates a caller socket identified by IP address 192.168.2.10 and UDP port number 22125 and creates an internal bridge for relaying audio traffic between the caller socket (192.168.2.10: 22125) and the callee socket (192.168.2.10: 22123).
The media relay 17 then sends a message 1110 including the call ID and the IP address (192.168.2.10) and UDP port number (22125) identifying the caller socket that the media relay assigned to the caller telephone 12, back to the call controller 14 to indicate that the caller and callee sockets have been established and that the call can proceed.
The call controller 14 then sends a SIP OK message 1112 to the caller telephone 12 to indicate that the call may now proceed. The SIP OK message includes the caller and callee usernames, the call ID and the IP address (192.168.2.10) and UDP port number (22125) identifying the caller socket at the media relay 17.
Alternatively, referring back to
In the case of an emergency call, the routing message is unlikely to identify a domain other than that of the caller.
In the case of a regular, non-emergency call, if the routing message is of the type shown in
Referring to
Referring back to
When audio paths are established, a call timer (not shown) maintained by the call controller logs the start date and time of the call and logs the call ID and an identification of the route (i.e., audio path IP address) for later use in billing, for example.
Terminating the Call
In the event that either the caller or the callee (or callee via the PSTN) terminates a call, the telephone of the terminating party (or gateway associated with the terminating party) sends a SIP Bye message to the call controller 14. An exemplary SIP Bye message is shown at 900 in
Thus, when terminating a regular non-emergency call, such as initiated by the Vancouver subscriber to the Calgary subscriber for example, referring to
The SIP Bye message shown in
Referring to
Referring to
Referring back to
The routing controller 16 receives the Call Stop message and an RC Call Stop message process is invoked at the RC to deal with charges and billing for the call.
Block 922 directs the call controller circuit 100 to send a Bye message back to the party that did not terminate the call.
Block 924 then directs the call controller circuit 100 to send a “Bye” message of the type shown in
While specific embodiments of the invention have been described and illustrated, such embodiments should be considered illustrative of the invention only and not as limiting the invention as construed in accordance with the accompanying claims.