IP Library Granted Patent US 11,704,702
Granted Patent B2
US 11,704,702 · App. 17/248,392 · Granted Jul 18, 2023

Generic message injection system

Inventors: Geetha Kakarlapudi (San Francisco, CA); Kannan Nitin Sharma (San Mateo, CA); Mohit Gupta (Sunnyvale, CA); Avik Sinharoy (Mountain View, CA); Christopher S. Trimble (San Francisco, CA); Vinesh Gudla (San Francisco, CA); Ryan Duane Boyd (San Francisco, CA)
Assignee: GROUPON, INC.
G06Q30/0276G06Q30/0271
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 11,704,702
App. No.
17/248,392
Granted
Jul 18, 2023
Kind
B2
Abstract

Systems and related methods providing for dynamic message creation are discussed herein. Circuitry may be configured receive generic configuration data that references work chunks for message generation and time data indicating a message send time. The work chunks may include references to message data, but not the actual message data. Based on the time data, the work chunks may be placed in a message queue. Circuitry may also be configured to retrieve a work chunk from the message queue and to generate one or more messages based on the retrieved work chunk. The references to message data in the work chunk may be used to retrieve the message data at the time of message generation.

Claims (55)

1. An apparatus for facilitating transmission of a plurality of electronic messages in a message system, the apparatus comprising at least one processor and at least one non-transitory memory including program code, the at least one non-transitory memory and the program code configured to, with the at least one processor, cause the apparatus to:

receive generic configuration data comprising a plurality of data paths pointing to a plurality of work chunks;

select a first data path from the plurality of data paths, the first data path pointing to a first work chunk from the plurality of work chunks;

update the first data path, the updated first data path pointing to a second work chunk from the plurality of work chunks;

generate a first electronic message based at least in part on the second work chunk; and

transmit the first electronic message to a client device.

2. The apparatus of claim 1 , wherein the generic configuration data comprises time data indicates transmission time for the first electronic message, wherein the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to update the first data path based on the time data.

3. The apparatus of claim 1 , wherein the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to:

subsequent to transmitting the first electronic message, receive a status update indication; and

update the plurality of data paths based on the status update indication and time data of the generic configuration data.

4. The apparatus of claim 3 , wherein the status update indication comprises a soft bounce notification associated with the first electronic message.

5. The apparatus of claim 1 , wherein the first work chunk comprises a first content data path pointing to first message data stored in a message content repository, wherein the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to:

update, based at least in part on time data, the first content data path to a second content data path pointing to second message data stored in the message content repository; and

generate a second electronic message based at least in part on the second content data path.

6. The apparatus of claim 1 , wherein the first work chunk comprises a first content data path pointing to first message data stored in a message content repository, wherein the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to:

update, based at least in part on time data, the first message data to a second message data; and

generate a second electronic message based at least in part on the second message data.

7. The apparatus of claim 1 , wherein the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to:

customize the first electronic message based on recipient data, wherein the recipient data comprises consumer identification data.

8. A computer program product for facilitating transmission of a plurality of electronic messages in a message system, the computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising an executable portion configured to:

receive generic configuration data comprising a plurality of data paths pointing to a plurality of work chunks;

select a first data path from the plurality of data paths, the first data path pointing to a first work chunk from the plurality of work chunks;

update the first data path, the updated first data path pointing to a second work chunk from the plurality of work chunks;

generate a first electronic message based at least in part on the second work chunk; and

transmit the first electronic message to a client device.

9. The computer program product of claim 8 , wherein the generic configuration data comprises time data indicates transmission time for the first electronic message, wherein the computer-readable program code portions comprise the executable portion configured to update the first data path based on the time data.

10. The computer program product of claim 8 , wherein the computer-readable program code portions comprise the executable portion configured to:

subsequent to transmitting the first electronic message, receive a status update indication; and

update the plurality of data paths based on the status update indication and time data of the generic configuration data.

11. The computer program product of claim 10 , wherein the status update indication comprises a soft bounce notification associated with the first electronic message.

12. The computer program product of claim 8 , wherein the first work chunk comprises a first content data path pointing to first message data stored in a message content repository, wherein the computer-readable program code portions comprise the executable portion configured to:

update, based at least in part on time data, the first content data path to a second content data path pointing to second message data stored in the message content repository; and

generate a second electronic message based at least in part on the second content data path.

13. The computer program product of claim 8 , wherein the first work chunk comprises a first content data path pointing to first message data stored in a message content repository, wherein the computer-readable program code portions comprise the executable portion configured to:

update, based at least in part on time data, the first message data to a second message data; and

generate a second electronic message based at least in part on the second message data.

14. The computer program product of claim 8 , wherein the computer-readable program code portions comprise the executable portion configured to:

customize the first electronic message based on recipient data, wherein the recipient data comprises consumer identification data.

15. A computer-implemented method for facilitating transmission of a plurality of electronic messages in a message system, the computer-implemented method comprising:

receiving generic configuration data comprising a plurality of data paths pointing to a plurality of work chunks;

selecting a first data path from the plurality of data paths, the first data path pointing to a first work chunk from the plurality of work chunks;

updating the first data path, the updated first data path pointing to a second work chunk from the plurality of work chunks;

generating a first electronic message based at least in part on the second work chunk; and

transmitting the first electronic message to a client device.

16. The computer-implemented method of claim 15 , wherein the generic configuration data comprises time data indicates transmission time for the first electronic message, wherein the computer-implemented method comprises updating the first data path based on the time data.

17. The computer-implemented method of claim 15 further comprising:

subsequent to transmitting the first electronic message, receiving a status update indication; and

updating the plurality of data paths based on the status update indication and time data of the generic configuration data.

18. The computer-implemented method of claim 17 , wherein the status update indication comprises a soft bounce notification associated with the first electronic message.

19. The computer-implemented method of claim 15 , wherein the first work chunk comprises a first content data path pointing to first message data stored in a message content repository, wherein the computer-implemented method further comprises:

updating, based at least in part on time data, the first content data path to a second content data path pointing to second message data stored in the message content repository; and

generating a second electronic message based at least in part on the second content data path.

20. The computer-implemented method of claim 15 , wherein the first work chunk comprises a first content data path pointing to first message data stored in a message content repository, wherein the computer-implemented method further comprises:

updating, based at least in part on time data, the first message data to a second message data; and

generating a second electronic message based at least in part on the second message data.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2024
From: GROUPON, INC.
To: BYTEDANCE INC.
Reel/Frame 068833/0811 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2023
From: GUDLA, VINESH; BOYD, RYAN DUANE
To: GROUPON, INC.
Reel/Frame 062612/0717 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2021
From: KAKARLAPUDI, GEETHA; SHARMA, KANNAN NITIN; GUPTA, MOHIT; SINHAROY, AVIK; TRIMBLE, CHRISTOPHER S.
To: GROUPON, INC.
Reel/Frame 055003/0369 →