US 9,813,330 B2
Producing routing messages for voice over IP communications
Clay Perreault, Panama (PA); Steve Nicholson, Hamilton (NZ); Rod Thomson, North Vancouver (CA); Johan Emil Viktor Björsell, Vancouver (CA); and Fuad Arafa, Vancouver (CA)
Assigned to VOIP-PAL.COM, INC., Bellevue, WA (US)
Filed by VOIP-PAL.COM, INC., Bellevue, WA (US)
Filed on Dec. 30, 2016, as Appl. No. 15/396,344.
Application 15/396,344 is a continuation of application No. 14/877,570, filed on Oct. 7, 2015, granted, now 9,537,762.
Application 14/877,570 is a continuation of application No. 13/966,096, filed on Aug. 13, 2013, granted, now 9,179,005.
Application 13/966,096 is a continuation of application No. 12/513,147, granted, now 8,542,815, previously published as PCT/CA2007/001956, filed on Nov. 1, 2007.
Claims priority of provisional application 60/856,212, filed on Nov. 2, 2006.
Prior Publication US 2017/0111265 A1, Apr. 20, 2017
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 12/725 (2013.01); H04Q 3/70 (2006.01); H04M 3/42 (2006.01); H04M 7/00 (2006.01)
CPC H04L 45/3065 (2013.01) [H04M 3/4211 (2013.01); H04M 7/006 (2013.01); H04M 7/0075 (2013.01); H04Q 3/70 (2013.01)] 40 Claims
OG exemplary drawing
 
1. A method for routing a communication in a communication system between an Internet-connected first participant device associated with a first participant and a second participant device associated with a second participant, the method comprising:
in response to initiation of the communication by the first participant device, receiving, by a controller comprising at least one processor, over an Internet protocol (IP) network a first participant identifier and a second participant identifier;
causing the at least one processor to access at least one database comprising user profiles using the first participant identifier, each user profile comprising a respective plurality of attributes for a respective user, to locate a user profile for the first participant including a plurality of first participant attributes;
comparing at least a portion of the second participant identifier, using the at least one processor, with at least one of the plurality of first participant attributes obtained from the user profile for the first participant;
causing the at least one processor to access the at least one database to search for a user profile for the second participant;
classifying the communication, based on the comparing, as a system communication or an external network communication, using the at least one processor;
when the communication is classified as a system communication, producing a system routing message identifying an Internet address of a communication system node associated with the second participant device based on the user profile for the second participant, using the at least one processor, wherein the system routing message causes the communication to be established to the second participant device; and
when the communication is classified as an external network communication, producing an external network routing message identifying an Internet address associated with a gateway to an external network, using the at least one processor, wherein the external network routing message causes the communication to the second participant device to be established using the gateway to the external network.