Visually representing various attributes of an electronic message for quick overview
The system obtains emails sent to a user, an email among the emails, and a sender of the email and determines whether the sender provided an image representing the sender. Upon determining that the sender did not provide the image, the system obtains the image representing the sender. The system identifies a subset of emails, where each email in the subset of emails is from the sender. The system presents in an email interface the subset of emails along with the image representing the sender. The system obtains an indication from the user to change the image, and in response obtains images representing the sender by searching a database of images. The system presents the images to the user and obtains a selected image from the user. The system replaces in the email interface the image representing the sender with the selected image to obtain an updated email interface.
1 . A non-transitory, computer-readable storage medium comprising instructions recorded thereon, wherein the instructions, when executed by at least one data processor of a system, cause the system to:
obtain a contact associated with a user;
obtain multiple images representing the contact by searching multiple datastores of images,
wherein one or more images among the multiple images is retrieved by searching a first datastore of images among the multiple datastores of images,
wherein a second image among the multiple images is retrieved by searching a second datastore of images among the multiple datastores of images;
obtain a first rule indicating precedence among the one or more images from the first datastore, and a second rule indicating precedence among the first datastore and the second datastore,
wherein the first rule indicates which image to select among the one or more images when there are multiple images from the first datastore,
wherein the second rule indicates that when there are one or more images from the first datastore the first datastore takes precedence over the second datastore;
based on the second rule, select the one or more images from the first datastore;
determine whether to present the one or more images from the first datastore in a graphical user interface (GUI) by:
determining, by a processor, an amount of communication between the contact and the user;
determining, by the processor, whether an amount of communication between the contact and the user is above a predetermined threshold;
upon determining that the amount of communication between the contact and the user is above the predetermined threshold:
automatically providing the one or more images associated with one or more most used contacts in the GUI based on the determined amount of communication;
receiving, via the GUI, a user selection of a third image among the one or more images from the first datastore,
wherein the user selection indicates to organize the contact and the third image in the GUI based on specific criteria, wherein the specific criteria includes indicating a sender of a communication between the user and the contact, without requiring the user to read a text indicating the sender of the communication;
presenting, in the GUI, the text indicating the sender of the communication associated with the contact along with the third image,
wherein the text indicating the sender of communication and the third image indicates the contact associated with the communication without requiring the user to read the text indicating the sender;
upon determining that the contact does not communicate with the user above the predetermined threshold:
based on the first rule, select an image among the one or more images from the first datastore; and
present the contact along with the image.
2 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:
obtain the first rule indicating precedence among the one or more images from the first datastore,
wherein the first rule indicates when there are multiple images from the first datastore to select an image among the one or more images at random.
3 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:
obtain a second contact associated with the user;
determine whether the second contact is associated with a fourth image;
upon determining that the second contact is not associated with the fourth image, determine whether the second contact communicates with the user above the predetermined threshold;
upon determining that the second contact is not associated with the fourth image, and that the second contact communicates with the user above the predetermined threshold obtain a fourth multiplicity of images representing the second contact; and
present the second contact along with the fourth multiplicity of images.
4 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:
obtain multiple contacts including the contact;
identify a group of contacts among the multiple contacts,
wherein each contact among the group of contacts includes a matching attribute;
obtain an image associated with the matching attribute by searching the multiple datastores; and
present each contact among the multiple contacts along with the image associated with the matching attribute.
5 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:
obtain a social media post associated with the contact;
provide the social media post to an artificial intelligence trained to generate an image; and
obtain from the artificial intelligence the image representing the contact.
6 . The non-transitory, computer-readable storage medium of claim 1 , comprising instructions to:
present the contact along with the image on a virtual reality, augmented reality, or mixed reality device; and
obtain an indication from the user to change the image from a wand device associated with the virtual reality, augmented reality, or mixed reality device.
7 . A method comprising:
obtaining a contact associated with a user;
obtaining multiple visual representations representing the contact by searching multiple datastores of visual representations,
wherein one or more visual representations among the multiple visual representations is retrieved by searching a first datastore of visual representations among the multiple datastores of visual representations,
wherein a second visual representation among the multiple visual representations is retrieved by searching a second datastore of visual representations among the multiple datastores of visual representations;
obtaining a first rule indicating precedence among the one or more visual representations from the first datastore, and a second rule indicating precedence among the first datastore and the second datastore,
wherein the first rule indicates which visual representation to select among the one or more visual representations when there are multiple visual representations from the first datastore,
wherein the second rule indicates that when there are one or more visual representations from the first datastore the first datastore takes precedence over the second datastore;
based on the second rule, selecting the one or more visual representations from the first datastore;
determining whether to present the one or more visual representations from the first datastore in a graphical user interface (GUI) by:
determining, by a processor, an amount of communication between the contact and the user;
determining, by the processor, whether an amount of communication between the contact and the user is above a predetermined threshold;
upon determining that the amount of communication between the contact and the user is above the predetermined threshold:
automatically providing the one or more visual representations associated with one or more most used contacts in the GUI based on the determined amount of communication;
receiving, via the GUI, a user selection of a third visual representation among the one or more visual representations from the first datastore,
wherein the user selection indicates to organize the contact and the third visual representation in the GUI based on specific criteria, wherein the specific criteria includes indicating a sender of a communication between the user and the contact, without requiring the user to read a text indicating the sender of the communication;
presenting, in the GUI, the text indicating the sender of the communication associated with the contact along with the third visual representation,
wherein the text indicating the sender of communication and the third visual representation indicates the contact associated with the communication without requiring the user to read the text indicating the sender;
upon determining that the contact does not communicate with the user above the predetermined threshold:
based on the first rule, selecting a visual representation among the one or more visual representations from the first datastore; and
present the contact along with the visual representation.
8 . The method of claim 7 , comprising:
obtaining the first rule indicating precedence among the one or more visual representations from the first datastore,
wherein the first rule indicates when there are multiple visual representations from the first datastore to select a visual representation among the one or more visual representations at random.
9 . The method of claim 7 , comprising:
obtaining a second contact associated with a user;
determining whether the second contact is associated with a fourth visual representation;
upon determining that the second contact is not associated with the fourth visual representation, determining whether the second contact communicates with the user above the predetermined threshold;
upon determining that the second contact is not associated with the fourth visual representation, and that the second contact communicates with the user above the predetermined threshold obtaining a third multiplicity of visual representations representing the second contact; and
presenting the second contact along with the third multiplicity of visual representations.
10 . The method of claim 7 , comprising:
obtaining multiple contacts including the contact;
identifying a group of contacts among the multiple contacts,
wherein each contact among the group of contacts includes a matching attribute;
obtaining a visual representation associated with the matching attribute by searching the multiple datastores; and
presenting each contact among the multiple contacts along with the visual representation associated with the matching attribute.
11 . The method of claim 7 , comprising:
obtaining a social media post associated with the contact;
providing the social media post to an artificial intelligence trained to generate a visual representation; and
obtaining from the artificial intelligence the visual representation representing the contact.
12 . The method of claim 7 , comprising:
presenting the contact along with the visual representation on a virtual reality, augmented reality, or mixed reality device; and
obtaining an indication from the user to change the visual representation from a wand device associated with the virtual reality, augmented reality, or mixed reality device.
13 . A system comprising:
at least one hardware processor; and
at least one non-transitory memory storing instructions, which, when executed by the at least one hardware processor, cause the system to:
obtain a contact associated with a user;
obtain multiple visual representations representing the contact by searching multiple datastores of visual representations,
wherein one or more visual representations among the multiple visual representations is retrieved by searching a first datastore of visual representations among the multiple datastores of visual representations,
wherein a second visual representation among the multiple visual representations is retrieved by searching a second datastore of visual representations among the multiple datastores of visual representations;
obtain a first rule indicating precedence among the one or more visual representations from the first datastore, and a second rule indicating precedence among the first datastore and the second datastore,
wherein the first rule indicates which visual representation to select among the one or more visual representations when there are multiple visual representations from the first datastore,
wherein the second rule indicates that when there are one or more visual representations from the first datastore the first datastore takes precedence over the second datastore;
based on the second rule, select the one or more visual representations from the first datastore;
determining whether to present the one or more visual representations from the first datastore in a graphical user interface (GUI) by:
determine, by a processor, an amount of communication between the contact and the user;
determining, by the processor, whether an amount of communication between the contact and the user is above a predetermined threshold;
upon determining that the amount of communication between the contact and the user is above the predetermined threshold:
automatically providing the one or more visual representations associated with one or more most used contacts in the GUI based on the determined amount of communication;
receiving, via the GUI, a user selection of a third visual representation among the one or more visual representations from the first datastore,
wherein the user selection indicates to organize the contact and the third visual representation in the GUI based on specific criteria, wherein the specific criteria includes indicating a sender of a communication between the user and the contact, without requiring the user to read a text indicating the sender of the communication;
presenting, in the GUI, the text indicating the sender of the communication associated with the contact along with the third visual representation,
wherein the text indicating the sender of communication and the third visual representation indicates the contact associated with the communication without requiring the user to read the text indicating the sender;
upon determining that the contact does not communicate with the user above the predetermined threshold:
based on the first rule, select a visual representation among the one or more visual representations from the first datastore; and
present the contact along with the visual representation.
14 . The system of claim 13 , comprising instructions to:
obtain the first rule indicating precedence among the one or more visual representations from the first datastore,
wherein the first rule indicates when there are multiple visual representations from the first datastore to select a visual representation among the one or more visual representations at random.
15 . The system of claim 13 , comprising instructions to:
obtain a second contact associated with a user;
determine whether the second contact is associated with a fourth visual representation;
upon determining that the second contact is not associated with the fourth visual representation, determine whether the second contact communicates with the user above the predetermined threshold;
upon determining that the second contact is not associated with the fourth visual representation, and that the second contact communicates with the user above the predetermined threshold obtain a third multiplicity of visual representations representing the second contact; and
present the second contact along with the third multiplicity of visual representations.
16 . The system of claim 13 , comprising instructions to:
obtain multiple contacts including the contact;
identify a group of contacts among the multiple contacts,
wherein each contact among the group of contacts includes a matching attribute;
obtain a visual representation associated with the matching attribute by searching the multiple datastores; and
present each contact among the multiple contacts along with the visual representation associated with the matching attribute.
17 . The system of claim 13 , comprising instructions to:
obtain a social media post associated with the contact;
provide the social media post to an artificial intelligence trained to generate a visual representation; and
obtain from the artificial intelligence the visual representation representing the contact.
18 . The system of claim 13 , comprising instructions to:
present the contact along with the visual representation on a virtual reality, augmented reality, or mixed reality device; and
obtain an indication from the user to change the visual representation from a wand device associated with the virtual reality, augmented reality, or mixed reality device.