IP Library Granted Patent US 8,417,782
Granted Patent B2
US 8,417,782 · App. 11/182,664 · Granted Apr 9, 2013

Universal calendar event handling

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,417,782
App. No.
11/182,664
Granted
Apr 9, 2013
Kind
B2
Abstract

System and method for handling calendar events among a plurality of user devices in a communication network are disclosed. The system includes a device manager for interfacing with the plurality of user devices, where the plurality of user devices use different calendar applications and have calendar events in different data formats, and the plurality of user devices include at least a meeting organizer device and one or more attendee devices. The system further includes a calendar gateway for processing the calendar events to form a corresponding connected calendar-data-set for each connected user, where the connected calendar-data-set is stored in a calendar backend server and is shared among one or more devices of each connected user, and an email gateway for communicating the calendar events between the calendar gateway and the plurality of user devices.

Claims (112)

1. A system comprising:

one or more server devices comprising a device manager for interfacing with a plurality of user communication devices, wherein at least a subset of the plurality of user communication devices use different calendar applications and calendar events in different data formats and a remainder of the plurality of user communication devices have no calendar applications, and wherein the plurality of user communication devices include at least a meeting organizer device and one or more attendee devices;

a calendar gateway for processing the calendar events to form a corresponding connected calendar-data-set for each connected user, wherein the connected calendar-data-set is stored in a calendar backend server and is shared among one or more devices of each connected user, wherein the calendar gateway comprises:

logic for translating data formats of the calendar events received from the meeting organizer device and the one or more attendee devices to a set of supported data formats by the calendar backend server; and

logic for generating calendar events to the meeting organizer device and the one or more attendee devices such that a meeting is generated from an email of an event sent by the meeting organizer device wherein recipients of the email are added as attendees of the meeting if the meeting organizer device is one of the remainder having no calendar application; and

an email gateway for communicating the calendar events between the calendar gateway and the plurality of user communication devices, for each user communication device of the subset of user communication devices that has calendar applications with one of the different data formats, information about a calendar event is communicated to the user communication device in accordance with a respective one of the different data formats, and the email gateway further communicating information to the remainder of the plurality of user communication devices via a web page of the calendar gateway such that the remainder of user communication devices are enabled to respond to the calendar events via the web page and not a calendar application.

2. The system of claim 1 , wherein the plurality of user communication devices comprise:

cellular phones, wireless personal digital assistants, navigation devices, personal computers, game consoles, Internet terminals, and Kiosks.

3. The system of claim 1 , wherein the calendar events comprise:

request received from the meeting organizer to create a meeting;

request received from the meeting organizer to update the meeting;

request received from the meeting organizer to cancel the meeting; and

request received from the meeting organizer to delete the meeting.

4. The system of claim 1 , wherein the calendar events further comprise:

notice sent to an attendee to create a meeting;

notice sent to the attendee to update the meeting;

notice sent to the attendee to cancel the meeting; and

notice sent to the attendee to delete the meeting.

5. The system of claim 1 , wherein the calendar events further comprise:

response received from an attendee to accept a meeting;

response received from the attendee to decline the meeting;

response received from the attendee to tentatively accept/decline the meeting; and

response received from the attendee to propose a new meeting.

6. The system of claim 1 , wherein the device manager comprises:

logic for exchanging data records with the plurality of user communication devices; and

logic for synchronizing data records between the plurality of user communication devices and the calendar backend server.

7. The system of claim 1 , wherein the calendar gateway further comprises:

logic for synchronizing the corresponding connected calendar-data-set automatically among all communication devices of each connected user.

8. The system of claim 1 , wherein the email gateway comprises:

logic for receiving calendar events from the meeting organizer device and the one or more attendee devices; and

logic for sending calendar events to the meeting organizer device and the one or more attendee devices in accordance with data formats supported by the meeting organizer device and the one or more attendee devices.

9. The system of claim 1 , wherein the email gateway further comprises:

logic for forwarding calendar events received from the meeting organizer device and the one or more attendee devices to the calendar gateway; and

logic for receiving communications of the calendar events from the calendar gateway.

10. A method comprising:

interfacing with a plurality of user communication devices, wherein at least a subset of the plurality of user communication devices use different calendar applications and calendar events in different data formats and a remainder of the plurality of user communication devices have no calendar applications, and wherein the plurality of user communication devices include at least a meeting organizer device and one or more attendee devices;

processing the calendar events to form a corresponding connected calendar-data-set for each connected user, wherein the connected calendar-data-set is stored in a calendar backend server and is shared among one or more communication devices of each connected user, wherein processing the calendar event comprises:

translating data formats of the calendar events received from the meeting organizer device and the one or more attendee devices to a set of supported data formats by the calendar backend server;

generating calendar events to the meeting organizer device and the one or more attendee devices

generating a meeting from an email of an event sent by the meeting organizer device that is one of the remainder having no calendar application;

adding recipients of the email as attendees of the meeting; and

communicating the calendar events between a calendar gateway and the plurality of user communication devices, for each user communication device of the subset of user communication devices that has calendar applications with one of the different data formats, information about a calendar event is communicated to the user communication device in accordance with a respective one of the different data formats, and for the remainder of the plurality of user communication devices, further communicating information via a web page of the calendar gateway such that the remainder of user communication devices are enabled to handle the calendar events via the web page and not a calendar application.

11. The method of claim 10 , wherein the plurality of user communication devices comprise:

cellular phones, wireless personal digital assistants, navigation devices, personal computers, game consoles, Internet terminals, and Kiosks.

12. The method of claim 10 , wherein the calendar events comprise:

request received from the meeting organizer to create a meeting;

request received from the meeting organizer to update the meeting;

request received from the meeting organizer to cancel the meeting; and

request received from the meeting organizer to delete the meeting.

13. The method of claim 10 , wherein the calendar events further comprise:

notice sent to an attendee to create a meeting;

notice sent to the attendee to update the meeting;

notice sent to the attendee to cancel the meeting; and

notice sent to the attendee to delete the meeting.

14. The method of claim 10 , wherein the calendar events further comprise:

response received from an attendee to accept a meeting;

response received from the attendee to decline the meeting;

response received from the attendee to tentatively accept/decline the meeting; and

response received from the attendee to propose a new meeting.

15. The method of claim 10 , wherein interfacing with the plurality of user communication devices comprises:

exchanging data records with the plurality of user communication devices; and

synchronizing data records between the plurality of user communication devices and the calendar backend server.

16. The method of claim 10 , wherein processing the calendar events further comprises:

synchronizing the corresponding connected calendar-data-set automatically among all devices of each connected user.

17. The method of claim 10 , wherein communicating the calendar events comprises:

receiving calendar events from the meeting organizer device and the one or more attendee devices; and

sending calendar events to the meeting organizer device and the one or more attendee devices in accordance with data formats supported by the meeting organizer device and the one or more attendee devices.

18. The method of claim 10 , wherein communicating the calendar events further comprises:

forwarding calendar events received from the meeting organizer device and the one or more attendee devices to the calendar gateway; and

receiving communications of the calendar events from the calendar gateway.

19. A non-transitory computer readable storage memory comprising program code, the computer program code comprising:

code for interfacing between a device manager and a plurality of user communication devices, wherein at least a subset of the plurality of user communication devices use different calendar applications and calendar events in different data formats and a remainder of the plurality of user communication devices have no calendar applications, and wherein the plurality of user communication devices include at least a meeting organizer device and one or more attendee devices;

code for processing the calendar events to form a corresponding connected calendar-data-set for each connected user at a calendar gateway, wherein the connected calendar-data-set is stored in a calendar backend server and is shared among one or more communication devices of each connected user, and wherein code for processing the calendar events comprises:

code for translating data formats of the calendar events received from the meeting organizer device and the one or more attendee devices to a set of supported data formats by the calendar backend server; and

code for generating calendar events to the meeting organizer device and the one or more attendee devices such that a meeting is generated from an email of an event sent by the meeting organizer device wherein recipients of the email are added as attendees of the meeting if the meeting organizer device is one of the remainder having no calendar application; and

code for communicating the calendar events at an email gateway to the calendar gateway and the plurality of user communication devices, for each user communication device of the subset of user communication devices that has calendar applications with one of the different data formats, information about a calendar event is communicated to the user communication device in accordance with a respective one of the different data formats, and for a remainder of the user communication devices of the plurality, the email gateway communicating information via a web page of the calendar gateway such that the remainder of user communication devices are enabled for responding to the calendar events via the web page and not a calendar application.

20. The non-transitory computer readable storage memory of claim 19 ,

wherein the plurality of user communication devices comprise:

cellular phones, wireless personal digital assistants, navigation devices, personal computers, game consoles, Internet terminals, and Kiosks.

21. The non-transitory computer readable storage memory of claim 19 ,

wherein the calendar events comprise:

request received from the meeting organizer to create a meeting;

request received from the meeting organizer to update the meeting;

request received from the meeting organizer to cancel the meeting; and

request received from the meeting organizer to delete the meeting.

22. The non-transitory computer readable storage memory of claim 19 ,

wherein the calendar events further comprise:

notice sent to an attendee to create a meeting;

notice sent to the attendee to update the meeting;

notice sent to the attendee to cancel the meeting; and

notice sent to the attendee to delete the meeting.

23. The non-transitory computer readable storage memory of claim 19 ,

wherein the calendar events further comprise:

response received from an attendee to accept a meeting;

response received from the attendee to decline the meeting;

response received from the attendee to tentatively accept/decline the meeting; and

response received from the attendee to propose a new meeting.

24. The non-transitory computer readable storage memory of claim 19 ,

wherein code for interfacing comprises:

code for exchanging data records with the plurality of user communication devices; and

code for synchronizing data records between the plurality of user communication devices and the calendar backend server.

25. The non-transitory computer readable storage memory of claim 19 ,

wherein code for processing the calendar events further comprises:

code for synchronizing the corresponding connected calendar-data-set automatically among all devices of each connected user.

26. The non-transitory computer readable storage memory of claim 19 ,

wherein code for communicating the calendar events comprises:

code for receiving calendar events from the meeting organizer device and the one or more attendee devices; and

code for sending calendar events to the meeting organizer device and the one or more attendee devices in accordance with data formats supported by the meeting organizer device and the one or more attendee devices.

27. The non-transitory computer readable storage memory of claim 19 ,

wherein code for communicating the calendar events further comprises:

code for forwarding calendar events received from the meeting organizer device and the one or more attendee devices to the calendar gateway; and

code for receiving communications of the calendar events from the calendar gateway.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2025
From: SLACK TECHNOLOGIES, LLC
To: SALESFORCE, INC.
Reel/Frame 070001/0469 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NEWLY MERGED ENTITY'S NEW NAME, AND TO REMOVE THE PERIOD PREVIOUSLY RECORDED AT REEL: 057254 FRAME: 0738. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Sep 9, 2021
From: SKYLINE STRATEGIES II LLC; SLACK TECHNOLOGIES, INC.
To: SLACK TECHNOLOGIES, LLC
Reel/Frame 057514/0930 →
MERGER Recorded Aug 2, 2021
From: SLACK TECHNOLOGIES, INC.; SKYLINE STRATEGIES I INC.
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 057254/0693 →
MERGER AND CHANGE OF NAME Recorded Aug 2, 2021
From: SKYLINE STRATEGIES II LLC; SLACK TECHNOLOGIES, INC.; SLACK TECHNOLOGIES, LLC
To: SLACK TECHNOLOGIES, LLC.
Reel/Frame 057254/0738 →
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 →
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 Jan 30, 2020
From: EXCALIBUR IP, LLC
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 051761/0307 →
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 Oct 4, 2005
From: TENDJOUKIAN, MEHER; BOERRIES, MARCO; SRINIVASAN, VENKATACHARY; BREUER, MATTHIAS; SCHULZ, TORSTEN
To: YAHOO! INC.
Reel/Frame 016850/0789 →