system
The system automates sales email creation and sending by personalizing emails using customer information and templates, improving efficiency and satisfaction through precise delivery.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2026-03-06
AI Technical Summary
The traditional sales email creation and sending process is time-consuming, prone to human error, and lacks personalization, leading to lower sales efficiency and ineffective customer communication.
A system that automates the creation and sending of sales emails by receiving customer information and email templates, personalizing them, and scheduling delivery using placeholders and a scheduling library to send personalized emails at precise times.
This system streamlines sales activities by eliminating manual effort, reduces human error, and enhances customer satisfaction through personalized email delivery.
Smart Images

Figure 2026037402000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot 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] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] The traditional sales email creation and sending process requires sales representatives to manually create each email, manage customer lists, and send them at the appropriate time, which takes a lot of time and effort. Furthermore, manual work is prone to human error, and emails can lack personalization. This results in lower sales efficiency and makes it difficult to maintain effective customer communication. [Means for solving the problem]
[0005] To solve the above problems, the present invention provides a system including: means for receiving customer information and an email template from a user; means for reading the received customer information; means for personalizing the email template based on the read customer information and generating multiple individual emails; means for setting a sending schedule for the generated individual emails; and means for automatically sending the individual emails according to the set schedule. This system automates the email creation and sending process, saving time and effort and reducing human error. Furthermore, placeholders in the email template are dynamically replaced with customer information, allowing personalized emails to be sent to each customer. Furthermore, by utilizing a scheduling library, email sending can be efficiently managed and emails can be sent at precise times according to the schedule.
[0006] "Customer Information" means information including a customer's name, company name, email address, and other related data.
[0007] An "email template" is a document created by formatting common parts of sales emails and containing dynamically replaced placeholders.
[0008] "Personalization" refers to the process of using information about a specific customer to individually change the content of an email template and customize it as an individual email.
[0009] A "send schedule" refers to a timetable that automatically sends emails based on a specific time or date.
[0010] "Placeholders" refer to specific symbols or strings of characters used in email templates that are later replaced with specific customer information.
[0011] A "scheduling library" is a software module for automatically executing tasks based on specific times or events.
[0012] A "customer list" refers to a data list that centrally manages and stores information on multiple customers. [Brief explanation of the drawings]
[0013] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13]FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0014] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0015] First, the terms used in the following description will be explained.
[0016] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0017] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0018] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0019] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0020] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0021] [First embodiment]
[0022] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0023] 1, a 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.
[0024] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0025] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0026] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the 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.
[0027] 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 of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0028] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0029] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0030] 2, in the data processing device 12, a specific process 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" according to the technology of the present 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 process 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.
[0031] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0032] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0033] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0034] This invention relates to a system that automates the creation and sending of sales emails. This system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[0035] Overall system picture
[0036] Accepting user input:
[0037] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[0038] Loading a customer list:
[0039] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0040] Loading an email template:
[0041] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[0042] Generate email content:
[0043] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, the placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[0044] Schedule an email to be sent:
[0045] The server schedules the email sending task according to the sending schedule specified by the user. The scheduling library is used to ensure that emails are sent automatically at the specified time.
[0046] Sending email:
[0047] The server sends personalized emails via the SMTP protocol according to the schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[0048] Specific examples
[0049] A user accesses the system and enters the following information:
[0050] Path to the customer list file (e.g., customers.csv)
[0051] Path to the email template file (e.g. email_template.txt)
[0052] Sending schedule (e.g., every day at 9:00)
[0053] The terminal receives these inputs and passes the information to the server, which first reads the customer list file to get each customer's information, then reads the email template file and replaces the placeholders in the template with the customer information to generate a personalized email for each customer.
[0054] The server then schedules an email sending task according to the user-specified schedule (daily at 09:00), at which point the server is configured to automatically send emails via the SMTP protocol.
[0055] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[0056] The processing flow will be explained below.
[0057] Step 1:
[0058] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information through an interactive interface or an input form.
[0059] Step 2:
[0060] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[0061] Step 3:
[0062] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[0063] Step 4:
[0064] The server personalizes the email template based on the customer information. For each row in the customer list, the server replaces the placeholders (e.g., $NAME$, $COMPANY$) in the email template with the corresponding customer information. This generates a personalized email for each customer.
[0065] Step 5:
[0066] The server stores personalized emails in a list, each containing the recipient's email address and the email content, allowing multiple emails customized for specific customers to be managed in one place.
[0067] Step 6:
[0068] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[0069] Step 7:
[0070] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[0071] Step 8:
[0072] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[0073] Example 1
[0074] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0075] Creating and sending sales emails in the past required manual work, requiring a lot of time and effort. It was also difficult to send personalized emails to individual customers, significantly reducing sales efficiency. Furthermore, manually managing the timing of email sending was prone to errors, making it difficult to send emails at the right time.
[0076] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0077] In this invention, the server includes means for accepting customer information and email templates from a user, means for reading the accepted customer information, means for personalizing the email template based on the read customer information and generating multiple individual emails, means for setting a transmission schedule for the generated individual emails, means for automatically sending the individual emails according to the set schedule, and means for sending the individual emails using the SMTP protocol. This eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system dynamically sends personalized emails to each customer, improving customer satisfaction and sales efficiency. Furthermore, the use of a scheduling library enables automatic email sending at the appropriate time, reducing errors.
[0078] "User" means a person or entity that uses the System to create and send marketing emails.
[0079] "Customer Information" means information about the person or entity to whom the email is addressed, including name, company name, email address, etc.
[0080] An "email template" is a text file that defines the basic format of an email and includes placeholders for filling in customer information in specific locations.
[0081] "Personalization" refers to the process of generating content that is customized for each customer by replacing placeholders in a generic template with individual customer information.
[0082] "Personalized email" refers to each personalized email that contains information specific to each customer.
[0083] A "sending schedule" is a plan that defines the date, time, and frequency for sending individual emails.
[0084] "SMTP protocol" stands for Simple Mail Transfer Protocol and is a communication protocol used to send email.
[0085] A "scheduling library" is a software component that manages and executes the scheduling of tasks within a program.
[0086] This invention relates to a system that automates the creation and sending of sales emails. The system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[0087] Overall system picture
[0088] Accepting user input:
[0089] The terminal accepts customer information (e.g., customer name, company name, email address, etc.) from the user, the path to the email template file, and the sending schedule. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[0090] Loading a customer list:
[0091] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0092] Loading an email template:
[0093] The server reads the specified email template file (in text format) and stores it as a template, which contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with the customer information.
[0094] Generate email content:
[0095] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[0096] Schedule an email to be sent:
[0097] The server schedules the email sending task according to the sending schedule specified by the user. Use a scheduling library (e.g., Python's schedule library) to set up the email to be sent automatically at the specified time.
[0098] Sending email:
[0099] The server sends personalized emails via the SMTP protocol according to the specified schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, and then sends the email.
[0100] Specific examples
[0101] A user accesses the system and enters the following information:
[0102] Path to the customer list file (e.g., customers.csv)
[0103] Path to the email template file (e.g. email_template.txt)
[0104] Sending schedule (e.g., every day at 9:00)
[0105] The terminal receives these inputs and passes the information to the server. The server first reads the customer list file and gets the information for each customer. The customer list contains the following data:
[0106] Name, Company, Email
[0107] Taro Yamada, ABC Company, tarou.yamada@abc.com
[0108] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[0109] The server then reads the email template file and replaces the placeholders in the following template with customer information to generate a personalized email for each customer:
[0110] Subject: Thank you, $NAME$ from $COMPANY$
[0111] Dear $NAME$,
[0112] Hello, this is information about our new product.
[0113] Thank you very much.
[0114] For example, an email to Taro Yamada might look like this:
[0115] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[0116] Mr. Taro Yamada
[0117] Hello, this is information about our new product.
[0118] Thank you very much.
[0119] The server then schedules an email sending task according to the user-specified schedule (every day at 09:00), at which point the server will automatically send the email via the SMTP protocol.
[0120] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[0121] Example prompts for generative AI models
[0122] Example input:
[0123] A user specifies a customer list file (customers.csv) and an email template file (email_template.txt) and schedules an email to be sent daily at 9:00.
[0124] Corresponding example output:
[0125] The server reads the customer list, replaces placeholders in email templates with customer information to generate personalized emails, and automatically sends the emails via the SMTP protocol according to a specified schedule.
[0126] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0127] Step 1: User Input
[0128] Specific behavior:
[0129] A user logs into a system and enters the following information into a terminal:
[0130] Path to the customer list file (e.g., customers.csv)
[0131] Path to the email template file (e.g. email_template.txt)
[0132] Sending schedule (e.g., every day at 9:00)
[0133] input:
[0134] The path of the customer list file, the path of the template file, and the sending schedule entered by the user
[0135] output:
[0136] The path of the customer list file, the path of the template file, and the transmission schedule that the terminal sends to the server
[0137] Step 2: Loading the customer list
[0138] Specific behavior:
[0139] The server receives the path to the customer list file (e.g., customers.csv). The server uses the file path to open the CSV file and reads the customer information. For example, "customers.csv" contains the following data:
[0140] Name, Company, Email
[0141] Taro Yamada, ABC Company, tarou.yamada@abc.com
[0142] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[0143] The server keeps this data as an internal list.
[0144] input:
[0145] Path to the customer list file received from the terminal
[0146] output:
[0147] Customer information stored as an internal list
[0148] Step 3: Loading the email template
[0149] Specific behavior:
[0150] The server receives the path to the email template file and opens the specified text file. For example, "email_template.txt" contains the following template:
[0151] Subject: Thank you, $NAME$ from $COMPANY$
[0152] Dear $NAME$,
[0153] Hello, this is information about our new product.
[0154] Thank you very much.
[0155] The server stores this template internally.
[0156] input:
[0157] Path to the email template file received from the terminal
[0158] output:
[0159] Internally stored email templates
[0160] Step 4: Generate an email
[0161] Specific behavior:
[0162] The server generates a personalized email for each customer based on the customer information stored internally and the email template. Specifically, it replaces the placeholders ($NAME$, $COMPANY$) in the template with the customer's information. For example, the email for Taro Yamada looks like this:
[0163] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[0164] Mr. Taro Yamada
[0165] Hello, this is information about our new product.
[0166] Thank you very much.
[0167] In this way, the server generates email for each customer and stores the contents of the email.
[0168] input:
[0169] Internally stored customer information, email templates
[0170] output:
[0171] Personalized, personalized emails
[0172] Step 5: Schedule your email
[0173] Specific behavior:
[0174] Based on the sending schedule received from the user, the server uses a scheduling library (e.g., Python's schedule library) to schedule the sending task. For example, you can set it to send an email at 9:00 every day.
[0175] input:
[0176] User-specified transmission schedule
[0177] output:
[0178] Configured sending task
[0179] Step 6: Sending an email
[0180] Specific behavior:
[0181] The server sends personalized emails according to a schedule via the SMTP protocol. Specifically, the server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, converts the generated email into MIME format, and sends it.
[0182] input:
[0183] Set up sending tasks, personalized individual emails
[0184] output:
[0185] Personalized emails sent to customer email addresses
[0186] (Application example 1)
[0187] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0188] Conventional sales email creation and sending systems required time and effort to personalize emails and manage sending schedules, reducing the efficiency of users' sales activities. It was also difficult to send personalized emails containing information about specific commercial services to attract customers' interest. This made it difficult to increase customers' purchasing motivation and hindered the effective execution of business operations.
[0189] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0190] In this invention, the server includes means for receiving customer information and an email template from a user, means for reading the received customer information, means for personalizing the email template based on the read customer information and generating a plurality of individual emails, means for setting a transmission schedule for the generated individual emails, means for personalizing the individual emails so that they include information about commercial services, and means for automatically sending the individual emails according to the set schedule, thereby enabling efficient creation, management, and transmission of emails including personalized commercial information.
[0191] A "user" is an entity that operates the system and provides customer information and email templates.
[0192] "Customer Information" means information necessary to personalize and send emails, such as the customer's name, company name, and email address.
[0193] An "email template" is a text that serves as the basis for a personalized email, and is written in a format that includes placeholders.
[0194] "Personalization" means dynamically replacing placeholders in email templates based on customer information and changing the content to suit individual customers.
[0195] "Individual emails" are emails that are personalized and generated for specific customers.
[0196] A "transmission schedule" is a plan or plan for sending an individual email at a specified timing.
[0197] "Information about commercial services" is information related to the promotion of specific commercial activities, services, or products.
[0198] A "scheduling library" is a library for managing and automating email sending tasks according to specified times.
[0199] A "server" is a computer system that reads customer information, personalizes email templates, creates individual emails, sets sending schedules, and sends emails.
[0200] "SMTP" is a protocol for sending email over the Internet.
[0201] This invention relates to a system that automatically generates and sends emails containing personalized commercial information based on customer information and email templates provided by users. The server implements the invention using the following hardware and software:
[0202] The server accepts the customer information (e.g., customer name, company name, email address, etc.) provided by the user, the path to the email template file, and the sending schedule. At this time, the user specifies a CSV file containing the customer list and a text file that will be the basis for the email. The terminal receives this input and passes the information to the server.
[0203] When loading the customer list, the server reads the specified customer list file (CSV format) and stores the data as an internal list. This list contains information such as customer name, company name, and email address. Next, when loading the email template, the server reads the specified email template file (text format) and stores it as a template. This template contains placeholders (e.g., $NAME$, $COMPANY$) that are later replaced with customer information.
[0204] When generating the email content, the server personalizes the email template based on the information in the customer list. For each customer, the placeholders in the template are replaced with the corresponding customer data, and multiple individual emails containing personalized commercial information are generated. This process generates emails with different content for each customer.
[0205] When setting an email sending schedule, the server schedules email sending tasks according to the sending schedule specified by the user. A scheduling library is used to ensure that emails are sent automatically at the specified time. This library manages the sending time and automates email sending.
[0206] When sending emails, the server sends personalized individual emails via the SMTP protocol according to the set schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[0207] Specific examples
[0208] A user accesses the system and enters the following information:
[0209] Path to the customer list file (e.g., customers.csv)
[0210] Path to the email template file (e.g. email_template.txt)
[0211] Sending schedule (e.g., every day at 9:00)
[0212] Example prompt sentence:
[0213] "Automatically generate personalized emails based on the customer list file (customers.csv) and email template file (email_template.txt) and send them according to the set schedule. The sending schedule is set to 9:00 every day."
[0214] This process allows users to efficiently conduct sales activities without having to manually create emails. Furthermore, the system sends emails containing personalized commercial information to each customer, improving customer satisfaction and sales efficiency.
[0215] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0216] Step 1:
[0217] A user accesses the system and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., 9:00 every day).
[0218] Input: Path of customer list file, Path of email template file, Sending schedule
[0219] Output: Input file path and schedule information
[0220] Specific operation: The terminal receives the path and schedule specified by the user and passes them to the server.
[0221] Step 2:
[0222] The server reads the specified customer list file (CSV format), which contains information such as customer names, company names, and email addresses.
[0223] Input: Path to the customer list file
[0224] Output: Internal list of customer information
[0225] Specific operation: The server opens the CSV file, reads the information in each row, and stores it as an internal list.
[0226] Step 3:
[0227] The server loads the specified email template file (text format), which contains placeholders (e.g., $NAME$, $COMPANY$).
[0228] Input: Path to email template file
[0229] Output: Email template text data
[0230] Specific operation: The server opens the text file, reads the contents of the file, and saves it as a template.
[0231] Step 4:
[0232] The server generates multiple individual emails by personalizing email templates based on the customer list information, replacing placeholders with the corresponding customer data.
[0233] Input: Internal list of customer information, text data of email template
[0234] Output: Personalized individual email list
[0235] What happens: The server inserts each customer's information into the template placeholders and generates a separate, personalized email.
[0236] Step 5:
[0237] The server schedules the email sending task according to the sending schedule specified by the user, using a scheduling library.
[0238] Inputs: Sending schedule, personalized individual email list
[0239] Output: Scheduled email sending task
[0240] What it does: The server uses a scheduling library to set up a task to send an email at a specified time.
[0241] Step 6:
[0242] The server sends personalized emails via the SMTP protocol according to a set schedule, and the email content is converted to MIME format.
[0243] Inputs: Scheduled email sending tasks, personalized individual email lists
[0244] Output: Email sent
[0245] What happens: The server connects to the SMTP server, authenticates, and then sends the email. Each email is converted to MIME format and sent to the specified email address.
[0246] Through these steps, users can eliminate the need to manually create emails and conduct sales activities more efficiently. In addition, sending emails containing personalized commercial information improves customer satisfaction and sales efficiency.
[0247] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0248] This invention relates to a system that automates the creation and sending of sales emails and combines it with an emotion engine that recognizes the user's emotions. This system dynamically adjusts the content of emails according to the user's emotional state, enabling more effective customer communication.
[0249] Overall system picture
[0250] Accepting user input:
[0251] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user provides this information through an input form.
[0252] Emotion Recognition with Emotion Engine:
[0253] The server recognizes emotions from user input or interaction. The emotion engine analyzes the user's text input or voice input to identify the user's emotional state (e.g., happy, anger, sadness).
[0254] Loading a customer list:
[0255] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0256] Loading an email template:
[0257] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[0258] Tailor email templates based on sentiment:
[0259] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user has the emotion "joy," the tone and message content in the email template will be adjusted to a more cheerful expression.
[0260] Generate email content:
[0261] The server uses the tailored email template to generate personalized emails using the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a unique email for each customer.
[0262] Schedule an email to be sent:
[0263] The server schedules the email sending task according to the sending schedule specified by the user. Using a scheduling library, emails are sent automatically at the specified time.
[0264] Sending email:
[0265] The server sends personalized emails via the SMTP protocol according to a schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[0266] Specific examples
[0267] A user accesses the system and enters the following information:
[0268] Path to the customer list file (e.g., customers.csv)
[0269] Path to the email template file (e.g. email_template.txt)
[0270] Sending schedule (e.g., every day at 9:00)
[0271] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[0272] The server reads the customer list file to retrieve customer information, then uses tailored email templates to generate personalized emails for each customer, each containing content that matches the user's emotional state.
[0273] Finally, the server will use the scheduling library to set up an email sending task according to the configured sending schedule, and at the specified time, the server will automatically send the email via the SMTP protocol.
[0274] This process not only allows users to efficiently create and send sales emails, but also enables emotionally-driven, personalized communication.
[0275] The processing flow will be explained below.
[0276] Step 1:
[0277] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information via an interactive interface or an input form.
[0278] Step 2:
[0279] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[0280] Step 3:
[0281] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[0282] Step 4:
[0283] The server analyzes the user's input using an emotion engine. The server passes the user's text input, and optionally voice input, to the emotion engine to detect the user's emotional state (e.g., joy, anger, sadness).
[0284] Step 5:
[0285] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user expresses the emotion "joy," the server adjusts the tone and content of the email template to make it more cheerful.
[0286] Step 6:
[0287] The server generates personalized emails using the tailored email template with the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a personalized email for each customer.
[0288] Step 7:
[0289] The server stores the generated individual emails in a list. Each email contains the recipient's email address and the email content. This allows multiple emails customized for a specific customer to be managed in a centralized manner.
[0290] Step 8:
[0291] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[0292] Step 9:
[0293] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[0294] Step 10:
[0295] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[0296] Example 2
[0297] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0298] Conventional sales email creation systems had the problem that they could only send uniform template emails without dynamically adjusting based on the user's emotions. This meant that the level of personalization for each customer was low, making it difficult to communicate effectively based on the customer's emotions. Furthermore, managing the email sending schedule had to be done manually, making efficient operation difficult.
[0299] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0300] In this invention, the server includes a means for recognizing emotions from user input and interactions, a means for reading accepted customer information, and a means for personalizing email templates based on the read customer information and generating multiple individual emails dynamically adjusted according to the user's emotional state. This allows email content to be dynamically adjusted based on the user's emotions, enabling more effective customer communication. Furthermore, efficient email sending is achieved through automatic management of the sending schedule.
[0301] A "user" is a person or organization that uses the system to enter customer information, specify email templates, and schedule emails to be sent.
[0302] "Customer Information" is data used to personalize emails, such as a customer's name, company name, and email address.
[0303] An "email template" is a predefined email text that contains placeholders for filling in customer information.
[0304] "Means for recognizing emotions" is a function that analyzes user input and interactions to identify emotional states such as joy, anger, sadness, etc.
[0305] "Dynamically tailored personalized emails" are emails personalized to each customer, with tone and message content altered based on the perceived emotional state of the user.
[0306] The "means for setting a transmission schedule" is a function that allows the system to plan email transmission so that email is automatically sent at a time specified by the user.
[0307] "Automatic sending means" is a function that allows the system to send emails according to a set schedule without human intervention.
[0308] A "scheduling library" is a software library for executing tasks at specific times or intervals.
[0309] A "placeholder" is a temporary symbol or string included in an email template that is replaced with customer information.
[0310] The present invention relates to a system that creates and sends personalized sales emails to customers based on information entered by the user, and further, that recognizes the user's emotional state and dynamically adjusts the content of the emails.
[0311] User-provided input information
[0312] The user accesses the system interface and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., every day at 9:00) using the input form. This allows the terminal to accept information from the user.
[0313] Sending input information from the device to the server
[0314] The terminal sends the input information provided by the user to the server. This process involves sending the form submission to the server as a POST request using the HTTP protocol.
[0315] Emotion recognition by server
[0316] The server sends the user's input text and voice data to an emotion engine (e.g., Microsoft® Azure® Emotion API) to analyze the user's emotional state. The emotion engine identifies emotions such as joy, anger, and sadness and returns the results to the server.
[0317] Server loads customer list
[0318] The server reads the CSV customer list file specified by the user, processes the data using the Python pandas library, and stores the customer information in an internal list.
[0319] Server Loading of Email Templates
[0320] The server reads the email template file (text format) specified by the user and stores its contents in an internal variable. This template contains placeholders that will be replaced with customer information.
[0321] Server-based email template adjustments
[0322] The server dynamically adjusts the email template based on the output of the emotion engine. For example, if the user feels "joy," the tone and message content in the email template will be adjusted to be more upbeat.
[0323] Server-generated email content
[0324] The server generates personalized emails based on templates, filling in customer information, and then replaces the placeholders with the corresponding customer information to generate individual email content for each customer.
[0325] Server-based email scheduling
[0326] The server sets up the email sending task according to the specified sending schedule using the Python schedule library, which allows you to schedule emails to be completed at a specific time.
[0327] Server sends email
[0328] The server sends personalized emails according to a schedule via the SMTP protocol, converting the email content to MIME format and sending it to the specified email address using Python's smtplib.
[0329] Specific examples
[0330] A user accesses the system and enters the following information:
[0331] Customer list file path: customers.csv
[0332] Email template file path: email_template.txt
[0333] Sending schedule: 09:00 every day
[0334] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[0335] The server uses the pandas library to read the customer list file and extract customer information, then uses the loaded email template to generate personalized emails for each customer, replacing placeholders in the template with the corresponding customer information and including content tailored to the user's emotional state.
[0336] Example prompt sentence:
[0337] input_file: customers.csv
[0338] template_file: email_template.txt
[0339] Schedule: Every day 09:00
[0340] This allows users to efficiently create and send sales emails, enabling personalized customer communication based on emotions.
[0341] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0342] Step 1: User provides input information
[0343] The user accesses the system interface and inputs the path of the customer list file, the path of the email template file, and the sending schedule. Specifically, the user fills in this information in the input form on the browser and presses the send button.
[0344] Input: Path of customer list file, Path of email template file, Sending schedule
[0345] Output: The data structure in which the terminal holds the user's input information.
[0346] Step 2: Sending input information to the server
[0347] The terminal sends the information entered by the user to the server. Specifically, the terminal sends a POST request to the server using the HTTP protocol.
[0348] Input: User-supplied input information
[0349] Output: User input sent to the server
[0350] Step 3: Emotion recognition by the server
[0351] The server sends the user's input text and voice data to the emotion engine and analyzes their emotional state. Specifically, the server calls the emotion recognition API to obtain and analyze the user's emotional state.
[0352] Input: User input data (text or voice)
[0353] Output: User's emotional state (e.g., happy, angry, sad)
[0354] Step 4: Server loads the customer list
[0355] The server reads the specified customer list file. Specifically, it reads the CSV file as a data frame using the pandas library.
[0356] Input: Path to the customer list file
[0357] Output: Customer information converted into an internal data frame
[0358] Step 5: Server Loading of Email Templates
[0359] The server loads the specified email template file. Specifically, it stores the contents of the template file as a string.
[0360] Input: Path to email template file
[0361] Output: The content of the loaded email template
[0362] Step 6: Server-based email template adjustments
[0363] The server dynamically adjusts the email template based on the output of the emotion engine, specifically by changing certain phrases and tones in the email template to match the emotion.
[0364] Input: Email template content, user emotional state
[0365] Output: Email templates tailored based on sentiment
[0366] Step 7: Server Generates Email Content
[0367] The server generates a personalized email by filling in the customer information based on the adjusted template, specifically by replacing the placeholders in the template with the corresponding customer information.
[0368] Input: Customer information, adjusted email template
[0369] Output: Personalized individual email
[0370] Step 8: Schedule server-based email delivery
[0371] The server sets up email sending tasks based on the specified sending schedule, using the Python schedule library to manage the schedule.
[0372] Input: Sending schedule, personalized individual emails
[0373] Output: Scheduled email sending task
[0374] Step 9: Server sends email
[0375] The server sends personalized emails according to a schedule, using smtplib to connect to an SMTP server and send emails in MIME format.
[0376] Inputs: Scheduled email sending tasks, personalized individual emails
[0377] Output: Email sent
[0378] (Application example 2)
[0379] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0380] Conventional sales email creation and sending systems have the problem of being unable to dynamically adjust email content based on user sentiment, resulting in the sending of uniform content. This results in ineffective communication with customers, which can lead to lower satisfaction and engagement. Furthermore, setting and managing sending schedules is often manual, resulting in inefficiencies.
[0381] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for accepting customer information and template information from a user, means for reading the accepted customer information, emotion analysis means for recognizing the user's emotion, means for dynamically adjusting the tone of the template based on the recognized emotion, means for generating a plurality of personalized communication contents based on the read customer information, means for setting a transmission schedule for the generated communication contents, and means for automatically sending the generated communication contents according to the set schedule. This allows individual personalized emails that reflect the user's emotion to be efficiently generated and sent, enabling effective communication with customers.
[0382] A "user" is a person who utilizes the system to provide customer information and template information and to instruct the generation and transmission of personalized communication content.
[0383] "Customer Information" refers to information that identifies an individual customer, such as the customer's name, contact information, and affiliations.
[0384] "Template information" is a standard text that serves as the basis for email and notification content, and is a document with a basic structure before being dynamically adjusted and personalized.
[0385] "Emotion analysis means" refers to analytical technology or software that recognizes emotions from user input and interactions and identifies their emotional state.
[0386] "Tone" refers to the mood and expression of an email or communication, which changes depending on the user's emotional state.
[0387] "Communication content" refers to personalized emails and notifications, including specific messages generated based on customer information and user sentiment.
[0388] "Transmission schedule" refers to a plan or timetable for transmitting communications based on specific set dates and times.
[0389] A "scheduling library" refers to a collection of programs and tools for automatically managing the execution of tasks and processes according to specific times and conditions.
[0390] "Means for automatically transmitting" refers to a function that allows the system to automatically transmit communication content based on a preset schedule without manual operation by the user.
[0391] This invention relates to a system that analyzes user emotions and automatically creates and sends personalized sales emails based on the analysis. This system includes the following elements:
[0392] The server provides an input form as a means for receiving customer information and template information from the user, through which the user inputs the customer information, the path of the template file, and the transmission schedule.
[0393] Next, the server reads the accepted customer information by reading the customer list file (e.g., CSV format) and stores the customer names, contact information, etc. internally.
[0394] The server has a sentiment analysis mechanism to recognize the user's emotions. This sentiment analysis uses an emotion engine to analyze the user's input and interactions to identify their emotional state, such as happy, sad, or neutral. This sentiment analysis is performed using TextBlob or a similar natural language processing library.
[0395] Based on the recognized emotion, the server has the means to dynamically adjust the tone of the template. For example, if the user's emotion is recognized as "joy," the tone and expression in the template will be adjusted to be brighter and more positive. This adjustment is done by replacing specific placeholders in the template with emotion-specific phrases.
[0396] Based on the loaded customer information, the server also has the means to generate multiple personalized communications, dynamically substituting customer information for placeholders in tailored templates for each customer.
[0397] Additionally, the server has a means to schedule the transmission of generated communications, which is managed using a scheduling library (e.g., Python's schedule library) based on user-specified timing.
[0398] The server has the means to automatically send the generated communication according to a set schedule, by sending the email content in MIME format using the SMTP protocol.
[0399] As a concrete example, suppose a user enters the following information into the system:
[0400] Customer list file path: customers.csv
[0401] Email template file path: email_template.txt
[0402] Sending schedule: 09:00 every day
[0403] Text that expresses an emotional state: Thank you for your purchase! Everything went well!
[0404] Based on this, the server recognizes the user's emotional state as "joy" and dynamically adjusts the tone of the template accordingly, then generates individual personalized emails based on information read from the customer list and automatically sends them according to the specified schedule.
[0405] An example of a prompt to be input to the generative AI model is as follows:
[0406] "Write a program that recognizes the user's emotional state and generates a personalized sales email with the appropriate tone. The user's emotional state is taken from the following text: 'Thank you for your purchase! Everything went well!'"
[0407] In this way, the present invention enables efficient generation and transmission of personalized emails that reflect the user's emotions, thereby enabling effective communication with customers.
[0408] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0409] Step 1:
[0410] The user enters customer information, template information, and sending schedule through an input form. The input information includes the path of the customer list file, the path of the email template file, the text that expresses the emotional state, and the sending timing. All the data required by the system is then sent to the server.
[0411] Step 2:
[0412] The server reads a customer list file containing customer information provided by the user. In this process, it parses the CSV file and stores information such as customer name, contact information, and company name in an internal data structure. The input is the path to the CSV file, and the output is the internal data structure.
[0413] Step 3:
[0414] The server reads the template information provided by the user. The template file is in text format, and it reads it into memory and checks that placeholders (e.g., $NAME$, $COMPANY$) are embedded. The input is the path to the template file, and the output is the template content.
[0415] Step 4:
[0416] The server analyzes the user's text input using a sentiment analyzer, which uses a natural language parsing library such as TextBlob to identify the emotional state (e.g., happy, sad, neutral). The input is text expressing the emotion, and the output is the recognized emotional state.
[0417] Step 5:
[0418] The server dynamically adjusts the tone of the template based on the recognized emotional state. In this step, it replaces certain placeholders in the template content with emotion-specific phrases. For example, for "joy," it changes the template tone to a brighter, more positive one. The input is the recognized emotional state and the template content, and the output is the adjusted template.
[0419] Step 6:
[0420] The server generates multiple personalized communications based on the loaded customer information. For each customer, placeholders in the tailored template are dynamically replaced with the customer's information. During this process, information such as the customer's name, company name, and email address are inserted in the appropriate places to generate individual emails. The input is the customer information and the tailored template, and the output is a personalized email for each customer.
[0421] Step 7:
[0422] The server schedules the generated communications for transmission. Based on the timing specified by the user, it uses a scheduling library (e.g., Python's schedule library) to set the send date and time for each email. The input is the transmission schedule information, and the output is the scheduled task.
[0423] Step 8:
[0424] According to the configured schedule, the server automatically sends generated correspondence. Here, it uses the SMTP protocol to convert the email content into MIME format and send it to the specified email address. The input is the scheduled task and the output is the sent email.
[0425] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the 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.
[0426] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0427] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0428] [Second embodiment]
[0429] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0430] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0431] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0432] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0433] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0434] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0435] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0436] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0437] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0438] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0439] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0440] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[0441] This invention relates to a system that automates the creation and sending of sales emails. This system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[0442] Overall system picture
[0443] Accepting user input:
[0444] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[0445] Loading a customer list:
[0446] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0447] Loading an email template:
[0448] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[0449] Generate email content:
[0450] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, the placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[0451] Schedule an email to be sent:
[0452] The server schedules the email sending task according to the sending schedule specified by the user. The scheduling library is used to ensure that emails are sent automatically at the specified time.
[0453] Sending email:
[0454] The server sends personalized emails via the SMTP protocol according to the schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[0455] Specific examples
[0456] A user accesses the system and enters the following information:
[0457] Path to the customer list file (e.g., customers.csv)
[0458] Path to the email template file (e.g. email_template.txt)
[0459] Sending schedule (e.g., every day at 9:00)
[0460] The terminal receives these inputs and passes the information to the server, which first reads the customer list file to get each customer's information, then reads the email template file and replaces the placeholders in the template with the customer information to generate a personalized email for each customer.
[0461] The server then schedules an email sending task according to the user-specified schedule (daily at 09:00), at which point the server is configured to automatically send emails via the SMTP protocol.
[0462] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[0463] The processing flow will be explained below.
[0464] Step 1:
[0465] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information through an interactive interface or an input form.
[0466] Step 2:
[0467] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[0468] Step 3:
[0469] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[0470] Step 4:
[0471] The server personalizes the email template based on the customer information. For each row in the customer list, the server replaces the placeholders (e.g., $NAME$, $COMPANY$) in the email template with the corresponding customer information. This generates a personalized email for each customer.
[0472] Step 5:
[0473] The server stores personalized emails in a list, each containing the recipient's email address and the email content, allowing multiple emails customized for specific customers to be managed in one place.
[0474] Step 6:
[0475] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[0476] Step 7:
[0477] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[0478] Step 8:
[0479] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[0480] Example 1
[0481] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0482] Creating and sending sales emails in the past required manual work, requiring a lot of time and effort. It was also difficult to send personalized emails to individual customers, significantly reducing sales efficiency. Furthermore, manually managing the timing of email sending was prone to errors, making it difficult to send emails at the right time.
[0483] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0484] In this invention, the server includes means for accepting customer information and email templates from a user, means for reading the accepted customer information, means for personalizing the email template based on the read customer information and generating multiple individual emails, means for setting a transmission schedule for the generated individual emails, means for automatically sending the individual emails according to the set schedule, and means for sending the individual emails using the SMTP protocol. This eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system dynamically sends personalized emails to each customer, improving customer satisfaction and sales efficiency. Furthermore, the use of a scheduling library enables automatic email sending at the appropriate time, reducing errors.
[0485] "User" means a person or entity that uses the System to create and send marketing emails.
[0486] "Customer Information" means information about the person or entity to whom the email is addressed, including name, company name, email address, etc.
[0487] An "email template" is a text file that defines the basic format of an email and includes placeholders for filling in customer information in specific locations.
[0488] "Personalization" refers to the process of generating content that is customized for each customer by replacing placeholders in a generic template with individual customer information.
[0489] "Personalized email" refers to each personalized email that contains information specific to each customer.
[0490] A "sending schedule" is a plan that defines the date, time, and frequency for sending individual emails.
[0491] "SMTP protocol" stands for Simple Mail Transfer Protocol and is a communication protocol used to send email.
[0492] A "scheduling library" is a software component that manages and executes the scheduling of tasks within a program.
[0493] This invention relates to a system that automates the creation and sending of sales emails. The system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[0494] Overall system picture
[0495] Accepting user input:
[0496] The terminal accepts customer information (e.g., customer name, company name, email address, etc.) from the user, the path to the email template file, and the sending schedule. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[0497] Loading a customer list:
[0498] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0499] Loading an email template:
[0500] The server reads the specified email template file (in text format) and stores it as a template, which contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with the customer information.
[0501] Generate email content:
[0502] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[0503] Schedule an email to be sent:
[0504] The server schedules the email sending task according to the sending schedule specified by the user. Use a scheduling library (e.g., Python's schedule library) to set up the email to be sent automatically at the specified time.
[0505] Sending email:
[0506] The server sends personalized emails via the SMTP protocol according to the specified schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, and then sends the email.
[0507] Specific examples
[0508] A user accesses the system and enters the following information:
[0509] Path to the customer list file (e.g., customers.csv)
[0510] Path to the email template file (e.g. email_template.txt)
[0511] Sending schedule (e.g., every day at 9:00)
[0512] The terminal receives these inputs and passes the information to the server. The server first reads the customer list file and gets the information for each customer. The customer list contains the following data:
[0513] Name, Company, Email
[0514] Taro Yamada, ABC Company, tarou.yamada@abc.com
[0515] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[0516] The server then reads the email template file and replaces the placeholders in the following template with customer information to generate a personalized email for each customer:
[0517] Subject: Thank you, $NAME$ from $COMPANY$
[0518] Dear $NAME$,
[0519] Hello, this is information about our new product.
[0520] Thank you very much.
[0521] For example, an email to Taro Yamada might look like this:
[0522] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[0523] Mr. Taro Yamada
[0524] Hello, this is information about our new product.
[0525] Thank you very much.
[0526] The server then schedules an email sending task according to the user-specified schedule (every day at 09:00), at which point the server will automatically send the email via the SMTP protocol.
[0527] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[0528] Example prompts for generative AI models
[0529] Example input:
[0530] A user specifies a customer list file (customers.csv) and an email template file (email_template.txt) and schedules an email to be sent daily at 9:00.
[0531] Corresponding example output:
[0532] The server reads the customer list, replaces placeholders in email templates with customer information to generate personalized emails, and automatically sends the emails via the SMTP protocol according to a specified schedule.
[0533] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0534] Step 1: User Input
[0535] Specific behavior:
[0536] A user logs into a system and enters the following information into a terminal:
[0537] Path to the customer list file (e.g., customers.csv)
[0538] Path to the email template file (e.g. email_template.txt)
[0539] Sending schedule (e.g., every day at 9:00)
[0540] input:
[0541] The path of the customer list file, the path of the template file, and the sending schedule entered by the user
[0542] output:
[0543] The path of the customer list file, the path of the template file, and the transmission schedule that the terminal sends to the server
[0544] Step 2: Loading the customer list
[0545] Specific behavior:
[0546] The server receives the path to the customer list file (e.g., customers.csv). The server uses the file path to open the CSV file and reads the customer information. For example, "customers.csv" contains the following data:
[0547] Name, Company, Email
[0548] Taro Yamada, ABC Company, tarou.yamada@abc.com
[0549] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[0550] The server keeps this data as an internal list.
[0551] input:
[0552] Path to the customer list file received from the terminal
[0553] output:
[0554] Customer information stored as an internal list
[0555] Step 3: Loading the email template
[0556] Specific behavior:
[0557] The server receives the path to the email template file and opens the specified text file. For example, "email_template.txt" contains the following template:
[0558] Subject: Thank you, $NAME$ from $COMPANY$
[0559] Dear $NAME$,
[0560] Hello, this is information about our new product.
[0561] Thank you very much.
[0562] The server stores this template internally.
[0563] input:
[0564] Path to the email template file received from the terminal
[0565] output:
[0566] Internally stored email templates
[0567] Step 4: Generate an email
[0568] Specific behavior:
[0569] The server generates a personalized email for each customer based on the customer information stored internally and the email template. Specifically, it replaces the placeholders ($NAME$, $COMPANY$) in the template with the customer's information. For example, the email for Taro Yamada looks like this:
[0570] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[0571] Mr. Taro Yamada
[0572] Hello, this is information about our new product.
[0573] Thank you very much.
[0574] In this way, the server generates email for each customer and stores the contents of the email.
[0575] input:
[0576] Internally stored customer information, email templates
[0577] output:
[0578] Personalized, personalized emails
[0579] Step 5: Schedule your email
[0580] Specific behavior:
[0581] Based on the sending schedule received from the user, the server uses a scheduling library (e.g., Python's schedule library) to schedule the sending task. For example, you can set it to send an email at 9:00 every day.
[0582] input:
[0583] User-specified transmission schedule
[0584] output:
[0585] Configured sending task
[0586] Step 6: Sending an email
[0587] Specific behavior:
[0588] The server sends personalized emails according to a schedule via the SMTP protocol. Specifically, the server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, converts the generated email into MIME format, and sends it.
[0589] input:
[0590] Set up sending tasks, personalized individual emails
[0591] output:
[0592] Personalized emails sent to customer email addresses
[0593] (Application example 1)
[0594] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0595] Conventional sales email creation and sending systems required time and effort to personalize emails and manage sending schedules, reducing the efficiency of users' sales activities. It was also difficult to send personalized emails containing information about specific commercial services to attract customers' interest. This made it difficult to increase customers' purchasing motivation and hindered the effective execution of business operations.
[0596] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0597] In this invention, the server includes means for receiving customer information and an email template from a user, means for reading the received customer information, means for personalizing the email template based on the read customer information and generating a plurality of individual emails, means for setting a transmission schedule for the generated individual emails, means for personalizing the individual emails so that they include information about commercial services, and means for automatically sending the individual emails according to the set schedule, thereby enabling efficient creation, management, and transmission of emails including personalized commercial information.
[0598] A "user" is an entity that operates the system and provides customer information and email templates.
[0599] "Customer Information" means information necessary to personalize and send emails, such as the customer's name, company name, and email address.
[0600] An "email template" is a text that serves as the basis for a personalized email, and is written in a format that includes placeholders.
[0601] "Personalization" means dynamically replacing placeholders in email templates based on customer information and changing the content to suit individual customers.
[0602] "Individual emails" are emails that are personalized and generated for specific customers.
[0603] A "transmission schedule" is a plan or plan for sending an individual email at a specified timing.
[0604] "Information about commercial services" is information related to the promotion of specific commercial activities, services, or products.
[0605] A "scheduling library" is a library for managing and automating email sending tasks according to specified times.
[0606] A "server" is a computer system that reads customer information, personalizes email templates, creates individual emails, sets sending schedules, and sends emails.
[0607] "SMTP" is a protocol for sending email over the Internet.
[0608] This invention relates to a system that automatically generates and sends emails containing personalized commercial information based on customer information and email templates provided by users. The server implements the invention using the following hardware and software:
[0609] The server accepts the customer information (e.g., customer name, company name, email address, etc.) provided by the user, the path to the email template file, and the sending schedule. At this time, the user specifies a CSV file containing the customer list and a text file that will be the basis for the email. The terminal receives this input and passes the information to the server.
[0610] When loading the customer list, the server reads the specified customer list file (CSV format) and stores the data as an internal list. This list contains information such as customer name, company name, and email address. Next, when loading the email template, the server reads the specified email template file (text format) and stores it as a template. This template contains placeholders (e.g., $NAME$, $COMPANY$) that are later replaced with customer information.
[0611] When generating the email content, the server personalizes the email template based on the information in the customer list. For each customer, the placeholders in the template are replaced with the corresponding customer data, and multiple individual emails containing personalized commercial information are generated. This process generates emails with different content for each customer.
[0612] When setting an email sending schedule, the server schedules email sending tasks according to the sending schedule specified by the user. A scheduling library is used to ensure that emails are sent automatically at the specified time. This library manages the sending time and automates email sending.
[0613] When sending emails, the server sends personalized individual emails via the SMTP protocol according to the set schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[0614] Specific examples
[0615] A user accesses the system and enters the following information:
[0616] Path to the customer list file (e.g., customers.csv)
[0617] Path to the email template file (e.g. email_template.txt)
[0618] Sending schedule (e.g., every day at 9:00)
[0619] Example prompt sentence:
[0620] "Automatically generate personalized emails based on the customer list file (customers.csv) and email template file (email_template.txt) and send them according to the set schedule. The sending schedule is set to 9:00 every day."
[0621] This process allows users to efficiently conduct sales activities without having to manually create emails. Furthermore, the system sends emails containing personalized commercial information to each customer, improving customer satisfaction and sales efficiency.
[0622] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0623] Step 1:
[0624] A user accesses the system and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., 9:00 every day).
[0625] Input: Path of customer list file, Path of email template file, Sending schedule
[0626] Output: Input file path and schedule information
[0627] Specific operation: The terminal receives the path and schedule specified by the user and passes them to the server.
[0628] Step 2:
[0629] The server reads the specified customer list file (CSV format), which contains information such as customer names, company names, and email addresses.
[0630] Input: Path to the customer list file
[0631] Output: Internal list of customer information
[0632] Specific operation: The server opens the CSV file, reads the information in each row, and stores it as an internal list.
[0633] Step 3:
[0634] The server loads the specified email template file (text format), which contains placeholders (e.g., $NAME$, $COMPANY$).
[0635] Input: Path to email template file
[0636] Output: Email template text data
[0637] Specific operation: The server opens the text file, reads the contents of the file, and saves it as a template.
[0638] Step 4:
[0639] The server generates multiple individual emails by personalizing email templates based on the customer list information, replacing placeholders with the corresponding customer data.
[0640] Input: Internal list of customer information, text data of email template
[0641] Output: Personalized individual email list
[0642] What happens: The server inserts each customer's information into the template placeholders and generates a separate, personalized email.
[0643] Step 5:
[0644] The server schedules the email sending task according to the sending schedule specified by the user, using a scheduling library.
[0645] Inputs: Sending schedule, personalized individual email list
[0646] Output: Scheduled email sending task
[0647] What it does: The server uses a scheduling library to set up a task to send an email at a specified time.
[0648] Step 6:
[0649] The server sends personalized emails via the SMTP protocol according to a set schedule, and the email content is converted to MIME format.
[0650] Inputs: Scheduled email sending tasks, personalized individual email lists
[0651] Output: Email sent
[0652] What happens: The server connects to the SMTP server, authenticates, and then sends the email. Each email is converted to MIME format and sent to the specified email address.
[0653] Through these steps, users can eliminate the need to manually create emails and conduct sales activities more efficiently. In addition, sending emails containing personalized commercial information improves customer satisfaction and sales efficiency.
[0654] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0655] This invention relates to a system that automates the creation and sending of sales emails and combines it with an emotion engine that recognizes the user's emotions. This system dynamically adjusts the content of emails according to the user's emotional state, enabling more effective customer communication.
[0656] Overall system picture
[0657] Accepting user input:
[0658] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user provides this information through an input form.
[0659] Emotion Recognition with Emotion Engine:
[0660] The server recognizes emotions from user input or interaction. The emotion engine analyzes the user's text input or voice input to identify the user's emotional state (e.g., happy, anger, sadness).
[0661] Loading a customer list:
[0662] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0663] Loading an email template:
[0664] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[0665] Tailor email templates based on sentiment:
[0666] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user has the emotion "joy," the tone and message content in the email template will be adjusted to a more cheerful expression.
[0667] Generate email content:
[0668] The server uses the tailored email template to generate personalized emails using the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a unique email for each customer.
[0669] Schedule an email to be sent:
[0670] The server schedules the email sending task according to the sending schedule specified by the user. Using a scheduling library, emails are sent automatically at the specified time.
[0671] Sending email:
[0672] The server sends personalized emails via the SMTP protocol according to a schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[0673] Specific examples
[0674] A user accesses the system and enters the following information:
[0675] Path to the customer list file (e.g., customers.csv)
[0676] Path to the email template file (e.g. email_template.txt)
[0677] Sending schedule (e.g., every day at 9:00)
[0678] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[0679] The server reads the customer list file to retrieve customer information, then uses tailored email templates to generate personalized emails for each customer, each containing content that matches the user's emotional state.
[0680] Finally, the server will use the scheduling library to set up an email sending task according to the configured sending schedule, and at the specified time, the server will automatically send the email via the SMTP protocol.
[0681] This process not only allows users to efficiently create and send sales emails, but also enables emotionally-driven, personalized communication.
[0682] The processing flow will be explained below.
[0683] Step 1:
[0684] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information via an interactive interface or an input form.
[0685] Step 2:
[0686] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[0687] Step 3:
[0688] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[0689] Step 4:
[0690] The server analyzes the user's input using an emotion engine. The server passes the user's text input, and optionally voice input, to the emotion engine to detect the user's emotional state (e.g., joy, anger, sadness).
[0691] Step 5:
[0692] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user expresses the emotion "joy," the server adjusts the tone and content of the email template to make it more cheerful.
[0693] Step 6:
[0694] The server generates personalized emails using the tailored email template with the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a personalized email for each customer.
[0695] Step 7:
[0696] The server stores the generated individual emails in a list. Each email contains the recipient's email address and the email content. This allows multiple emails customized for a specific customer to be managed in a centralized manner.
[0697] Step 8:
[0698] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[0699] Step 9:
[0700] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[0701] Step 10:
[0702] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[0703] Example 2
[0704] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0705] Conventional sales email creation systems had the problem that they could only send uniform template emails without dynamically adjusting based on the user's emotions. This meant that the level of personalization for each customer was low, making it difficult to communicate effectively based on the customer's emotions. Furthermore, managing the email sending schedule had to be done manually, making efficient operation difficult.
[0706] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0707] In this invention, the server includes a means for recognizing emotions from user input and interactions, a means for reading accepted customer information, and a means for personalizing email templates based on the read customer information and generating multiple individual emails dynamically adjusted according to the user's emotional state. This allows email content to be dynamically adjusted based on the user's emotions, enabling more effective customer communication. Furthermore, efficient email sending is achieved through automatic management of the sending schedule.
[0708] A "user" is a person or organization that uses the system to enter customer information, specify email templates, and schedule emails to be sent.
[0709] "Customer Information" is data used to personalize emails, such as a customer's name, company name, and email address.
[0710] An "email template" is a predefined email text that contains placeholders for filling in customer information.
[0711] "Means for recognizing emotions" is a function that analyzes user input and interactions to identify emotional states such as joy, anger, sadness, etc.
[0712] "Dynamically tailored personalized emails" are emails personalized to each customer, with tone and message content altered based on the perceived emotional state of the user.
[0713] The "means for setting a transmission schedule" is a function that allows the system to plan email transmission so that email is automatically sent at a time specified by the user.
[0714] "Automatic sending means" is a function that allows the system to send emails according to a set schedule without human intervention.
[0715] A "scheduling library" is a software library for executing tasks at specific times or intervals.
[0716] A "placeholder" is a temporary symbol or string included in an email template that is replaced with customer information.
[0717] The present invention relates to a system that creates and sends personalized sales emails to customers based on information entered by the user, and further, that recognizes the user's emotional state and dynamically adjusts the content of the emails.
[0718] User-provided input information
[0719] The user accesses the system interface and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., every day at 9:00) using the input form. This allows the terminal to accept information from the user.
[0720] Sending input information from the device to the server
[0721] The terminal sends the input information provided by the user to the server. This process involves sending the form submission to the server as a POST request using the HTTP protocol.
[0722] Emotion recognition by server
[0723] The server sends the user's input text or voice data to an emotion engine (e.g., Microsoft Azure Emotion API) to analyze the user's emotional state. The emotion engine identifies emotions such as joy, anger, and sadness and returns the results to the server.
[0724] Server loads customer list
[0725] The server reads the CSV customer list file specified by the user, processes the data using the Python pandas library, and stores the customer information in an internal list.
[0726] Server Loading of Email Templates
[0727] The server reads the email template file (text format) specified by the user and stores its contents in an internal variable. This template contains placeholders that will be replaced with customer information.
[0728] Server-based email template adjustments
[0729] The server dynamically adjusts the email template based on the output of the emotion engine. For example, if the user feels "joy," the tone and message content in the email template will be adjusted to be more upbeat.
[0730] Server-generated email content
[0731] The server generates personalized emails based on templates, filling in customer information, and then replaces the placeholders with the corresponding customer information to generate individual email content for each customer.
[0732] Server-based email scheduling
[0733] The server sets up the email sending task according to the specified sending schedule using the Python schedule library, which allows you to schedule emails to be completed at a specific time.
[0734] Server sends email
[0735] The server sends personalized emails according to a schedule via the SMTP protocol, converting the email content to MIME format and sending it to the specified email address using Python's smtplib.
[0736] Specific examples
[0737] A user accesses the system and enters the following information:
[0738] Customer list file path: customers.csv
[0739] Email template file path: email_template.txt
[0740] Sending schedule: 09:00 every day
[0741] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[0742] The server uses the pandas library to read the customer list file and extract customer information, then uses the loaded email template to generate personalized emails for each customer, replacing placeholders in the template with the corresponding customer information and including content tailored to the user's emotional state.
[0743] Example prompt sentence:
[0744] input_file: customers.csv
[0745] template_file: email_template.txt
[0746] Schedule: Every day 09:00
[0747] This allows users to efficiently create and send sales emails, enabling personalized customer communication based on emotions.
[0748] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0749] Step 1: User provides input information
[0750] The user accesses the system interface and inputs the path of the customer list file, the path of the email template file, and the sending schedule. Specifically, the user fills in this information in the input form on the browser and presses the send button.
[0751] Input: Path of customer list file, Path of email template file, Sending schedule
[0752] Output: The data structure in which the terminal holds the user's input information.
[0753] Step 2: Sending input information to the server
[0754] The terminal sends the information entered by the user to the server. Specifically, the terminal sends a POST request to the server using the HTTP protocol.
[0755] Input: User-supplied input information
[0756] Output: User input sent to the server
[0757] Step 3: Emotion recognition by the server
[0758] The server sends the user's input text and voice data to the emotion engine and analyzes their emotional state. Specifically, the server calls the emotion recognition API to obtain and analyze the user's emotional state.
[0759] Input: User input data (text or voice)
[0760] Output: User's emotional state (e.g., happy, angry, sad)
[0761] Step 4: Server loads the customer list
[0762] The server reads the specified customer list file. Specifically, it reads the CSV file as a data frame using the pandas library.
[0763] Input: Path to the customer list file
[0764] Output: Customer information converted into an internal data frame
[0765] Step 5: Server Loading of Email Templates
[0766] The server loads the specified email template file. Specifically, it stores the contents of the template file as a string.
[0767] Input: Path to email template file
[0768] Output: The content of the loaded email template
[0769] Step 6: Server-based email template adjustments
[0770] The server dynamically adjusts the email template based on the output of the emotion engine, specifically by changing certain phrases and tones in the email template to match the emotion.
[0771] Input: Email template content, user emotional state
[0772] Output: Email templates tailored based on sentiment
[0773] Step 7: Server Generates Email Content
[0774] The server generates a personalized email by filling in the customer information based on the adjusted template, specifically by replacing the placeholders in the template with the corresponding customer information.
[0775] Input: Customer information, adjusted email template
[0776] Output: Personalized individual email
[0777] Step 8: Schedule server-based email delivery
[0778] The server sets up email sending tasks based on the specified sending schedule, using the Python schedule library to manage the schedule.
[0779] Input: Sending schedule, personalized individual emails
[0780] Output: Scheduled email sending task
[0781] Step 9: Server sends email
[0782] The server sends personalized emails according to a schedule, using smtplib to connect to an SMTP server and send emails in MIME format.
[0783] Inputs: Scheduled email sending tasks, personalized individual emails
[0784] Output: Email sent
[0785] (Application example 2)
[0786] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0787] Conventional sales email creation and sending systems have the problem of being unable to dynamically adjust email content based on user sentiment, resulting in the sending of uniform content. This results in ineffective communication with customers, which can lead to lower satisfaction and engagement. Furthermore, setting and managing sending schedules is often manual, resulting in inefficiencies.
[0788] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for accepting customer information and template information from a user, means for reading the accepted customer information, emotion analysis means for recognizing the user's emotion, means for dynamically adjusting the tone of the template based on the recognized emotion, means for generating a plurality of personalized communication contents based on the read customer information, means for setting a transmission schedule for the generated communication contents, and means for automatically sending the generated communication contents according to the set schedule. This allows individual personalized emails that reflect the user's emotion to be efficiently generated and sent, enabling effective communication with customers.
[0789] A "user" is a person who utilizes the system to provide customer information and template information and to instruct the generation and transmission of personalized communication content.
[0790] "Customer Information" refers to information that identifies an individual customer, such as the customer's name, contact information, and affiliations.
[0791] "Template information" is a standard text that serves as the basis for email and notification content, and is a document with a basic structure before being dynamically adjusted and personalized.
[0792] "Emotion analysis means" refers to analytical technology or software that recognizes emotions from user input and interactions and identifies their emotional state.
[0793] "Tone" refers to the mood and expression of an email or communication, which changes depending on the user's emotional state.
[0794] "Communication content" refers to personalized emails and notifications, including specific messages generated based on customer information and user sentiment.
[0795] "Transmission schedule" refers to a plan or timetable for transmitting communications based on specific set dates and times.
[0796] A "scheduling library" refers to a collection of programs and tools for automatically managing the execution of tasks and processes according to specific times and conditions.
[0797] "Means for automatically transmitting" refers to a function that allows the system to automatically transmit communication content based on a preset schedule without manual operation by the user.
[0798] This invention relates to a system that analyzes user emotions and automatically creates and sends personalized sales emails based on the analysis. This system includes the following elements:
[0799] The server provides an input form as a means for receiving customer information and template information from the user, through which the user inputs the customer information, the path of the template file, and the transmission schedule.
[0800] Next, the server reads the accepted customer information by reading the customer list file (e.g., CSV format) and stores the customer names, contact information, etc. internally.
[0801] The server has a sentiment analysis mechanism to recognize the user's emotions. This sentiment analysis uses an emotion engine to analyze the user's input and interactions to identify their emotional state, such as happy, sad, or neutral. This sentiment analysis is performed using TextBlob or a similar natural language processing library.
[0802] Based on the recognized emotion, the server has the means to dynamically adjust the tone of the template. For example, if the user's emotion is recognized as "joy," the tone and expression in the template will be adjusted to be brighter and more positive. This adjustment is done by replacing specific placeholders in the template with emotion-specific phrases.
[0803] Based on the loaded customer information, the server also has the means to generate multiple personalized communications, dynamically substituting customer information for placeholders in tailored templates for each customer.
[0804] Additionally, the server has a means to schedule the transmission of generated communications, which is managed using a scheduling library (e.g., Python's schedule library) based on user-specified timing.
[0805] The server has the means to automatically send the generated communication according to a set schedule, by sending the email content in MIME format using the SMTP protocol.
[0806] As a concrete example, suppose a user enters the following information into the system:
[0807] Customer list file path: customers.csv
[0808] Email template file path: email_template.txt
[0809] Sending schedule: 09:00 every day
[0810] Text that expresses an emotional state: Thank you for your purchase! Everything went well!
[0811] Based on this, the server recognizes the user's emotional state as "joy" and dynamically adjusts the tone of the template accordingly, then generates individual personalized emails based on information read from the customer list and automatically sends them according to the specified schedule.
[0812] An example of a prompt to be input to the generative AI model is as follows:
[0813] "Write a program that recognizes the user's emotional state and generates a personalized sales email with the appropriate tone. The user's emotional state is taken from the following text: 'Thank you for your purchase! Everything went well!'"
[0814] In this way, the present invention enables efficient generation and transmission of personalized emails that reflect the user's emotions, thereby enabling effective communication with customers.
[0815] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0816] Step 1:
[0817] The user enters customer information, template information, and sending schedule through an input form. The input information includes the path of the customer list file, the path of the email template file, the text that expresses the emotional state, and the sending timing. All the data required by the system is then sent to the server.
[0818] Step 2:
[0819] The server reads a customer list file containing customer information provided by the user. In this process, it parses the CSV file and stores information such as customer name, contact information, and company name in an internal data structure. The input is the path to the CSV file, and the output is the internal data structure.
[0820] Step 3:
[0821] The server reads the template information provided by the user. The template file is in text format, and it reads it into memory and checks that placeholders (e.g., $NAME$, $COMPANY$) are embedded. The input is the path to the template file, and the output is the template content.
[0822] Step 4:
[0823] The server analyzes the user's text input using a sentiment analyzer, which uses a natural language parsing library such as TextBlob to identify the emotional state (e.g., happy, sad, neutral). The input is text expressing the emotion, and the output is the recognized emotional state.
[0824] Step 5:
[0825] The server dynamically adjusts the tone of the template based on the recognized emotional state. In this step, it replaces certain placeholders in the template content with emotion-specific phrases. For example, for "joy," it changes the template tone to a brighter, more positive one. The input is the recognized emotional state and the template content, and the output is the adjusted template.
[0826] Step 6:
[0827] The server generates multiple personalized communications based on the loaded customer information. For each customer, placeholders in the tailored template are dynamically replaced with the customer's information. During this process, information such as the customer's name, company name, and email address are inserted in the appropriate places to generate individual emails. The input is the customer information and the tailored template, and the output is a personalized email for each customer.
[0828] Step 7:
[0829] The server schedules the generated communications for transmission. Based on the timing specified by the user, it uses a scheduling library (e.g., Python's schedule library) to set the send date and time for each email. The input is the transmission schedule information, and the output is the scheduled task.
[0830] Step 8:
[0831] According to the configured schedule, the server automatically sends generated correspondence. Here, it uses the SMTP protocol to convert the email content into MIME format and send it to the specified email address. The input is the scheduled task and the output is the sent email.
[0832] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0833] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0834] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0835] [Third embodiment]
[0836] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0837] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0838] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0839] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0840] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0841] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0842] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0843] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0844] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0845] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0846] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0847] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[0848] This invention relates to a system that automates the creation and sending of sales emails. This system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[0849] Overall system picture
[0850] Accepting user input:
[0851] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[0852] Loading a customer list:
[0853] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0854] Loading an email template:
[0855] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[0856] Generate email content:
[0857] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, the placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[0858] Schedule an email to be sent:
[0859] The server schedules the email sending task according to the sending schedule specified by the user. The scheduling library is used to ensure that emails are sent automatically at the specified time.
[0860] Sending email:
[0861] The server sends personalized emails via the SMTP protocol according to the schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[0862] Specific examples
[0863] A user accesses the system and enters the following information:
[0864] Path to the customer list file (e.g., customers.csv)
[0865] Path to the email template file (e.g. email_template.txt)
[0866] Sending schedule (e.g., every day at 9:00)
[0867] The terminal receives these inputs and passes the information to the server, which first reads the customer list file to get each customer's information, then reads the email template file and replaces the placeholders in the template with the customer information to generate a personalized email for each customer.
[0868] The server then schedules an email sending task according to the user-specified schedule (daily at 09:00), at which point the server is configured to automatically send emails via the SMTP protocol.
[0869] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[0870] The processing flow will be explained below.
[0871] Step 1:
[0872] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information through an interactive interface or an input form.
[0873] Step 2:
[0874] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[0875] Step 3:
[0876] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[0877] Step 4:
[0878] The server personalizes the email template based on the customer information. For each row in the customer list, the server replaces the placeholders (e.g., $NAME$, $COMPANY$) in the email template with the corresponding customer information. This generates a personalized email for each customer.
[0879] Step 5:
[0880] The server stores personalized emails in a list, each containing the recipient's email address and the email content, allowing multiple emails customized for specific customers to be managed in one place.
[0881] Step 6:
[0882] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[0883] Step 7:
[0884] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[0885] Step 8:
[0886] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[0887] Example 1
[0888] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0889] Creating and sending sales emails in the past required manual work, requiring a lot of time and effort. It was also difficult to send personalized emails to individual customers, significantly reducing sales efficiency. Furthermore, manually managing the timing of email sending was prone to errors, making it difficult to send emails at the right time.
[0890] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0891] In this invention, the server includes means for accepting customer information and email templates from a user, means for reading the accepted customer information, means for personalizing the email template based on the read customer information and generating multiple individual emails, means for setting a transmission schedule for the generated individual emails, means for automatically sending the individual emails according to the set schedule, and means for sending the individual emails using the SMTP protocol. This eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system dynamically sends personalized emails to each customer, improving customer satisfaction and sales efficiency. Furthermore, the use of a scheduling library enables automatic email sending at the appropriate time, reducing errors.
[0892] "User" means a person or entity that uses the System to create and send marketing emails.
[0893] "Customer Information" means information about the person or entity to whom the email is addressed, including name, company name, email address, etc.
[0894] An "email template" is a text file that defines the basic format of an email and includes placeholders for filling in customer information in specific locations.
[0895] "Personalization" refers to the process of generating content that is customized for each customer by replacing placeholders in a generic template with individual customer information.
[0896] "Personalized email" refers to each personalized email that contains information specific to each customer.
[0897] A "sending schedule" is a plan that defines the date, time, and frequency for sending individual emails.
[0898] "SMTP protocol" stands for Simple Mail Transfer Protocol and is a communication protocol used to send email.
[0899] A "scheduling library" is a software component that manages and executes the scheduling of tasks within a program.
[0900] This invention relates to a system that automates the creation and sending of sales emails. The system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[0901] Overall system picture
[0902] Accepting user input:
[0903] The terminal accepts customer information (e.g., customer name, company name, email address, etc.) from the user, the path to the email template file, and the sending schedule. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[0904] Loading a customer list:
[0905] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[0906] Loading an email template:
[0907] The server reads the specified email template file (in text format) and stores it as a template, which contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with the customer information.
[0908] Generate email content:
[0909] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[0910] Schedule an email to be sent:
[0911] The server schedules the email sending task according to the sending schedule specified by the user. Use a scheduling library (e.g., Python's schedule library) to set up the email to be sent automatically at the specified time.
[0912] Sending email:
[0913] The server sends personalized emails via the SMTP protocol according to the specified schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, and then sends the email.
[0914] Specific examples
[0915] A user accesses the system and enters the following information:
[0916] Path to the customer list file (e.g., customers.csv)
[0917] Path to the email template file (e.g. email_template.txt)
[0918] Sending schedule (e.g., every day at 9:00)
[0919] The terminal receives these inputs and passes the information to the server. The server first reads the customer list file and gets the information for each customer. The customer list contains the following data:
[0920] Name, Company, Email
[0921] Taro Yamada, ABC Company, tarou.yamada@abc.com
[0922] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[0923] The server then reads the email template file and replaces the placeholders in the following template with customer information to generate a personalized email for each customer:
[0924] Subject: Thank you, $NAME$ from $COMPANY$
[0925] Dear $NAME$,
[0926] Hello, this is information about our new product.
[0927] Thank you very much.
[0928] For example, an email to Taro Yamada might look like this:
[0929] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[0930] Mr. Taro Yamada
[0931] Hello, this is information about our new product.
[0932] Thank you very much.
[0933] The server then schedules an email sending task according to the user-specified schedule (every day at 09:00), at which point the server will automatically send the email via the SMTP protocol.
[0934] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[0935] Example prompts for generative AI models
[0936] Example input:
[0937] A user specifies a customer list file (customers.csv) and an email template file (email_template.txt) and schedules an email to be sent daily at 9:00.
[0938] Corresponding example output:
[0939] The server reads the customer list, replaces placeholders in email templates with customer information to generate personalized emails, and automatically sends the emails via the SMTP protocol according to a specified schedule.
[0940] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0941] Step 1: User Input
[0942] Specific behavior:
[0943] A user logs into a system and enters the following information into a terminal:
[0944] Path to the customer list file (e.g., customers.csv)
[0945] Path to the email template file (e.g. email_template.txt)
[0946] Sending schedule (e.g., every day at 9:00)
[0947] input:
[0948] The path of the customer list file, the path of the template file, and the sending schedule entered by the user
[0949] output:
[0950] The path of the customer list file, the path of the template file, and the transmission schedule that the terminal sends to the server
[0951] Step 2: Loading the customer list
[0952] Specific behavior:
[0953] The server receives the path to the customer list file (e.g., customers.csv). The server uses the file path to open the CSV file and reads the customer information. For example, "customers.csv" contains the following data:
[0954] Name, Company, Email
[0955] Taro Yamada, ABC Company, tarou.yamada@abc.com
[0956] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[0957] The server keeps this data as an internal list.
[0958] input:
[0959] Path to the customer list file received from the terminal
[0960] output:
[0961] Customer information stored as an internal list
[0962] Step 3: Loading the email template
[0963] Specific behavior:
[0964] The server receives the path to the email template file and opens the specified text file. For example, "email_template.txt" contains the following template:
[0965] Subject: Thank you, $NAME$ from $COMPANY$
[0966] Dear $NAME$,
[0967] Hello, this is information about our new product.
[0968] Thank you very much.
[0969] The server stores this template internally.
[0970] input:
[0971] Path to the email template file received from the terminal
[0972] output:
[0973] Internally stored email templates
[0974] Step 4: Generate an email
[0975] Specific behavior:
[0976] The server generates a personalized email for each customer based on the customer information stored internally and the email template. Specifically, it replaces the placeholders ($NAME$, $COMPANY$) in the template with the customer's information. For example, the email for Taro Yamada looks like this:
[0977] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[0978] Mr. Taro Yamada
[0979] Hello, this is information about our new product.
[0980] Thank you very much.
[0981] In this way, the server generates email for each customer and stores the contents of the email.
[0982] input:
[0983] Internally stored customer information, email templates
[0984] output:
[0985] Personalized, personalized emails
[0986] Step 5: Schedule your email
[0987] Specific behavior:
[0988] Based on the sending schedule received from the user, the server uses a scheduling library (e.g., Python's schedule library) to schedule the sending task. For example, you can set it to send an email at 9:00 every day.
[0989] input:
[0990] User-specified transmission schedule
[0991] output:
[0992] Configured sending task
[0993] Step 6: Sending an email
[0994] Specific behavior:
[0995] The server sends personalized emails according to a schedule via the SMTP protocol. Specifically, the server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, converts the generated email into MIME format, and sends it.
[0996] input:
[0997] Set up sending tasks, personalized individual emails
[0998] output:
[0999] Personalized emails sent to customer email addresses
[1000] (Application example 1)
[1001] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1002] Conventional sales email creation and sending systems required time and effort to personalize emails and manage sending schedules, reducing the efficiency of users' sales activities. It was also difficult to send personalized emails containing information about specific commercial services to attract customers' interest. This made it difficult to increase customers' purchasing motivation and hindered the effective execution of business operations.
[1003] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1004] In this invention, the server includes means for receiving customer information and an email template from a user, means for reading the received customer information, means for personalizing the email template based on the read customer information and generating a plurality of individual emails, means for setting a transmission schedule for the generated individual emails, means for personalizing the individual emails so that they include information about commercial services, and means for automatically sending the individual emails according to the set schedule, thereby enabling efficient creation, management, and transmission of emails including personalized commercial information.
[1005] A "user" is an entity that operates the system and provides customer information and email templates.
[1006] "Customer Information" means information necessary to personalize and send emails, such as the customer's name, company name, and email address.
[1007] An "email template" is a text that serves as the basis for a personalized email, and is written in a format that includes placeholders.
[1008] "Personalization" means dynamically replacing placeholders in email templates based on customer information and changing the content to suit individual customers.
[1009] "Individual emails" are emails that are personalized and generated for specific customers.
[1010] A "transmission schedule" is a plan or plan for sending an individual email at a specified timing.
[1011] "Information about commercial services" is information related to the promotion of specific commercial activities, services, or products.
[1012] A "scheduling library" is a library for managing and automating email sending tasks according to specified times.
[1013] A "server" is a computer system that reads customer information, personalizes email templates, creates individual emails, sets sending schedules, and sends emails.
[1014] "SMTP" is a protocol for sending email over the Internet.
[1015] This invention relates to a system that automatically generates and sends emails containing personalized commercial information based on customer information and email templates provided by users. The server implements the invention using the following hardware and software:
[1016] The server accepts the customer information (e.g., customer name, company name, email address, etc.) provided by the user, the path to the email template file, and the sending schedule. At this time, the user specifies a CSV file containing the customer list and a text file that will be the basis for the email. The terminal receives this input and passes the information to the server.
[1017] When loading the customer list, the server reads the specified customer list file (CSV format) and stores the data as an internal list. This list contains information such as customer name, company name, and email address. Next, when loading the email template, the server reads the specified email template file (text format) and stores it as a template. This template contains placeholders (e.g., $NAME$, $COMPANY$) that are later replaced with customer information.
[1018] When generating the email content, the server personalizes the email template based on the information in the customer list. For each customer, the placeholders in the template are replaced with the corresponding customer data, and multiple individual emails containing personalized commercial information are generated. This process generates emails with different content for each customer.
[1019] When setting an email sending schedule, the server schedules email sending tasks according to the sending schedule specified by the user. A scheduling library is used to ensure that emails are sent automatically at the specified time. This library manages the sending time and automates email sending.
[1020] When sending emails, the server sends personalized individual emails via the SMTP protocol according to the set schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[1021] Specific examples
[1022] A user accesses the system and enters the following information:
[1023] Path to the customer list file (e.g., customers.csv)
[1024] Path to the email template file (e.g. email_template.txt)
[1025] Sending schedule (e.g., every day at 9:00)
[1026] Example prompt sentence:
[1027] "Automatically generate personalized emails based on the customer list file (customers.csv) and email template file (email_template.txt) and send them according to the set schedule. The sending schedule is set to 9:00 every day."
[1028] This process allows users to efficiently conduct sales activities without having to manually create emails. Furthermore, the system sends emails containing personalized commercial information to each customer, improving customer satisfaction and sales efficiency.
[1029] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1030] Step 1:
[1031] A user accesses the system and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., 9:00 every day).
[1032] Input: Path of customer list file, Path of email template file, Sending schedule
[1033] Output: Input file path and schedule information
[1034] Specific operation: The terminal receives the path and schedule specified by the user and passes them to the server.
[1035] Step 2:
[1036] The server reads the specified customer list file (CSV format), which contains information such as customer names, company names, and email addresses.
[1037] Input: Path to the customer list file
[1038] Output: Internal list of customer information
[1039] Specific operation: The server opens the CSV file, reads the information in each row, and stores it as an internal list.
[1040] Step 3:
[1041] The server loads the specified email template file (text format), which contains placeholders (e.g., $NAME$, $COMPANY$).
[1042] Input: Path to email template file
[1043] Output: Email template text data
[1044] Specific operation: The server opens the text file, reads the contents of the file, and saves it as a template.
[1045] Step 4:
[1046] The server generates multiple individual emails by personalizing email templates based on the customer list information, replacing placeholders with the corresponding customer data.
[1047] Input: Internal list of customer information, text data of email template
[1048] Output: Personalized individual email list
[1049] What happens: The server inserts each customer's information into the template placeholders and generates a separate, personalized email.
[1050] Step 5:
[1051] The server schedules the email sending task according to the sending schedule specified by the user, using a scheduling library.
[1052] Inputs: Sending schedule, personalized individual email list
[1053] Output: Scheduled email sending task
[1054] What it does: The server uses a scheduling library to set up a task to send an email at a specified time.
[1055] Step 6:
[1056] The server sends personalized emails via the SMTP protocol according to a set schedule, and the email content is converted to MIME format.
[1057] Inputs: Scheduled email sending tasks, personalized individual email lists
[1058] Output: Email sent
[1059] What happens: The server connects to the SMTP server, authenticates, and then sends the email. Each email is converted to MIME format and sent to the specified email address.
[1060] Through these steps, users can eliminate the need to manually create emails and conduct sales activities more efficiently. In addition, sending emails containing personalized commercial information improves customer satisfaction and sales efficiency.
[1061] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1062] This invention relates to a system that automates the creation and sending of sales emails and combines it with an emotion engine that recognizes the user's emotions. This system dynamically adjusts the content of emails according to the user's emotional state, enabling more effective customer communication.
[1063] Overall system picture
[1064] Accepting user input:
[1065] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user provides this information through an input form.
[1066] Emotion Recognition with Emotion Engine:
[1067] The server recognizes emotions from user input or interaction. The emotion engine analyzes the user's text input or voice input to identify the user's emotional state (e.g., happy, anger, sadness).
[1068] Loading a customer list:
[1069] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[1070] Loading an email template:
[1071] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[1072] Tailor email templates based on sentiment:
[1073] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user has the emotion "joy," the tone and message content in the email template will be adjusted to a more cheerful expression.
[1074] Generate email content:
[1075] The server uses the tailored email template to generate personalized emails using the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a unique email for each customer.
[1076] Schedule an email to be sent:
[1077] The server schedules the email sending task according to the sending schedule specified by the user. Using a scheduling library, emails are sent automatically at the specified time.
[1078] Sending email:
[1079] The server sends personalized emails via the SMTP protocol according to a schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[1080] Specific examples
[1081] A user accesses the system and enters the following information:
[1082] Path to the customer list file (e.g., customers.csv)
[1083] Path to the email template file (e.g. email_template.txt)
[1084] Sending schedule (e.g., every day at 9:00)
[1085] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[1086] The server reads the customer list file to retrieve customer information, then uses tailored email templates to generate personalized emails for each customer, each containing content that matches the user's emotional state.
[1087] Finally, the server will use the scheduling library to set up an email sending task according to the configured sending schedule, and at the specified time, the server will automatically send the email via the SMTP protocol.
[1088] This process not only allows users to efficiently create and send sales emails, but also enables emotionally-driven, personalized communication.
[1089] The processing flow will be explained below.
[1090] Step 1:
[1091] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information via an interactive interface or an input form.
[1092] Step 2:
[1093] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[1094] Step 3:
[1095] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[1096] Step 4:
[1097] The server analyzes the user's input using an emotion engine. The server passes the user's text input, and optionally voice input, to the emotion engine to detect the user's emotional state (e.g., joy, anger, sadness).
[1098] Step 5:
[1099] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user expresses the emotion "joy," the server adjusts the tone and content of the email template to make it more cheerful.
[1100] Step 6:
[1101] The server generates personalized emails using the tailored email template with the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a personalized email for each customer.
[1102] Step 7:
[1103] The server stores the generated individual emails in a list. Each email contains the recipient's email address and the email content. This allows multiple emails customized for a specific customer to be managed in a centralized manner.
[1104] Step 8:
[1105] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[1106] Step 9:
[1107] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[1108] Step 10:
[1109] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[1110] Example 2
[1111] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1112] Conventional sales email creation systems had the problem that they could only send uniform template emails without dynamically adjusting based on the user's emotions. This meant that the level of personalization for each customer was low, making it difficult to communicate effectively based on the customer's emotions. Furthermore, managing the email sending schedule had to be done manually, making efficient operation difficult.
[1113] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1114] In this invention, the server includes a means for recognizing emotions from user input and interactions, a means for reading accepted customer information, and a means for personalizing email templates based on the read customer information and generating multiple individual emails dynamically adjusted according to the user's emotional state. This allows email content to be dynamically adjusted based on the user's emotions, enabling more effective customer communication. Furthermore, efficient email sending is achieved through automatic management of the sending schedule.
[1115] A "user" is a person or organization that uses the system to enter customer information, specify email templates, and schedule emails to be sent.
[1116] "Customer Information" is data used to personalize emails, such as a customer's name, company name, and email address.
[1117] An "email template" is a predefined email text that contains placeholders for filling in customer information.
[1118] "Means for recognizing emotions" is a function that analyzes user input and interactions to identify emotional states such as joy, anger, sadness, etc.
[1119] "Dynamically tailored personalized emails" are emails personalized to each customer, with tone and message content altered based on the perceived emotional state of the user.
[1120] The "means for setting a transmission schedule" is a function that allows the system to plan email transmission so that email is automatically sent at a time specified by the user.
[1121] "Automatic sending means" is a function that allows the system to send emails according to a set schedule without human intervention.
[1122] A "scheduling library" is a software library for executing tasks at specific times or intervals.
[1123] A "placeholder" is a temporary symbol or string included in an email template that is replaced with customer information.
[1124] The present invention relates to a system that creates and sends personalized sales emails to customers based on information entered by the user, and further, that recognizes the user's emotional state and dynamically adjusts the content of the emails.
[1125] User-provided input information
[1126] The user accesses the system interface and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., every day at 9:00) using the input form. This allows the terminal to accept information from the user.
[1127] Sending input information from the device to the server
[1128] The terminal sends the input information provided by the user to the server. This process involves sending the form submission to the server as a POST request using the HTTP protocol.
[1129] Emotion recognition by server
[1130] The server sends the user's input text or voice data to an emotion engine (e.g., Microsoft Azure Emotion API) to analyze the user's emotional state. The emotion engine identifies emotions such as joy, anger, and sadness and returns the results to the server.
[1131] Server loads customer list
[1132] The server reads the CSV customer list file specified by the user, processes the data using the Python pandas library, and stores the customer information in an internal list.
[1133] Server Loading of Email Templates
[1134] The server reads the email template file (text format) specified by the user and stores its contents in an internal variable. This template contains placeholders that will be replaced with customer information.
[1135] Server-based email template adjustments
[1136] The server dynamically adjusts the email template based on the output of the emotion engine. For example, if the user feels "joy," the tone and message content in the email template will be adjusted to be more upbeat.
[1137] Server-generated email content
[1138] The server generates personalized emails based on templates, filling in customer information, and then replaces the placeholders with the corresponding customer information to generate individual email content for each customer.
[1139] Server-based email scheduling
[1140] The server sets up the email sending task according to the specified sending schedule using the Python schedule library, which allows you to schedule emails to be completed at a specific time.
[1141] Server sends email
[1142] The server sends personalized emails according to a schedule via the SMTP protocol, converting the email content to MIME format and sending it to the specified email address using Python's smtplib.
[1143] Specific examples
[1144] A user accesses the system and enters the following information:
[1145] Customer list file path: customers.csv
[1146] Email template file path: email_template.txt
[1147] Sending schedule: 09:00 every day
[1148] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[1149] The server uses the pandas library to read the customer list file and extract customer information, then uses the loaded email template to generate personalized emails for each customer, replacing placeholders in the template with the corresponding customer information and including content tailored to the user's emotional state.
[1150] Example prompt sentence:
[1151] input_file: customers.csv
[1152] template_file: email_template.txt
[1153] Schedule: Every day 09:00
[1154] This allows users to efficiently create and send sales emails, enabling personalized customer communication based on emotions.
[1155] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1156] Step 1: User provides input information
[1157] The user accesses the system interface and inputs the path of the customer list file, the path of the email template file, and the sending schedule. Specifically, the user fills in this information in the input form on the browser and presses the send button.
[1158] Input: Path of customer list file, Path of email template file, Sending schedule
[1159] Output: The data structure in which the terminal holds the user's input information.
[1160] Step 2: Sending input information to the server
[1161] The terminal sends the information entered by the user to the server. Specifically, the terminal sends a POST request to the server using the HTTP protocol.
[1162] Input: User-supplied input information
[1163] Output: User input sent to the server
[1164] Step 3: Emotion recognition by the server
[1165] The server sends the user's input text and voice data to the emotion engine and analyzes their emotional state. Specifically, the server calls the emotion recognition API to obtain and analyze the user's emotional state.
[1166] Input: User input data (text or voice)
[1167] Output: User's emotional state (e.g., happy, angry, sad)
[1168] Step 4: Server loads the customer list
[1169] The server reads the specified customer list file. Specifically, it reads the CSV file as a data frame using the pandas library.
[1170] Input: Path to the customer list file
[1171] Output: Customer information converted into an internal data frame
[1172] Step 5: Server Loading of Email Templates
[1173] The server loads the specified email template file. Specifically, it stores the contents of the template file as a string.
[1174] Input: Path to email template file
[1175] Output: The content of the loaded email template
[1176] Step 6: Server-based email template adjustments
[1177] The server dynamically adjusts the email template based on the output of the emotion engine, specifically by changing certain phrases and tones in the email template to match the emotion.
[1178] Input: Email template content, user emotional state
[1179] Output: Email templates tailored based on sentiment
[1180] Step 7: Server Generates Email Content
[1181] The server generates a personalized email by filling in the customer information based on the adjusted template, specifically by replacing the placeholders in the template with the corresponding customer information.
[1182] Input: Customer information, adjusted email template
[1183] Output: Personalized individual email
[1184] Step 8: Schedule server-based email delivery
[1185] The server sets up email sending tasks based on the specified sending schedule, using the Python schedule library to manage the schedule.
[1186] Input: Sending schedule, personalized individual emails
[1187] Output: Scheduled email sending task
[1188] Step 9: Server sends email
[1189] The server sends personalized emails according to a schedule, using smtplib to connect to an SMTP server and send emails in MIME format.
[1190] Inputs: Scheduled email sending tasks, personalized individual emails
[1191] Output: Email sent
[1192] (Application example 2)
[1193] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1194] Conventional sales email creation and sending systems have the problem of being unable to dynamically adjust email content based on user sentiment, resulting in the sending of uniform content. This results in ineffective communication with customers, which can lead to lower satisfaction and engagement. Furthermore, setting and managing sending schedules is often manual, resulting in inefficiencies.
[1195] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for accepting customer information and template information from a user, means for reading the accepted customer information, emotion analysis means for recognizing the user's emotion, means for dynamically adjusting the tone of the template based on the recognized emotion, means for generating a plurality of personalized communication contents based on the read customer information, means for setting a transmission schedule for the generated communication contents, and means for automatically sending the generated communication contents according to the set schedule. This allows individual personalized emails that reflect the user's emotion to be efficiently generated and sent, enabling effective communication with customers.
[1196] A "user" is a person who utilizes the system to provide customer information and template information and to instruct the generation and transmission of personalized communication content.
[1197] "Customer Information" refers to information that identifies an individual customer, such as the customer's name, contact information, and affiliations.
[1198] "Template information" is a standard text that serves as the basis for email and notification content, and is a document with a basic structure before being dynamically adjusted and personalized.
[1199] "Emotion analysis means" refers to analytical technology or software that recognizes emotions from user input and interactions and identifies their emotional state.
[1200] "Tone" refers to the mood and expression of an email or communication, which changes depending on the user's emotional state.
[1201] "Communication content" refers to personalized emails and notifications, including specific messages generated based on customer information and user sentiment.
[1202] "Transmission schedule" refers to a plan or timetable for transmitting communications based on specific set dates and times.
[1203] A "scheduling library" refers to a collection of programs and tools for automatically managing the execution of tasks and processes according to specific times and conditions.
[1204] "Means for automatically transmitting" refers to a function that allows the system to automatically transmit communication content based on a preset schedule without manual operation by the user.
[1205] This invention relates to a system that analyzes user emotions and automatically creates and sends personalized sales emails based on the analysis. This system includes the following elements:
[1206] The server provides an input form as a means for receiving customer information and template information from the user, through which the user inputs the customer information, the path of the template file, and the transmission schedule.
[1207] Next, the server reads the accepted customer information by reading the customer list file (e.g., CSV format) and stores the customer names, contact information, etc. internally.
[1208] The server has a sentiment analysis mechanism to recognize the user's emotions. This sentiment analysis uses an emotion engine to analyze the user's input and interactions to identify their emotional state, such as happy, sad, or neutral. This sentiment analysis is performed using TextBlob or a similar natural language processing library.
[1209] Based on the recognized emotion, the server has the means to dynamically adjust the tone of the template. For example, if the user's emotion is recognized as "joy," the tone and expression in the template will be adjusted to be brighter and more positive. This adjustment is done by replacing specific placeholders in the template with emotion-specific phrases.
[1210] Based on the loaded customer information, the server also has the means to generate multiple personalized communications, dynamically substituting customer information for placeholders in tailored templates for each customer.
[1211] Additionally, the server has a means to schedule the transmission of generated communications, which is managed using a scheduling library (e.g., Python's schedule library) based on user-specified timing.
[1212] The server has the means to automatically send the generated communication according to a set schedule, by sending the email content in MIME format using the SMTP protocol.
[1213] As a concrete example, suppose a user enters the following information into the system:
[1214] Customer list file path: customers.csv
[1215] Email template file path: email_template.txt
[1216] Sending schedule: 09:00 every day
[1217] Text that expresses an emotional state: Thank you for your purchase! Everything went well!
[1218] Based on this, the server recognizes the user's emotional state as "joy" and dynamically adjusts the tone of the template accordingly, then generates individual personalized emails based on information read from the customer list and automatically sends them according to the specified schedule.
[1219] An example of a prompt to be input to the generative AI model is as follows:
[1220] "Write a program that recognizes the user's emotional state and generates a personalized sales email with the appropriate tone. The user's emotional state is taken from the following text: 'Thank you for your purchase! Everything went well!'"
[1221] In this way, the present invention enables efficient generation and transmission of personalized emails that reflect the user's emotions, thereby enabling effective communication with customers.
[1222] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1223] Step 1:
[1224] The user enters customer information, template information, and sending schedule through an input form. The input information includes the path of the customer list file, the path of the email template file, the text that expresses the emotional state, and the sending timing. All the data required by the system is then sent to the server.
[1225] Step 2:
[1226] The server reads a customer list file containing customer information provided by the user. In this process, it parses the CSV file and stores information such as customer name, contact information, and company name in an internal data structure. The input is the path to the CSV file, and the output is the internal data structure.
[1227] Step 3:
[1228] The server reads the template information provided by the user. The template file is in text format, and it reads it into memory and checks that placeholders (e.g., $NAME$, $COMPANY$) are embedded. The input is the path to the template file, and the output is the template content.
[1229] Step 4:
[1230] The server analyzes the user's text input using a sentiment analyzer, which uses a natural language parsing library such as TextBlob to identify the emotional state (e.g., happy, sad, neutral). The input is text expressing the emotion, and the output is the recognized emotional state.
[1231] Step 5:
[1232] The server dynamically adjusts the tone of the template based on the recognized emotional state. In this step, it replaces certain placeholders in the template content with emotion-specific phrases. For example, for "joy," it changes the template tone to a brighter, more positive one. The input is the recognized emotional state and the template content, and the output is the adjusted template.
[1233] Step 6:
[1234] The server generates multiple personalized communications based on the loaded customer information. For each customer, placeholders in the tailored template are dynamically replaced with the customer's information. During this process, information such as the customer's name, company name, and email address are inserted in the appropriate places to generate individual emails. The input is the customer information and the tailored template, and the output is a personalized email for each customer.
[1235] Step 7:
[1236] The server schedules the generated communications for transmission. Based on the timing specified by the user, it uses a scheduling library (e.g., Python's schedule library) to set the send date and time for each email. The input is the transmission schedule information, and the output is the scheduled task.
[1237] Step 8:
[1238] According to the configured schedule, the server automatically sends generated correspondence. Here, it uses the SMTP protocol to convert the email content into MIME format and send it to the specified email address. The input is the scheduled task and the output is the sent email.
[1239] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1240] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1241] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1242] [Fourth embodiment]
[1243] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1244] 7, a 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.
[1245] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1246] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1247] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1248] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1249] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1250] The control object 443 includes a display device, LEDs in the eyes, and motors for driving 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 emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1251] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1252] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[1253] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1254] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1255] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1256] This invention relates to a system that automates the creation and sending of sales emails. This system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[1257] Overall system picture
[1258] Accepting user input:
[1259] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[1260] Loading a customer list:
[1261] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[1262] Loading an email template:
[1263] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[1264] Generate email content:
[1265] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, the placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[1266] Schedule an email to be sent:
[1267] The server schedules the email sending task according to the sending schedule specified by the user. The scheduling library is used to ensure that emails are sent automatically at the specified time.
[1268] Sending email:
[1269] The server sends personalized emails via the SMTP protocol according to the schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[1270] Specific examples
[1271] A user accesses the system and enters the following information:
[1272] Path to the customer list file (e.g., customers.csv)
[1273] Path to the email template file (e.g. email_template.txt)
[1274] Sending schedule (e.g., every day at 9:00)
[1275] The terminal receives these inputs and passes the information to the server, which first reads the customer list file to get each customer's information, then reads the email template file and replaces the placeholders in the template with the customer information to generate a personalized email for each customer.
[1276] The server then schedules an email sending task according to the user-specified schedule (daily at 09:00), at which point the server is configured to automatically send emails via the SMTP protocol.
[1277] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[1278] The processing flow will be explained below.
[1279] Step 1:
[1280] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information through an interactive interface or an input form.
[1281] Step 2:
[1282] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[1283] Step 3:
[1284] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[1285] Step 4:
[1286] The server personalizes the email template based on the customer information. For each row in the customer list, the server replaces the placeholders (e.g., $NAME$, $COMPANY$) in the email template with the corresponding customer information. This generates a personalized email for each customer.
[1287] Step 5:
[1288] The server stores personalized emails in a list, each containing the recipient's email address and the email content, allowing multiple emails customized for specific customers to be managed in one place.
[1289] Step 6:
[1290] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[1291] Step 7:
[1292] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[1293] Step 8:
[1294] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[1295] Example 1
[1296] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1297] Creating and sending sales emails in the past required manual work, requiring a lot of time and effort. It was also difficult to send personalized emails to individual customers, significantly reducing sales efficiency. Furthermore, manually managing the timing of email sending was prone to errors, making it difficult to send emails at the right time.
[1298] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1299] In this invention, the server includes means for accepting customer information and email templates from a user, means for reading the accepted customer information, means for personalizing the email template based on the read customer information and generating multiple individual emails, means for setting a transmission schedule for the generated individual emails, means for automatically sending the individual emails according to the set schedule, and means for sending the individual emails using the SMTP protocol. This eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system dynamically sends personalized emails to each customer, improving customer satisfaction and sales efficiency. Furthermore, the use of a scheduling library enables automatic email sending at the appropriate time, reducing errors.
[1300] "User" means a person or entity that uses the System to create and send marketing emails.
[1301] "Customer Information" means information about the person or entity to whom the email is addressed, including name, company name, email address, etc.
[1302] An "email template" is a text file that defines the basic format of an email and includes placeholders for filling in customer information in specific locations.
[1303] "Personalization" refers to the process of generating content that is customized for each customer by replacing placeholders in a generic template with individual customer information.
[1304] "Personalized email" refers to each personalized email that contains information specific to each customer.
[1305] A "sending schedule" is a plan that defines the date, time, and frequency for sending individual emails.
[1306] "SMTP protocol" stands for Simple Mail Transfer Protocol and is a communication protocol used to send email.
[1307] A "scheduling library" is a software component that manages and executes the scheduling of tasks within a program.
[1308] This invention relates to a system that automates the creation and sending of sales emails. The system has the function of automatically generating personalized emails based on customer information and email templates provided by the user, and sending them according to a predetermined schedule.
[1309] Overall system picture
[1310] Accepting user input:
[1311] The terminal accepts customer information (e.g., customer name, company name, email address, etc.) from the user, the path to the email template file, and the sending schedule. The user specifies a CSV file containing the customer list and a text file that will be the basis for the email.
[1312] Loading a customer list:
[1313] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[1314] Loading an email template:
[1315] The server reads the specified email template file (in text format) and stores it as a template, which contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with the customer information.
[1316] Generate email content:
[1317] The server generates multiple emails by personalizing email templates based on the customer list information. For each customer, placeholders in the template are replaced with the corresponding customer data, resulting in a unique email for each customer.
[1318] Schedule an email to be sent:
[1319] The server schedules the email sending task according to the sending schedule specified by the user. Use a scheduling library (e.g., Python's schedule library) to set up the email to be sent automatically at the specified time.
[1320] Sending email:
[1321] The server sends personalized emails via the SMTP protocol according to the specified schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, and then sends the email.
[1322] Specific examples
[1323] A user accesses the system and enters the following information:
[1324] Path to the customer list file (e.g., customers.csv)
[1325] Path to the email template file (e.g. email_template.txt)
[1326] Sending schedule (e.g., every day at 9:00)
[1327] The terminal receives these inputs and passes the information to the server. The server first reads the customer list file and gets the information for each customer. The customer list contains the following data:
[1328] Name, Company, Email
[1329] Taro Yamada, ABC Company, tarou.yamada@abc.com
[1330] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[1331] The server then reads the email template file and replaces the placeholders in the following template with customer information to generate a personalized email for each customer:
[1332] Subject: Thank you, $NAME$ from $COMPANY$
[1333] Dear $NAME$,
[1334] Hello, this is information about our new product.
[1335] Thank you very much.
[1336] For example, an email to Taro Yamada might look like this:
[1337] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[1338] Mr. Taro Yamada
[1339] Hello, this is information about our new product.
[1340] Thank you very much.
[1341] The server then schedules an email sending task according to the user-specified schedule (every day at 09:00), at which point the server will automatically send the email via the SMTP protocol.
[1342] The above process eliminates the need for users to manually create and send emails, significantly streamlining sales activities. Furthermore, the system sends personalized emails to each customer, improving customer satisfaction and sales efficiency.
[1343] Example prompts for generative AI models
[1344] Example input:
[1345] A user specifies a customer list file (customers.csv) and an email template file (email_template.txt) and schedules an email to be sent daily at 9:00.
[1346] Corresponding example output:
[1347] The server reads the customer list, replaces placeholders in email templates with customer information to generate personalized emails, and automatically sends the emails via the SMTP protocol according to a specified schedule.
[1348] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1349] Step 1: User Input
[1350] Specific behavior:
[1351] A user logs into a system and enters the following information into a terminal:
[1352] Path to the customer list file (e.g., customers.csv)
[1353] Path to the email template file (e.g. email_template.txt)
[1354] Sending schedule (e.g., every day at 9:00)
[1355] input:
[1356] The path of the customer list file, the path of the template file, and the sending schedule entered by the user
[1357] output:
[1358] The path of the customer list file, the path of the template file, and the transmission schedule that the terminal sends to the server
[1359] Step 2: Loading the customer list
[1360] Specific behavior:
[1361] The server receives the path to the customer list file (e.g., customers.csv). The server uses the file path to open the CSV file and reads the customer information. For example, "customers.csv" contains the following data:
[1362] Name, Company, Email
[1363] Taro Yamada, ABC Company, tarou.yamada@abc.com
[1364] Hanako Sato, XYZ Company, hanako.sato@xyz.com
[1365] The server keeps this data as an internal list.
[1366] input:
[1367] Path to the customer list file received from the terminal
[1368] output:
[1369] Customer information stored as an internal list
[1370] Step 3: Loading the email template
[1371] Specific behavior:
[1372] The server receives the path to the email template file and opens the specified text file. For example, "email_template.txt" contains the following template:
[1373] Subject: Thank you, $NAME$ from $COMPANY$
[1374] Dear $NAME$,
[1375] Hello, this is information about our new product.
[1376] Thank you very much.
[1377] The server stores this template internally.
[1378] input:
[1379] Path to the email template file received from the terminal
[1380] output:
[1381] Internally stored email templates
[1382] Step 4: Generate an email
[1383] Specific behavior:
[1384] The server generates a personalized email for each customer based on the customer information stored internally and the email template. Specifically, it replaces the placeholders ($NAME$, $COMPANY$) in the template with the customer's information. For example, the email for Taro Yamada looks like this:
[1385] Subject: Thank you for your continued support, Taro Yamada from ABC Company
[1386] Mr. Taro Yamada
[1387] Hello, this is information about our new product.
[1388] Thank you very much.
[1389] In this way, the server generates email for each customer and stores the contents of the email.
[1390] input:
[1391] Internally stored customer information, email templates
[1392] output:
[1393] Personalized, personalized emails
[1394] Step 5: Schedule your email
[1395] Specific behavior:
[1396] Based on the sending schedule received from the user, the server uses a scheduling library (e.g., Python's schedule library) to schedule the sending task. For example, you can set it to send an email at 9:00 every day.
[1397] input:
[1398] User-specified transmission schedule
[1399] output:
[1400] Configured sending task
[1401] Step 6: Sending an email
[1402] Specific behavior:
[1403] The server sends personalized emails according to a schedule via the SMTP protocol. Specifically, the server connects to an SMTP server (e.g., Gmail's SMTP server), performs authentication, converts the generated email into MIME format, and sends it.
[1404] input:
[1405] Set up sending tasks, personalized individual emails
[1406] output:
[1407] Personalized emails sent to customer email addresses
[1408] (Application example 1)
[1409] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1410] Conventional sales email creation and sending systems required time and effort to personalize emails and manage sending schedules, reducing the efficiency of users' sales activities. It was also difficult to send personalized emails containing information about specific commercial services to attract customers' interest. This made it difficult to increase customers' purchasing motivation and hindered the effective execution of business operations.
[1411] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1412] In this invention, the server includes means for receiving customer information and an email template from a user, means for reading the received customer information, means for personalizing the email template based on the read customer information and generating a plurality of individual emails, means for setting a transmission schedule for the generated individual emails, means for personalizing the individual emails so that they include information about commercial services, and means for automatically sending the individual emails according to the set schedule, thereby enabling efficient creation, management, and transmission of emails including personalized commercial information.
[1413] A "user" is an entity that operates the system and provides customer information and email templates.
[1414] "Customer Information" means information necessary to personalize and send emails, such as the customer's name, company name, and email address.
[1415] An "email template" is a text that serves as the basis for a personalized email, and is written in a format that includes placeholders.
[1416] "Personalization" means dynamically replacing placeholders in email templates based on customer information and changing the content to suit individual customers.
[1417] "Individual emails" are emails that are personalized and generated for specific customers.
[1418] A "transmission schedule" is a plan or plan for sending an individual email at a specified timing.
[1419] "Information about commercial services" is information related to the promotion of specific commercial activities, services, or products.
[1420] A "scheduling library" is a library for managing and automating email sending tasks according to specified times.
[1421] A "server" is a computer system that reads customer information, personalizes email templates, creates individual emails, sets sending schedules, and sends emails.
[1422] "SMTP" is a protocol for sending email over the Internet.
[1423] This invention relates to a system that automatically generates and sends emails containing personalized commercial information based on customer information and email templates provided by users. The server implements the invention using the following hardware and software:
[1424] The server accepts the customer information (e.g., customer name, company name, email address, etc.) provided by the user, the path to the email template file, and the sending schedule. At this time, the user specifies a CSV file containing the customer list and a text file that will be the basis for the email. The terminal receives this input and passes the information to the server.
[1425] When loading the customer list, the server reads the specified customer list file (CSV format) and stores the data as an internal list. This list contains information such as customer name, company name, and email address. Next, when loading the email template, the server reads the specified email template file (text format) and stores it as a template. This template contains placeholders (e.g., $NAME$, $COMPANY$) that are later replaced with customer information.
[1426] When generating the email content, the server personalizes the email template based on the information in the customer list. For each customer, the placeholders in the template are replaced with the corresponding customer data, and multiple individual emails containing personalized commercial information are generated. This process generates emails with different content for each customer.
[1427] When setting an email sending schedule, the server schedules email sending tasks according to the sending schedule specified by the user. A scheduling library is used to ensure that emails are sent automatically at the specified time. This library manages the sending time and automates email sending.
[1428] When sending emails, the server sends personalized individual emails via the SMTP protocol according to the set schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[1429] Specific examples
[1430] A user accesses the system and enters the following information:
[1431] Path to the customer list file (e.g., customers.csv)
[1432] Path to the email template file (e.g. email_template.txt)
[1433] Sending schedule (e.g., every day at 9:00)
[1434] Example prompt sentence:
[1435] "Automatically generate personalized emails based on the customer list file (customers.csv) and email template file (email_template.txt) and send them according to the set schedule. The sending schedule is set to 9:00 every day."
[1436] This process allows users to efficiently conduct sales activities without having to manually create emails. Furthermore, the system sends emails containing personalized commercial information to each customer, improving customer satisfaction and sales efficiency.
[1437] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1438] Step 1:
[1439] A user accesses the system and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., 9:00 every day).
[1440] Input: Path of customer list file, Path of email template file, Sending schedule
[1441] Output: Input file path and schedule information
[1442] Specific operation: The terminal receives the path and schedule specified by the user and passes them to the server.
[1443] Step 2:
[1444] The server reads the specified customer list file (CSV format), which contains information such as customer names, company names, and email addresses.
[1445] Input: Path to the customer list file
[1446] Output: Internal list of customer information
[1447] Specific operation: The server opens the CSV file, reads the information in each row, and stores it as an internal list.
[1448] Step 3:
[1449] The server loads the specified email template file (text format), which contains placeholders (e.g., $NAME$, $COMPANY$).
[1450] Input: Path to email template file
[1451] Output: Email template text data
[1452] Specific operation: The server opens the text file, reads the contents of the file, and saves it as a template.
[1453] Step 4:
[1454] The server generates multiple individual emails by personalizing email templates based on the customer list information, replacing placeholders with the corresponding customer data.
[1455] Input: Internal list of customer information, text data of email template
[1456] Output: Personalized individual email list
[1457] What happens: The server inserts each customer's information into the template placeholders and generates a separate, personalized email.
[1458] Step 5:
[1459] The server schedules the email sending task according to the sending schedule specified by the user, using a scheduling library.
[1460] Inputs: Sending schedule, personalized individual email list
[1461] Output: Scheduled email sending task
[1462] What it does: The server uses a scheduling library to set up a task to send an email at a specified time.
[1463] Step 6:
[1464] The server sends personalized emails via the SMTP protocol according to a set schedule, and the email content is converted to MIME format.
[1465] Inputs: Scheduled email sending tasks, personalized individual email lists
[1466] Output: Email sent
[1467] What happens: The server connects to the SMTP server, authenticates, and then sends the email. Each email is converted to MIME format and sent to the specified email address.
[1468] Through these steps, users can eliminate the need to manually create emails and conduct sales activities more efficiently. In addition, sending emails containing personalized commercial information improves customer satisfaction and sales efficiency.
[1469] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1470] This invention relates to a system that automates the creation and sending of sales emails and combines it with an emotion engine that recognizes the user's emotions. This system dynamically adjusts the content of emails according to the user's emotional state, enabling more effective customer communication.
[1471] Overall system picture
[1472] Accepting user input:
[1473] The terminal accepts customer information (e.g., customer name, company name, email address, etc.), the path to the email template file, and the sending schedule from the user. The user provides this information through an input form.
[1474] Emotion Recognition with Emotion Engine:
[1475] The server recognizes emotions from user input or interaction. The emotion engine analyzes the user's text input or voice input to identify the user's emotional state (e.g., happy, anger, sadness).
[1476] Loading a customer list:
[1477] The server reads the specified customer list file (CSV format) and stores the data as an internal list, which contains information such as customer name, company name, and email address.
[1478] Loading an email template:
[1479] The server reads the specified email template file (text format) and saves it as a template. This template contains placeholders (e.g. $NAME$, $COMPANY$) that are later replaced with customer information.
[1480] Tailor email templates based on sentiment:
[1481] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user has the emotion "joy," the tone and message content in the email template will be adjusted to a more cheerful expression.
[1482] Generate email content:
[1483] The server uses the tailored email template to generate personalized emails using the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a unique email for each customer.
[1484] Schedule an email to be sent:
[1485] The server schedules the email sending task according to the sending schedule specified by the user. Using a scheduling library, emails are sent automatically at the specified time.
[1486] Sending email:
[1487] The server sends personalized emails via the SMTP protocol according to a schedule. When sending, the email content is converted to MIME format and sent to the specified email address. The server connects to the SMTP server, performs authentication, and then sends the email.
[1488] Specific examples
[1489] A user accesses the system and enters the following information:
[1490] Path to the customer list file (e.g., customers.csv)
[1491] Path to the email template file (e.g. email_template.txt)
[1492] Sending schedule (e.g., every day at 9:00)
[1493] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[1494] The server reads the customer list file to retrieve customer information, then uses tailored email templates to generate personalized emails for each customer, each containing content that matches the user's emotional state.
[1495] Finally, the server will use the scheduling library to set up an email sending task according to the configured sending schedule, and at the specified time, the server will automatically send the email via the SMTP protocol.
[1496] This process not only allows users to efficiently create and send sales emails, but also enables emotionally-driven, personalized communication.
[1497] The processing flow will be explained below.
[1498] Step 1:
[1499] The terminal accepts the path of the customer list file, the path of the email template file, and the sending schedule as input from the user. The user provides this information via an interactive interface or an input form.
[1500] Step 2:
[1501] The server reads customer information using the path of the customer list file received from the terminal. The server opens the CSV format customer list file from the specified path and stores information such as the customer's name, company name, and email address in a data frame.
[1502] Step 3:
[1503] The server loads the email template using the path of the email template file received from the terminal. The server opens the text format template file from the specified path and saves its contents as a string.
[1504] Step 4:
[1505] The server analyzes the user's input using an emotion engine. The server passes the user's text input, and optionally voice input, to the emotion engine to detect the user's emotional state (e.g., joy, anger, sadness).
[1506] Step 5:
[1507] The server dynamically adjusts email templates based on the output of the emotion engine. For example, if a user expresses the emotion "joy," the server adjusts the tone and content of the email template to make it more cheerful.
[1508] Step 6:
[1509] The server generates personalized emails using the tailored email template with the customer information. For each customer, the placeholders in the template are replaced with the corresponding customer information, resulting in a personalized email for each customer.
[1510] Step 7:
[1511] The server stores the generated individual emails in a list. Each email contains the recipient's email address and the email content. This allows multiple emails customized for a specific customer to be managed in a centralized manner.
[1512] Step 8:
[1513] The server schedules the email sending task based on the sending schedule specified by the user. The server uses a scheduling library to set the email sending function to be executed at a specific time every day.
[1514] Step 9:
[1515] At the specified time, the server will send the personalized email according to the schedule. The server will send the email to each customer's email address using the SMTP protocol. To send the email, a connection to the SMTP server and authentication are required, and the email will be converted to MIME format before being sent.
[1516] Step 10:
[1517] The server logs successful email transmissions, recording information about whether each email was sent successfully or if an error occurred, and sending error messages and notifications to the user as appropriate.
[1518] Example 2
[1519] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1520] Conventional sales email creation systems had the problem that they could only send uniform template emails without dynamically adjusting based on the user's emotions. This meant that the level of personalization for each customer was low, making it difficult to communicate effectively based on the customer's emotions. Furthermore, managing the email sending schedule had to be done manually, making efficient operation difficult.
[1521] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1522] In this invention, the server includes a means for recognizing emotions from user input and interactions, a means for reading accepted customer information, and a means for personalizing email templates based on the read customer information and generating multiple individual emails dynamically adjusted according to the user's emotional state. This allows email content to be dynamically adjusted based on the user's emotions, enabling more effective customer communication. Furthermore, efficient email sending is achieved through automatic management of the sending schedule.
[1523] A "user" is a person or organization that uses the system to enter customer information, specify email templates, and schedule emails to be sent.
[1524] "Customer Information" is data used to personalize emails, such as a customer's name, company name, and email address.
[1525] An "email template" is a predefined email text that contains placeholders for filling in customer information.
[1526] "Means for recognizing emotions" is a function that analyzes user input and interactions to identify emotional states such as joy, anger, sadness, etc.
[1527] "Dynamically tailored personalized emails" are emails personalized to each customer, with tone and message content altered based on the perceived emotional state of the user.
[1528] The "means for setting a transmission schedule" is a function that allows the system to plan email transmission so that email is automatically sent at a time specified by the user.
[1529] "Automatic sending means" is a function that allows the system to send emails according to a set schedule without human intervention.
[1530] A "scheduling library" is a software library for executing tasks at specific times or intervals.
[1531] A "placeholder" is a temporary symbol or string included in an email template that is replaced with customer information.
[1532] The present invention relates to a system that creates and sends personalized sales emails to customers based on information entered by the user, and further, that recognizes the user's emotional state and dynamically adjusts the content of the emails.
[1533] User-provided input information
[1534] The user accesses the system interface and enters the path to the customer list file (e.g., customers.csv), the path to the email template file (e.g., email_template.txt), and the sending schedule (e.g., every day at 9:00) using the input form. This allows the terminal to accept information from the user.
[1535] Sending input information from the device to the server
[1536] The terminal sends the input information provided by the user to the server. This process involves sending the form submission to the server as a POST request using the HTTP protocol.
[1537] Emotion recognition by server
[1538] The server sends the user's input text or voice data to an emotion engine (e.g., Microsoft Azure Emotion API) to analyze the user's emotional state. The emotion engine identifies emotions such as joy, anger, and sadness and returns the results to the server.
[1539] Server loads customer list
[1540] The server reads the CSV customer list file specified by the user, processes the data using the Python pandas library, and stores the customer information in an internal list.
[1541] Server Loading of Email Templates
[1542] The server reads the email template file (text format) specified by the user and stores its contents in an internal variable. This template contains placeholders that will be replaced with customer information.
[1543] Server-based email template adjustments
[1544] The server dynamically adjusts the email template based on the output of the emotion engine. For example, if the user feels "joy," the tone and message content in the email template will be adjusted to be more upbeat.
[1545] Server-generated email content
[1546] The server generates personalized emails based on templates, filling in customer information, and then replaces the placeholders with the corresponding customer information to generate individual email content for each customer.
[1547] Server-based email scheduling
[1548] The server sets up the email sending task according to the specified sending schedule using the Python schedule library, which allows you to schedule emails to be completed at a specific time.
[1549] Server sends email
[1550] The server sends personalized emails according to a schedule via the SMTP protocol, converting the email content to MIME format and sending it to the specified email address using Python's smtplib.
[1551] Specific examples
[1552] A user accesses the system and enters the following information:
[1553] Customer list file path: customers.csv
[1554] Email template file path: email_template.txt
[1555] Sending schedule: 09:00 every day
[1556] Once the user has completed their input, the device sends this information to the server, which then analyzes the user's input using an emotion engine and determines that the user is expressing "joy." Based on this emotional state, the email template is adjusted to a brighter tone.
[1557] The server uses the pandas library to read the customer list file and extract customer information, then uses the loaded email template to generate personalized emails for each customer, replacing placeholders in the template with the corresponding customer information and including content tailored to the user's emotional state.
[1558] Example prompt sentence:
[1559] input_file: customers.csv
[1560] template_file: email_template.txt
[1561] Schedule: Every day 09:00
[1562] This allows users to efficiently create and send sales emails, enabling personalized customer communication based on emotions.
[1563] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1564] Step 1: User provides input information
[1565] The user accesses the system interface and inputs the path of the customer list file, the path of the email template file, and the sending schedule. Specifically, the user fills in this information in the input form on the browser and presses the send button.
[1566] Input: Path of customer list file, Path of email template file, Sending schedule
[1567] Output: The data structure in which the terminal holds the user's input information.
[1568] Step 2: Sending input information to the server
[1569] The terminal sends the information entered by the user to the server. Specifically, the terminal sends a POST request to the server using the HTTP protocol.
[1570] Input: User-supplied input information
[1571] Output: User input sent to the server
[1572] Step 3: Emotion recognition by the server
[1573] The server sends the user's input text and voice data to the emotion engine and analyzes their emotional state. Specifically, the server calls the emotion recognition API to obtain and analyze the user's emotional state.
[1574] Input: User input data (text or voice)
[1575] Output: User's emotional state (e.g., happy, angry, sad)
[1576] Step 4: Server loads the customer list
[1577] The server reads the specified customer list file. Specifically, it reads the CSV file as a data frame using the pandas library.
[1578] Input: Path to the customer list file
[1579] Output: Customer information converted into an internal data frame
[1580] Step 5: Server Loading of Email Templates
[1581] The server loads the specified email template file. Specifically, it stores the contents of the template file as a string.
[1582] Input: Path to email template file
[1583] Output: The content of the loaded email template
[1584] Step 6: Server-based email template adjustments
[1585] The server dynamically adjusts the email template based on the output of the emotion engine, specifically by changing certain phrases and tones in the email template to match the emotion.
[1586] Input: Email template content, user emotional state
[1587] Output: Email templates tailored based on sentiment
[1588] Step 7: Server Generates Email Content
[1589] The server generates a personalized email by filling in the customer information based on the adjusted template, specifically by replacing the placeholders in the template with the corresponding customer information.
[1590] Input: Customer information, adjusted email template
[1591] Output: Personalized individual email
[1592] Step 8: Schedule server-based email delivery
[1593] The server sets up email sending tasks based on the specified sending schedule, using the Python schedule library to manage the schedule.
[1594] Input: Sending schedule, personalized individual emails
[1595] Output: Scheduled email sending task
[1596] Step 9: Server sends email
[1597] The server sends personalized emails according to a schedule, using smtplib to connect to an SMTP server and send emails in MIME format.
[1598] Inputs: Scheduled email sending tasks, personalized individual emails
[1599] Output: Email sent
[1600] (Application example 2)
[1601] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1602] Conventional sales email creation and sending systems have the problem of being unable to dynamically adjust email content based on user sentiment, resulting in the sending of uniform content. This results in ineffective communication with customers, which can lead to lower satisfaction and engagement. Furthermore, setting and managing sending schedules is often manual, resulting in inefficiencies.
[1603] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for accepting customer information and template information from a user, means for reading the accepted customer information, emotion analysis means for recognizing the user's emotion, means for dynamically adjusting the tone of the template based on the recognized emotion, means for generating a plurality of personalized communication contents based on the read customer information, means for setting a transmission schedule for the generated communication contents, and means for automatically sending the generated communication contents according to the set schedule. This allows individual personalized emails that reflect the user's emotion to be efficiently generated and sent, enabling effective communication with customers.
[1604] A "user" is a person who utilizes the system to provide customer information and template information and to instruct the generation and transmission of personalized communication content.
[1605] "Customer Information" refers to information that identifies an individual customer, such as the customer's name, contact information, and affiliations.
[1606] "Template information" is a standard text that serves as the basis for email and notification content, and is a document with a basic structure before being dynamically adjusted and personalized.
[1607] "Emotion analysis means" refers to analytical technology or software that recognizes emotions from user input and interactions and identifies their emotional state.
[1608] "Tone" refers to the mood and expression of an email or communication, which changes depending on the user's emotional state.
[1609] "Communication content" refers to personalized emails and notifications, including specific messages generated based on customer information and user sentiment.
[1610] "Transmission schedule" refers to a plan or timetable for transmitting communications based on specific set dates and times.
[1611] A "scheduling library" refers to a collection of programs and tools for automatically managing the execution of tasks and processes according to specific times and conditions.
[1612] "Means for automatically transmitting" refers to a function that allows the system to automatically transmit communication content based on a preset schedule without manual operation by the user.
[1613] This invention relates to a system that analyzes user emotions and automatically creates and sends personalized sales emails based on the analysis. This system includes the following elements:
[1614] The server provides an input form as a means for receiving customer information and template information from the user, through which the user inputs the customer information, the path of the template file, and the transmission schedule.
[1615] Next, the server reads the accepted customer information by reading the customer list file (e.g., CSV format) and stores the customer names, contact information, etc. internally.
[1616] The server has a sentiment analysis mechanism to recognize the user's emotions. This sentiment analysis uses an emotion engine to analyze the user's input and interactions to identify their emotional state, such as happy, sad, or neutral. This sentiment analysis is performed using TextBlob or a similar natural language processing library.
[1617] Based on the recognized emotion, the server has the means to dynamically adjust the tone of the template. For example, if the user's emotion is recognized as "joy," the tone and expression in the template will be adjusted to be brighter and more positive. This adjustment is done by replacing specific placeholders in the template with emotion-specific phrases.
[1618] Based on the loaded customer information, the server also has the means to generate multiple personalized communications, dynamically substituting customer information for placeholders in tailored templates for each customer.
[1619] Additionally, the server has a means to schedule the transmission of generated communications, which is managed using a scheduling library (e.g., Python's schedule library) based on user-specified timing.
[1620] The server has the means to automatically send the generated communication according to a set schedule, by sending the email content in MIME format using the SMTP protocol.
[1621] As a concrete example, suppose a user enters the following information into the system:
[1622] Customer list file path: customers.csv
[1623] Email template file path: email_template.txt
[1624] Sending schedule: 09:00 every day
[1625] Text that expresses an emotional state: Thank you for your purchase! Everything went well!
[1626] Based on this, the server recognizes the user's emotional state as "joy" and dynamically adjusts the tone of the template accordingly, then generates individual personalized emails based on information read from the customer list and automatically sends them according to the specified schedule.
[1627] An example of a prompt to be input to the generative AI model is as follows:
[1628] "Write a program that recognizes the user's emotional state and generates a personalized sales email with the appropriate tone. The user's emotional state is taken from the following text: 'Thank you for your purchase! Everything went well!'"
[1629] In this way, the present invention enables efficient generation and transmission of personalized emails that reflect the user's emotions, thereby enabling effective communication with customers.
[1630] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1631] Step 1:
[1632] The user enters customer information, template information, and sending schedule through an input form. The input information includes the path of the customer list file, the path of the email template file, the text that expresses the emotional state, and the sending timing. All the data required by the system is then sent to the server.
[1633] Step 2:
[1634] The server reads a customer list file containing customer information provided by the user. In this process, it parses the CSV file and stores information such as customer name, contact information, and company name in an internal data structure. The input is the path to the CSV file, and the output is the internal data structure.
[1635] Step 3:
[1636] The server reads the template information provided by the user. The template file is in text format, and it reads it into memory and checks that placeholders (e.g., $NAME$, $COMPANY$) are embedded. The input is the path to the template file, and the output is the template content.
[1637] Step 4:
[1638] The server analyzes the user's text input using a sentiment analyzer, which uses a natural language parsing library such as TextBlob to identify the emotional state (e.g., happy, sad, neutral). The input is text expressing the emotion, and the output is the recognized emotional state.
[1639] Step 5:
[1640] The server dynamically adjusts the tone of the template based on the recognized emotional state. In this step, it replaces certain placeholders in the template content with emotion-specific phrases. For example, for "joy," it changes the template tone to a brighter, more positive one. The input is the recognized emotional state and the template content, and the output is the adjusted template.
[1641] Step 6:
[1642] The server generates multiple personalized communications based on the loaded customer information. For each customer, placeholders in the tailored template are dynamically replaced with the customer's information. During this process, information such as the customer's name, company name, and email address are inserted in the appropriate places to generate individual emails. The input is the customer information and the tailored template, and the output is a personalized email for each customer.
[1643] Step 7:
[1644] The server schedules the generated communications for transmission. Based on the timing specified by the user, it uses a scheduling library (e.g., Python's schedule library) to set the send date and time for each email. The input is the transmission schedule information, and the output is the scheduled task.
[1645] Step 8:
[1646] According to the configured schedule, the server automatically sends generated correspondence. Here, it uses the SMTP protocol to convert the email content into MIME format and send it to the specified email address. The input is the scheduled task and the output is the sent email.
[1647] 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 control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1648] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1649] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1650] The emotion identification model 59 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 an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1651] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1652] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1653] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1654] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1655] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs 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 a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1656] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1657] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1658] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1659] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1660] 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.
[1661] It is not necessary to store all 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 all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1662] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1663] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with 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). Also, the hardware resource that executes the specific processing may be a single processor.
[1664] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1665] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1666] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1667] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1668] The following is further disclosed regarding the above embodiment.
[1669] (Claim 1)
[1670] a means for accepting customer information and email templates from a user;
[1671] means for reading the accepted customer information;
[1672] A way to personalize email templates and generate multiple individual emails based on imported customer information;
[1673] A means for scheduling the transmission of the generated individual emails;
[1674] A means to automatically send individual emails according to a set schedule;
[1675] A system including:
[1676] (Claim 2)
[1677] 10. The system of claim 1, further comprising means for dynamically replacing placeholders in an email template with customer information when sending personalized individual emails.
[1678] (Claim 3)
[1679] 10. The system of claim 1, further comprising means for utilizing a scheduling library to manage the sending of mail according to scheduled times.
[1680] "Example 1"
[1681] (Claim 1)
[1682] means for accepting customer information and an email template from a user;
[1683] means for reading the accepted customer information;
[1684] a means for personalizing email templates based on loaded customer information to generate multiple individual emails;
[1685] means for scheduling the transmission of the generated individual emails;
[1686] a means for automatically sending personalized emails according to a set schedule;
[1687] means for sending individual emails using the SMTP protocol;
[1688] A system including:
[1689] (Claim 2)
[1690] 10. The system of claim 1, further comprising means for dynamically replacing placeholders in email templates with customer information when sending personalized individual emails.
[1691] (Claim 3)
[1692] 10. The system of claim 1, further comprising means for utilizing a scheduling library to manage the sending of emails according to scheduled times.
[1693] "Application Example 1"
[1694] (Claim 1)
[1695] a means for accepting customer information and email templates from a user;
[1696] means for reading the accepted customer information;
[1697] A way to personalize email templates and generate multiple individual emails based on imported customer information;
[1698] A means for scheduling the transmission of the generated individual emails;
[1699] A means for personalizing the individual email to include information about commercial services;
[1700] A means to automatically send individual emails according to a set schedule;
[1701] A system including:
[1702] (Claim 2)
[1703] 10. The system of claim 1, further comprising means for dynamically replacing placeholders in an email template with customer information when sending personalized individual emails.
[1704] (Claim 3)
[1705] 10. The system of claim 1, further comprising means for utilizing a scheduling library to manage the sending of mail according to scheduled times.
[1706] "Example 2: Combining Emotion Engines"
[1707] (Claim 1)
[1708] a means for accepting customer information and email templates from a user;
[1709] A means of recognizing emotions from user input and interactions;
[1710] means for reading the accepted customer information;
[1711] means for personalizing email templates based on the loaded customer information to generate multiple individual emails dynamically tailored to the user's emotional state;
[1712] A means for scheduling the transmission of the generated individual emails;
[1713] A means to automatically send individual emails according to a set schedule;
[1714] A system including:
[1715] (Claim 2)
[1716] 10. The system of claim 1, further comprising means for dynamically replacing placeholders in an email template with customer information when sending personalized individual emails.
[1717] (Claim 3)
[1718] 10. The system of claim 1, further comprising means for utilizing a scheduling library to manage the sending of mail according to scheduled times.
[1719] "Application example 2 when combining emotion engines"
[1720] (Claim 1)
[1721] means for receiving customer information and template information from a user;
[1722] means for reading the accepted customer information;
[1723] emotion analysis means for recognizing the emotion of a user;
[1724] means for dynamically adjusting the tone of the template based on the recognized emotion;
[1725] means for generating a plurality of personalized communications based on the loaded customer information;
[1726] means for scheduling transmission of the generated communication;
[1727] means for automatically transmitting the generated communications according to a set schedule;
[1728] A system including:
[1729] (Claim 2)
[1730] 10. The system of claim 1, further comprising means for dynamically replacing template placeholders with customer information when sending personalized communications.
[1731] (Claim 3)
[1732] 10. The system of claim 1, further comprising means for utilizing a scheduling library to manage transmission of communications according to scheduled times. [Explanation of symbols]
[1733] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. a means for accepting customer information and email templates from a user; means for reading the accepted customer information; A way to personalize email templates and generate multiple individual emails based on imported customer information; A means for scheduling the transmission of the generated individual emails; A means to automatically send individual emails according to a set schedule; A system including:
2. 2. The system of claim 1, further comprising means for dynamically replacing placeholders in the email template with customer information when sending personalized individual emails.
3. 10. The system of claim 1, further comprising means for utilizing a scheduling library to manage the sending of mail according to scheduled times.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A