Systems and methods for dynamically displaying recipient calendar information in electronic messages
Systems and methods for presenting calendar information in electronic messages can include a data processing system receiving a request for calendar information for display in an electronic message responsive to the client device accessing the electronic message. The data processing system can identify, using information in the request, the calendar information of the sender of the electronic message and calendar information of the recipient of the electronic message. The data processing system can retrieve the calendar information of the sender of the electronic message and the calendar information of the recipient of the electronic message. The data processing system can automatically generate an image depicting the calendar information of the sender of the electronic message and the calendar information of the recipient of the electronic message, and send instructions to the client device to cause display of the image within the electronic message accessed by the client device.
1 . A system, comprising:
one or more processors, coupled with memory, to:
access an electronic message sent by a sender to a recipient;
retrieve, responsive to a request associated with the electronic message sent by the sender, first calendar information of the sender of the electronic message and second calendar information of the recipient of the electronic message;
automatically generate a plurality of images that depict the first calendar information and the second calendar information; and
send data to a client device to cause display of at least one of the plurality of images included within the electronic message, wherein the at least one of the plurality of images is based on the first calendar information and the second calendar information.
2 . The system of claim 1 , wherein the one or more processors are further configured to:
retrieve the first calendar information and the second calendar information in response to receipt of the request from the client device.
3 . The system of claim 2 , wherein the request comprises information about the recipient of the electronic message and an identifier indicative of the first calendar information of the sender, wherein the client device extracts the information about the recipient and the identifier from the electronic message.
4 . The system of claim 1 , wherein the first calendar information comprises at least one of a calendar of the sender, a time duration, or a plurality of time slots within the time duration.
5 . The system of claim 1 , wherein the first calendar information comprises a plurality of time slots within a time duration, and wherein the plurality of time slots comprise at least one of: one or more time slots indicating availability of the sender, one or more time slots proposed by the sender, or one or more time slots during which the sender is unavailable.
6 . The system of claim 1 , wherein the one or more processors are further configured to:
identify, based on the request and in a database, the second calendar information using one or more calendars of the recipient, wherein the second calendar information is retrieved from the database.
7 . The system of claim 6 , wherein the one or more processors are further configured to:
identify the second calendar information using at least one of: one or more calendars of the sender, a time duration, or a plurality of time slots within the time duration.
8 . The system of claim 1 , wherein the one or more processors are further configured to:
provide a user interface for the sender to enter at least one of: one or more calendars of the sender, a time duration, or a plurality of time slots within the time duration.
9 . The system of claim 8 , wherein the one or more processors are further configured to:
receive, via the user interface, a selection of the at least one of: the one or more calendars of the sender, the time duration, or the plurality of time slots within the time duration.
10 . The system of claim 1 , wherein the one or more processors are further configured to:
determine that the request comprises a flag that indicates that at least one of the plurality of images are to include one or more first images associated with the first calendar information and one or more second images associated with the second calendar information; and
provide an image map configured for display over the plurality of images, wherein the image map comprises a plurality of map slices each associated with a corresponding time slot of a plurality of time slots depicted by the plurality of images and including resource identifiers indicative of the corresponding time slot.
11 . A method comprising:
accessing, by one or more processors coupled with memory, an electronic message sent by a sender to a recipient;
receiving, by one or more processors coupled with memory, from a client device, a request associated with the electronic message sent by the sender;
retrieving, by the one or more processors, based on the request, first calendar information of the sender of the electronic message and second calendar information of the recipient of the electronic message;
generating, by the one or more processors, images depicting the first calendar information and the second calendar information; and
sending, by the one or more processors, to the client device, instructions to cause at least one of the images to be displayed within the electronic message, wherein the at least one of the images is based on the first calendar information and the second calendar information.
12 . The method of claim 11 , comprising:
determining, by the one or more processors, that the client device is accessing the electronic message; and
receiving, by the one or more processors, the request in response to the electronic message being accessed by the client device.
13 . The method of claim 11 , comprising:
extracting, by the one or more processors, from the request, information about the recipient and an identifier indicative of the first calendar information;
retrieving, by the one or more processors, the first calendar information based on the identifier indicative of the first calendar information; and
identifying, by the one or more processors, the second calendar information using the information about the recipient.
14 . The method of claim 11 , wherein retrieving the first calendar information comprises:
retrieving, by the one or more processors, a plurality of time slots within a time duration, wherein the plurality of time slots comprise at least one of: one or more time slots indicating availability of the sender, one or more time slots proposed by the sender, or one or more time slots during which the sender is unavailable.
15 . The method of claim 11 , comprising:
providing, by the one or more processors, a user interface for the sender to enter at least one of: one or more calendars of the sender, a time duration, or a plurality of time slots within the time duration; and
receiving, by the one or more processors, via the user interface, a selection of the at least one of: the one or more calendars of the sender, the time duration, or the plurality of time slots within the time duration.
16 . The method of claim 11 , comprising:
determining that the request comprises a flag indicating that the images are to include one or more first images associated with the first calendar information of and one or more second images associated with the second calendar information.
17 . The method of claim 11 , comprising:
providing, by the one or more processors, an image map to the client device to display over the images, wherein the image map comprises a plurality of map slices each associated with a corresponding time slot of a plurality of time slots depicted by the images and including resource identifiers indicative of the corresponding time slot;
detecting, by the one or more processors, a selection of a time slot of the plurality of time slots;
receiving, by the one or more processors, a resource identifier associated with a first image of the images associated with the time slot; and
sending, based on the time slot indicated by the resource identifier, a response message to the client device.
18 . The method of claim 17 , comprising:
generating, by the one or more processors, the response message comprising a calendar invite message to be sent to the sender based on the time slot being an available time slot for the sender and the recipient.
19 . The method of claim 17 , comprising:
generating, by the one or more processors, the response message comprising a message indicating that the time slot is unavailable for at least one of the sender or the recipient.
20 . One or more non-transitory computer-readable media storing computer program instructions that, when executed by one or more processors, effectuate operations comprising:
accessing an electronic message sent by a sender to a recipient;
responsive to receiving, from a client device, a request associated with the electronic message sent by the sender, retrieving, based on the request, first calendar information of the sender of the electronic message and second calendar information of the recipient of the electronic message;
generating images depicting the first calendar information and the second calendar information; and
sending, to the client device, instructions to cause at least one of the images to be displayed within the electronic message, wherein the at least one of the images is based on the first calendar information and the second calendar information.