system

The system addresses the challenge of managing email tasks by extracting and sorting deadlines using regular expressions, enhancing task management efficiency and adapting to user emotions.

JP2026063722APending Publication Date: 2026-04-13SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
SOFTBANK GROUP CORP
Filing Date
2024-10-01
Publication Date
2026-04-13

AI Technical Summary

Technical Problem

Existing email management systems fail to efficiently identify and prioritize tasks with approaching deadlines, leading to missed deadlines and task omissions due to the overwhelming volume of emails.

Method used

A system that extracts deadlines from email bodies using regular expressions, sorts emails by deadline, and displays them in order of urgency, optionally incorporating emotion recognition to adjust priority and notification methods based on user sentiment.

Benefits of technology

Enables users to manage tasks efficiently by prioritizing emails based on deadlines and emotional states, preventing task omissions and optimizing task management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026063722000001_ABST
    Figure 2026063722000001_ABST
Patent Text Reader

Abstract

We provide the system. [Solution] A method for extracting the closing date from the body of a received email, A means for sorting the emails from which the closing dates have been extracted in order of closing date, A system that includes means for displaying sorted emails.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technology of the present disclosure relates to a system.

Background Art

[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of the chatbot's character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In a modern business environment, email is widely used as an important task management tool. However, when there are a wide variety of received emails, there is a risk of overlooking that the due date of a task is approaching. In particular, it requires a great deal of effort to appropriately identify and handle task emails with approaching due dates from among the emails arranged in the order of reception time. As a result, there are problems such as missing the due date of an important task or task omission.

Means for Solving the Problems

[0005] To solve this problem, the present invention provides the following means. First, a means for extracting the deadline from the body of a received email is provided. Next, a means for sorting emails in order of deadline based on the extracted deadline is provided. Furthermore, the system includes a means for displaying the sorted emails. By having a means for extracting the date from the body of an email using regular expressions, the deadline can be reliably detected. In addition, by having a means for treating emails without a set deadline as the default maximum date, it is possible to process all emails consistently. As a result, users can check and respond to task emails in order of urgency, preventing tasks from being missed.

[0006] "Email" is a means of communication for sending and receiving digital messages over the internet.

[0007] A "deadline" refers to the final date by which a particular task or work must be completed.

[0008] A "regular expression" is a pattern description method for searching, extracting, and editing strings in a specific format.

[0009] "Date" refers to information that represents the year, month, and day based on the calendar.

[0010] "Rearranging" is the operation of changing the order of elements according to a specific criterion.

[0011] "To display" refers to showing information visually.

[0012] "Extracting" refers to the operation of taking specific data or information out of a whole.

[0013] "Means" refers to the methods or techniques used to achieve a specific objective.

[0014] A "system" refers to a series of mechanisms in which multiple components cooperate to function.

[0015] "Task leakage" refers to the situation where scheduled tasks or operations are left unprocessed.

Brief Explanation of Drawings

[0016] [Figure 1] It is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] It is a conceptual diagram showing an example of the main functions of a data processing device and a smart device according to the first embodiment. [Figure 3] It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which multiple emotions are mapped. [Figure 10] It shows an emotion map to which multiple emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when the emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of a data processing system in Application Example 2 when a sentiment engine is combined.

Embodiments for Implementing the Invention

[0017] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.

[0018] First, the terms used in the following description will be explained.

[0019] In the following embodiments, a numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.

[0020] In the following embodiments, a numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.

[0021] In the following embodiments, a numbered storage is one or more non-volatile storage devices that store various programs and various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes, etc.

[0022] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).

[0023] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."

[0024] [First Embodiment]

[0025] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.

[0026] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0027] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0028] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.

[0029] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.

[0030] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0031] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.

[0032] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0033] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.

[0034] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0035] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0036] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".

[0037] This invention relates to a system that sorts emails based on deadlines extracted from the email body, allowing users to review tasks in order of urgency. This system is managed by a server, and information is provided to the user via a terminal.

[0038] System Configuration

[0039] Email extraction method

[0040] The server retrieves newly arrived emails from the inbox. This email information includes the subject, body, and time of receipt. These emails are stored in a list format and used for subsequent processing.

[0041] Method for extracting closing dates

[0042] The server uses regular expressions to extract the closing date from the body of each email. The regular expressions detect strings in the date format (e.g., "2023-10-15") from the body. The extracted date is set to the "Closing Date" attribute of the email object. If the closing date is not included in the body, the closing date for that email is set to None by default (treated as not existing).

[0043] Email sorting methods

[0044] Mail lists with set deadlines are sorted by the server in order of deadline. The sorting algorithm treats mail without a deadline as having the default maximum date (datetime.max). This ensures all mail is sorted appropriately based on its deadline, making it easier to visually assess its urgency.

[0045] Display method of sorting results

[0046] The device displays a sorted list of emails to the user. The user can see the subject, due date, and received time on the screen. This allows the user to check and address task emails in order of their approaching due date.

[0047] Specific example

[0048] Consider the case where the server receives an email like the following:

[0049] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0050] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0051] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0052] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0053] 1. Task A: 2023-10-15

[0054] 2. Task B: 2023-10-12

[0055] 3. Task C: 2023-10-20

[0056] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0057] 1. Task B: Deadline 2023-10-12

[0058] 2. Task A: Deadline 2023-10-15

[0059] 3. Task C: Deadline 2023-10-20

[0060] The device displays this sorted list to the user, allowing them to review and address tasks in order from the most urgent (Task B) to the most urgent.

[0061] Thus, the present invention allows users to prevent missing tasks in received emails and to manage tasks efficiently.

[0062] The following describes the processing flow.

[0063] Step 1:

[0064] The server receives the email.

[0065] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[0066] Step 2:

[0067] The server extracts the closing date from the email body.

[0068] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. If a date is found, it is set as the closing date in the email object. If no closing date is found, the closing date for that email is set to None.

[0069] Step 3:

[0070] The server sorts the emails by closing date.

[0071] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[0072] Step 4:

[0073] The device displays a rearranged email list.

[0074] Specific operation: The terminal receives a sorted list of emails and displays this list to the user. The display includes the subject, due date, and received time.

[0075] Step 5:

[0076] Users check their emails in order of urgency.

[0077] Specific operation: The user refers to the displayed email list and checks and addresses tasks in order, starting with the email with the closest due date. This makes it easier to prevent tasks from being missed.

[0078] (Example 1)

[0079] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0080] Traditional email management systems made it difficult to quickly identify and appropriately respond to urgent emails from a large volume of incoming messages. Furthermore, many users were overwhelmed with daily tasks, frequently missing deadlines. This resulted in delays and errors, making efficient task management challenging.

[0081] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0082] In this invention, the server includes means for automatically acquiring newly arrived electronic data from the user's inbox, means for extracting the deadline from the body of the data using regular expressions, and means for sorting the electronic data, including the deadline, in order of the deadline. This enables the user to quickly identify high-priority tasks and respond to them efficiently.

[0083] "Electronic data" refers to a collection of information processed by a computer system, and specifically includes things like email.

[0084] The "inbox" is a storage area for emails that a user receives.

[0085] A "regular expression" is a method for searching for and extracting strings that match a specific pattern, and is used in text mining and data analysis.

[0086] A "deadline" refers to the final date by which a particular task or project must be completed.

[0087] A "server" is a computer system that provides services to clients via a network, and is responsible for processing, storing, and managing data.

[0088] "Rearranging" means ordering data or objects according to a specific set of criteria.

[0089] "Display" refers to the visual presentation of information on a computer monitor or other device.

[0090] "Maximum date" refers to the latest date that a computer system can handle, and is used as a reference value in timestamps and data management.

[0091] This invention is a system for efficiently managing electronic data arriving in a user's inbox. This system is managed by a server, and information is provided to the user via a terminal.

[0092] First, the server automatically retrieves newly arrived electronic data from the user's inbox. For this process, the server utilizes email service APIs such as the Gmail API or Microsoft® Graph API. This allows the server to retrieve information such as the subject, body, and time of receipt of the received emails and store it in a list format.

[0093] Next, the server uses regular expressions to extract the closing date from the text of each electronic data. This process uses the Python regular expression library (re module). The regular expression detects strings in the date format (e.g., "2023-10-15") within the text. The extracted date is set to the "closing date" attribute within each electronic data object. If the text does not contain a closing date, the closing date attribute of that electronic data is set to None by default.

[0094] Next, the server sorts the electronic data with set deadlines into the order they appear in the list. The `sorted` function from Python's standard library is used for sorting. For electronic data without a deadline, the default maximum date (`datetime.max`) is set, placing it at the end of the list. This ensures that all electronic data is properly sorted based on its deadline.

[0095] Finally, the terminal displays the sorted electronic data provided by the server to the user. For display purposes, information is provided visually on a web page, for example, using HTML and CSS. This allows the user to see the subject, due date, and received time on the screen, enabling them to address tasks in order of their due date.

[0096] Specific example

[0097] Consider the case where the server receives the following electronic data:

[0098] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0099] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0100] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0101] The server extracts each closing date from the text and obtains a list of closing dates as follows:

[0102] 1. Task A: 2023-10-15

[0103] 2. Task B: 2023-10-12

[0104] 3. Task C: 2023-10-20

[0105] Next, the server sorts these electronic data by closing date. As a result, the sorted list looks like this:

[0106] 1. Task B: Deadline 2023-10-12

[0107] 2. Task A: Deadline 2023-10-15

[0108] 3. Task C: Deadline 2023-10-20

[0109] The device displays this sorted list to the user. The user can then review and address tasks in order of urgency, starting with the most urgent task (Task B). This prevents the user from missing tasks in the incoming data and allows for efficient task management.

[0110] Examples of prompts to input into a generative AI model

[0111] "Create a Python program that extracts the date from the body of newly arrived emails in a user's inbox and sorts the emails based on that date. The sorted results should be displayed in order of earliest closing date."

[0112] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0113] Step 1:

[0114] The server automatically retrieves newly arrived electronic data from the user's inbox.

[0115] Specific operation: The server uses email service APIs such as the Gmail API and the Microsoft Graph API. Specifically, it executes messages.list(userId='me',q='is:unread') in the Gmail API to retrieve unread emails.

[0116] Input: User's inbox

[0117] Output: List of newly acquired electronic data (emails)

[0118] Step 2:

[0119] The server uses regular expressions to extract the closing date from the text of each electronic data file.

[0120] Specific operation: The server uses Python's regular expression library (re module) to extract strings in date format (e.g., "2023-10-15") from the body of each email.

[0121] Input: Text of the electronic data

[0122] Output: Electronic data (email) object with a set closing date.

[0123] Step 3:

[0124] The server sorts the list of electronic data with set deadlines in order of deadline.

[0125] Specific operation: The server sorts the list using the `sorted` function from Python's standard library. For electronic data without a closing date, it sets the maximum date (`datetime.max`).

[0126] Input: List of electronic data (emails) with a set closing date.

[0127] Output: Sorted list of electronic data (emails)

[0128] Step 4:

[0129] The terminal displays the sorted electronic data provided by the server to the user.

[0130] Specific operation: The terminal uses HTML and CSS to create a user interface and visually display email information. The user can view the subject, due date, and received time on the screen.

[0131] Input: Sorted list of electronic data (emails)

[0132] Output: Email information displayed on the user screen

[0133] (Application Example 1)

[0134] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0135] In today's work environments, where a large volume of diverse tasks and electronic messages are received daily, it is extremely difficult for managers to properly grasp all tasks and prioritize them according to their urgency. This can lead to important tasks being overlooked or work being delayed. Tasks with deadlines, in particular, are highly urgent, and there is a need for effective management methods for them.

[0136] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0137] In this invention, the server includes means for extracting the closing date from the body of a received electronic message, means for sorting the electronic messages from which the closing dates have been extracted in order of closing date, means for displaying the sorted electronic messages, and display means for allowing the asset manager at the implementation site to check and manage the priority of management tasks in real time. As a result, the manager can immediately grasp the priority of tasks based on the closing date and respond to tasks in order of urgency.

[0138] "Received electronic messages" refer to messages that reach the inbox via the network from the server, and this includes email and other forms of electronic communication.

[0139] "Methods for extracting closing dates" refer to technical elements that identify date data in a specific format from the body of an electronic message and extract it as relevant information to the message.

[0140] The "sorting method" refers to a function that sorts multiple electronic messages based on the extracted closing dates and organizes them in a specified order.

[0141] "Means of display" refers to technical methods for presenting rearranged electronic messages to users through visual interfaces such as screens or displays.

[0142] "Asset manager at the implementation location" refers to an individual or position responsible for monitoring and managing operations at a specific location, such as a physical store or office.

[0143] A "display mechanism that allows you to check and manage the priority of management tasks in real time" is a display function that allows administrators to instantly determine the most important tasks based on the current work situation and address them.

[0144] This invention is a system that improves operational efficiency by efficiently managing electronic messages received by store managers and prioritizing them according to their urgency. This system consists of the following main elements:

[0145] 1. Server

[0146] The server receives electronic messages over the network. These messages contain information such as the subject, body, and time of reception. The server stores these messages in a list format and uses them for subsequent processing.

[0147] 2. Method for extracting closing dates

[0148] The server uses a regular expression to extract the closing date from the body of an electronic message. This regular expression detects date-formatted strings (e.g., "2023-10-15") from the body. This extracted date is set as the "Closing Date" attribute of the message object. If the closing date is not included in the body, the closing date for that message is treated as None or the maximum date (datetime.max) by default.

[0149] 3. Message sorting methods

[0150] The server sorts the message list based on the extracted deadline. The sorting algorithm treats messages without a deadline as having the default maximum date. This ensures that all messages are properly sorted based on their deadline, making it easier to visually determine their urgency.

[0151] 4. Means for displaying sorting results

[0152] The sorted message list is displayed on the store manager's terminal. The manager can see the subject, due date, and received time on the screen. This allows them to review and address tasks in order of their due date.

[0153] Hardware and software to be used

[0154] Hardware: Servers, smartphones (iOS or Android®)

[0155] Software: Python runtime engine, regular expression library (Python's re module), datetime library (Python's datetime module)

[0156] Specific examples of operation

[0157] Provide an application that allows administrators to view and manage electronic message tasks in real time. For example, consider the following message:

[0158] "Delivery Schedule", "Delivery by 2023-10-12", Received 2023-10-09

[0159] "Inventory Check", "Checked by 2023-10-15", Received 2023-10-10

[0160] "Staff Shift", "Updated by 2023-10-20", Received 2023-10-11

[0161] The server retrieves these messages and extracts the respective deadlines from the message bodies. Based on the extracted deadlines, the messages are sorted by urgency. As a result, the earliest deadline, "Delivery Schedule," appears at the top of the list, allowing the administrator to prioritize this task.

[0162] Example of a prompt

[0163] An example of an input prompt for a generative AI model is the following sentence: "Create a program that extracts the closing date from the body of an electronic message and displays a list sorted by closing date."

[0164] Thus, this invention allows managers to immediately grasp the urgency of tasks, prioritize them, and proceed with work efficiently.

[0165] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0166] Step 1:

[0167] The server retrieves electronic messages that arrive in the inbox via the network. The input is the unprocessed electronic messages, and the output is a list of retrieved electronic messages. Specifically, the server accesses the inbox and retrieves new electronic messages, including the subject, body, and time of receipt.

[0168] Step 2:

[0169] The server uses regular expressions to extract the closing date from the body of an electronic message. The input is the body of the electronic message, and the output is the extracted closing date. Specifically, the server uses a regular expression library to detect strings in a date format such as "2023-10-15" from the body and sets it as the "closing date" attribute of the message object.

[0170] Step 3:

[0171] The server sorts the electronic messages based on the extracted closing dates. The input is a list of electronic messages with closing dates set, and the output is a list of electronic messages sorted by closing date. Specifically, the server assigns a default maximum date to messages for which no closing date exists, and then sorts all messages based on their closing dates.

[0172] Step 4:

[0173] The terminal displays a sorted list of electronic messages to the user. The input is a sorted list of electronic messages, and the output is a visually displayed list of messages. Specifically, the terminal displays the subject, due date, and received time on the screen, listing them in order of urgency.

[0174] Step 5:

[0175] The user reviews the displayed messages and addresses tasks in order of priority. The input is the displayed electronic messages, and the output is the progress of the tasks based on the user's actions. Specifically, the user clicks on the most urgent message on the screen and takes action based on its content.

[0176] This process allows store managers to efficiently manage electronic messages and prioritize them according to their urgency.

[0177] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0178] This invention relates to a system that sorts emails based on deadlines extracted from the email body, recognizes user sentiment, and optimizes task management. The system consists of a server, a terminal, and a user interface.

[0179] System Configuration

[0180] Email extraction method

[0181] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. These mail objects include the subject, body, and time of receipt.

[0182] Method for extracting closing dates

[0183] The server uses regular expressions to extract the closing date from the body of each email. Using regular expressions, it searches for date-formatted strings within the email body and sets the found date as the closing date in the email object. If no closing date is found, the closing date for that email is set to None by default.

[0184] Email sorting methods

[0185] Mail lists with a set deadline are sorted by the deadline by the server. The sorting algorithm sets datetime.max for mail with a deadline of None, ensuring all mail is sorted by a consistent criterion.

[0186] Implementation of an emotion engine

[0187] The server is equipped with an emotion engine to recognize user emotions. This emotion engine analyzes user emotions in real time through facial expressions, text input, voice analysis, and other means.

[0188] Emotion-based prioritization methods

[0189] The server dynamically adjusts email priorities based on sentiment information obtained from the sentiment engine. For example, if the sentiment engine determines that a user is experiencing high levels of stress, it will temporarily hide important but less urgent emails from the email list.

[0190] How to change the notification method

[0191] The device changes how it sends email notifications to the user based on the results of the emotion engine's analysis. For example, if the device determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound.

[0192] Display method of sorting results

[0193] The device displays a sorted and sentiment-based email list to the user. The display includes subject, due date, and received time.

[0194] Specific example

[0195] Consider the case where the server receives an email like the following:

[0196] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0197] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0198] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0199] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0200] 1. Task A: 2023-10-15

[0201] 2. Task B: 2023-10-12

[0202] 3. Task C: 2023-10-20

[0203] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0204] 1. Task B: Deadline 2023-10-12

[0205] 2. Task A: Deadline 2023-10-15

[0206] 3. Task C: Deadline 2023-10-20

[0207] This sorted list is dynamically adjusted by the emotion engine. For example, if the user is stressed, Task C (less urgent emails) will be temporarily removed from the list.

[0208] Ultimately, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management according to their emotional state.

[0209] The following describes the processing flow.

[0210] Step 1:

[0211] The server receives the email.

[0212] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[0213] Step 2:

[0214] The server extracts the closing date from the email body.

[0215] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. The found date is set as the closing date for the email object. If no closing date is found, the closing date for that email is set to None.

[0216] Step 3:

[0217] The server sorts the emails by closing date.

[0218] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[0219] Step 4:

[0220] The server recognizes the user's emotions.

[0221] Specific operation: The server uses an emotion engine to collect data such as the user's facial expressions, text input, and voice analysis, and analyzes their emotions in real time. The analysis results provide information about the emotional state the user is currently feeling (e.g., stress, relaxation).

[0222] Step 5:

[0223] The server prioritizes emails based on emotions.

[0224] Specific operation: Based on emotional information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if a user is feeling stressed, it will temporarily remove low-priority emails from the list or lower their priority.

[0225] Step 6:

[0226] The device displays a customized email list.

[0227] Specific operation: The terminal displays a customized email list to the user. The display includes subject, due date, and received time.

[0228] Step 7:

[0229] Users check their emails in order of urgency.

[0230] Specific operation: The user refers to the displayed email list and checks and responds to tasks in order, starting with the email with the closest due date.

[0231] Step 8:

[0232] The device provides emotion-based notification methods.

[0233] Specific operation: The device changes the email notification method based on the results of the emotion engine's analysis. For example, if the system determines that the user is relaxed, it will use a normal notification sound, and if the user is stressed, it will use a softer notification sound.

[0234] (Example 2)

[0235] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".

[0236] Traditional email management systems struggled to efficiently manage the large volume of emails users received, and prioritizing emails based on deadlines was particularly difficult. Furthermore, while there was a need to dynamically adjust email notifications and task priorities based on user emotional states, no system possessed such functionality. Moreover, it was difficult to manage tasks effectively when users were experiencing stress.

[0237] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0238] In this invention, the server includes means for extracting closing dates from the body of received electronic data, means for sorting the electronic data from which closing dates have been extracted in order of closing dates, means for displaying the sorted electronic data, means including an emotion analysis engine for analyzing the user's emotions, means for dynamically adjusting the priority of electronic data based on the emotion analysis results, and means for changing the notification method based on the emotion analysis results. This enables the user to efficiently manage emails and perform optimal task management according to their emotional state.

[0239] "A means of extracting the closing date from the body of received electronic data" refers to a technology that analyzes the body of an email obtained from an email inbox and identifies a closing date in a predefined format.

[0240] "A method for sorting electronic data with extracted closing dates in order of closing date" refers to a technique that sorts email objects based on the extracted closing date information and lists them in order from earliest to latest closing date.

[0241] "Means for displaying sorted electronic data" refers to a technology that displays a sorted email list on a screen so that the user can visually confirm it.

[0242] "Means including an emotion analysis engine for analyzing user emotions" refers to algorithms and systems that analyze the user's emotional state in real time based on data such as facial expressions, voice, and text input.

[0243] "A means of dynamically adjusting the priority of electronic data based on sentiment analysis results" refers to a technology that changes the display order and priority of emails based on user sentiment information obtained from a sentiment analysis engine.

[0244] "Means of changing notification methods based on sentiment analysis results" refers to a technology that dynamically changes email notification methods (e.g., type of notification sound, whether or not a pop-up is displayed) according to the user's emotional state.

[0245] "A method for extracting date and time information from the body of electronic data using regular expressions" refers to a technique that searches for and extracts date information in the body of an email using a defined string pattern (e.g., YYYY-MM-DD format).

[0246] "A method for treating electronic data without a specified closing date as the default maximum date and time" refers to a technology that automatically sets the latest possible date for comparison when an email does not have a specified closing date, thereby enabling consistent sorting of these emails with other emails.

[0247] This invention relates to a system that extracts deadlines from the text of received electronic data, sorts them, and optimizes task management based on the user's emotional state. The main components of the system consist of a server, a terminal, and a user interface, and it operates in the following specific steps.

[0248] Email extraction:

[0249] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. This process uses the IMAP protocol, and the mail object includes the subject, body, and time of receipt.

[0250] Extracting closing dates:

[0251] The server uses regular expressions to extract the closing date from the body of each email. For example, if the body contains "Complete by 2023-10-15", the regular expression "\d{4}-\d{2}-\d{2}" is used to extract "2023-10-15" and add it to the email object as the closing date. If no closing date is found, it defaults to None.

[0252] Sorting emails:

[0253] The server sorts the mail objects based on the extracted closing dates. The sorting is done in order of earliest closing date, and mail with a closing date of None is set to datetime.max and placed at the end of the list.

[0254] Implementation of the emotion analysis engine:

[0255] The server is equipped with an emotion analysis engine to analyze the user's emotions. This emotion analysis engine acquires user emotion data from sources such as the camera, microphone, and text input. For example, if the user is smiling through the camera, the engine will analyze that the user is relaxed.

[0256] Prioritizing based on emotions:

[0257] The server dynamically adjusts the priority of the email list based on emotional information obtained from the emotion engine. If it determines that the user is experiencing stress, lower-priority emails are temporarily removed from the display list.

[0258] Changes to notification methods:

[0259] The device receives emotion analysis results from the server and changes the email notification method according to the emotional state. If it determines that the user is relaxed, it will notify with a normal notification sound; if the user is stressed, it will use a softer notification sound or vibration.

[0260] Display the sorted results:

[0261] The terminal receives a pre-configured mail list from the server and displays it to the user. The displayed information includes the subject, deadline, and time of receipt. For example, a valid mail list might look like this:

[0262] 1. "Task B": Deadline 2023-10-12

[0263] 2. "Task A": Deadline 2023-10-15

[0264] 3. "Task C": Deadline 2023-10-20

[0265] As described above, this system allows users to efficiently manage their incoming emails and perform optimal task management according to their emotional state. Furthermore, a concrete example can be displayed as follows:

[0266] Specific example:

[0267] Consider the case where the server receives the following email:

[0268] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0269] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0270] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0271] The server extracts each closing date from the text and obtains the following list:

[0272] 1. "Task A": 2023-10-15

[0273] 2. "Task B": 2023-10-12

[0274] 3. "Task C": 2023-10-20

[0275] Next, the server sorts these emails by closing date. As a result, the sorted list is:

[0276] 1. "Task B": Deadline 2023-10-12

[0277] 2. "Task A": Deadline 2023-10-15

[0278] 3. "Task C": Deadline 2023-10-20

[0279] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, "Task C" (low-priority emails) will be temporarily removed from the list.

[0280] Finally, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention can efficiently and effectively improve the user's task management.

[0281] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0282] Step 1:

[0283] The server retrieves newly arrived emails from the inbox. The input is email data from the email server, and the output is a list of email objects (subject, body, reception time). Specifically, email information is retrieved using the IMAP protocol and saved in a list as each email object.

[0284] Step 2:

[0285] The server analyzes the body of each email object in the list and extracts the due date using a regular expression. The input is a list of email objects, and the output is a list of email objects with the due date added. Specifically, a regular expression such as "\d{4}-\d{2}-\d{2}" is used to extract the due date from the email body and set it in the email object.

[0286] Step 3:

[0287] The server checks the due dates of all email objects and sorts the email objects in ascending order of the due date. The input is a list of email objects with the due date added, and the output is a sorted list of email objects. Specifically, set datetime.max for emails with a due date of None and sort the list in ascending order of the due date.

[0288] Step 4:

[0289] The server analyzes the user's emotional state using an emotion analysis engine. The input is emotion data obtained from a camera, microphone, text input, etc., and the output is the user's emotional state. Specifically, the emotion analysis engine analyzes the data in real time and obtains emotional states such as relaxation, stress, and concentration.

[0290] Step 5:

[0291] The server dynamically adjusts email priorities based on sentiment analysis results. The input is a list of email objects with added sentiment status and deadline, and the output is the adjusted list of email objects. Specifically, if it is determined that the user is stressed, adjustments are made such as temporarily removing low-priority emails from the list.

[0292] Step 6:

[0293] The device receives emotion analysis results from the server and changes the notification method. The input is the emotion analysis results and email priority information, and the output is the notification method setting. Specifically, if the user is relaxed, the notification sound is set to normal; if the user is stressed, a softer notification sound or vibration mode is used.

[0294] Step 7:

[0295] The terminal receives a sorted and adjusted mail list from the server and displays it to the user. The input is the adjusted mail object list, and the output is the mail list displayed on the user interface. Specifically, the list, including subject, due date, and received time, is displayed on the screen in a user-friendly format.

[0296] Through these steps, this system can streamline users' email management and provide optimal task management based on their emotional state.

[0297] (Application Example 2)

[0298] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".

[0299] Traditional task management systems, while having features to sort tasks based on email deadlines, lacked the ability to recognize user emotions in real time and dynamically adjust task priorities and notification methods. This resulted in issues such as users being continuously displayed with important but low-urgency tasks even when stressed, thus failing to alleviate their mental burden. Furthermore, traditional systems also presented problems where staff members were distracted by unnecessary tasks during busy periods, preventing them from focusing on truly important work.

[0300] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0301] In this invention, the server includes means for extracting deadlines from the body of received electronic communications, means for sorting the electronic communications from which the deadlines have been extracted in order of deadline, means for displaying the sorted electronic communications, means for recognizing the user's emotions using an emotion analysis engine, means for dynamically adjusting the priority of the sorted electronic communications based on the user's emotion information, and means for changing the notification method based on the emotion information. This enables the user to efficiently process important tasks while reducing their mental burden.

[0302] "Received electronic communications" refers to all emails and messages that arrive in your inbox.

[0303] "Deadline" refers to the specific deadline date specified in the body of an electronic communication.

[0304] A "regular expression" is a method of representing strings to search for them based on a specific pattern or format.

[0305] An "emotion analysis engine" refers to a system that analyzes a user's emotions in real time through methods such as facial expressions, text input, and voice analysis.

[0306] "Dynamically adjusting the priority" means changing the display order of tasks and emails in real time based on the user's emotional information.

[0307] "Changing the notification method" means adaptively changing the form and timing of notifications according to the user's emotional state.

[0308] The present invention relates to a system that rearranges communications based on the due dates extracted from the text of electronic communications and optimizes task management by recognizing the user's emotions. This system is composed of a server, a terminal, and a user interface.

[0309] System Configuration

[0310] Server

[0311] The server acquires newly arrived electronic communications from the inbox and saves them in a list as mail objects. These mail objects include the subject, the text, and the reception time. The server uses a regular expression to extract the due date from the text of each email. By using the regular expression, a date-formatted string is searched in the email text, and the detected date is set as the due date in the mail object. If the due date is not found, the due date of that email is set to None by default. The list of emails with due dates set is sorted by the server in ascending order of due dates. In the sorting algorithm, datetime.max is set for emails with a due date of None, and all emails are sorted on a consistent basis.

[0312] The server also has an emotion analysis engine for recognizing the user's emotions. This emotion analysis engine analyzes the user's emotions in real time through the user's facial expressions, text input, voice analysis, etc. Based on the emotion information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if the emotion engine determines that the user is feeling very stressed, emails that are important but have a low urgency are temporarily not displayed from the email list.

[0313] terminal

[0314] The device changes how it sends email notifications to the user based on the results of its sentiment analysis engine. For example, if it determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound. The device displays an email list to the user that has been sorted and adjusted by the sentiment analysis engine. The display includes the subject, due date, and received time.

[0315] User interface

[0316] This system allows users to check and address emails in order of urgency and relevance to their situation. This not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management tailored to their emotional state.

[0317] Specific example

[0318] Consider the case where the server receives the following electronic communication:

[0319] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0320] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0321] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0322] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0323] Task A: 2023-10-15

[0324] Task B: 2023-10-12

[0325] Task C: 2023-10-20

[0326] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0327] Task B: Deadline 2023-10-12

[0328] Task A: Deadline 2023-10-15

[0329] Task C: Deadline 2023-10-20

[0330] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, Task C (less urgent emails) will be temporarily removed from the list. Ultimately, this adjusted list is displayed on the device. The user can then review and address the emails in order of urgency and how best they relate to their emotional state.

[0331] Examples of prompts to input into a generative AI model

[0332] Display the following emails based on their emotional state and due date:

[0333] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0334] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0335] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0336] The user's emotion is "relaxed".

[0337] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0338] Step 1:

[0339] The server retrieves newly arrived electronic communications from the inbox. The input is the received electronic communications, and the output is a list of mail objects. Specifically, these mail objects include the subject, body, and time of receipt.

[0340] Step 2:

[0341] The server extracts the closing date from the body of each email. This is done using regular expressions to search for date-formatted strings. The input is the email body, and the output is an email object containing the closing date. Specifically, it extracts the date from the body using regular expressions and sets the extracted date to the email object. If no date is found, the closing date defaults to datetime.max.

[0342] Step 3:

[0343] The server sorts a list of emails with set deadlines in order of deadline. The input is a list of email objects with set deadlines, and the output is a list of email objects sorted in order of deadline. Specifically, it sets datetime.max for emails with a deadline of None and sorts all emails using a unified criterion.

[0344] Step 4:

[0345] The server analyzes the user's emotions in real time using an emotion analysis engine. Inputs include the user's facial expressions, text input, and voice information, while output is the user's emotional state. Specifically, the emotion analysis engine processes this data to identify the user's emotional state.

[0346] Step 5:

[0347] The server dynamically adjusts email priority based on sentiment information. The input is a sorted list of emails and sentiment information, and the output is an adjusted list of emails. Specifically, if a user is experiencing stress, it temporarily removes less urgent emails from the list so they are not displayed.

[0348] Step 6:

[0349] The device changes how it sends email notifications to the user based on their emotional state. The input is emotional information, and the output is the modified notification method. Specifically, if the device determines that the user is relaxed, it will display a normal pop-up notification; if the user is stressed, it will change to a softer notification sound.

[0350] Step 7:

[0351] The device displays a sorted and sentiment-analyzed email list to the user. The input is the sorted email list, and the output is the displayed email list. Specifically, it displays the email subject, due date, and received time in the user interface.

[0352] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0353] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0354] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.

[0355] [Second Embodiment]

[0356] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.

[0357] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0358] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0359] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.

[0360] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[0361] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[0362] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0363] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0364] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0365] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0366] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0367] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".

[0368] This invention relates to a system that sorts emails based on deadlines extracted from the email body, allowing users to review tasks in order of urgency. This system is managed by a server, and information is provided to the user via a terminal.

[0369] System Configuration

[0370] Email extraction method

[0371] The server retrieves newly arrived emails from the inbox. This email information includes the subject, body, and time of receipt. These emails are stored in a list format and used for subsequent processing.

[0372] Method for extracting closing dates

[0373] The server uses regular expressions to extract the closing date from the body of each email. The regular expressions detect strings in the date format (e.g., "2023-10-15") from the body. The extracted date is set to the "Closing Date" attribute of the email object. If the closing date is not included in the body, the closing date for that email is set to None by default (treated as not existing).

[0374] Email sorting methods

[0375] Mail lists with set deadlines are sorted by the server in order of deadline. The sorting algorithm treats mail without a deadline as having the default maximum date (datetime.max). This ensures all mail is sorted appropriately based on its deadline, making it easier to visually assess its urgency.

[0376] Display method of sorting results

[0377] The device displays a sorted list of emails to the user. The user can see the subject, due date, and received time on the screen. This allows the user to check and address task emails in order of their approaching due date.

[0378] Specific example

[0379] Consider the case where the server receives an email like the following:

[0380] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0381] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0382] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0383] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0384] 1. Task A: 2023-10-15

[0385] 2. Task B: 2023-10-12

[0386] 3. Task C: 2023-10-20

[0387] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0388] 1. Task B: Deadline 2023-10-12

[0389] 2. Task A: Deadline 2023-10-15

[0390] 3. Task C: Deadline 2023-10-20

[0391] The device displays this sorted list to the user, allowing them to review and address tasks in order from the most urgent (Task B) to the most urgent.

[0392] Thus, the present invention allows users to prevent missing tasks in received emails and to manage tasks efficiently.

[0393] The following describes the processing flow.

[0394] Step 1:

[0395] The server receives the email.

[0396] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[0397] Step 2:

[0398] The server extracts the closing date from the email body.

[0399] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. If a date is found, it is set as the closing date in the email object. If no closing date is found, the closing date for that email is set to None.

[0400] Step 3:

[0401] The server sorts the emails by closing date.

[0402] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[0403] Step 4:

[0404] The device displays a rearranged email list.

[0405] Specific operation: The terminal receives a sorted list of emails and displays this list to the user. The display includes the subject, due date, and received time.

[0406] Step 5:

[0407] Users check their emails in order of urgency.

[0408] Specific operation: The user refers to the displayed email list and checks and addresses tasks in order, starting with the email with the closest due date. This makes it easier to prevent tasks from being missed.

[0409] (Example 1)

[0410] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0411] Traditional email management systems made it difficult to quickly identify and appropriately respond to urgent emails from a large volume of incoming messages. Furthermore, many users were overwhelmed with daily tasks, frequently missing deadlines. This resulted in delays and errors, making efficient task management challenging.

[0412] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0413] In this invention, the server includes means for automatically acquiring newly arrived electronic data from the user's inbox, means for extracting the deadline from the body of the data using regular expressions, and means for sorting the electronic data, including the deadline, in order of the deadline. This enables the user to quickly identify high-priority tasks and respond to them efficiently.

[0414] "Electronic data" refers to a collection of information processed by a computer system, and specifically includes things like email.

[0415] The "inbox" is a storage area for emails that a user receives.

[0416] A "regular expression" is a method for searching for and extracting strings that match a specific pattern, and is used in text mining and data analysis.

[0417] A "deadline" refers to the final date by which a particular task or project must be completed.

[0418] A "server" is a computer system that provides services to clients via a network, and is responsible for processing, storing, and managing data.

[0419] "Rearranging" means ordering data or objects according to a specific set of criteria.

[0420] "Display" refers to the visual presentation of information on a computer monitor or other device.

[0421] "Maximum date" refers to the latest date that a computer system can handle, and is used as a reference value in timestamps and data management.

[0422] This invention is a system for efficiently managing electronic data arriving in a user's inbox. This system is managed by a server, and information is provided to the user via a terminal.

[0423] First, the server automatically retrieves newly arrived electronic data from the user's inbox. For this process, the server utilizes email service APIs such as the Gmail API or the Microsoft Graph API. This allows the server to retrieve information such as the subject, body, and time of receipt of the received emails and store it in a list format.

[0424] Next, the server uses regular expressions to extract the closing date from the text of each electronic data. This process uses the Python regular expression library (re module). The regular expression detects strings in the date format (e.g., "2023-10-15") within the text. The extracted date is set to the "closing date" attribute within each electronic data object. If the text does not contain a closing date, the closing date attribute of that electronic data is set to None by default.

[0425] Next, the server sorts the electronic data with set deadlines into the order they appear in the list. The `sorted` function from Python's standard library is used for sorting. For electronic data without a deadline, the default maximum date (`datetime.max`) is set, placing it at the end of the list. This ensures that all electronic data is properly sorted based on its deadline.

[0426] Finally, the terminal displays the sorted electronic data provided by the server to the user. For display purposes, information is provided visually on a web page, for example, using HTML and CSS. This allows the user to see the subject, due date, and received time on the screen, enabling them to address tasks in order of their due date.

[0427] Specific example

[0428] Consider the case where the server receives the following electronic data:

[0429] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0430] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0431] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0432] The server extracts each closing date from the text and obtains a list of closing dates as follows:

[0433] 1. Task A: 2023-10-15

[0434] 2. Task B: 2023-10-12

[0435] 3. Task C: 2023-10-20

[0436] Next, the server sorts these electronic data by closing date. As a result, the sorted list looks like this:

[0437] 1. Task B: Deadline 2023-10-12

[0438] 2. Task A: Deadline 2023-10-15

[0439] 3. Task C: Deadline 2023-10-20

[0440] The device displays this sorted list to the user. The user can then review and address tasks in order of urgency, starting with the most urgent task (Task B). This prevents the user from missing tasks in the incoming data and allows for efficient task management.

[0441] Examples of prompts to input into a generative AI model

[0442] "Create a Python program that extracts the date from the body of newly arrived emails in a user's inbox and sorts the emails based on that date. The sorted results should be displayed in order of earliest closing date."

[0443] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0444] Step 1:

[0445] The server automatically retrieves newly arrived electronic data from the user's inbox.

[0446] Specific operation: The server uses email service APIs such as the Gmail API and the Microsoft Graph API. Specifically, it executes messages.list(userId='me',q='is:unread') in the Gmail API to retrieve unread emails.

[0447] Input: User's inbox

[0448] Output: List of newly acquired electronic data (emails)

[0449] Step 2:

[0450] The server uses regular expressions to extract the closing date from the text of each electronic data file.

[0451] Specific operation: The server uses Python's regular expression library (re module) to extract strings in date format (e.g., "2023-10-15") from the body of each email.

[0452] Input: Text of the electronic data

[0453] Output: Electronic data (email) object with a set closing date.

[0454] Step 3:

[0455] The server sorts the list of electronic data with set deadlines in order of deadline.

[0456] Specific operation: The server sorts the list using the `sorted` function from Python's standard library. For electronic data without a closing date, it sets the maximum date (`datetime.max`).

[0457] Input: List of electronic data (emails) with a set closing date.

[0458] Output: Sorted list of electronic data (emails)

[0459] Step 4:

[0460] The terminal displays the sorted electronic data provided by the server to the user.

[0461] Specific operation: The terminal uses HTML and CSS to create a user interface and visually display email information. The user can view the subject, due date, and received time on the screen.

[0462] Input: Sorted list of electronic data (emails)

[0463] Output: Email information displayed on the user screen

[0464] (Application Example 1)

[0465] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0466] In today's work environments, where a large volume of diverse tasks and electronic messages are received daily, it is extremely difficult for managers to properly grasp all tasks and prioritize them according to their urgency. This can lead to important tasks being overlooked or work being delayed. Tasks with deadlines, in particular, are highly urgent, and there is a need for effective management methods for them.

[0467] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0468] In this invention, the server includes means for extracting the closing date from the body of a received electronic message, means for sorting the electronic messages from which the closing dates have been extracted in order of closing date, means for displaying the sorted electronic messages, and display means for allowing the asset manager at the implementation site to check and manage the priority of management tasks in real time. As a result, the manager can immediately grasp the priority of tasks based on the closing date and respond to tasks in order of urgency.

[0469] "Received electronic messages" refer to messages that reach the inbox via the network from the server, and this includes email and other forms of electronic communication.

[0470] "Methods for extracting closing dates" refer to technical elements that identify date data in a specific format from the body of an electronic message and extract it as relevant information to the message.

[0471] The "sorting method" refers to a function that sorts multiple electronic messages based on the extracted closing dates and organizes them in a specified order.

[0472] "Means of display" refers to technical methods for presenting rearranged electronic messages to users through visual interfaces such as screens or displays.

[0473] "Asset manager at the implementation location" refers to an individual or position responsible for monitoring and managing operations at a specific location, such as a physical store or office.

[0474] A "display mechanism that allows for real-time prioritization and management of management tasks" is a display function that enables administrators to instantly identify the most important tasks based on the current work situation and address them accordingly.

[0475] This invention is a system that improves operational efficiency by efficiently managing electronic messages received by store managers and prioritizing them according to their urgency. This system consists of the following main elements:

[0476] 1. Server

[0477] The server receives electronic messages over the network. These messages contain information such as the subject, body, and time of reception. The server stores these messages in a list format and uses them for subsequent processing.

[0478] 2. Method for extracting closing dates

[0479] The server uses a regular expression to extract the closing date from the body of an electronic message. This regular expression detects date-formatted strings (e.g., "2023-10-15") from the body. This extracted date is set as the "Closing Date" attribute of the message object. If the closing date is not included in the body, the closing date for that message is treated as None or the maximum date (datetime.max) by default.

[0480] 3. Message sorting methods

[0481] The server sorts the message list based on the extracted deadline. The sorting algorithm treats messages without a deadline as having the default maximum date. This ensures that all messages are properly sorted based on their deadline, making it easier to visually determine their urgency.

[0482] 4. Means for displaying sorting results

[0483] The sorted message list is displayed on the store manager's terminal. The manager can see the subject, due date, and received time on the screen. This allows them to review and address tasks in order of their due date.

[0484] Hardware and software to be used

[0485] Hardware: Server, smartphone (iOS or Android)

[0486] Software: Python runtime engine, regular expression library (Python's re module), datetime library (Python's datetime module)

[0487] Specific examples of operation

[0488] Provide an application that allows administrators to view and manage electronic message tasks in real time. For example, consider the following message:

[0489] "Delivery Schedule", "Delivery by 2023-10-12", Received 2023-10-09

[0490] "Inventory Check", "Checked by 2023-10-15", Received 2023-10-10

[0491] "Staff Shift", "Updated by 2023-10-20", Received 2023-10-11

[0492] The server retrieves these messages and extracts the respective deadlines from the message bodies. Based on the extracted deadlines, the messages are sorted by urgency. As a result, the earliest deadline, "Delivery Schedule," appears at the top of the list, allowing administrators to prioritize this task.

[0493] Example of a prompt

[0494] An example of an input prompt for a generative AI model is: "Create a program that extracts the closing date from the body of an electronic message and displays a list sorted by closing date."

[0495] Thus, this invention allows managers to immediately grasp the urgency of tasks, prioritize them, and proceed with work efficiently.

[0496] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0497] Step 1:

[0498] The server retrieves electronic messages that arrive in the inbox via the network. The input is the unprocessed electronic messages, and the output is a list of retrieved electronic messages. Specifically, the server accesses the inbox and retrieves new electronic messages, including the subject, body, and time of reception.

[0499] Step 2:

[0500] The server uses regular expressions to extract the closing date from the body of an electronic message. The input is the body of the electronic message, and the output is the extracted closing date. Specifically, the server uses a regular expression library to detect strings in a date format such as "2023-10-15" from the body and sets it as the "closing date" attribute of the message object.

[0501] Step 3:

[0502] The server sorts the electronic messages based on the extracted closing dates. The input is a list of electronic messages with closing dates set, and the output is a list of electronic messages sorted by closing date. Specifically, the server assigns a default maximum date to messages for which no closing date exists, and then sorts all messages based on their closing dates.

[0503] Step 4:

[0504] The terminal displays a sorted list of electronic messages to the user. The input is a sorted list of electronic messages, and the output is a visually displayed list of messages. Specifically, the terminal displays the subject, due date, and received time on the screen, listing them in order of urgency.

[0505] Step 5:

[0506] The user reviews the displayed messages and addresses tasks in order of priority. The input is the displayed electronic messages, and the output is the progress of the tasks as a result of the user's actions. Specifically, the user clicks on the most urgent message on the screen and takes action based on its content.

[0507] This process allows store managers to efficiently manage electronic messages and prioritize them according to their urgency.

[0508] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0509] This invention relates to a system that sorts emails based on deadlines extracted from the email body, recognizes user sentiment, and optimizes task management. The system consists of a server, a terminal, and a user interface.

[0510] System Configuration

[0511] Email extraction method

[0512] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. These mail objects include the subject, body, and time of receipt.

[0513] Method for extracting closing dates

[0514] The server uses regular expressions to extract the closing date from the body of each email. Using regular expressions, it searches for date-formatted strings within the email body and sets the found date as the closing date in the email object. If no closing date is found, the closing date for that email is set to None by default.

[0515] Email sorting methods

[0516] Mail lists with a set deadline are sorted by the deadline by the server. The sorting algorithm sets datetime.max for mail with a deadline of None, ensuring all mail is sorted by a consistent criterion.

[0517] Implementation of an emotion engine

[0518] The server is equipped with an emotion engine to recognize user emotions. This emotion engine analyzes user emotions in real time through methods such as facial expressions, text input, and voice analysis.

[0519] Emotion-based prioritization methods

[0520] The server dynamically adjusts email priorities based on sentiment information obtained from the sentiment engine. For example, if the sentiment engine determines that a user is experiencing high levels of stress, it will temporarily hide important but less urgent emails from the email list.

[0521] How to change the notification method

[0522] The device changes how it sends email notifications to the user based on the results of its emotion engine analysis. For example, if it determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound.

[0523] Display method of sorting results

[0524] The device displays a sorted and sentiment-based email list to the user. The display includes subject, due date, and received time.

[0525] Specific example

[0526] Consider the case where the server receives an email like the following:

[0527] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0528] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0529] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0530] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0531] 1. Task A: 2023-10-15

[0532] 2. Task B: 2023-10-12

[0533] 3. Task C: 2023-10-20

[0534] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0535] 1. Task B: Deadline 2023-10-12

[0536] 2. Task A: Deadline 2023-10-15

[0537] 3. Task C: Deadline 2023-10-20

[0538] This sorted list is dynamically adjusted by the emotion engine. For example, if the user is stressed, Task C (less urgent emails) will be temporarily removed from the list.

[0539] Ultimately, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management according to their emotional state.

[0540] The following describes the processing flow.

[0541] Step 1:

[0542] The server receives the email.

[0543] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[0544] Step 2:

[0545] The server extracts the closing date from the email body.

[0546] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. The found date is set as the closing date for the email object. If no closing date is found, the closing date for that email is set to None.

[0547] Step 3:

[0548] The server sorts the emails by closing date.

[0549] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[0550] Step 4:

[0551] The server recognizes the user's emotions.

[0552] Specific operation: The server uses an emotion engine to collect data such as the user's facial expressions, text input, and voice analysis, and analyzes their emotions in real time. The analysis results provide information about the emotional state the user is currently feeling (e.g., stress, relaxation).

[0553] Step 5:

[0554] The server prioritizes emails based on emotions.

[0555] Specific operation: Based on emotional information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if a user is feeling stressed, it will temporarily remove low-priority emails from the list or lower their priority.

[0556] Step 6:

[0557] The device displays a customized email list.

[0558] Specific operation: The terminal displays a customized email list to the user. The display includes subject, due date, and received time.

[0559] Step 7:

[0560] Users check their emails in order of urgency.

[0561] Specific operation: The user refers to the displayed email list and checks and responds to tasks in order, starting with the email with the closest due date.

[0562] Step 8:

[0563] The device provides emotion-based notification methods.

[0564] Specific operation: The device changes the email notification method based on the results of the emotion engine's analysis. For example, if the system determines that the user is relaxed, it will use a normal notification sound, and if the user is stressed, it will use a softer notification sound.

[0565] (Example 2)

[0566] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".

[0567] Traditional email management systems struggled to efficiently manage the large volume of emails users received, and prioritizing emails based on deadlines was particularly difficult. Furthermore, while there was a need to dynamically adjust email notifications and task priorities based on user emotional states, no system possessed such functionality. Moreover, it was difficult to manage tasks effectively when users were experiencing stress.

[0568] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0569] In this invention, the server includes means for extracting closing dates from the body of received electronic data, means for sorting the electronic data from which closing dates have been extracted in order of closing dates, means for displaying the sorted electronic data, means including an emotion analysis engine for analyzing the user's emotions, means for dynamically adjusting the priority of electronic data based on the emotion analysis results, and means for changing the notification method based on the emotion analysis results. This enables the user to efficiently manage emails and perform optimal task management according to their emotional state.

[0570] "A means of extracting the closing date from the body of received electronic data" refers to a technology that analyzes the body of an email obtained from an email inbox and identifies a closing date in a predefined format.

[0571] "A method for sorting electronic data with extracted closing dates in order of closing date" refers to a technique that sorts email objects based on the extracted closing date information and lists them in order from earliest to latest closing date.

[0572] "Means for displaying sorted electronic data" refers to a technology that displays a sorted email list on a screen so that the user can visually confirm it.

[0573] "Means including an emotion analysis engine for analyzing user emotions" refers to algorithms and systems that analyze the user's emotional state in real time based on data such as facial expressions, voice, and text input.

[0574] "A means of dynamically adjusting the priority of electronic data based on sentiment analysis results" refers to a technology that changes the display order and priority of emails based on user sentiment information obtained from a sentiment analysis engine.

[0575] "Means of changing notification methods based on sentiment analysis results" refers to a technology that dynamically changes email notification methods (e.g., type of notification sound, whether or not a pop-up is displayed) according to the user's emotional state.

[0576] "A method for extracting date and time information from the body of electronic data using regular expressions" refers to a technique that searches for and extracts date information in the body of an email using a defined string pattern (e.g., YYYY-MM-DD format).

[0577] "A method for treating electronic data without a specified closing date as the default maximum date and time" refers to a technology that automatically sets the latest possible date for comparison when an email does not have a specified closing date, thereby enabling consistent sorting of these emails with other emails.

[0578] This invention relates to a system that extracts deadlines from the text of received electronic data, sorts them, and optimizes task management based on the user's emotional state. The main components of the system consist of a server, a terminal, and a user interface, and it operates in the following specific steps.

[0579] Email extraction:

[0580] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. This process uses the IMAP protocol, and the mail object includes the subject, body, and time of receipt.

[0581] Extracting closing dates:

[0582] The server uses regular expressions to extract the closing date from the body of each email. For example, if the body contains "Complete by 2023-10-15", the regular expression "\d{4}-\d{2}-\d{2}" is used to extract "2023-10-15" and add it to the email object as the closing date. If no closing date is found, it defaults to None.

[0583] Sorting emails:

[0584] The server sorts the mail objects based on the extracted closing dates. The sorting is done in order of earliest closing date, and mail with a closing date of None is set to datetime.max and placed at the end of the list.

[0585] Implementation of the emotion analysis engine:

[0586] The server is equipped with an emotion analysis engine to analyze the user's emotions. This emotion analysis engine acquires user emotion data from sources such as the camera, microphone, and text input. For example, if the user is smiling through the camera, the engine will analyze that the user is relaxed.

[0587] Prioritizing based on emotions:

[0588] The server dynamically adjusts the priority of the email list based on emotional information obtained from the emotion engine. If it determines that the user is experiencing stress, lower-priority emails are temporarily removed from the display list.

[0589] Changes to notification methods:

[0590] The device receives emotion analysis results from the server and changes the email notification method according to the emotional state. If it determines that the user is relaxed, it will notify with a normal notification sound; if the user is stressed, it will use a softer notification sound or vibration.

[0591] Display the sorted results:

[0592] The terminal receives a pre-configured mail list from the server and displays it to the user. The displayed information includes the subject, deadline, and time of receipt. For example, a valid mail list might look like this:

[0593] 1. "Task B": Deadline 2023-10-12

[0594] 2. "Task A": Deadline 2023-10-15

[0595] 3. "Task C": Deadline 2023-10-20

[0596] As described above, this system allows users to efficiently manage incoming emails and perform optimal task management according to their emotional state. Furthermore, a concrete example can be displayed as follows:

[0597] Specific example:

[0598] Consider the case where the server receives the following email:

[0599] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0600] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0601] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0602] The server extracts each closing date from the text and obtains the following list:

[0603] 1. "Task A": 2023-10-15

[0604] 2. "Task B": 2023-10-12

[0605] 3. "Task C": 2023-10-20

[0606] Next, the server sorts these emails by closing date. As a result, the sorted list is:

[0607] 1. "Task B": Deadline 2023-10-12

[0608] 2. "Task A": Deadline 2023-10-15

[0609] 3. "Task C": Deadline 2023-10-20

[0610] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, "Task C" (low-priority emails) will be temporarily removed from the list.

[0611] Finally, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention can efficiently and effectively improve the user's task management.

[0612] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0613] Step 1:

[0614] The server retrieves newly arrived emails from the inbox. The input is email data from the mail server, and the output is a list of mail objects (subject, body, and received time). Specifically, it uses the IMAP protocol to retrieve email information and stores each piece of information as a mail object in a list.

[0615] Step 2:

[0616] The server parses the body of each mail object in the list and extracts the closing date using regular expressions. The input is a list of mail objects, and the output is a list of mail objects with the closing date added. Specifically, it extracts the closing date from the mail body using regular expressions such as "\d{4}-\d{2}-\d{2}" and sets it as the closing date for the mail object.

[0617] Step 3:

[0618] The server checks the closing date of all mail objects and sorts them by closing date. The input is a list of mail objects with added closing dates, and the output is the sorted list of mail objects. Specifically, mail with a closing date of None is given datetime.max, and the list is sorted by closing date.

[0619] Step 4:

[0620] The server uses an emotion analysis engine to analyze the user's emotional state. The input is emotional data acquired from sources such as the camera, microphone, and text input, and the output is the user's emotional state. Specifically, the emotion analysis engine analyzes the data in real time to acquire emotional states such as relaxation, stress, and concentration.

[0621] Step 5:

[0622] The server dynamically adjusts email priorities based on sentiment analysis results. The input is a list of email objects with added sentiment status and deadline, and the output is the adjusted list of email objects. Specifically, if it is determined that the user is stressed, adjustments are made such as temporarily removing low-priority emails from the list.

[0623] Step 6:

[0624] The device receives emotion analysis results from the server and changes the notification method. The input is the emotion analysis results and email priority information, and the output is the notification method setting. Specifically, if the user is relaxed, the notification sound is set to normal; if the user is stressed, a softer notification sound or vibration mode is used.

[0625] Step 7:

[0626] The terminal receives a sorted and adjusted mail list from the server and displays it to the user. The input is the adjusted mail object list, and the output is the mail list displayed on the user interface. Specifically, the list, including subject, due date, and received time, is displayed on the screen in a user-friendly format.

[0627] Through these steps, this system can streamline users' email management and provide optimal task management based on their emotional state.

[0628] (Application Example 2)

[0629] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0630] Traditional task management systems, while having features to sort tasks based on email deadlines, lacked the ability to recognize user emotions in real time and dynamically adjust task priorities and notification methods. This resulted in issues such as users being continuously displayed with important but low-urgency tasks even when stressed, thus failing to alleviate their mental burden. Furthermore, traditional systems also presented problems where staff members were distracted by unnecessary tasks during busy periods, preventing them from focusing on truly important work.

[0631] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0632] In this invention, the server includes means for extracting deadlines from the body of received electronic communications, means for sorting the electronic communications from which the deadlines have been extracted in order of deadline, means for displaying the sorted electronic communications, means for recognizing the user's emotions using an emotion analysis engine, means for dynamically adjusting the priority of the sorted electronic communications based on the user's emotion information, and means for changing the notification method based on the emotion information. This enables the user to efficiently process important tasks while reducing their mental burden.

[0633] "Received electronic communications" refers to all emails and messages that arrive in your inbox.

[0634] "Deadline" refers to the specific deadline date specified in the body of an electronic communication.

[0635] A "regular expression" is a method of representing strings to search for them based on a specific pattern or format.

[0636] An "emotion analysis engine" refers to a system that analyzes a user's emotions in real time through methods such as facial expressions, text input, and voice analysis.

[0637] "Dynamic prioritization" means changing the display order of tasks and emails in real time based on the user's sentiment information.

[0638] "Changing notification methods" means adaptively changing the format and timing of notifications according to the user's emotional state.

[0639] This invention relates to a system that sorts communications based on closing dates extracted from the text of electronic communications, recognizes user sentiment, and optimizes task management. This system consists of a server, a terminal, and a user interface.

[0640] System Configuration

[0641] server

[0642] The server retrieves newly arrived electronic communications from the inbox and stores them in a list as mail objects. These mail objects include the subject, body, and time of receipt. The server uses regular expressions to extract the closing date from the body of each mail. Using regular expressions, it searches for date-formatted strings in the mail body and sets the found date as the closing date for the mail object. If no closing date is found, the closing date for that mail is set to None by default. Mail lists with closing dates are sorted by closing date by the server. The sorting algorithm sets datetime.max for mail with a closing date of None, ensuring that all mail is sorted by a consistent criterion.

[0643] The server also features an emotion analysis engine to recognize user emotions. This engine analyzes user emotions in real time through facial expressions, text input, and voice analysis. Based on the emotion information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if the emotion engine determines that a user is experiencing high stress levels, it will temporarily hide important but less urgent emails from the email list.

[0644] terminal

[0645] The device changes how it sends email notifications to the user based on the results of its sentiment analysis engine. For example, if it determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound. The device displays an email list to the user that has been sorted and adjusted by the sentiment analysis engine. The display includes the subject, due date, and received time.

[0646] User interface

[0647] This system allows users to check and address emails in order of urgency and relevance to their situation. This not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management tailored to their emotional state.

[0648] Specific example

[0649] Consider the case where the server receives the following electronic communication:

[0650] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0651] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0652] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0653] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0654] Task A: 2023-10-15

[0655] Task B: 2023-10-12

[0656] Task C: 2023-10-20

[0657] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0658] Task B: Deadline 2023-10-12

[0659] Task A: Deadline 2023-10-15

[0660] Task C: Deadline 2023-10-20

[0661] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, Task C (less urgent emails) will be temporarily removed from the list. Ultimately, this adjusted list is displayed on the device. The user can then review and address the emails in order of urgency and how best they relate to their emotional state.

[0662] Examples of prompts to input into a generative AI model

[0663] Display the following emails based on their emotional state and due date:

[0664] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0665] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0666] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0667] The user's emotion is "relaxed".

[0668] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0669] Step 1:

[0670] The server retrieves newly arrived electronic communications from the inbox. The input is the received electronic communications, and the output is a list of mail objects. Specifically, these mail objects include the subject, body, and time of receipt.

[0671] Step 2:

[0672] The server extracts the closing date from the body of each email. This is done using regular expressions to search for date-formatted strings. The input is the email body, and the output is an email object containing the closing date. Specifically, it extracts the date from the body using regular expressions and sets the extracted date to the email object. If no date is found, the closing date defaults to datetime.max.

[0673] Step 3:

[0674] The server sorts a list of emails with set deadlines in order of deadline. The input is a list of email objects with set deadlines, and the output is a list of email objects sorted in order of deadline. Specifically, it sets datetime.max for emails with a deadline of None and sorts all emails using a unified criterion.

[0675] Step 4:

[0676] The server analyzes the user's emotions in real time using an emotion analysis engine. Inputs include the user's facial expressions, text input, and voice information, while output is the user's emotional state. Specifically, the emotion analysis engine processes this data to identify the user's emotional state.

[0677] Step 5:

[0678] The server dynamically adjusts email priority based on sentiment information. The input is a sorted list of emails and sentiment information, and the output is an adjusted list of emails. Specifically, if a user is experiencing stress, it temporarily removes less urgent emails from the list so they are not displayed.

[0679] Step 6:

[0680] The device changes how it sends email notifications to the user based on their emotional state. The input is emotional information, and the output is the modified notification method. Specifically, if the device determines that the user is relaxed, it will display a normal pop-up notification; if the user is stressed, it will change to a softer notification sound.

[0681] Step 7:

[0682] The device displays a sorted and sentiment-analyzed email list to the user. The input is the sorted email list, and the output is the displayed email list. Specifically, it displays the email subject, due date, and received time in the user interface.

[0683] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[0684] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0685] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.

[0686] [Third Embodiment]

[0687] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.

[0688] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.

[0689] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0690] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.

[0691] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[0692] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[0693] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0694] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0695] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0696] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0697] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0698] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".

[0699] This invention relates to a system that sorts emails based on deadlines extracted from the email body, allowing users to review tasks in order of urgency. This system is managed by a server, and information is provided to the user via a terminal.

[0700] System Configuration

[0701] Email extraction method

[0702] The server retrieves newly arrived emails from the inbox. This email information includes the subject, body, and time of receipt. These emails are stored in a list format and used for subsequent processing.

[0703] Method for extracting closing dates

[0704] The server uses regular expressions to extract the closing date from the body of each email. The regular expressions detect strings in the date format (e.g., "2023-10-15") from the body. The extracted date is set to the "Closing Date" attribute of the email object. If the closing date is not included in the body, the closing date for that email is set to None by default (treated as not existing).

[0705] Email sorting methods

[0706] Mail lists with set deadlines are sorted by the server in order of deadline. The sorting algorithm treats mail without a deadline as having the default maximum date (datetime.max). This ensures all mail is sorted appropriately based on its deadline, making it easier to visually assess its urgency.

[0707] Display method of sorting results

[0708] The device displays a sorted list of emails to the user. The user can see the subject, due date, and received time on the screen. This allows the user to check and address task emails in order of their approaching due date.

[0709] Specific example

[0710] Consider the case where the server receives an email like the following:

[0711] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0712] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0713] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0714] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0715] 1. Task A: 2023-10-15

[0716] 2. Task B: 2023-10-12

[0717] 3. Task C: 2023-10-20

[0718] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0719] 1. Task B: Deadline 2023-10-12

[0720] 2. Task A: Deadline 2023-10-15

[0721] 3. Task C: Deadline 2023-10-20

[0722] The device displays this sorted list to the user, allowing them to review and address tasks in order from the most urgent (Task B) to the most urgent.

[0723] Thus, the present invention allows users to prevent missing tasks in received emails and to manage tasks efficiently.

[0724] The following describes the processing flow.

[0725] Step 1:

[0726] The server receives the email.

[0727] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[0728] Step 2:

[0729] The server extracts the closing date from the email body.

[0730] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. If a date is found, it is set as the closing date in the email object. If no closing date is found, the closing date for that email is set to None.

[0731] Step 3:

[0732] The server sorts the emails by closing date.

[0733] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[0734] Step 4:

[0735] The device displays a rearranged email list.

[0736] Specific operation: The terminal receives a sorted list of emails and displays this list to the user. The display includes the subject, due date, and received time.

[0737] Step 5:

[0738] Users check their emails in order of urgency.

[0739] Specific operation: The user refers to the displayed email list and checks and addresses tasks in order, starting with the email with the closest due date. This makes it easier to prevent tasks from being missed.

[0740] (Example 1)

[0741] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[0742] Traditional email management systems made it difficult to quickly identify and appropriately respond to urgent emails from a large volume of incoming messages. Furthermore, many users were overwhelmed with daily tasks, frequently missing deadlines. This resulted in delays and errors, making efficient task management challenging.

[0743] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0744] In this invention, the server includes means for automatically acquiring newly arrived electronic data from the user's inbox, means for extracting the deadline from the body of the data using regular expressions, and means for sorting the electronic data, including the deadline, in order of the deadline. This enables the user to quickly identify high-priority tasks and respond to them efficiently.

[0745] "Electronic data" refers to a collection of information processed by a computer system, and specifically includes things like email.

[0746] The "inbox" is a storage area for emails that a user receives.

[0747] A "regular expression" is a method for searching for and extracting strings that match a specific pattern, and is used in text mining and data analysis.

[0748] A "deadline" refers to the final date by which a particular task or project must be completed.

[0749] A "server" is a computer system that provides services to clients via a network, and is responsible for processing, storing, and managing data.

[0750] "Rearranging" means ordering data or objects according to a specific set of criteria.

[0751] "Display" refers to the visual presentation of information on a computer monitor or other device.

[0752] "Maximum date" refers to the latest date that a computer system can handle, and is used as a reference value in timestamps and data management.

[0753] This invention is a system for efficiently managing electronic data arriving in a user's inbox. This system is managed by a server, and information is provided to the user via a terminal.

[0754] First, the server automatically retrieves newly arrived electronic data from the user's inbox. For this process, the server utilizes email service APIs such as the Gmail API or the Microsoft Graph API. This allows the server to retrieve information such as the subject, body, and time of receipt of the received emails and store it in a list format.

[0755] Next, the server uses regular expressions to extract the closing date from the text of each electronic data. This process uses the Python regular expression library (re module). The regular expression detects strings in the date format (e.g., "2023-10-15") within the text. The extracted date is set to the "closing date" attribute within each electronic data object. If the text does not contain a closing date, the closing date attribute of that electronic data is set to None by default.

[0756] Next, the server sorts the electronic data with set deadlines into the order they appear in the list. The `sorted` function from Python's standard library is used for sorting. For electronic data without a deadline, the default maximum date (`datetime.max`) is set, placing it at the end of the list. This ensures that all electronic data is properly sorted based on its deadline.

[0757] Finally, the terminal displays the sorted electronic data provided by the server to the user. For display purposes, information is provided visually on a web page, for example, using HTML and CSS. This allows the user to see the subject, due date, and received time on the screen, enabling them to address tasks in order of their due date.

[0758] Specific example

[0759] Consider the case where the server receives the following electronic data:

[0760] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0761] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0762] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0763] The server extracts each closing date from the text and obtains a list of closing dates as follows:

[0764] 1. Task A: 2023-10-15

[0765] 2. Task B: 2023-10-12

[0766] 3. Task C: 2023-10-20

[0767] Next, the server sorts these electronic data by closing date. As a result, the sorted list looks like this:

[0768] 1. Task B: Deadline 2023-10-12

[0769] 2. Task A: Deadline 2023-10-15

[0770] 3. Task C: Deadline 2023-10-20

[0771] The device displays this sorted list to the user. The user can then review and address tasks in order of urgency, starting with the most urgent task (Task B). This prevents the user from missing tasks in the incoming data and allows for efficient task management.

[0772] Examples of prompts to input into a generative AI model

[0773] "Create a Python program that extracts the date from the body of newly arrived emails in a user's inbox and sorts the emails based on that date. The sorted results should be displayed in order of earliest closing date."

[0774] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0775] Step 1:

[0776] The server automatically retrieves newly arrived electronic data from the user's inbox.

[0777] Specific operation: The server uses email service APIs such as the Gmail API and the Microsoft Graph API. Specifically, it executes messages.list(userId='me',q='is:unread') in the Gmail API to retrieve unread emails.

[0778] Input: User's inbox

[0779] Output: List of newly acquired electronic data (emails)

[0780] Step 2:

[0781] The server uses regular expressions to extract the closing date from the text of each electronic data file.

[0782] Specific operation: The server uses Python's regular expression library (re module) to extract strings in date format (e.g., "2023-10-15") from the body of each email.

[0783] Input: Text of the electronic data

[0784] Output: Electronic data (email) object with a set closing date.

[0785] Step 3:

[0786] The server sorts the list of electronic data with set deadlines in order of deadline.

[0787] Specific operation: The server sorts the list using the `sorted` function from Python's standard library. For electronic data without a closing date, it sets the maximum date (`datetime.max`).

[0788] Input: List of electronic data (emails) with a set closing date.

[0789] Output: Sorted list of electronic data (emails)

[0790] Step 4:

[0791] The terminal displays the sorted electronic data provided by the server to the user.

[0792] Specific operation: The terminal uses HTML and CSS to create a user interface and visually display email information. The user can view the subject, due date, and received time on the screen.

[0793] Input: Sorted list of electronic data (emails)

[0794] Output: Email information displayed on the user screen

[0795] (Application Example 1)

[0796] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[0797] In today's work environments, where a large volume of diverse tasks and electronic messages are received daily, it is extremely difficult for managers to properly grasp all tasks and prioritize them according to their urgency. This can lead to important tasks being overlooked or work being delayed. Tasks with deadlines, in particular, are highly urgent, and there is a need for effective management methods for them.

[0798] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0799] In this invention, the server includes means for extracting the closing date from the body of a received electronic message, means for sorting the electronic messages from which the closing dates have been extracted in order of closing date, means for displaying the sorted electronic messages, and display means for allowing the asset manager at the implementation site to check and manage the priority of management tasks in real time. As a result, the manager can immediately grasp the priority of tasks based on the closing date and respond to tasks in order of urgency.

[0800] "Received electronic messages" refer to messages that reach the inbox via the network from the server, and this includes email and other forms of electronic communication.

[0801] "Methods for extracting closing dates" refer to technical elements that identify date data in a specific format from the body of an electronic message and extract it as relevant information to the message.

[0802] The "sorting method" refers to a function that sorts multiple electronic messages based on the extracted closing dates and organizes them in a specified order.

[0803] "Means of display" refers to technical methods for presenting rearranged electronic messages to users through visual interfaces such as screens or displays.

[0804] "Asset manager at the implementation location" refers to an individual or position responsible for monitoring and managing operations at a specific location, such as a physical store or office.

[0805] A "display mechanism that allows for real-time prioritization and management of management tasks" is a display function that enables administrators to instantly identify the most important tasks based on the current work situation and address them accordingly.

[0806] This invention is a system that improves operational efficiency by efficiently managing electronic messages received by store managers and prioritizing them according to their urgency. This system consists of the following main elements:

[0807] 1. Server

[0808] The server receives electronic messages over the network. These messages contain information such as the subject, body, and time of reception. The server stores these messages in a list format and uses them for subsequent processing.

[0809] 2. Method for extracting closing dates

[0810] The server uses a regular expression to extract the closing date from the body of an electronic message. This regular expression detects date-formatted strings (e.g., "2023-10-15") from the body. This extracted date is set as the "Closing Date" attribute of the message object. If the closing date is not included in the body, the closing date for that message is treated as None or the maximum date (datetime.max) by default.

[0811] 3. Message sorting methods

[0812] The server sorts the message list based on the extracted deadline. The sorting algorithm treats messages without a deadline as having the default maximum date. This ensures that all messages are properly sorted based on their deadline, making it easier to visually determine their urgency.

[0813] 4. Means for displaying sorting results

[0814] The sorted message list is displayed on the store manager's terminal. The manager can see the subject, due date, and received time on the screen. This allows them to review and address tasks in order of their due date.

[0815] Hardware and software to be used

[0816] Hardware: Server, smartphone (iOS or Android)

[0817] Software: Python runtime engine, regular expression library (Python's re module), datetime library (Python's datetime module)

[0818] Specific examples of operation

[0819] Provide an application that allows administrators to view and manage electronic message tasks in real time. For example, consider the following message:

[0820] "Delivery Schedule", "Delivery by 2023-10-12", Received 2023-10-09

[0821] "Inventory Check", "Checked by 2023-10-15", Received 2023-10-10

[0822] "Staff Shift", "Updated by 2023-10-20", Received 2023-10-11

[0823] The server retrieves these messages and extracts the respective deadlines from the message bodies. Based on the extracted deadlines, the messages are sorted by urgency. As a result, the earliest deadline, "Delivery Schedule," appears at the top of the list, allowing administrators to prioritize this task.

[0824] Example of a prompt

[0825] An example of an input prompt for a generative AI model is: "Create a program that extracts the closing date from the body of an electronic message and displays a list sorted by closing date."

[0826] Thus, this invention allows managers to immediately grasp the urgency of tasks, prioritize them, and proceed with work efficiently.

[0827] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0828] Step 1:

[0829] The server retrieves electronic messages that arrive in the inbox via the network. The input is the unprocessed electronic messages, and the output is a list of retrieved electronic messages. Specifically, the server accesses the inbox and retrieves new electronic messages, including the subject, body, and time of reception.

[0830] Step 2:

[0831] The server uses regular expressions to extract the closing date from the body of an electronic message. The input is the body of the electronic message, and the output is the extracted closing date. Specifically, the server uses a regular expression library to detect strings in a date format such as "2023-10-15" from the body and sets it as the "closing date" attribute of the message object.

[0832] Step 3:

[0833] The server sorts the electronic messages based on the extracted closing dates. The input is a list of electronic messages with closing dates set, and the output is a list of electronic messages sorted by closing date. Specifically, the server assigns a default maximum date to messages for which no closing date exists, and then sorts all messages based on their closing dates.

[0834] Step 4:

[0835] The terminal displays a sorted list of electronic messages to the user. The input is a sorted list of electronic messages, and the output is a visually displayed list of messages. Specifically, the terminal displays the subject, due date, and received time on the screen, listing them in order of urgency.

[0836] Step 5:

[0837] The user reviews the displayed messages and addresses tasks in order of priority. The input is the displayed electronic messages, and the output is the progress of the tasks as a result of the user's actions. Specifically, the user clicks on the most urgent message on the screen and takes action based on its content.

[0838] This process allows store managers to efficiently manage electronic messages and prioritize them according to their urgency.

[0839] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0840] This invention relates to a system that sorts emails based on deadlines extracted from the email body, recognizes user sentiment, and optimizes task management. The system consists of a server, a terminal, and a user interface.

[0841] System Configuration

[0842] Email extraction method

[0843] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. These mail objects include the subject, body, and time of receipt.

[0844] Method for extracting closing dates

[0845] The server uses regular expressions to extract the closing date from the body of each email. Using regular expressions, it searches for date-formatted strings within the email body and sets the found date as the closing date in the email object. If no closing date is found, the closing date for that email is set to None by default.

[0846] Email sorting methods

[0847] Mail lists with a set deadline are sorted by the deadline by the server. The sorting algorithm sets datetime.max for mail with a deadline of None, ensuring all mail is sorted by a consistent criterion.

[0848] Implementation of an emotion engine

[0849] The server is equipped with an emotion engine to recognize user emotions. This emotion engine analyzes user emotions in real time through methods such as facial expressions, text input, and voice analysis.

[0850] Emotion-based prioritization methods

[0851] The server dynamically adjusts email priorities based on sentiment information obtained from the sentiment engine. For example, if the sentiment engine determines that a user is experiencing high levels of stress, it will temporarily hide important but less urgent emails from the email list.

[0852] How to change the notification method

[0853] The device changes how it sends email notifications to the user based on the results of its emotion engine analysis. For example, if it determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound.

[0854] Display method of sorting results

[0855] The device displays a sorted and sentiment-based email list to the user. The display includes subject, due date, and received time.

[0856] Specific example

[0857] Consider the case where the server receives an email like the following:

[0858] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0859] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0860] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0861] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0862] 1. Task A: 2023-10-15

[0863] 2. Task B: 2023-10-12

[0864] 3. Task C: 2023-10-20

[0865] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0866] 1. Task B: Deadline 2023-10-12

[0867] 2. Task A: Deadline 2023-10-15

[0868] 3. Task C: Deadline 2023-10-20

[0869] This sorted list is dynamically adjusted by the emotion engine. For example, if the user is stressed, Task C (less urgent emails) will be temporarily removed from the list.

[0870] Ultimately, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management according to their emotional state.

[0871] The following describes the processing flow.

[0872] Step 1:

[0873] The server receives the email.

[0874] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[0875] Step 2:

[0876] The server extracts the closing date from the email body.

[0877] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. The found date is set as the closing date for the email object. If no closing date is found, the closing date for that email is set to None.

[0878] Step 3:

[0879] The server sorts the emails by closing date.

[0880] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[0881] Step 4:

[0882] The server recognizes the user's emotions.

[0883] Specific operation: The server uses an emotion engine to collect data such as the user's facial expressions, text input, and voice analysis, and analyzes their emotions in real time. The analysis results provide information about the emotional state the user is currently feeling (e.g., stress, relaxation).

[0884] Step 5:

[0885] The server prioritizes emails based on emotions.

[0886] Specific operation: Based on emotional information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if a user is feeling stressed, it will temporarily remove low-priority emails from the list or lower their priority.

[0887] Step 6:

[0888] The device displays a customized email list.

[0889] Specific operation: The terminal displays a customized email list to the user. The display includes subject, due date, and received time.

[0890] Step 7:

[0891] Users check their emails in order of urgency.

[0892] Specific operation: The user refers to the displayed email list and checks and responds to tasks in order, starting with the email with the closest due date.

[0893] Step 8:

[0894] The device provides emotion-based notification methods.

[0895] Specific operation: The device changes the email notification method based on the results of the emotion engine's analysis. For example, if the system determines that the user is relaxed, it will use a normal notification sound, and if the user is stressed, it will use a softer notification sound.

[0896] (Example 2)

[0897] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[0898] Traditional email management systems struggled to efficiently manage the large volume of emails users received, and prioritizing emails based on deadlines was particularly difficult. Furthermore, while there was a need to dynamically adjust email notifications and task priorities based on user emotional states, no system possessed such functionality. Moreover, it was difficult to manage tasks effectively when users were experiencing stress.

[0899] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0900] In this invention, the server includes means for extracting closing dates from the body of received electronic data, means for sorting the electronic data from which closing dates have been extracted in order of closing dates, means for displaying the sorted electronic data, means including an emotion analysis engine for analyzing the user's emotions, means for dynamically adjusting the priority of electronic data based on the emotion analysis results, and means for changing the notification method based on the emotion analysis results. This enables the user to efficiently manage emails and perform optimal task management according to their emotional state.

[0901] "A means of extracting the closing date from the body of received electronic data" refers to a technology that analyzes the body of an email obtained from an email inbox and identifies a closing date in a predefined format.

[0902] "A method for sorting electronic data with extracted closing dates in order of closing date" refers to a technique that sorts email objects based on the extracted closing date information and lists them in order from earliest to latest closing date.

[0903] "Means for displaying sorted electronic data" refers to a technology that displays a sorted email list on a screen so that the user can visually confirm it.

[0904] "Means including an emotion analysis engine for analyzing user emotions" refers to algorithms and systems that analyze the user's emotional state in real time based on data such as facial expressions, voice, and text input.

[0905] "A means of dynamically adjusting the priority of electronic data based on sentiment analysis results" refers to a technology that changes the display order and priority of emails based on user sentiment information obtained from a sentiment analysis engine.

[0906] "Means of changing notification methods based on sentiment analysis results" refers to a technology that dynamically changes email notification methods (e.g., type of notification sound, whether or not a pop-up is displayed) according to the user's emotional state.

[0907] "A method for extracting date and time information from the body of electronic data using regular expressions" refers to a technique that searches for and extracts date information in the body of an email using a defined string pattern (e.g., YYYY-MM-DD format).

[0908] "A method for treating electronic data without a specified closing date as the default maximum date and time" refers to a technology that automatically sets the latest possible date for comparison when an email does not have a specified closing date, thereby enabling consistent sorting of these emails with other emails.

[0909] This invention relates to a system that extracts deadlines from the text of received electronic data, sorts them, and optimizes task management based on the user's emotional state. The main components of the system consist of a server, a terminal, and a user interface, and it operates in the following specific steps.

[0910] Email extraction:

[0911] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. This process uses the IMAP protocol, and the mail object includes the subject, body, and time of receipt.

[0912] Extracting closing dates:

[0913] The server uses regular expressions to extract the closing date from the body of each email. For example, if the body contains "Complete by 2023-10-15", the regular expression "\d{4}-\d{2}-\d{2}" is used to extract "2023-10-15" and add it to the email object as the closing date. If no closing date is found, it defaults to None.

[0914] Sorting emails:

[0915] The server sorts the mail objects based on the extracted closing dates. The sorting is done in order of earliest closing date, and mail with a closing date of None is set to datetime.max and placed at the end of the list.

[0916] Implementation of the emotion analysis engine:

[0917] The server is equipped with an emotion analysis engine to analyze the user's emotions. This emotion analysis engine acquires user emotion data from sources such as the camera, microphone, and text input. For example, if the user is smiling through the camera, the engine will analyze that the user is relaxed.

[0918] Prioritizing based on emotions:

[0919] The server dynamically adjusts the priority of the email list based on emotional information obtained from the emotion engine. If it determines that the user is experiencing stress, lower-priority emails are temporarily removed from the display list.

[0920] Changes to notification methods:

[0921] The device receives emotion analysis results from the server and changes the email notification method according to the emotional state. If it determines that the user is relaxed, it will notify with a normal notification sound; if the user is stressed, it will use a softer notification sound or vibration.

[0922] Display the sorted results:

[0923] The terminal receives a pre-configured mail list from the server and displays it to the user. The displayed information includes the subject, deadline, and time of receipt. For example, a valid mail list might look like this:

[0924] 1. "Task B": Deadline 2023-10-12

[0925] 2. "Task A": Deadline 2023-10-15

[0926] 3. "Task C": Deadline 2023-10-20

[0927] As described above, this system allows users to efficiently manage incoming emails and perform optimal task management according to their emotional state. Furthermore, a concrete example can be displayed as follows:

[0928] Specific example:

[0929] Consider the case where the server receives the following email:

[0930] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0931] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0932] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0933] The server extracts each closing date from the text and obtains the following list:

[0934] 1. "Task A": 2023-10-15

[0935] 2. "Task B": 2023-10-12

[0936] 3. "Task C": 2023-10-20

[0937] Next, the server sorts these emails by closing date. As a result, the sorted list is:

[0938] 1. "Task B": Deadline 2023-10-12

[0939] 2. "Task A": Deadline 2023-10-15

[0940] 3. "Task C": Deadline 2023-10-20

[0941] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, "Task C" (low-priority emails) will be temporarily removed from the list.

[0942] Finally, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention can efficiently and effectively improve the user's task management.

[0943] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0944] Step 1:

[0945] The server retrieves newly arrived emails from the inbox. The input is email data from the mail server, and the output is a list of mail objects (subject, body, and received time). Specifically, it uses the IMAP protocol to retrieve email information and stores each piece of information as a mail object in a list.

[0946] Step 2:

[0947] The server parses the body of each mail object in the list and extracts the closing date using regular expressions. The input is a list of mail objects, and the output is a list of mail objects with the closing date added. Specifically, it extracts the closing date from the mail body using regular expressions such as "\d{4}-\d{2}-\d{2}" and sets it as the closing date for the mail object.

[0948] Step 3:

[0949] The server checks the closing date of all mail objects and sorts them by closing date. The input is a list of mail objects with added closing dates, and the output is the sorted list of mail objects. Specifically, mail with a closing date of None is given datetime.max, and the list is sorted by closing date.

[0950] Step 4:

[0951] The server uses an emotion analysis engine to analyze the user's emotional state. The input is emotional data acquired from sources such as the camera, microphone, and text input, and the output is the user's emotional state. Specifically, the emotion analysis engine analyzes the data in real time to acquire emotional states such as relaxation, stress, and concentration.

[0952] Step 5:

[0953] The server dynamically adjusts email priorities based on sentiment analysis results. The input is a list of email objects with added sentiment status and deadline, and the output is the adjusted list of email objects. Specifically, if it is determined that the user is stressed, adjustments are made such as temporarily removing low-priority emails from the list.

[0954] Step 6:

[0955] The device receives emotion analysis results from the server and changes the notification method. The input is the emotion analysis results and email priority information, and the output is the notification method setting. Specifically, if the user is relaxed, the notification sound is set to normal; if the user is stressed, a softer notification sound or vibration mode is used.

[0956] Step 7:

[0957] The terminal receives a sorted and adjusted mail list from the server and displays it to the user. The input is the adjusted mail object list, and the output is the mail list displayed on the user interface. Specifically, the list, including subject, due date, and received time, is displayed on the screen in a user-friendly format.

[0958] Through these steps, this system can streamline users' email management and provide optimal task management based on their emotional state.

[0959] (Application Example 2)

[0960] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."

[0961] Traditional task management systems, while having features to sort tasks based on email deadlines, lacked the ability to recognize user emotions in real time and dynamically adjust task priorities and notification methods. This resulted in issues such as users being continuously displayed with important but low-urgency tasks even when stressed, thus failing to alleviate their mental burden. Furthermore, traditional systems also presented problems where staff members were distracted by unnecessary tasks during busy periods, preventing them from focusing on truly important work.

[0962] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0963] In this invention, the server includes means for extracting deadlines from the body of received electronic communications, means for sorting the electronic communications from which the deadlines have been extracted in order of deadline, means for displaying the sorted electronic communications, means for recognizing the user's emotions using an emotion analysis engine, means for dynamically adjusting the priority of the sorted electronic communications based on the user's emotion information, and means for changing the notification method based on the emotion information. This enables the user to efficiently process important tasks while reducing their mental burden.

[0964] "Received electronic communications" refers to all emails and messages that arrive in your inbox.

[0965] "Deadline" refers to the specific deadline date specified in the body of an electronic communication.

[0966] A "regular expression" is a method of representing strings to search for them based on a specific pattern or format.

[0967] An "emotion analysis engine" refers to a system that analyzes a user's emotions in real time through methods such as facial expressions, text input, and voice analysis.

[0968] "Dynamic prioritization" means changing the display order of tasks and emails in real time based on the user's sentiment information.

[0969] "Changing notification methods" means adaptively changing the format and timing of notifications according to the user's emotional state.

[0970] This invention relates to a system that sorts communications based on closing dates extracted from the text of electronic communications, recognizes user sentiment, and optimizes task management. This system consists of a server, a terminal, and a user interface.

[0971] System Configuration

[0972] server

[0973] The server retrieves newly arrived electronic communications from the inbox and stores them in a list as mail objects. These mail objects include the subject, body, and time of receipt. The server uses regular expressions to extract the closing date from the body of each mail. Using regular expressions, it searches for date-formatted strings in the mail body and sets the found date as the closing date for the mail object. If no closing date is found, the closing date for that mail is set to None by default. Mail lists with closing dates are sorted by closing date by the server. The sorting algorithm sets datetime.max for mail with a closing date of None, ensuring that all mail is sorted by a consistent criterion.

[0974] The server also features an emotion analysis engine to recognize user emotions. This engine analyzes user emotions in real time through facial expressions, text input, and voice analysis. Based on the emotion information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if the emotion engine determines that a user is experiencing high stress levels, it will temporarily hide important but less urgent emails from the email list.

[0975] terminal

[0976] The device changes how it sends email notifications to the user based on the results of its sentiment analysis engine. For example, if it determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound. The device displays an email list to the user that has been sorted and adjusted by the sentiment analysis engine. The display includes the subject, due date, and received time.

[0977] User interface

[0978] This system allows users to check and address emails in order of urgency and relevance to their situation. This not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management tailored to their emotional state.

[0979] Specific example

[0980] Consider the case where the server receives the following electronic communication:

[0981] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0982] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0983] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0984] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[0985] Task A: 2023-10-15

[0986] Task B: 2023-10-12

[0987] Task C: 2023-10-20

[0988] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[0989] Task B: Deadline 2023-10-12

[0990] Task A: Deadline 2023-10-15

[0991] Task C: Deadline 2023-10-20

[0992] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, Task C (less urgent emails) will be temporarily removed from the list. Ultimately, this adjusted list is displayed on the device. The user can then review and address the emails in order of urgency and how best they relate to their emotional state.

[0993] Examples of prompts to input into a generative AI model

[0994] Display the following emails based on their emotional state and due date:

[0995] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[0996] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[0997] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[0998] The user's emotion is "relaxed".

[0999] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[1000] Step 1:

[1001] The server retrieves newly arrived electronic communications from the inbox. The input is the received electronic communications, and the output is a list of mail objects. Specifically, these mail objects include the subject, body, and time of receipt.

[1002] Step 2:

[1003] The server extracts the closing date from the body of each email. This is done using regular expressions to search for date-formatted strings. The input is the email body, and the output is an email object containing the closing date. Specifically, it extracts the date from the body using regular expressions and sets the extracted date to the email object. If no date is found, the closing date defaults to datetime.max.

[1004] Step 3:

[1005] The server sorts a list of emails with set deadlines in order of deadline. The input is a list of email objects with set deadlines, and the output is a list of email objects sorted in order of deadline. Specifically, it sets datetime.max for emails with a deadline of None and sorts all emails using a unified criterion.

[1006] Step 4:

[1007] The server analyzes the user's emotions in real time using an emotion analysis engine. Inputs include the user's facial expressions, text input, and voice information, while output is the user's emotional state. Specifically, the emotion analysis engine processes this data to identify the user's emotional state.

[1008] Step 5:

[1009] The server dynamically adjusts email priority based on sentiment information. The input is a sorted list of emails and sentiment information, and the output is an adjusted list of emails. Specifically, if a user is experiencing stress, it temporarily removes less urgent emails from the list so they are not displayed.

[1010] Step 6:

[1011] The device changes how it sends email notifications to the user based on their emotional state. The input is emotional information, and the output is the modified notification method. Specifically, if the device determines that the user is relaxed, it will display a normal pop-up notification; if the user is stressed, it will change to a softer notification sound.

[1012] Step 7:

[1013] The device displays a sorted and sentiment-analyzed email list to the user. The input is the sorted email list, and the output is the displayed email list. Specifically, it displays the email subject, due date, and received time in the user interface.

[1014] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[1015] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1016] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.

[1017] [Fourth Embodiment]

[1018] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.

[1019] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[1020] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1021] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.

[1022] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[1023] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[1024] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[1025] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.

[1026] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[1027] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1028] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1029] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[1030] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1031] This invention relates to a system that sorts emails based on deadlines extracted from the email body, allowing users to review tasks in order of urgency. This system is managed by a server, and information is provided to the user via a terminal.

[1032] System Configuration

[1033] Email extraction method

[1034] The server retrieves newly arrived emails from the inbox. This email information includes the subject, body, and time of receipt. These emails are stored in a list format and used for subsequent processing.

[1035] Method for extracting closing dates

[1036] The server uses regular expressions to extract the closing date from the body of each email. The regular expressions detect strings in the date format (e.g., "2023-10-15") from the body. The extracted date is set to the "Closing Date" attribute of the email object. If the closing date is not included in the body, the closing date for that email is set to None by default (treated as not existing).

[1037] Email sorting methods

[1038] Mail lists with set deadlines are sorted by the server in order of deadline. The sorting algorithm treats mail without a deadline as having the default maximum date (datetime.max). This ensures all mail is sorted appropriately based on its deadline, making it easier to visually assess its urgency.

[1039] Display method of sorting results

[1040] The device displays a sorted list of emails to the user. The user can see the subject, due date, and received time on the screen. This allows the user to check and address task emails in order of their approaching due date.

[1041] Specific example

[1042] Consider the case where the server receives an email like the following:

[1043] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[1044] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[1045] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[1046] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[1047] 1. Task A: 2023-10-15

[1048] 2. Task B: 2023-10-12

[1049] 3. Task C: 2023-10-20

[1050] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[1051] 1. Task B: Deadline 2023-10-12

[1052] 2. Task A: Deadline 2023-10-15

[1053] 3. Task C: Deadline 2023-10-20

[1054] The device displays this sorted list to the user, allowing them to review and address tasks in order from the most urgent (Task B) to the most urgent.

[1055] Thus, the present invention allows users to prevent missing tasks in received emails and to manage tasks efficiently.

[1056] The following describes the processing flow.

[1057] Step 1:

[1058] The server receives the email.

[1059] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[1060] Step 2:

[1061] The server extracts the closing date from the email body.

[1062] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. If a date is found, it is set as the closing date in the email object. If no closing date is found, the closing date for that email is set to None.

[1063] Step 3:

[1064] The server sorts the emails by closing date.

[1065] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[1066] Step 4:

[1067] The device displays a rearranged email list.

[1068] Specific operation: The terminal receives a sorted list of emails and displays this list to the user. The display includes the subject, due date, and received time.

[1069] Step 5:

[1070] Users check their emails in order of urgency.

[1071] Specific operation: The user refers to the displayed email list and checks and addresses tasks in order, starting with the email with the closest due date. This makes it easier to prevent tasks from being missed.

[1072] (Example 1)

[1073] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1074] Traditional email management systems made it difficult to quickly identify and appropriately respond to urgent emails from a large volume of incoming messages. Furthermore, many users were overwhelmed with daily tasks, frequently missing deadlines. This resulted in delays and errors, making efficient task management challenging.

[1075] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[1076] In this invention, the server includes means for automatically acquiring newly arrived electronic data from the user's inbox, means for extracting the deadline from the body of the data using regular expressions, and means for sorting the electronic data, including the deadline, in order of the deadline. This enables the user to quickly identify high-priority tasks and respond to them efficiently.

[1077] "Electronic data" refers to a collection of information processed by a computer system, and specifically includes things like email.

[1078] The "inbox" is a storage area for emails that a user receives.

[1079] A "regular expression" is a method for searching for and extracting strings that match a specific pattern, and is used in text mining and data analysis.

[1080] A "deadline" refers to the final date by which a particular task or project must be completed.

[1081] A "server" is a computer system that provides services to clients via a network, and is responsible for processing, storing, and managing data.

[1082] "Rearranging" means ordering data or objects according to a specific set of criteria.

[1083] "Display" refers to the visual presentation of information on a computer monitor or other device.

[1084] "Maximum date" refers to the latest date that a computer system can handle, and is used as a reference value in timestamps and data management.

[1085] This invention is a system for efficiently managing electronic data arriving in a user's inbox. This system is managed by a server, and information is provided to the user via a terminal.

[1086] First, the server automatically retrieves newly arrived electronic data from the user's inbox. For this process, the server utilizes email service APIs such as the Gmail API or the Microsoft Graph API. This allows the server to retrieve information such as the subject, body, and time of receipt of the received emails and store it in a list format.

[1087] Next, the server uses regular expressions to extract the closing date from the text of each electronic data. This process uses the Python regular expression library (re module). The regular expression detects strings in the date format (e.g., "2023-10-15") within the text. The extracted date is set to the "closing date" attribute within each electronic data object. If the text does not contain a closing date, the closing date attribute of that electronic data is set to None by default.

[1088] Next, the server sorts the electronic data with set deadlines into the order they appear in the list. The `sorted` function from Python's standard library is used for sorting. For electronic data without a deadline, the default maximum date (`datetime.max`) is set, placing it at the end of the list. This ensures that all electronic data is properly sorted based on its deadline.

[1089] Finally, the terminal displays the sorted electronic data provided by the server to the user. For display purposes, information is provided visually on a web page, for example, using HTML and CSS. This allows the user to see the subject, due date, and received time on the screen, enabling them to address tasks in order of their due date.

[1090] Specific example

[1091] Consider the case where the server receives the following electronic data:

[1092] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[1093] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[1094] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[1095] The server extracts each closing date from the text and obtains a list of closing dates as follows:

[1096] 1. Task A: 2023-10-15

[1097] 2. Task B: 2023-10-12

[1098] 3. Task C: 2023-10-20

[1099] Next, the server sorts these electronic data by closing date. As a result, the sorted list looks like this:

[1100] 1. Task B: Deadline 2023-10-12

[1101] 2. Task A: Deadline 2023-10-15

[1102] 3. Task C: Deadline 2023-10-20

[1103] The device displays this sorted list to the user. The user can then review and address tasks in order of urgency, starting with the most urgent task (Task B). This prevents the user from missing tasks in the incoming data and allows for efficient task management.

[1104] Examples of prompts to input into a generative AI model

[1105] "Create a Python program that extracts the date from the body of newly arrived emails in a user's inbox and sorts the emails based on that date. The sorted results should be displayed in order of earliest closing date."

[1106] The flow of the specific processing in Example 1 will be explained using Figure 11.

[1107] Step 1:

[1108] The server automatically retrieves newly arrived electronic data from the user's inbox.

[1109] Specific operation: The server uses email service APIs such as the Gmail API and the Microsoft Graph API. Specifically, it executes messages.list(userId='me',q='is:unread') in the Gmail API to retrieve unread emails.

[1110] Input: User's inbox

[1111] Output: List of newly acquired electronic data (emails)

[1112] Step 2:

[1113] The server uses regular expressions to extract the closing date from the text of each electronic data file.

[1114] Specific operation: The server uses Python's regular expression library (re module) to extract strings in date format (e.g., "2023-10-15") from the body of each email.

[1115] Input: Text of the electronic data

[1116] Output: Electronic data (email) object with a set closing date.

[1117] Step 3:

[1118] The server sorts the list of electronic data with set deadlines in order of deadline.

[1119] Specific operation: The server sorts the list using the `sorted` function from Python's standard library. For electronic data without a closing date, it sets the maximum date (`datetime.max`).

[1120] Input: List of electronic data (emails) with a set closing date.

[1121] Output: Sorted list of electronic data (emails)

[1122] Step 4:

[1123] The terminal displays the sorted electronic data provided by the server to the user.

[1124] Specific operation: The terminal uses HTML and CSS to create a user interface and visually display email information. The user can view the subject, due date, and received time on the screen.

[1125] Input: Sorted list of electronic data (emails)

[1126] Output: Email information displayed on the user screen

[1127] (Application Example 1)

[1128] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1129] In today's work environments, where a large volume of diverse tasks and electronic messages are received daily, it is extremely difficult for managers to properly grasp all tasks and prioritize them according to their urgency. This can lead to important tasks being overlooked or work being delayed. Tasks with deadlines, in particular, are highly urgent, and there is a need for effective management methods for them.

[1130] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[1131] In this invention, the server includes means for extracting the closing date from the body of a received electronic message, means for sorting the electronic messages from which the closing dates have been extracted in order of closing date, means for displaying the sorted electronic messages, and display means for allowing the asset manager at the implementation site to check and manage the priority of management tasks in real time. As a result, the manager can immediately grasp the priority of tasks based on the closing date and respond to tasks in order of urgency.

[1132] "Received electronic messages" refer to messages that reach the inbox via the network from the server, and this includes email and other forms of electronic communication.

[1133] "Methods for extracting closing dates" refer to technical elements that identify date data in a specific format from the body of an electronic message and extract it as relevant information to the message.

[1134] The "sorting method" refers to a function that sorts multiple electronic messages based on the extracted closing dates and organizes them in a specified order.

[1135] "Means of display" refers to technical methods for presenting rearranged electronic messages to users through visual interfaces such as screens or displays.

[1136] "Asset manager at the implementation location" refers to an individual or position responsible for monitoring and managing operations at a specific location, such as a physical store or office.

[1137] A "display mechanism that allows for real-time prioritization and management of management tasks" is a display function that enables administrators to instantly identify the most important tasks based on the current work situation and address them accordingly.

[1138] This invention is a system that improves operational efficiency by efficiently managing electronic messages received by store managers and prioritizing them according to their urgency. This system consists of the following main elements:

[1139] 1. Server

[1140] The server receives electronic messages over the network. These messages contain information such as the subject, body, and time of reception. The server stores these messages in a list format and uses them for subsequent processing.

[1141] 2. Method for extracting closing dates

[1142] The server uses a regular expression to extract the closing date from the body of an electronic message. This regular expression detects date-formatted strings (e.g., "2023-10-15") from the body. This extracted date is set as the "Closing Date" attribute of the message object. If the closing date is not included in the body, the closing date for that message is treated as None or the maximum date (datetime.max) by default.

[1143] 3. Message sorting methods

[1144] The server sorts the message list based on the extracted deadline. The sorting algorithm treats messages without a deadline as having the default maximum date. This ensures that all messages are properly sorted based on their deadline, making it easier to visually determine their urgency.

[1145] 4. Means for displaying sorting results

[1146] The sorted message list is displayed on the store manager's terminal. The manager can see the subject, due date, and received time on the screen. This allows them to review and address tasks in order of their due date.

[1147] Hardware and software to be used

[1148] Hardware: Server, smartphone (iOS or Android)

[1149] Software: Python runtime engine, regular expression library (Python's re module), datetime library (Python's datetime module)

[1150] Specific examples of operation

[1151] Provide an application that allows administrators to view and manage electronic message tasks in real time. For example, consider the following message:

[1152] "Delivery Schedule", "Delivery by 2023-10-12", Received 2023-10-09

[1153] "Inventory Check", "Checked by 2023-10-15", Received 2023-10-10

[1154] "Staff Shift", "Updated by 2023-10-20", Received 2023-10-11

[1155] The server retrieves these messages and extracts the respective deadlines from the message bodies. Based on the extracted deadlines, the messages are sorted by urgency. As a result, the earliest deadline, "Delivery Schedule," appears at the top of the list, allowing administrators to prioritize this task.

[1156] Example of a prompt

[1157] An example of an input prompt for a generative AI model is: "Create a program that extracts the closing date from the body of an electronic message and displays a list sorted by closing date."

[1158] Thus, this invention allows managers to immediately grasp the urgency of tasks, prioritize them, and proceed with work efficiently.

[1159] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[1160] Step 1:

[1161] The server retrieves electronic messages that arrive in the inbox via the network. The input is the unprocessed electronic messages, and the output is a list of retrieved electronic messages. Specifically, the server accesses the inbox and retrieves new electronic messages, including the subject, body, and time of reception.

[1162] Step 2:

[1163] The server uses regular expressions to extract the closing date from the body of an electronic message. The input is the body of the electronic message, and the output is the extracted closing date. Specifically, the server uses a regular expression library to detect strings in a date format such as "2023-10-15" from the body and sets it as the "closing date" attribute of the message object.

[1164] Step 3:

[1165] The server sorts the electronic messages based on the extracted closing dates. The input is a list of electronic messages with closing dates set, and the output is a list of electronic messages sorted by closing date. Specifically, the server assigns a default maximum date to messages for which no closing date exists, and then sorts all messages based on their closing dates.

[1166] Step 4:

[1167] The terminal displays a sorted list of electronic messages to the user. The input is a sorted list of electronic messages, and the output is a visually displayed list of messages. Specifically, the terminal displays the subject, due date, and received time on the screen, listing them in order of urgency.

[1168] Step 5:

[1169] The user reviews the displayed messages and addresses tasks in order of priority. The input is the displayed electronic messages, and the output is the progress of the tasks as a result of the user's actions. Specifically, the user clicks on the most urgent message on the screen and takes action based on its content.

[1170] This process allows store managers to efficiently manage electronic messages and prioritize them according to their urgency.

[1171] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[1172] This invention relates to a system that sorts emails based on deadlines extracted from the email body, recognizes user sentiment, and optimizes task management. The system consists of a server, a terminal, and a user interface.

[1173] System Configuration

[1174] Email extraction method

[1175] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. These mail objects include the subject, body, and time of receipt.

[1176] Method for extracting closing dates

[1177] The server uses regular expressions to extract the closing date from the body of each email. Using regular expressions, it searches for date-formatted strings within the email body and sets the found date as the closing date in the email object. If no closing date is found, the closing date for that email is set to None by default.

[1178] Email sorting methods

[1179] Mail lists with a set deadline are sorted by the deadline by the server. The sorting algorithm sets datetime.max for mail with a deadline of None, ensuring all mail is sorted by a consistent criterion.

[1180] Implementation of an emotion engine

[1181] The server is equipped with an emotion engine to recognize user emotions. This emotion engine analyzes user emotions in real time through methods such as facial expressions, text input, and voice analysis.

[1182] Emotion-based prioritization methods

[1183] The server dynamically adjusts email priorities based on sentiment information obtained from the sentiment engine. For example, if the sentiment engine determines that a user is experiencing high levels of stress, it will temporarily hide important but less urgent emails from the email list.

[1184] How to change the notification method

[1185] The device changes how it sends email notifications to the user based on the results of its emotion engine analysis. For example, if it determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound.

[1186] Display method of sorting results

[1187] The device displays a sorted and sentiment-based email list to the user. The display includes subject, due date, and received time.

[1188] Specific example

[1189] Consider the case where the server receives an email like the following:

[1190] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[1191] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[1192] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[1193] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[1194] 1. Task A: 2023-10-15

[1195] 2. Task B: 2023-10-12

[1196] 3. Task C: 2023-10-20

[1197] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[1198] 1. Task B: Deadline 2023-10-12

[1199] 2. Task A: Deadline 2023-10-15

[1200] 3. Task C: Deadline 2023-10-20

[1201] This sorted list is dynamically adjusted by the emotion engine. For example, if the user is stressed, Task C (less urgent emails) will be temporarily removed from the list.

[1202] Ultimately, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management according to their emotional state.

[1203] The following describes the processing flow.

[1204] Step 1:

[1205] The server receives the email.

[1206] Specific operation: The server retrieves new emails from the inbox and saves them to a list as mail objects. The mail object includes the subject, body, and time received.

[1207] Step 2:

[1208] The server extracts the closing date from the email body.

[1209] Specific operation: The server uses regular expressions to search for strings in the date format (e.g., "2023-10-15") within the body of each email. The found date is set as the closing date for the email object. If no closing date is found, the closing date for that email is set to None.

[1210] Step 3:

[1211] The server sorts the emails by closing date.

[1212] Specific operation: The server sorts the email list based on the extracted closing date. For emails with a closing date of None, datetime.max is set, and all emails are sorted in ascending order.

[1213] Step 4:

[1214] The server recognizes the user's emotions.

[1215] Specific operation: The server uses an emotion engine to collect data such as the user's facial expressions, text input, and voice analysis, and analyzes their emotions in real time. The analysis results provide information about the emotional state the user is currently feeling (e.g., stress, relaxation).

[1216] Step 5:

[1217] The server prioritizes emails based on emotions.

[1218] Specific operation: Based on emotional information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if a user is feeling stressed, it will temporarily remove low-priority emails from the list or lower their priority.

[1219] Step 6:

[1220] The device displays a customized email list.

[1221] Specific operation: The terminal displays a customized email list to the user. The display includes subject, due date, and received time.

[1222] Step 7:

[1223] Users check their emails in order of urgency.

[1224] Specific operation: The user refers to the displayed email list and checks and responds to tasks in order, starting with the email with the closest due date.

[1225] Step 8:

[1226] The device provides emotion-based notification methods.

[1227] Specific operation: The device changes the email notification method based on the results of the emotion engine's analysis. For example, if the system determines that the user is relaxed, it will use a normal notification sound, and if the user is stressed, it will use a softer notification sound.

[1228] (Example 2)

[1229] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1230] Traditional email management systems struggled to efficiently manage the large volume of emails users received, and prioritizing emails based on deadlines was particularly difficult. Furthermore, while there was a need to dynamically adjust email notifications and task priorities based on user emotional states, no system possessed such functionality. Moreover, it was difficult to manage tasks effectively when users were experiencing stress.

[1231] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[1232] In this invention, the server includes means for extracting closing dates from the body of received electronic data, means for sorting the electronic data from which closing dates have been extracted in order of closing dates, means for displaying the sorted electronic data, means including an emotion analysis engine for analyzing the user's emotions, means for dynamically adjusting the priority of electronic data based on the emotion analysis results, and means for changing the notification method based on the emotion analysis results. This enables the user to efficiently manage emails and perform optimal task management according to their emotional state.

[1233] "A means of extracting the closing date from the body of received electronic data" refers to a technology that analyzes the body of an email obtained from an email inbox and identifies a closing date in a predefined format.

[1234] "A method for sorting electronic data with extracted closing dates in order of closing date" refers to a technique that sorts email objects based on the extracted closing date information and lists them in order from earliest to latest closing date.

[1235] "Means for displaying sorted electronic data" refers to a technology that displays a sorted email list on a screen so that the user can visually confirm it.

[1236] "Means including an emotion analysis engine for analyzing user emotions" refers to algorithms and systems that analyze the user's emotional state in real time based on data such as facial expressions, voice, and text input.

[1237] "A means of dynamically adjusting the priority of electronic data based on sentiment analysis results" refers to a technology that changes the display order and priority of emails based on user sentiment information obtained from a sentiment analysis engine.

[1238] "Means of changing notification methods based on sentiment analysis results" refers to a technology that dynamically changes email notification methods (e.g., type of notification sound, whether or not a pop-up is displayed) according to the user's emotional state.

[1239] "A method for extracting date and time information from the body of electronic data using regular expressions" refers to a technique that searches for and extracts date information in the body of an email using a defined string pattern (e.g., YYYY-MM-DD format).

[1240] "A method for treating electronic data without a specified closing date as the default maximum date and time" refers to a technology that automatically sets the latest possible date for comparison when an email does not have a specified closing date, thereby enabling consistent sorting of these emails with other emails.

[1241] This invention relates to a system that extracts deadlines from the text of received electronic data, sorts them, and optimizes task management based on the user's emotional state. The main components of the system consist of a server, a terminal, and a user interface, and it operates in the following specific steps.

[1242] Email extraction:

[1243] The server retrieves newly arrived emails from the inbox and stores them in a list as mail objects. This process uses the IMAP protocol, and the mail object includes the subject, body, and time of receipt.

[1244] Extracting closing dates:

[1245] The server uses regular expressions to extract the closing date from the body of each email. For example, if the body contains "Complete by 2023-10-15", the regular expression "\d{4}-\d{2}-\d{2}" is used to extract "2023-10-15" and add it to the email object as the closing date. If no closing date is found, it defaults to None.

[1246] Sorting emails:

[1247] The server sorts the mail objects based on the extracted closing dates. The sorting is done in order of earliest closing date, and mail with a closing date of None is set to datetime.max and placed at the end of the list.

[1248] Implementation of the emotion analysis engine:

[1249] The server is equipped with an emotion analysis engine to analyze the user's emotions. This emotion analysis engine acquires user emotion data from sources such as the camera, microphone, and text input. For example, if the user is smiling through the camera, the engine will analyze that the user is relaxed.

[1250] Prioritizing based on emotions:

[1251] The server dynamically adjusts the priority of the email list based on emotional information obtained from the emotion engine. If it determines that the user is experiencing stress, lower-priority emails are temporarily removed from the display list.

[1252] Changes to notification methods:

[1253] The device receives emotion analysis results from the server and changes the email notification method according to the emotional state. If it determines that the user is relaxed, it will notify with a normal notification sound; if the user is stressed, it will use a softer notification sound or vibration.

[1254] Display the sorted results:

[1255] The terminal receives a pre-configured mail list from the server and displays it to the user. The displayed information includes the subject, deadline, and time of receipt. For example, a valid mail list might look like this:

[1256] 1. "Task B": Deadline 2023-10-12

[1257] 2. "Task A": Deadline 2023-10-15

[1258] 3. "Task C": Deadline 2023-10-20

[1259] As described above, this system allows users to efficiently manage incoming emails and perform optimal task management according to their emotional state. Furthermore, a concrete example can be displayed as follows:

[1260] Specific example:

[1261] Consider the case where the server receives the following email:

[1262] 1. Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[1263] 2. Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[1264] 3. Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[1265] The server extracts each closing date from the text and obtains the following list:

[1266] 1. "Task A": 2023-10-15

[1267] 2. "Task B": 2023-10-12

[1268] 3. "Task C": 2023-10-20

[1269] Next, the server sorts these emails by closing date. As a result, the sorted list is:

[1270] 1. "Task B": Deadline 2023-10-12

[1271] 2. "Task A": Deadline 2023-10-15

[1272] 3. "Task C": Deadline 2023-10-20

[1273] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, "Task C" (low-priority emails) will be temporarily removed from the list.

[1274] Finally, this adjusted list is displayed on the device, allowing the user to review and address emails in order of urgency and relevance to their situation. In this way, the present invention can efficiently and effectively improve the user's task management.

[1275] The flow of the specific processing in Example 2 will be explained using Figure 13.

[1276] Step 1:

[1277] The server retrieves newly arrived emails from the inbox. The input is email data from the mail server, and the output is a list of mail objects (subject, body, and received time). Specifically, it uses the IMAP protocol to retrieve email information and stores each piece of information as a mail object in a list.

[1278] Step 2:

[1279] The server parses the body of each mail object in the list and extracts the closing date using regular expressions. The input is a list of mail objects, and the output is a list of mail objects with the closing date added. Specifically, it extracts the closing date from the mail body using regular expressions such as "\d{4}-\d{2}-\d{2}" and sets it as the closing date for the mail object.

[1280] Step 3:

[1281] The server checks the closing date of all mail objects and sorts them by closing date. The input is a list of mail objects with added closing dates, and the output is the sorted list of mail objects. Specifically, mail with a closing date of None is given datetime.max, and the list is sorted by closing date.

[1282] Step 4:

[1283] The server uses an emotion analysis engine to analyze the user's emotional state. The input is emotional data acquired from sources such as the camera, microphone, and text input, and the output is the user's emotional state. Specifically, the emotion analysis engine analyzes the data in real time to acquire emotional states such as relaxation, stress, and concentration.

[1284] Step 5:

[1285] The server dynamically adjusts email priorities based on sentiment analysis results. The input is a list of email objects with added sentiment status and deadline, and the output is the adjusted list of email objects. Specifically, if it is determined that the user is stressed, adjustments are made such as temporarily removing low-priority emails from the list.

[1286] Step 6:

[1287] The device receives emotion analysis results from the server and changes the notification method. The input is the emotion analysis results and email priority information, and the output is the notification method setting. Specifically, if the user is relaxed, the notification sound is set to normal; if the user is stressed, a softer notification sound or vibration mode is used.

[1288] Step 7:

[1289] The terminal receives a sorted and adjusted mail list from the server and displays it to the user. The input is the adjusted mail object list, and the output is the mail list displayed on the user interface. Specifically, the list, including subject, due date, and received time, is displayed on the screen in a user-friendly format.

[1290] Through these steps, this system can streamline users' email management and provide optimal task management based on their emotional state.

[1291] (Application Example 2)

[1292] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[1293] Traditional task management systems, while having features to sort tasks based on email deadlines, lacked the ability to recognize user emotions in real time and dynamically adjust task priorities and notification methods. This resulted in issues such as users being continuously displayed with important but low-urgency tasks even when stressed, thus failing to alleviate their mental burden. Furthermore, traditional systems also presented problems where staff members were distracted by unnecessary tasks during busy periods, preventing them from focusing on truly important work.

[1294] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[1295] In this invention, the server includes means for extracting deadlines from the body of received electronic communications, means for sorting the electronic communications from which the deadlines have been extracted in order of deadline, means for displaying the sorted electronic communications, means for recognizing the user's emotions using an emotion analysis engine, means for dynamically adjusting the priority of the sorted electronic communications based on the user's emotion information, and means for changing the notification method based on the emotion information. This enables the user to efficiently process important tasks while reducing their mental burden.

[1296] "Received electronic communications" refers to all emails and messages that arrive in your inbox.

[1297] "Deadline" refers to the specific deadline date specified in the body of an electronic communication.

[1298] A "regular expression" is a method of representing strings to search for them based on a specific pattern or format.

[1299] An "emotion analysis engine" refers to a system that analyzes a user's emotions in real time through methods such as facial expressions, text input, and voice analysis.

[1300] "Dynamic prioritization" means changing the display order of tasks and emails in real time based on the user's sentiment information.

[1301] "Changing notification methods" means adaptively changing the format and timing of notifications according to the user's emotional state.

[1302] This invention relates to a system that sorts communications based on closing dates extracted from the text of electronic communications, recognizes user sentiment, and optimizes task management. This system consists of a server, a terminal, and a user interface.

[1303] System Configuration

[1304] server

[1305] The server retrieves newly arrived electronic communications from the inbox and stores them in a list as mail objects. These mail objects include the subject, body, and time of receipt. The server uses regular expressions to extract the closing date from the body of each mail. Using regular expressions, it searches for date-formatted strings in the mail body and sets the found date as the closing date for the mail object. If no closing date is found, the closing date for that mail is set to None by default. Mail lists with closing dates are sorted by closing date by the server. The sorting algorithm sets datetime.max for mail with a closing date of None, ensuring that all mail is sorted by a consistent criterion.

[1306] The server also features an emotion analysis engine to recognize user emotions. This engine analyzes user emotions in real time through facial expressions, text input, and voice analysis. Based on the emotion information obtained from the emotion engine, the server dynamically adjusts the priority of emails. For example, if the emotion engine determines that a user is experiencing high stress levels, it will temporarily hide important but less urgent emails from the email list.

[1307] terminal

[1308] The device changes how it sends email notifications to the user based on the results of its sentiment analysis engine. For example, if it determines that the user is relaxed, it will display a normal pop-up notification, but if the user is stressed, it will change to a softer notification sound. The device displays an email list to the user that has been sorted and adjusted by the sentiment analysis engine. The display includes the subject, due date, and received time.

[1309] User interface

[1310] This system allows users to check and address emails in order of urgency and relevance to their situation. This not only prevents users from missing tasks in incoming emails and allows for efficient task management, but also enables optimal task management tailored to their emotional state.

[1311] Specific example

[1312] Consider the case where the server receives the following electronic communication:

[1313] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[1314] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[1315] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[1316] The server extracts each closing date from the text and obtains a list of closing dates like the following:

[1317] Task A: 2023-10-15

[1318] Task B: 2023-10-12

[1319] Task C: 2023-10-20

[1320] Next, the server sorts these emails by closing date. As a result, the sorted list looks like this:

[1321] Task B: Deadline 2023-10-12

[1322] Task A: Deadline 2023-10-15

[1323] Task C: Deadline 2023-10-20

[1324] This sorted list is dynamically adjusted by the sentiment analysis engine. For example, if the user is feeling stressed, Task C (less urgent emails) will be temporarily removed from the list. Ultimately, this adjusted list is displayed on the device. The user can then review and address the emails in order of urgency and how best they relate to their emotional state.

[1325] Examples of prompts to input into a generative AI model

[1326] Display the following emails based on their emotional state and due date:

[1327] Subject: "Task A", Body: "Complete by 2023-10-15", Received: "2023-10-10"

[1328] Subject: "Task B", Body: "Complete by 2023-10-12", Received: "2023-10-09"

[1329] Subject: "Task C", Body: "Complete by 2023-10-20", Received: "2023-10-11"

[1330] The user's emotion is "relaxed".

[1331] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[1332] Step 1:

[1333] The server retrieves newly arrived electronic communications from the inbox. The input is the received electronic communications, and the output is a list of mail objects. Specifically, these mail objects include the subject, body, and time of receipt.

[1334] Step 2:

[1335] The server extracts the closing date from the body of each email. This is done using regular expressions to search for date-formatted strings. The input is the email body, and the output is an email object containing the closing date. Specifically, it extracts the date from the body using regular expressions and sets the extracted date to the email object. If no date is found, the closing date defaults to datetime.max.

[1336] Step 3:

[1337] The server sorts a list of emails with set deadlines in order of deadline. The input is a list of email objects with set deadlines, and the output is a list of email objects sorted in order of deadline. Specifically, it sets datetime.max for emails with a deadline of None and sorts all emails using a unified criterion.

[1338] Step 4:

[1339] The server analyzes the user's emotions in real time using an emotion analysis engine. Inputs include the user's facial expressions, text input, and voice information, while output is the user's emotional state. Specifically, the emotion analysis engine processes this data to identify the user's emotional state.

[1340] Step 5:

[1341] The server dynamically adjusts email priority based on sentiment information. The input is a sorted list of emails and sentiment information, and the output is an adjusted list of emails. Specifically, if a user is experiencing stress, it temporarily removes less urgent emails from the list so they are not displayed.

[1342] Step 6:

[1343] The device changes how it sends email notifications to the user based on their emotional state. The input is emotional information, and the output is the modified notification method. Specifically, if the device determines that the user is relaxed, it will display a normal pop-up notification; if the user is stressed, it will change to a softer notification sound.

[1344] Step 7:

[1345] The device displays a sorted and sentiment-analyzed email list to the user. The input is the sorted email list, and the output is the displayed email list. Specifically, it displays the email subject, due date, and received time in the user interface.

[1346] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[1347] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1348] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.

[1349] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[1350] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.

[1351] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.

[1352] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.

[1353] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.

[1354] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."

[1355] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values ​​representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.

[1356] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.

[1357] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.

[1358] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.

[1359] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.

[1360] Furthermore, it is not necessary to store the entirety of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.

[1361] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.

[1362] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Alternatively, the hardware resource that performs a specific process may consist of a single processor.

[1363] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.

[1364] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.

[1365] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.

[1366] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted as being incorporated by reference.

[1367] The following is further disclosed regarding the embodiments described above.

[1368] (Claim 1)

[1369] A method for extracting the closing date from the body of a received email,

[1370] A means for sorting the emails from which the closing dates have been extracted in order of closing date,

[1371] A system that includes means for displaying sorted emails.

[1372] (Claim 2)

[1373] The system according to claim 1, comprising means for extracting a date from the body of an email using regular expressions.

[1374] (Claim 3)

[1375] The system according to claim 1, having means for treating emails for which no closing date is set as the default maximum date.

[1376] "Example 1"

[1377] (Claim 1)

[1378] A means of automatically retrieving newly arrived electronic data from the user's inbox,

[1379] A means for extracting the closing date from the text of the acquired electronic data using regular expressions,

[1380] A means for sorting the electronic data, including the closing date, in order of closing date,

[1381] A means of displaying rearranged electronic data,

[1382] ...

[1383] A system that includes this.

[1384] (Claim 2)

[1385] The system according to claim 1, comprising means for detecting a date-formatted string from the body of electronic data using a regular expression.

[1386] (Claim 3)

[1387] The system according to claim 1, which has means for treating electronic data for which no closing date is set as the default maximum date.

[1388] "Application Example 1"

[1389] (Claim 1)

[1390] A method for extracting the closing date from the body of a received electronic message,

[1391] A means for sorting the electronic messages from which the closing dates have been extracted in order of closing dates,

[1392] A means of displaying rearranged electronic messages,

[1393] A display method that allows asset managers at the implementation site to check and manage the priority of management tasks in real time,

[1394] A system that includes this.

[1395] (Claim 2)

[1396] The system according to claim 1, comprising means for extracting a date from the body of an electronic message using regular expressions.

[1397] (Claim 3)

[1398] The system according to claim 1, having means for treating electronic messages for which no closing date is set as the default maximum date.

[1399] "Example 2 of combining an emotion engine"

[1400] (Claim 1)

[1401] A method for extracting the closing date from the body of the received electronic data,

[1402] A means for sorting the electronic data extracted from the closing dates in order of closing dates,

[1403] A means of displaying rearranged electronic data,

[1404] A means including an emotion analysis engine for analyzing user emotions,

[1405] A means for dynamically adjusting the priority of electronic data based on the results of emotion analysis,

[1406] A system that includes means for changing the notification method based on the results of sentiment analysis.

[1407] (Claim 2)

[1408] The system according to claim 1, comprising means for extracting date and time information from the body of electronic data using regular expressions.

[1409] (Claim 3)

[1410] The system according to claim 1, which has means for treating electronic data for which no closing date is set as the default maximum date and time.

[1411] "Application example 2 when combining with an emotional engine"

[1412] (Claim 1)

[1413] A method for extracting the closing date from the body of a received electronic communication,

[1414] A means for sorting the electronic communications extracted from the aforementioned closing dates in order of closing date,

[1415] A means of displaying rearranged electronic communications,

[1416] A means of recognizing a user's emotions using an emotion analysis engine,

[1417] A means for dynamically adjusting the priority of electronic communications that have been sorted based on user sentiment information,

[1418] Means for changing the method of notifying the user based on the aforementioned sentiment information,

[1419] A system that includes this.

[1420] (Claim 2)

[1421] The system according to claim 1, comprising means for extracting a date from the body of an electronic communication using regular expressions.

[1422] (Claim 3)

[1423] The system according to claim 1, having means for treating electronic communications for which no closing date is set as the default maximum date. [Explanation of symbols]

[1424] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>

Claims

1. A method for extracting the closing date from the body of a received email, A means for sorting the emails from which the closing dates have been extracted in order of closing date, A system that includes means for displaying sorted emails.

2. The system according to claim 1, comprising means for extracting a date from the body of an email using regular expressions.

3. The system according to claim 1, which has means for treating emails for which no closing date is set as the default maximum date.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A