IP Library Granted Patent US 10,666,750
Granted Patent B2
US 10,666,750 · App. 14/943,615 · Granted May 26, 2020

Enhanced push messaging

Inventors: Vibhor Nanavati (Santa Clara, CA); Anshul Kothari (Cupertino, CA); Amit Agarwal (Sunnyvale, CA); Gaurav Ravindra Bhaya (Sunnyvale, CA); Surojit Chatterjee (Los Altos, CA)
Assignee: Google LLC
H04L67/26G06F16/9535G06F16/9537G06Q30/0251H04L51/04H04L67/18H04L67/20H04L67/306G06F15/16H04L29/08
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 10,666,750
App. No.
14/943,615
Granted
May 26, 2020
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for facilitating and improving push messaging provided to users. In one aspect, a method includes receiving, from a user device, a request to subscribe to a push messaging service, selecting a given phone number that is uniquely associated with the user based on the received request, transmitting, to a user device, a first message that presents visual information at the user device and includes the given phone number, receiving, by the one or more servers, a second message addressed to the given phone number, selecting an additional message that presents additional visual information at the user device based, at least in part, on the message received from the user device and one or more of a geolocation of the mobile device or a time of day, and transmitting the additional message to the user device.

Claims (58)

1. A method of push messaging comprising:

receiving, by one or more servers and from a user device of a user, a request to subscribe to a push messaging service of a particular subscription list, with the one or more servers storing lists of phone numbers for respective subscription lists;

selecting, by the one or more servers and in response to receiving the request, a given phone number from a list of phone numbers for the particular subscription list, wherein the given phone number differs from a phone number of the user device;

transmitting, to the user device and in response to receiving the request, a first message that presents visual information at the user device and includes the given phone number used to confirm the request to subscribe to the push messaging service of the particular subscription list;

receiving, by the one or more servers, a notification transmitted, by the user device, to the given phone number that is provided to the user device by the one or more servers and that differs from the phone number of the user device, with the notification specifying that the user device communicated a confirmation to receive messages from the particular subscription list;

selecting, by the one or more servers, an additional message that presents additional visual information at the user device based, at least in part, on receipt of the notification transmitted to the given phone number by the user device; and

transmitting the additional message to the user device.

2. The method of claim 1 , wherein receiving a request to subscribe to a push messaging service comprises receiving a data packet including data representing user interaction with a subscribe user interface element that is presented in an online search results page and including context data of the user device.

3. The method of claim 2 , wherein receiving a data packet including one or more context data includes receiving a data packet specifying a search query that was used to generate the online search results page prior to the user interaction with the subscribe user interface element.

4. The method of claim 1 , wherein receiving the notification includes receiving a second message confirming the request to subscribe to the push messaging service, wherein the second message includes a mobile phone number of the user device.

5. The method of claim 1 , further comprising:

obtaining distribution criteria specifying conditions to be met in order for one or more push messages to be distributed to user devices, wherein the distribution criteria includes one or more of geolocation data of the user devices, a time of day, or user interaction with electronic documents associated with a subscription list;

determining that the distribution criteria are met based on context data of the user device;

requesting third-party content from a third-party content distribution system to include in the additional message;

receiving the third-party content from the third-party content distribution system to include in the additional message; and

distributing, using the phone number of the user device, the additional message to the user device based on the determination that the distribution criteria are met.

6. The method of claim 5 , further comprising:

determining that the user device will receive the additional message, the determination being made based on user control information including at least one of limiting a number of additional messages transmitted to the user device or times when the user device allows messages to be transmitted to the user device by the one or more servers.

7. The method of claim 1 , further comprising indexing context data related to the user with the given phone number, including indexing at least one of a mobile phone number of the user device, a search query submitted by the user, a time of day at which the search query was submitted, or a geolocation of the user device according to the given phone number.

8. A computer storage medium encoded with a computer program, the program comprising instructions that when executed by a data processing apparatus cause the data processing apparatus to perform operations comprising:

receiving, from a user device of a user, a request to subscribe to a push messaging service of a particular subscription list, with the data processing apparatus storing lists of phone numbers for respective subscription lists;

selecting, in response to receiving the request, a given phone number from a list of phone numbers for the particular subscription list, wherein the given phone number differs from a phone number of the user device;

transmitting, to the user device and in response to receiving the request, a first message that presents visual information at the user device and includes the given phone number used to confirm the request to subscribe to the push messaging service of the particular subscription list;

receiving a notification transmitted, by the user device, to the given phone number that is provided to the user device by the data processing apparatus and that differs from the phone number of the user device, with the notification specifying that the user device communicated a confirmation to receive messages from the particular subscription list;

selecting an additional message that presents additional visual information at the user device based, at least in part, on receipt of the notification transmitted to the given phone number by the user device; and

transmitting the additional message to the user device.

9. The computer storage medium of claim 8 , wherein receiving a request to subscribe to a push messaging service comprises receiving a data packet including data representing user interaction with a subscribe user interface element that is presented in an online search results page and including context data of the user device.

10. The computer storage medium of claim 9 , wherein receiving a data packet including one or more context data includes receiving a data packet specifying a search query that was used to generate the online search results page prior to the user interaction with the subscribe user interface element.

11. The computer storage medium of claim 8 , wherein receiving the notification includes receiving a second message confirming the request to subscribe to the push messaging service, wherein the second message includes a mobile phone number of the user device.

12. The computer storage medium of claim 8 , further comprising:

obtaining distribution criteria specifying conditions to be met in order for one or more push messages to be distributed to user devices, wherein the distribution criteria includes one or more of geolocation data of the user devices, a time of day, or user interaction with electronic documents associated with a subscription list;

determining that the distribution criteria are met based on context data of the user device;

requesting third-party content from a third-party content distribution system to include in the additional message;

receiving the third-party content from the third-party content distribution system to include in the additional message; and

distributing, using the phone number of the user device, the additional message to the user device based on the determination that the distribution criteria are met.

13. The computer storage medium of claim 12 , further comprising:

determining that the user device will receive the additional message, the determination being made based on user control information including at least one of limiting a number of additional messages transmitted to the user device or times when the user device allows messages to be transmitted to the user device by the data processing apparatus.

14. The computer storage medium of claim 8 , further comprising indexing context data related to the user with the given phone number, including indexing at least one of a mobile phone number of the user device, a search query submitted by the user, a time of day at which the search query was submitted, or a geolocation of the user device according to the given phone number.

15. A system comprising:

a processor; and

a computer-readable medium coupled to the processor and having instructions stored thereon, which, when executed by the processor, cause the processor to perform operations comprising:

receiving, from a user device of a user, a request to subscribe to a push messaging service of a particular subscription list, with the system storing lists of phone numbers for respective subscription lists;

selecting, in response to receiving the request, a given phone number from a list of phone numbers for the particular subscription list, wherein the given phone number differs from a phone number of the user device;

transmitting, to the user device and in response to receiving the request, a first message that presents visual information at the user device and includes the given phone number used to confirm the request to subscribe to the push messaging service of the particular subscription list;

receiving, a notification transmitted to the given phone number that is provided to the user device by the system and that differs from the phone number of the user device, with the notification specifying that the user device communicated a confirmation to receive messages from the particular subscription list;

selecting an additional message that presents additional visual information at the user device based, at least in part, on receipt of the notification transmitted to the given phone number by the user device; and

transmitting the additional message to the user device.

16. The system of claim 15 , wherein receiving a request to subscribe to a push messaging service comprises receiving a data packet including data representing user interaction with a subscribe user interface element that is presented in an online search results page and including context data of the user device.

17. The system of claim 16 , wherein receiving a data packet including one or more context data includes receiving a data packet specifying a search query that was used to generate the online search results page prior to the user interaction with the subscribe user interface element.

18. The system of claim 15 , wherein receiving the notification includes receiving a second message confirming the request to subscribe to the push messaging service, wherein the second message includes a mobile phone number of the user device.

19. The system of claim 15 , comprising:

obtaining distribution criteria specifying conditions to be met in order for one or more push messages to be distributed to user devices, wherein the distribution criteria includes one or more of geolocation data of the user devices, a time of day, or user interaction with electronic documents associated with a subscription list;

determining that the distribution criteria are met based on context data of the user device;

requesting third-party content from a third-party content distribution system to include in the additional message;

receiving the third-party content from the third-party content distribution system to include in the additional message; and

distributing, using the phone number of the user device, the additional message to the user device based on the determination that the distribution criteria are met.

20. The system of claim 19 , further comprising:

determining that the user device will receive the additional message, the determination being made based on user control information including at least one of limiting a number of additional messages transmitted to the user device or times when the user device allows messages to be transmitted to the user device by the system.

Assignments (2)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044129/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2016
From: NANAVATI, VIBHOR; KOTHARI, ANSHUL; AGARWAL, AMIT; BHAYA, GAURAV RAVINDRA; CHATTERJEE, SUROJIT
To: GOOGLE INC.
Reel/Frame 037468/0533 →
Continuity (1)
Related Publication 20170142214A1 · May 18, 2017
Cited By (5)
US 12,255,860 US 12,379,903 US 12,610,347 US 12,639,049 US 12,701,496