IP Library Granted Patent US 12,651,236
Granted Patent B1
US 12,651,236 · App. 19/033,413 · Granted Jun 9, 2026

Visually representing various attributes of an electronic message for quick overview

Inventor: Mark Lambert (Tarpon Springs, FL)
Assignee: Lambert Mark
G06Q10/40G06T17/00
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 12,651,236
App. No.
19/033,413
Granted
Jun 9, 2026
Kind
B1
Abstract

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.

Claims (131)

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.

References Cited (108)
US 6732155B2 · Meek · 2004 [cited by applicant]
US 7219302B1 · Oshaughnessy et al. · 2007 [cited by applicant]
US 7413085B2 · Zager et al. · 2008 [cited by applicant]
US 8392409B1 · Kashyap et al. · 2013 [cited by applicant]
US 10375003B1 · Olsen et al. · 2019 [cited by applicant]
US 11138174B2 · Semenov · 2021 [cited by applicant]
US 11162071B2 · Loose et al. · 2021 [cited by applicant]
US 11328265B1 · Givoly · 2022 [cited by applicant]
US 11526779B2 · Bringsjord et al. · 2022 [cited by applicant]
US 11546281B1 · Brown · 2023 [cited by applicant]
US 11710000B1 · Cuan et al. · 2023 [cited by applicant]
US 11777892B1 · Sen et al. · 2023 [cited by applicant]
US 11947902B1 · Grimshaw et al. · 2024 [cited by applicant]
US 20020099719A1 · Schwitters et al. · 2002 [cited by applicant]
US 20020138581A1 · Macintosh et al. · 2002 [cited by applicant]
US 20030093483A1 · Allen et al. · 2003 [cited by applicant]
US 20030135565A1 · Estrada · 2003 [cited by applicant]
US 20030233419A1 · Beringer · 2003 [cited by applicant]
US 20040260718A1 · Fedorov · 2004 [cited by applicant]
US 20050043015A1 · Muramatsu · 2005 [cited by applicant]
US 20050063365A1 · Mathew et al. · 2005 [cited by applicant]
US 20050257159A1 · Keohane et al. · 2005 [cited by applicant]
US 20050267944A1 · Little · 2005 [cited by applicant]
US 20060072723A1 · Chung · 2006 [cited by applicant]
US 20060080278A1 · Neiditsch et al. · 2006 [cited by applicant]
US 20060155810A1 · Butcher · 2006 [cited by applicant]
US 20060248155A1 · Bondarenko et al. · 2006 [cited by applicant]
US 20070061400A1 · Parsons · 2007 [cited by applicant]
US 20080046518A1 · Tonnison et al. · 2008 [cited by applicant]
US 20080133501A1 · Andersen et al. · 2008 [cited by applicant]
US 20080147818A1 · Sabo · 2008 [cited by applicant]
US 20080183824A1 · Chen et al. · 2008 [cited by applicant]
US 20080235335A1 · Hintermeister et al. · 2008 [cited by applicant]
US 20080276171A1 · Sabo · 2008 [cited by applicant]
US 20100271365A1 · Smith et al. · 2010 [cited by applicant]
US 20110010182A1 · Williams et al. · 2011 [cited by applicant]
US 20110075665A1 · Lederer · 2011 [cited by applicant]
US 20110119258A1 · Forutanpour et al. · 2011 [cited by applicant]
US 20110307804A1 · Spierer · 2011 [cited by applicant]
US 20120030711A1 · Rae · 2012 [cited by examiner]
US 20120215866A1 · Satterfield et al. · 2012 [cited by applicant]
US 20120221961A1 · Reynolds · 2012 [cited by applicant]
US 20120297300A1 · Mahoney et al. · 2012 [cited by applicant]
US 20130097121A1 · Jung · 2013 [cited by applicant]
US 20130227454A1 · Thorsander et al. · 2013 [cited by applicant]
US 20150012208A1 · Abrams · 2015 [cited by applicant]
US 20150039566A1 · Baumann et al. · 2015 [cited by applicant]
US 20150088784A1 · Dhara et al. · 2015 [cited by applicant]
US 20150195232A1 · Haugen et al. · 2015 [cited by applicant]
US 20150220786A1 · Folkens · 2015 [cited by examiner]
US 20150248429A1 · Pregueiro et al. · 2015 [cited by applicant]
US 20150264004A1 · Khoo · 2015 [cited by applicant]
US 20150339373A1 · Carlson et al. · 2015 [cited by applicant]
US 20160011757A1 · Hoffman · 2016 [cited by applicant]
US 20160026718A1 · Hopkins · 2016 [cited by examiner]
US 20160119260A1 · Ghafourifar et al. · 2016 [cited by applicant]
US 20170031770A1 · Breedvelt-Schouten et al. · 2017 [cited by applicant]
US 20170054667A1 · Brown et al. · 2017 [cited by applicant]
US 20170346772A1 · Albouyeh · 2017 [cited by examiner]
US 20180040303A1 · Lin et al. · 2018 [cited by applicant]
US 20180091613A1 · Goel et al. · 2018 [cited by applicant]
US 20180113585A1 · Shah · 2018 [cited by applicant]
US 20180181378A1 · Bakman · 2018 [cited by applicant]
US 20180232441A1 · Lin et al. · 2018 [cited by applicant]
US 20180239495A1 · Sharifi et al. · 2018 [cited by applicant]
US 20190089660A1 · Bellegarda · 2019 [cited by applicant]
US 20190146474A1 · Cella et al. · 2019 [cited by applicant]
US 20190146650A1 · Shah · 2019 [cited by applicant]
US 20190187874A1 · Canfield et al. · 2019 [cited by applicant]
US 20200026352A1 · Wang et al. · 2020 [cited by applicant]
US 20200053208A1 · Kats et al. · 2020 [cited by applicant]
US 20200233898A1 · Barzelay · 2020 [cited by examiner]
US 20200236081A1 · Lukas et al. · 2020 [cited by applicant]
US 20210342785A1 · Mann et al. · 2021 [cited by applicant]
US 20220044321A1 · Monahan et al. · 2022 [cited by applicant]
US 20220158962A1 · Antonov et al. · 2022 [cited by applicant]
US 20220179665A1 · Rathod · 2022 [cited by examiner]
US 20220236857A1 · Sharifi et al. · 2022 [cited by applicant]
US 20220263822A1 · Zager et al. · 2022 [cited by applicant]
US 20220377041A1 · Lukas et al. · 2022 [cited by applicant]
US 20220394005A1 · Mehta et al. · 2022 [cited by applicant]
US 20240176960A1 · Maurer et al. · 2024 [cited by applicant]
US 20240177119A1 · Bhatia · 2024 [cited by applicant]
US 20240362826A1 · Wang · 2024 [cited by examiner]
US 20250053735A1 · Shevchenko et al. · 2025 [cited by applicant]
US 20250165068A1 · Kim · 2025 [cited by examiner]
US 20250175694A1 · Xu et al. · 2025 [cited by applicant]
US 20250274407A1 · Lambert · 2025 [cited by applicant]
US 20250274409A1 · Rieffel · 2025 [cited by applicant]
CN 1588414A · 2005 [cited by applicant]
DE 102005041369B3 · 2007 [cited by applicant]
EP 1464014A1 · 2004 [cited by applicant]
EP 1717743A1 · 2006 [cited by applicant]
EP 1774708A1 · 2007 [cited by applicant]
EP 2610812B1 · 2015 [cited by applicant]
FR 3026504A1 · 2016 [cited by applicant]
JP 2006350772A · 2006 [cited by applicant]
KR 20060058903A · 2006 [cited by applicant]
KR 20070057570A · 2007 [cited by applicant]
WO 03060772A1 · 2003 [cited by applicant]
WO 2007137323A2 · 2007 [cited by applicant]
WO 2019212726A1 · 2019 [cited by applicant]
ISA, International Search Report for International Application No. PCT/US2024/036178, mailed on Oct. 23, 2024, 6 pages. [cited by applicant]
Panimalar et al., “A Review of Chum Prediction Models Using Different Machine Learning and Deep Learning Approaches in Cloud Environment”, Journal of Current Science and Technology, Jan.-Apr. 2023, vol. 13(1), pp. 136-1… [cited by applicant]
Goel, Ajay. “How to Create Folders in Gmail (Step-by-Step Guide).” GMass Blog, Oct. 30, 2021, www.gmass.co/blog/how-to-create-folders-in-gmail/. Accessed Apr. 3, 2026. (Year: 2021). [cited by applicant]
Heath, Catherine. “Get Organized with Gmail Labels.” Keeping, Jun. 9, 2022, www.keeping. com/content/gmail-labels/. Accessed Apr. 3, 2026. (Year: 2022). [cited by applicant]
Kidson, Russell. “Organize Your Inbox with Gmail Color-Coded Labels.” Softonic, Softonic EN, Jun. 14, 2024, en.softonic.com/articles/gmail-color-coded-labels. Accessed Apr. 3, 2026. (Year: 2024). [cited by applicant]
Naha, Priya. “Gmail Labels: A Guide to Keep Your Inbox Organized.” ControlHippo, Jul. 9, 2024, controlhippo.com/blog/email/ gmail-labels/. Accessed Apr. 3, 2026. (Year: 2024). [cited by applicant]