Call forwarding and routing back to phone after contact list update

A call is received by a device without, or with limited, information about the calling party. The call is then forwarded to another device where more calling party information is determined (such as by using the automated number information (ANI) protocol) or a database of information associated with phone numbers). These additional data are sent to the device of the called party and are used to populate a contact list on the device with these additional data. Then the call is forwarded to the called party again, and the device of the called party now reports the data stored in the contact list in response to receiving the call.

FIELD OF THE DISCLOSED TECHNOLOGY

The disclosed technology relates generally to call forwarding and, more specifically, to populating a contact list before forwarding a call back to a called party.

BACKGROUND OF THE DISCLOSED TECHNOLOGY

The ability to block and/or spoof caller ID information, while oftentimes legitimate, is problematic, such as when the caller is pranking or harassing the party he or she is calling. If the party is calling an emergency service and is disconnected before relaying important information about the emergency, this is further problematic. Unfortunately, for non-Inward WATS subscribers (i.e., those without toll-free service), in such instances, it is difficult or impossible to determine who is calling in a timely fashion.

Still further, even if one has an accurate phone number of the calling party, one does not always have the name of the party. This information might be obtainable from other databases or sources, but is not necessarily provided along with the caller ID information. Solutions to this problem have been found by the inventors, including in their U.S. Pat. Nos. 8,369,508, 9,270,816, and others which involve routing calls to an Inward WATS number and back to the called party. This solution allows an accurate number of a calling party to be displayed to the called party; however, this typically uses the caller ID (calling line identification) protocol to populate the data with ANI information.

As some telecommunication companies have caught up with the problems of insecure caller ID, a problem with the above system has arisen in recent years, in that caller ID information cannot be populated with additional information on a receiving device of a called party. Some phones, notably phones from Apple Computer, at the time of this writing, simply only support a number in Caller ID and do not support displaying additional Caller ID information for a call. Thus, new methods are needed to provide a called party with true, accurate, and/or additional information about a calling party beyond simply the calling party's phone number.

SUMMARY OF THE DISCLOSED TECHNOLOGY

A method of determining information associated with a calling party has, in one embodiment, the following steps in order or in a different order. A first phone call from a calling party is received by a handheld wireless device associated with a called party. The call is then forwarded via a first distinct forwarding (wherein “distinct” refers to a first action causing an active phone call to be sent to another receiving hub, device, or party of the phone network) over the phone network to a third party service provider. The third party service provider is a device other than the device of the called party. The called party is defined as a person or device with a distinct phone number or location on a network with identifying information used to access the device (e.g., internet protocol address, phone number, user name, or identification number in a database). Contact data are received from the third party service provider having at least one, or a combination of, a phone number, name, address, and other information which is associated with the calling party. This information can be caller identification information, ANI information (automated number identification) or otherwise. A contact list database stored on the handheld wireless device associated with the called party is populated with at least some of these data.

A second phone call is then made from the calling party to the called party. From the perspective of the called party, this is a second phone call, because a second distinct opening of a communication channel to the called party, though, in embodiments of the disclosed technology, a communication channel from a device associated with the calling party to a telephone network remains open throughout. Thus, the calling party may not have knowledge or receipt of data indicating that communication channels have been opened and closed to the called party throughout the carrying out of methods described herein. Upon receipt of this second call, the handheld wireless device associated with said called party displays more contact data in response to receiving the second phone call than to receiving the first phone call, due to (as a result of) carrying out the step of populating the contact list database. This can be because the device associated with the called party displays information from the contact list when receiving a phone call where the number associated with the phone call is found in the contact list. A “contact list,” for purposes of this disclosure, is defined as a stored database with, at least, phone numbers and names. Any of the contact data described in this disclosure can be stored in the contact list database. The contact data can include Automatic Number Identification (ANI) information associated with said calling party. This database can be stored on the device associated with the called party or a remote data storage device for which the device associated with the called party has at least some access there-to.

The second phone call, in embodiments of the disclosed technology, is received based on the first phone call being forwarded back to the handheld wireless device associated with the called party; this forwarding (a second distinct forwarding) can be carried out by the third party service provider. The calling party can disconnect from the first phone call before making the second phone call. In such a case, the step of populating can take place after the first phone call is received, but before the second phone call is received to the handheld wireless device associated with the called party. Or, the calling party can remain connected to the telephone network in a first phone call throughout both calls to the called party.

The first distinct forwarding can be forwarding to voicemail based on rejection of the call by the called party. This rejection can be by way of entering input into the device of the called party or by way of non-answering of the call after a period of time. In addition, or instead, the forwarding can be based on unsatisfactory calling number identification information as part of an automated detection process (e.g., the caller ID information is not populated or is listed as unknown).

The receiving of data can be via a packet-switched data network connection while the phone call is received, both the first and the second time, over a telephone network. After the second phone call is completed, the handheld wireless device associated with the called party can prompt a user thereof to permanently save the contact data in the contact list or delete the contact data from said contact list. In some embodiments, after said second phone call is completed, the contact data are deleted from the contact list automatically or upon manual input/selection by a person operating the device associated with the called party.

A method of receiving a phone call can also be carried out based on receiving a first phone call to a device, the call originating from a calling party. From a perspective of this device, input into the device is then received, or a lack of receiving indicates a non-answering of the phone call, causing forwarding of the first phone call to a third party. Then, from the third party, packet-switched data are received, indicating at least a name and phone number of the calling party. The device determines if the phone number is stored in contacts, and then one of two outcomes occurs. If the phone number is not found in the contacts, the number is stored in the contacts (a list of phone names associated with other information, such as names and pictures, stored on the device), and the phone call from the calling party is received a second time by the device. If the phone call is found in the contacts (such that it existed in the contacts before the first call was received), then the call may not be forwarded a second time to the called party (since the calling party is already known to the called party).

If the phone number is found in the contacts, the third party can be notified of same. The third party can then use this information to refrain from re-sending the call to the called party. Upon such notification, instead, the third party can send the call to voicemail.

The first phone call and the second phone call are one continuous phone call from a perspective of the calling party, but two separately received calls from a perspective of the called party, in embodiments of the disclosed technology. The first phone call and the second phone call are two separate phone calls, each having different telephone network paths between the calling party and the called party, and the name associated with the calling party is displayed by the device upon receipt of the second phone call, in embodiments of the disclosed technology. In such embodiments, the device fails to display the name associated with the called party as a result of receiving the first phone call. The name or names displayed during the second call can be from Automatic Number Identification (ANI) information associated with the calling party.

After the second phone call is completed, in some embodiments, the device associated with the called party prompts a user thereof to permanently save the phone number in the contacts or delete the contact data from the contact list. Before the step of storing, the device associated with the called party displays less caller information (in comparison to the following), and, only after the second phone call, and the device associated with said called party displays at least some of said data stored in said contact database which was stored during the step of storing.

Any device or step to a method described in this disclosure can comprise or consist of that which it is a part of, or the parts which make up the device or step. The term “and/or” is inclusive of the items which it joins linguistically and each item by itself.

A call is received by a device without, or with only limited information about the calling party. The call is then forwarded to another device, where more calling party information is determined (such as by using the automated number information (ANI) protocol) or a database of information associated with phone numbers). These additional data are sent to the device of the called party and used to populate a contact list on the device with these additional data. Then the call is forwarded to the called party again, and the device of the called party now reports the data stored in the contact list, in response to receiving the call.

Embodiments of the disclosed technology are described below, with reference to the figures provided.

FIG. 1shows a high level block diagram of devices which are used to carry out embodiments of the disclosed technology. A bi-directional transceiver110associated with a calling party is shown, as well as such a transceiver112associated with a called party. Each has some or all of the following elements: a GPS receiver120, an accelerometer122, input/output mechanisms124, and a transmitter126. The GPS (global positioning system) receiver120is a global positioning system receiver which receives data from global navigation satellites to determine location and reports this location information. The accelerometer122measures acceleration and, indirectly, distance, based on time at a rate of acceleration. Other location determination devices which can be used include the Internet protocol (IP address) of one of the bi-directional transceivers110and/or120. Further, location can be determined based on which cellular tower (terrestrial transmitter) is used.

The input/output124refers to a keyboard, touch screen, display, and the like, used to receive input and send output to a user of the device. A transmitter126enables wireless transmission and receipt of data via a packet-switched network, such as packet-switched network130. This network, in embodiments, interfaces with a telecommunications switch132which routes phone calls and data between two of the bi-directional transceivers110and120. The devices110and112also communicate directly with a telephone switch or telephone network132, in embodiments of the disclosed technology. Versions of these data, which include portions thereof, can be transmitted between the devices. A “version” of data is that which has some of the identifying or salient information as understood by a device receiving the information. For example, a GPS receiver120may report location data in one format, and a version of these data can be reported via the packet-switched network130to a server. Both versions comprise location identifying data, even if the actual data are different in each case.

Referring again to the telecom switch132, a device and node where data are received and transmitted to another device via electronic or wireless transmission, it is connected to a hub134, such as operated by an entity controlling the methods of use of the technology disclosed herein. This hub has a processor135deciding how the bi-directional transceivers110and112are matched to each other or send/receive phone calls, as well as forward the phone call to other locations on the telephone network132. This hub134further has memory136(volatile or non-volatile) for temporary storage of data, storage138for permanent storage of data, and input/output137(like the input/output124), and an interface139for connecting via electrical connection to other devices.

Still discussingFIG. 1, the device of the called party, device112, has stored there-on a contact list stored in volatile or non-volatile memory. This list of contacts140is a stored database with phone numbers and associated data related to the phone number142of the calling party, such as a name142, location, picture146, or additional information147. Whether these data exist for a particular calling party110or not affects how a call coming in, or rejected, by the called party, is handled. If the phone number of a particular calling party110is already stored in the contact list or database140, then the call, in embodiments of the disclosed technology, is sent to voicemail. If it is not, then a third party, such as a device connected to or at the telecom switch, attempts to find the data, as will be discussed with reference toFIG. 2, and then sends the data over the packet-switched (data) network130to the device of the called party which populates (adds) the data related to the calling party number140(and at least one of name142, picture146, or other data147) to the contact list. The phone call is then sent back over the telecom switch or telecom network132to the called party a second time. Upon receipt of the call, the device associated with the called party now displays information about the called party, based on a phone number lookup, stored in the contact database.

FIG. 2shows a diagram of devices used to carry out steps of the disclosed technology. The bi-directional transceiver110is the device associated with a calling party, which, in step205initiates a call to the bi-directional transceiver112. This call is received by the bi-directional transceiver112and rings to this device. The called party (operator of the bi-directional transceiver112) then rejects the call in step210, causing it to be forwarded to another phone line, such as a forwarding to voicemail. This rejected call is received at a hub134(located on the data and/or telecom network) which then ascertains data about the calling party. This is accomplished by forwarding the call in step215to an inward WATS telephone number, in some embodiments. The Inward WATS telephone number reports on the ANI information and sends it back to the hub134in step220. In addition, or instead, the hub134conducts a database lookup of the phone number, user identification, name, or location of the calling party reported through any of the prior steps described, or data provided by the device of the calling party at the time of the call. These received data, which can include a name, picture, profile of a social media account (or data stored-therein) is sent back to the hub in step230.

In step235the phone number is sent to the called party. This step occurs either after step220or in conjunction with sending the data received in steps220and230to the called party. Immediately after this step is conducted (that is, after the phone number or other data associated with the called party is received by the bi-directional transceiver112), in some embodiments the called party device notifies the hub134(a third party) if the contact is in the database (contact list) of the device112. If there are new or additional data about the calling party which are found and not previously known to the called party, then the device of the called party populates the contact database with this information in step245, and the call is again sent to the called party in step250. The device of the called party112then shows this information in response to the call coming in again. Otherwise, it is assumed, in some embodiments of the disclosed technology, that since the called party already knew the phone number and had the calling party in its contacts, they did not want to receive the call from this person, and the call is instead sent to voicemail.

FIG. 3is a high level flow chart showing how methods of the disclosed technology can be carried out. The left box shows steps carried out by the called party device112, whereas the right box shows steps carried out by a third party, such as the hub134. The hub134/third party can be a plurality of devices or parties acting together to carry out claimed steps of the technology. In step305, a phone call is received. This call could be answered; however, in this disclosure, the call is rejected or goes unanswered in step310, causing the call to be forwarded to the third party, such as by configuring a different number where voicemail is sent, in step315. At this time (before, during, or after step315) step320is carried out, where the number is used in a query to contact database stored on the called party device112(or sent to the called party device for temporary storage, even if it only comprises part of the database of contacts).

In step325, it is determined that the number is in the contacts and, as such, the call should not be forwarded in reverse to the called party, or, it should only be forwarded in reverse if more data can be obtained about the calling party. The called party receives the call a second time—in some embodiments of the disclosed technology—in step385, after storing the caller data in contacts of the device associated with the called party, in step380, Thus, when the call is received (forwarded back) by the called party the second time, the device of the called party can now, or does now, display the contact information associated with the calling party after the number has been unmasked through use of the ANI protocol, and/or further data about the calling party have been obtained.

Now discussing the steps carried out by the third party/hub134, the phone call is received in step330from the called party112. This call can be forwarded to a non-inward WATS number (toll free) to unmask data related to the call in step350. Or, simply, the full caller identification data (including name) can be retrieved. In addition, other databases (such as described above) can be checked for data in step360, having data, such as photographs, related to the phone number of the calling party. Any and all of these data (name, picture, location, etc.) can be sent via a packet-switched network to the called party in step370, where it is used to populate/store the data in a contact list database in step380. The call is then forwarded to the called party such that the called party receives the call a second time; only this time, the called party device112can display more than just the number of the calling party (or no information about the calling party), but also the data received in steps355,365, or from the name portion of the calling line identification (CallerID) information. Now, the called party has more information about the calling party in the second call, compared to the first call.

FIG. 4shows a high-level block diagram of a device that may be used to carry out the disclosed technology. Device600comprises a processor650that controls the overall operation of the computer by executing the device's program instructions which define such operation. The device's program instructions may be stored in a storage device620(e.g., magnetic disk, database) and loaded into memory630when execution of the console's program instructions is desired. Thus, the device's operation will be defined by the device's program instructions stored in memory630and/or storage620, and the console will be controlled by processor650executing the console's program instructions. A device600also includes one, or a plurality of, input network interfaces for communicating with other devices via a network (e.g., the internet). The device600further includes an electrical input interface. A device600also includes one or more output network interfaces610for communicating with other devices. Device600also includes input/output640representing devices, which allow for user interaction with a computer (e.g., display, keyboard, mouse, speakers, buttons, etc.). One skilled in the art will recognize that an implementation of an actual device will contain other components as well, and thatFIG. 6is a high level representation of some of the components of such a device, for illustrative purposes. It should also be understood by one skilled in the art that the method and devices depicted inFIGS. 1 through 3may be implemented on a device such as is shown inFIG. 4.

Further, it should be understood that all subject matter disclosed herein is directed at, and should be read only on, statutory, non-abstract subject matter. All terminology should be read to include only the portions of the definitions which may be claimed. By way of example, “computer readable storage medium” is understood to be defined as only non-transitory storage media.