IP Library › Granted Patent US 8,307,029
Granted Patent B2
US 8,307,029 · App. 11/953,494 · Granted Nov 6, 2012

System and method for conditional delivery of messages

Assignee: Yahoo! Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,307,029
App. No.
11/953,494
Granted
Nov 6, 2012
Kind
B2
Abstract

The disclosure describes systems and methods delivering communications associated with delivery conditions in which the occurrence of the delivery condition is determined by monitoring information received from a plurality of sources via multiple communication channels. The message delivery systems allow messages to be delivered to any “Who, What, When, Where” from any “Who, What, When, Where” upon the detection of an occurrence of one or more “Who, What, When, Where” delivery conditions. A message (which may be any data object including text-based messages, audio-based message such as voicemail or other audio such as music or video-based prerecorded messages) is delivered in accordance with delivery conditions based on any available data, including topical, spatial, temporal, and/or social data. Furthermore, because the systems coordinate delivery of messages via multiple communication channels and through multiple devices, the communication channel for delivery of a message may be dynamically determined based on the delivery conditions.

Claims (61)

1. A method comprising:

receiving from a sender, at a computing device, a request to deliver a first message a recipient, the request identifying at least one delivery condition set by the sender;

identifying, via the computing device, at least one real world entity (RWE) and information object (IO) associated with the at least one delivery condition;

retrieving, at the computing device, W4 COMN data associated with each of the identified at least one RWE and IO, the W4 COMN data comprising social data, spatial data, temporal data and logical data available to the network associated with the at least one RWE and IO;

monitoring, via the computing device, the W4 COMN data for current information related to the at least one RWE and IO indicating to determine that the at least one delivery condition is met; and

delivering, over a network, the first message when the at least one delivery condition is met.

2. The method of claim 1 , wherein the delivery condition identifies two RWEs and a range of distances between the two RWEs and the method further comprises:

periodically determining, from the W4 COMN data, a current location of each of the two RWEs;

calculating at least one actual distance between the two RWEs based on their current locations; and

delivering the first message when the actual distance is within the range of distances.

3. The method of claim 1 , wherein the delivery condition identifies two RWEs, a range of distances between the two RWEs and a temporal condition and the method further comprises:

periodically determining, from the W4 COMN data, a current location of each of the two RWEs and current time;

calculating at least one actual distance between the two RWEs based on their current locations; and

delivering the first message upon determination that the actual distance is within the range of distances and the temporal condition is met based on the current time.

4. The method of claim 1 , wherein the delivery condition identifies a specified state of an RWE and the method further comprises:

periodically determining, from the W4 COMN data, a current state of the RWE;

delivering the first message upon determination that the current state of the RWE matches the specified state identified by the delivery condition.

5. The method of claim 4 further comprising:

identifying an IO associated with the RWE; and

determining the current state of the RWE from information in the IO associated with the RWE.

6. The method of claim 1 , wherein the delivery condition is a temporal condition identifying a specified time relative to an event time and the method further comprises:

retrieving an IO identifying the event time;

monitoring a current time; and

delivering the first message upon determination that the current time is the specified time relative to the event time.

7. The method of claim 1 , wherein the delivery condition identifies two first RWEs, a range of distances between the two first RWEs and a specified state of a second RWE and the method further comprises:

periodically determining, from the W4 COMN data, a current location of each of the two first RWEs;

calculating at least one actual distance between the two RWEs based on their current locations;

periodically determining, from the W4 COMN data, a current state of the second RWE; and

delivering the first message upon determination that the actual distance is within the range of distances and the current state matches the specified state.

8. The method of claim 7 further comprising:

identifying an IO associated with the second RWE; and

determining the current state of the second RWE from information in the IO associated with the second RWE.

9. The method of claim 1 , wherein the delivery condition identifies a specified state of an RWE and a temporal condition and the method further comprises:

periodically determining, from the W4 COMN data, a current state for each of the RWEs and a current time;

delivering the first message upon determination that the current state of the RWE matches the specified state identified by the delivery condition and the temporal condition is met.

10. The method of claim 1 , wherein at least one of the sender and the recipient are an RWE identified in the identifying operation as being associated with the delivery condition.

11. The method of claim 1 , wherein the sender and the recipient are not identified in the identifying operation as being associated with the delivery condition.

12. A non-transitory computer-readable storage medium associated with a computing device and storing computer-executable instructions, that when executed by a processor of the computing device, perform a method comprising:

detecting, over a network, a first message from a sender for delivery to a recipient when a delivery condition set by the sender is met;

monitoring W4 COMN data associated with at least one real world entity (RWE) related to the delivery condition, the W4 COMN data comprising current social data, spatial data, temporal data and logical data available to the network associated with the at least one RWE; and

delivering the first message when the W4 COMN data associated with the at least one RWE indicates that the delivery condition is met.

13. The non-transitory computer-readable storage medium of claim 12 , wherein the delivery condition identifies a first RWE and a range of distances between the recipient and the first RWE and monitoring further comprises:

identifying a second RWE that is a proxy for a current location of the recipient;

periodically retrieving location data describing a current location of the second RWE and a current location of the first RWE; and

determining the distance between the current location of the second RWE to the current location of the first RWE.

14. The non-transitory computer-readable storage medium of claim 12 , wherein the delivery condition is detection that the recipient is at an event associated with an event location and an event time period and monitoring further comprises:

identifying a mobile device that is a proxy for a current location of the recipient, the mobile device being the at least one RWE;

during the event time period, retrieving location data describing a current location of the mobile device; and

determining a current distance between the current location of the mobile device and the event location.

15. The non-transitory computer-readable storage medium of claim 13 , wherein the delivery condition further identifies that a designated RWE must be in a specified state and monitoring further comprises:

when the distance between the current location of the second RWE to the current location of the first RWE is within the range of distances, determining a current state of the designated RWE; and

comparing the current state to the specified state.

16. The non-transitory computer-readable storage medium of claim 13 , wherein the designated RWE is selected from the sender, a third RWE that is a proxy for the sender, the recipient, the second RWE, the first RWE, and a fourth RWE that is different from the first RWE, the second RWE and the third RWE.

17. The non-transitory computer-readable storage medium of claim 13 , wherein the recipient is associated with a plurality of proxy RWEs including the second RWE and delivery comprises:

delivering the message to the second RWE.

18. A system comprising:

a data collection engine, implemented by at least one processor, connected via at least one communication channel over a network to a plurality of computing devices transmitting information objects (IOs) over the at least one communication channel;

computer-readable storage media connected to the data collection engine storing, in real-time, W4 COMN data comprising at least one of social data, spatial data, temporal data and logical data available to the network associated with a plurality of real-world entities (RWEs) including the plurality of computing devices, the social data, spatial data, temporal data and logical data collected by the data collection engine from the IOs transmitted by the plurality of computing devices; and

a message delivery engine, implemented by at least one processor, that, based on the detection of a request from a sender to deliver a message to a recipient when a delivery condition is met where the delivery condition is set by the sender, identifies a first set of one or more of the plurality of RWEs as associated with the delivery condition and tests the W4 COMN data from the computer-readable medium for the identified one or more of the plurality of RWEs for occurrence of the delivery condition.

19. The system of claim 18 , wherein the message delivery engine further delivers the message to the recipient when delivery condition testing engine determines that the delivery conditions are met.

20. The system of claim 19 wherein the message delivery engine delivers the message to the recipient by selecting one of set of proxy RWEs, each proxy RWE being one of the plurality of RWEs and also a proxy for the recipient, and delivering the message to the selected proxy RWE.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR NAME PREVIOUSLY RECORDED AT REEL: 052853 FRAME: 0153. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 29, 2021
From: R2 SOLUTIONS LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 056832/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED ON REEL 053654 FRAME 0254. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST GRANTED PURSUANT TO THE PATENT SECURITY AGREEMENT PREVIOUSLY RECORDED. Recorded Dec 30, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: R2 SOLUTIONS LLC
Reel/Frame 054981/0377 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 8, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
Reel/Frame 053654/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2020
From: EXCALIBUR IP, LLC
To: R2 SOLUTIONS LLC
Reel/Frame 053459/0059 →
PATENT SECURITY AGREEMENT Recorded Jun 5, 2020
From: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MERTON ACQUISITION HOLDCO LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 052853/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038950/0592 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2016
From: EXCALIBUR IP, LLC
To: YAHOO! INC.
Reel/Frame 038951/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038383/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2007
From: DAVIS, MARC ELIOT; BOERRIES, MARCO; HIGGINS, CHRISTOPHER WILLIAM; O'SULLIVAN, JOSEPH JAMES; MARTINEZ, RONALD; TROUT, ROBERT CARTER
To: YAHOO! INC.
Reel/Frame 020222/0843 →
Continuity (1)
Related Publication 20090150489A1 · Jun 11, 2009