Mail relocation method and device, computer equipment and storage medium

By extracting and storing bulk email data from a preset cache during the email migration process, the problem of low email migration efficiency in existing technologies is solved, achieving efficient email migration and improved user experience.

CN121644510APending Publication Date: 2026-03-10TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411199566.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-28
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Current technology involves fetching emails from the old email server through the new email server during the email migration process, which is inefficient and time-consuming.

Method used

By responding to the email migration information entry operation, the original email account and the target email account are obtained, the migration progress is displayed, and when the email is a mass email, the email data is extracted from the preset cache and stored in the target email, and the progress is updated.

Benefits of technology

It improved email migration efficiency, reduced the number of interactions and connection time with the original server, saved bandwidth and CPU resources, and enhanced the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121644510A_ABST
    Figure CN121644510A_ABST
Patent Text Reader

Abstract

The invention relates to a mail relocation method and device, computer equipment and a storage medium. The method comprises the following steps: in response to a mail relocation information input operation, obtaining at least one original mailbox account of a to-be-relocated mail and a target mailbox account of the to-be-received relocated mail corresponding to each original mailbox account; in response to the mail relocation starting operation, displaying the relocation progress of the mail under each original mailbox account; and when the target mails relocated under the original mailbox account for mailbox relocation are mass mails, extracting the mail data of the target mails from a preset cache for the mass mails, and storing the mail data of the target mails to mailboxes corresponding to the corresponding target mailbox accounts. And updating the relocation progress of the original email account for relocation of the email to the progress indicating that the relocation of the target email is completed. By adopting the method, the mail relocation efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, computer equipment, and storage medium for email migration. Background Technology

[0002] An email address is an electronic information space provided over the internet for users to communicate. It allows users to send and receive emails automatically, and also stores sent and received emails. Due to these characteristics, email is widely used in businesses.

[0003] With the development of email, email systems are updated and replaced quickly, and there are many types of email systems. As a result, some companies need to use new email systems in order to improve business efficiency. At this time, it is necessary to migrate emails from the old email system to the new email system.

[0004] Currently, the main method for migrating emails is to iterate through the old email server to retrieve the emails to be migrated from the new email server and then store the retrieved emails in the new mailbox. However, fetching each email to be migrated from the original email server is time-consuming and inefficient. Summary of the Invention

[0005] Therefore, it is necessary to provide a mail migration method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can improve migration efficiency in response to the above-mentioned technical problems.

[0006] Firstly, this application provides a method for email migration, the method comprising:

[0007] In response to the email migration information entry operation, obtain at least one original email account for the emails to be migrated and the target email account for each original email account to receive the migrated emails.

[0008] In response to the email migration initiation operation, display the migration progress of emails under each of the original email accounts;

[0009] When the target email to be migrated under the original email account is a mass email, the migration progress of the original email account is updated to indicate that the migration of the target email is complete when the email data of the target email is extracted from the preset cache for mass emails and the email data of the target email is stored in the mailbox corresponding to the target email account.

[0010] Secondly, this application also provides a mail migration device, the device comprising:

[0011] The information entry module is used to respond to the email migration information entry operation and obtain at least one original email account of the email to be migrated and the target email account to receive the migrated email corresponding to each original email account.

[0012] The progress display module is used to respond to the email migration initiation operation and display the migration progress of emails under each of the original email accounts.

[0013] The progress update module is used to update the migration progress of the original email account to indicate that the migration of the target email is complete when the target email to be migrated under the original email account is a mass email. This is done after the email data of the target email is extracted from the preset cache for mass emails and the email data of the target email is stored in the mailbox corresponding to the target email account.

[0014] In one embodiment, the information entry module is further configured to display an information entry page, the information entry page including a file upload area; in response to a drag-and-drop operation on an email migration information file, and when the email migration information file is dragged to the file upload area, the module obtains at least one original email account recorded in the email migration information file and the target email account corresponding to each original email account.

[0015] In one embodiment, the email migration device further includes an email verification module, used to: display the original email domain entered through the domain entry operation in response to the domain entry operation; display the original email parameters recommended based on the original email domain in response to the domain confirmation operation; display the verification email account entered through the account password entry operation and the encrypted email password corresponding to the verification email account in response to the account password entry operation; the verification email account is any one of the at least one original email account; and display the verification result of verifying the original email based on the original email parameters, the verification email account, and the corresponding email password in response to the email verification operation.

[0016] In one embodiment, the email verification module is further configured to display a modification prompt message when the verification result is a verification failure; the modification prompt message is configured to prompt modification of at least one of the recommended original email parameters, the verification email account, and the email password corresponding to the verification email account.

[0017] In one embodiment, the email migration device further includes an email configuration module, used to send a migration email configuration email to each of the original email accounts in response to an email migration initiation operation; the migration email configuration email is used to trigger the display of a migration email configuration page; the migration email configuration page displays at least a receipt time configuration item, a sending time configuration item, a sender configuration item, and a recipient configuration item; it obtains the receipt time configured based on the receipt time configuration item, the sending time configured based on the sending time configuration item, the sender information configured based on the sender configuration item, and the recipient information configured based on the recipient configuration item; it sends the sending time, the receipt time, the sender information, and the recipient information to the target server, so that the target server determines the emails that need to be migrated under the corresponding original email account based on the sending time, the receipt time, the sender information, and the recipient information.

[0018] In one embodiment, the preset cache caches email data of mass emails under the at least one original email account retrieved from the original server; during the process of retrieving the email data of mass emails from the original server, when the retrieved mass emails meet the preset large-volume email judgment strategy, the retrieved mass email data is retrieved in segments from the original server.

[0019] In one embodiment, the migration progress includes at least the number of mailboxes that have completed email migration, the number of mailboxes that have not started email migration, the number of mailboxes that are being migrated, a first ratio of the total number of mailboxes undergoing email migration to the number of mailboxes undergoing email migration, the email migration progress status corresponding to each original mailbox account, and a second ratio of the total number of migrated emails corresponding to each original mailbox account to the number of successfully migrated emails. The progress update module is further configured to, when the target email is the first email migrated under the original mailbox account undergoing email migration, decrement the number of mailboxes that have not started email migration by 1 and increment the number of successfully migrated emails in the second ratio corresponding to the original mailbox account undergoing email migration by 1.

[0020] In one embodiment, the progress update module is further configured to, when the target email is the last email migrated under the original email account for which the email migration is being performed, increment the number of email accounts that have completed email migration by 1, increment the number of email accounts that have completed email migration in the first ratio by 1, decrement the number of email accounts in the process of email migration by 1, increment the number of successfully migrated emails in the second ratio corresponding to the original email account for which the email migration is being performed by 1, and update the email migration progress status corresponding to the original email account for which the email migration is being performed to the completed status.

[0021] In one embodiment, the email migration device further includes a retry module, which displays a retry element when the migration progress of the original email account undergoing email migration indicates that the target email migration has failed; and generates a retry instruction in response to a trigger operation on the retry element; the retry instruction is used to trigger the extraction of email data of the target email from the original server corresponding to the original email account undergoing email migration, and cache the email data in the preset cache of the target server, so that the target server performs a migration retry based on the email data of the target email in the preset cache.

[0022] Thirdly, this application also provides a computer device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps in any of the email migration methods provided in the embodiments of this application.

[0023] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of any of the mail migration methods provided in the embodiments of this application.

[0024] Fifthly, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the email migration methods provided in the embodiments of this application.

[0025] The aforementioned email migration method, apparatus, computer equipment, storage medium, and computer program products, in response to an email migration entry operation, can obtain at least one original email account and a corresponding target email account for each original email account. By obtaining at least one original email account and a corresponding target email account for each original email account, the migration progress of emails under each original email account can be displayed in response to the email migration initiation operation triggered by the user. This allows users to intuitively understand the email migration status based on the displayed migration progress, greatly improving the user experience. During the email migration process, when the target email to be migrated is a mass email, the email data of the target email is extracted from a preset cache that stores mass email data, and an inbound email operation is performed based on the extracted email data to display the target email under the target email account corresponding to the original email account being migrated. After the target email is inbounded, the migration progress of the original email account being migrated is updated in a timely manner to indicate that the target email migration is complete, allowing users to understand the current status of the email migration based on the updated migration progress, further improving the user experience.

[0026] By pre-storing the bulk email data in a local cache and retrieving the data from that cache, the email migration process is completed using the retrieved data. Compared to retrieving the bulk email data from the original server, this reduces the number of interactions with the original server and the time spent establishing a connection. This not only saves bandwidth and CPU resources but also improves the efficiency of email data retrieval, thereby increasing the overall efficiency of email migration.

[0027] Firstly, this application provides a method for email migration, the method comprising:

[0028] From at least one original email account, determine the original email account currently being migrated, and obtain the basic email information of the emails currently being migrated under the original email account currently being migrated.

[0029] If the email being migrated is determined to be a mass email based on the basic email information, the cache identifier of the email being migrated is determined according to the basic email information of the email being migrated.

[0030] If email data is extracted from a preset cache for mass emails based on the cache identifier, the target email address to which the emails under the original email account currently being migrated are determined is to be migrated.

[0031] The extracted email data is stored in the target mailbox.

[0032] Secondly, this application also provides a mail migration device, the device comprising:

[0033] The basic information acquisition module is used to determine the original email account currently being migrated from at least one original email account, and to obtain the basic information of the emails currently being migrated under the original email account currently being migrated.

[0034] The cache identifier determination module is used to determine the cache identifier of the currently migrated email based on the email basic information when it is determined that the currently migrated email is a mass email.

[0035] The email data storage module is used to determine the target mailbox to which the emails under the original email account currently being migrated will be moved, when the email data is extracted from the preset cache for mass emails according to the cache identifier; and to store the extracted email data in the target mailbox.

[0036] In one embodiment, the cache identifier determination module is further configured to determine that the currently migrated email is a mass email if, based on the email basic information, the recipient information of the currently migrated email contains an email group account; determine that the currently migrated email is a mass email if, based on the recipient information, CC information, and BCC information in the email basic information, the total number of recipients, CCs, and BCCs of the currently migrated email is greater than a first quantity threshold; or determine that the currently migrated email is a mass email if, based on the email basic information, a preset mass email identifier exists in the email header of the currently migrated email.

[0037] In one embodiment, the cache identifier determination module is further configured to extract the subject, sender information, and email body attachment identifier of the currently migrated email from the email basic information; perform a hash operation on the subject to obtain a hash subject; concatenate the hash subject, the sender information, and the email body attachment identifier to obtain concatenated information; and perform a hash operation on the concatenated information to obtain the cache identifier of the currently migrated email.

[0038] In one embodiment, the email data storage module is further configured to: find a value corresponding to the cache identifier of the currently migrated email; extract an email identifier from the value corresponding to the cache identifier of the currently migrated email; and extract corresponding email data from the preset cache based on the email identifier.

[0039] In one embodiment, the email data storage module is further configured to acquire the body data of the currently migrated email; encode the body data of the currently migrated email to obtain a first encoded body; extract a second encoded body from the value corresponding to the cache identifier of the currently migrated email; and, if the first encoded body and the second encoded body are consistent, extract the corresponding email data from the preset cache according to the email identifier.

[0040] In one embodiment, the email data storage module is further configured to determine whether the currently migrated email meets the large-volume email judgment strategy if, in the case that it fails to extract email data from the preset cache based on the cache identifier, the currently migrated email is retrieved in segments from the original server corresponding to the original email account currently being migrated, resulting in multiple segmented data; the multiple segmented data are concatenated to obtain the email data of the currently migrated email; and the email data of the currently migrated email is cached in the preset cache, so that the email data of the currently migrated email can be extracted from the preset cache again based on the cache identifier of the currently migrated email.

[0041] In one embodiment, the email data storage module is further configured to determine the email volume, the number of images contained, and the number of attachments contained in the currently migrated email; and to determine that the currently migrated email meets the large-volume email judgment strategy if at least one of the following conditions is met: the email volume is greater than a preset volume threshold, the number of images is greater than a second quantity threshold, and the number of attachments is greater than a third quantity threshold.

[0042] In one embodiment, the multiple segmented data includes email header data, body data, attachment data, and image data; the email data storage module is further configured to generate email header retrieval requests, body retrieval requests, attachment retrieval requests, and image retrieval requests; based on the email header retrieval request, the email header data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated; based on the body retrieval request, the body data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated; based on the attachment retrieval request, the attachment data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated; based on the image retrieval request, the image data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated.

[0043] In one embodiment, the email data storage module is further configured to obtain an email template; the email template includes multiple parts, each part being distinguished by a boundary string, and each part including header information for defining the email content; based on the header information included in each part, segment data corresponding to each part is determined, and data is filled into the corresponding parts based on each segment data to obtain the email data of the currently migrated email.

[0044] Thirdly, this application also provides a computer device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps in any of the email migration methods provided in the embodiments of this application.

[0045] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of any of the mail migration methods provided in the embodiments of this application.

[0046] Fifthly, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the email migration methods provided in the embodiments of this application.

[0047] The aforementioned email migration method, apparatus, computer equipment, storage medium, and computer program product, by identifying the emails currently being migrated under the original email account, can obtain the basic information of the emails being migrated. Based on this basic information, it can then determine whether the emails being migrated are mass emails. If the emails are determined to be mass emails, a cache identifier for the emails being migrated can be determined based on the basic information. The email data of the emails being migrated can then be extracted from a preset cache based on this cache identifier. By extracting the email data from the preset cache, the email data can be stored in the target email address corresponding to the original email account being migrated, thus completing the email migration.

[0048] By pre-storing the bulk email data in a local cache and retrieving the data from that cache, the email migration process is completed using the retrieved data. Compared to retrieving the bulk email data from the original server, this reduces the number of interactions with the original server and the time spent establishing a connection. This not only saves bandwidth and CPU resources but also improves the efficiency of email data retrieval, thereby increasing the overall efficiency of email migration. Attached Figure Description

[0049] Figure 1 This is a diagram illustrating the application environment of the email migration method in one embodiment;

[0050] Figure 2 This is a flowchart illustrating an email migration method in one embodiment;

[0051] Figure 3 This is a schematic diagram of information entry in one embodiment;

[0052] Figure 4 This is a schematic diagram illustrating the email migration progress in one embodiment;

[0053] Figure 5 This is a schematic diagram illustrating the migration of bulk emails in one embodiment;

[0054] Figure 6 This is a schematic diagram of an information entry page in one embodiment;

[0055] Figure 7 This is a schematic diagram of a domain name input page in one embodiment;

[0056] Figure 8 This is a schematic diagram of the original email verification page in one embodiment;

[0057] Figure 9 This is a schematic diagram illustrating the configuration of emails to be migrated in one embodiment;

[0058] Figure 10 This is a flowchart illustrating the email migration method in another embodiment;

[0059] Figure 11 This is a schematic diagram of the overall process of email migration in one embodiment;

[0060] Figure 12 This is a schematic diagram illustrating the determination of mass email sending in one embodiment;

[0061] Figure 13 This is a schematic diagram of the overall process of email migration in one embodiment;

[0062] Figure 14 This is a schematic diagram of the overall process of segmented pull and splicing in one embodiment;

[0063] Figure 15 This is a schematic diagram of email migration in one embodiment;

[0064] Figure 16 This is a schematic diagram of the overall process of email migration in one embodiment;

[0065] Figure 17 This is a structural block diagram of a mail migration device in one embodiment;

[0066] Figure 18 This is a structural block diagram of the mail transfer device in another embodiment;

[0067] Figure 19 This is an internal structural diagram of a computer device in one embodiment;

[0068] Figure 20 This is a diagram of the internal structure of a computer device in another embodiment. Detailed Implementation

[0069] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0070] The email migration method provided in this application embodiment can be applied to, for example, Figure 1 In the application environment shown, terminal 102, source server 104, and target server 106 communicate via a network. Source server 104 is the server corresponding to the original email account and is used to store email data under the original email account. Target server 106 is the server corresponding to the target email account and is used to store email data migrated from the source server. The data storage system can store the data that source server 104 and target server 106 need to process. The data storage system can be integrated on source server 104 and target server 106, or it can be placed in the cloud or on other servers. The following description uses the example of terminal 102, source server 104, and target server 106 working together to execute the email migration method provided in this embodiment. Users can initiate email migration through terminal 102, so that the target server 106 can pull the data of the emails to be migrated from the original server 104. When the emails to be migrated are mass emails, the data of the emails to be migrated can be cached in the local preset cache first. When the emails are received, the data of the emails to be migrated can be extracted from the preset cache, and the email receiving operation will be performed based on the email data extracted from the preset cache.

[0071] The terminal 102 can be, but is not limited to, various desktop computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle devices. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices. Both the source server 104 and the target server 106 can be implemented using independent servers or a server cluster consisting of multiple servers.

[0072] It should be noted that the terms "first," "second," and similar terms used in this application do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Unless the context clearly indicates otherwise, the singular forms "a," "one," or "the," etc., do not indicate a quantity limitation, but rather indicate the presence of at least one. The quantities of "multiple" or "multiple copies" mentioned in the embodiments of this application all refer to a quantity of "at least two," for example, "multiple" means "at least two," and "multiple copies" means "at least two copies."

[0073] In one embodiment, such as Figure 2 As shown, an email migration method is provided, which can be applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:

[0074] Step 202: In response to the email migration information entry operation, obtain at least one original email account for the emails to be migrated and the target email account for each original email account to receive the migrated emails.

[0075] Here, "original email account" refers to the email account before the migration, and "target email account" refers to the email account after the migration. For example, when migrating emails from aaa@123.com to www@ten.com, aaa@123.com is the original email account, and www@ten.com is the target email account corresponding to aaa@123.com.

[0076] Specifically, emails can be migrated individually from a single mailbox or from multiple mailboxes. For example, when user A wants to migrate their emails from mailbox A to mailbox B, user A can trigger an email migration information entry operation, allowing the terminal to obtain user A's original mailbox account and the target mailbox account corresponding to that original mailbox account to receive the migrated emails. Similarly, when company A wants to migrate its employees' emails, the person in charge of company A can trigger an email migration information entry operation, allowing the terminal to obtain the original mailbox accounts of each employee under company A, and the corresponding target mailbox account for each original mailbox account.

[0077] In one embodiment, reference Figure 3 The terminal can display task attribute selection controls, including a personal control 301 and an enterprise control 302. When a user clicks the personal control 301, it indicates that the user wishes to migrate their emails. At this time, the terminal displays an information entry page 303, which shows an original email account input box and a target email account input box. The user's actions of entering the original email account in the original email account input box and the target email account in the target email account input box are considered as email migration information entry operations, and the terminal can then obtain the original email account and the corresponding target email account. When the user clicks the enterprise control 302, the terminal can display an information entry page 304, which includes a file upload area 305. The user can drag and drop a file containing at least one original email account and at least one target email account to the file upload area, and the terminal can then parse the file to obtain at least one original email account and the target email account corresponding to each original email account. Figure 3 A schematic diagram of information entry in one embodiment is shown.

[0078] In one embodiment, the terminal can display a target domain name input box, and then automatically assign a target email account to the original email account based on the target domain name entered by the user. Here, the target domain name refers to the domain name of the target email address. For example, the terminal can extract the string before the special character "@" from the original email account, and concatenate the extracted string with the target domain name using the special character "@" to obtain the target email account corresponding to the original email account. By automatically generating the target email account, the efficiency of obtaining the target email account can be improved.

[0079] Step 204: In response to the email migration initiation operation, display the migration progress of emails under each original email account.

[0080] Specifically, once the terminal obtains the original email account and the target email account, the user can trigger the terminal to start the email migration. For example, the terminal can display a start control. When the user clicks the start control, the terminal can respond to the email migration start operation and display the migration progress of emails under each original email account.

[0081] In one embodiment, the terminal can also obtain the password of the original email account before initiating email migration. For example, for an individual, after the terminal displays the information entry page 303, it can display a password input box, allowing the user to enter the password of the original email account. As another example, for a company, files dragged to the file upload area may contain the passwords of each original email account; when the terminal parses the file, it can obtain the passwords of the original email accounts.

[0082] In one embodiment, once email migration is initiated, the terminal can trigger the target server corresponding to the target email account to perform the email migration task based on the target email account, the original email account, and the password corresponding to the original email account, and then feed back the email migration progress to the terminal. The terminal can then display the migration progress of the original emails under each original email account to the user.

[0083] In one embodiment, reference Figure 4 The migration progress can be displayed in a list format. This list shows information such as each target email account, the members using each target email account, synchronization status, the total number of migrated emails, and the number of emails that were successfully migrated. Figure 4 A schematic diagram of the email migration progress in one embodiment is shown.

[0084] Step 206: When the target email to be migrated under the original email account is a mass email, the email data of the target email is extracted from the preset cache for mass emails and the email data of the target email is stored in the mailbox corresponding to the target email account. At the same time, the migration progress of the original email account is updated to indicate that the migration of the target email is complete.

[0085] Bulk email refers to emails sent in groups, such as emails with a total number of recipients, CC recipients, and BCC recipients that exceeds a preset threshold.

[0086] Specifically, before migrating emails, the target server can determine the mass emails under each original email account based on at least one original email account entered by the user, extract the email data of the mass emails from the original server corresponding to the original email account, and cache the extracted mass email data in a preset cache.

[0087] When migrating emails, the target server can determine the target emails to be migrated from the original email account. For example, it can use the email currently being migrated as the target email and determine whether the target email is a mass email. If it is a mass email, the target server further determines whether the email data of the target email is in a preset cache. If the email data of the target email has been pre-cached in the preset cache, the target server extracts the email data of the target email from the preset cache and performs an inbound email operation based on the extracted email data. For example, it stores the email data of the target email in the corresponding target mailbox, that is, it places the target email under the corresponding target mailbox account. Furthermore, after the target server determines that the inbound email operation has been successfully performed based on the email data of the target email, the target server sends a message to the terminal indicating that the target email has been successfully migrated. The terminal can then update the migration progress of the original email account to indicate that the migration of the target email is complete. For example, refer to... Figure 4 When a mass email sent from the original email account A is successfully migrated from the preset cache to the target email account admin@tengXX.com corresponding to the original email account A, the number of successfully migrated emails corresponding to the target email account admin@tengXX.com in the migrated email list will be incremented by 1.

[0088] Email data refers to emails stored in computer devices. In other words, emails are stored in computer devices in the form of email data, which may include email header data, email body data, email attachments, images, signature data, etc.

[0089] The target server is the server corresponding to the target email account. For example, if the target email account is www@ten.com, the target server is the server pointed to by the domain name "ten.com". The origin server is the server corresponding to the original email account. For example, if the original email account is aaa@123.com, the origin server is the server pointed to by the domain name "123.com".

[0090] In one embodiment, reference Figure 5 For mass emails, due to the large number of recipients, email migration requires not only moving the email to the sender's target mailbox but also to each recipient's individual target mailbox. If the email data is fetched from the original mail server every time, bandwidth resources are wasted, and the original mail server may even block the fetch, leading to data retrieval failures. However, if the email data is retrieved from the original mail server and cached in a pre-defined cache, subsequent migrations to the sender's or recipients' target mailboxes can directly retrieve the data from the cache without fetching from the original server. This reduces the frequency of interaction with the original server, saves bandwidth resources, and solves the problem of data retrieval failures caused by high-frequency access to the original mail server. Figure 5 A schematic diagram of mass email migration is shown in one embodiment.

[0091] In the above email migration method, by responding to the email migration entry operation, at least one original email account and its corresponding target email account can be obtained. By obtaining at least one original email account and its corresponding target email account, the migration progress of emails under each original email account can be displayed in response to the email migration initiation operation triggered by the user. This allows users to intuitively understand the email migration status based on the displayed progress, greatly improving the user experience. During the email migration process, when the target email to be migrated is a mass email, the target email data is extracted from a pre-stored cache containing mass email data. An inbound email operation is then performed based on the extracted data to display the target email under the target email account corresponding to the original email account being migrated. Once the target email has been inbounded, the migration progress of the original email account being migrated is updated in a timely manner to indicate that the target email migration is complete. This allows users to understand the current status of the email migration based on the updated progress, further enhancing the user experience.

[0092] By pre-storing the bulk email data in a local cache and retrieving the data from that cache, the email migration process is completed using the retrieved data. Compared to retrieving the bulk email data from the original server, this reduces the number of interactions with the original server and the time spent establishing a connection. This not only saves bandwidth and CPU resources but also improves the efficiency of email data retrieval, thereby increasing the overall efficiency of email migration.

[0093] In one embodiment, in response to an email migration information entry operation, obtaining at least one original email address for the emails to be migrated and the target email address for each original email address to receive the migrated emails includes: displaying an information entry page, the information entry page including a file upload area; and in response to a drag-and-drop operation on an email migration information file, and when the email migration information file is dragged to the file upload area, obtaining at least one original email address recorded in the email migration information file and the target email address for each original email address.

[0094] Specifically, when information entry is required, the terminal can display an information entry page, for example, it can display... Figure 6 The information entry page shown is a file upload area 601. When a user drags and drops a file containing email account information into this upload area, the terminal can parse the file to obtain the original email account and the target email account. Figure 6 A schematic diagram of an information entry page in one embodiment is shown.

[0095] In one embodiment, the information entry page may display a download template control 602. When the user clicks the download template control, a file template is obtained, and the user can then enter the original email address and the target email address according to the format recorded in the file template. It is easy to understand that the user can also enter the account and password corresponding to the original email address in the file template to obtain the email migration information file.

[0096] In one embodiment, the information entry page may also display an upload file control 603. When the user clicks the upload file control, the terminal can display a file upload window, and the user can upload email migration information files through the file upload window.

[0097] In the above embodiments, displaying an information entry page facilitates users in entering email account information, thereby improving the efficiency of email account information entry.

[0098] In one embodiment, the method further includes: in response to a domain name entry operation, displaying the original email domain name entered through the domain name entry operation; in response to a domain name confirmation operation, displaying the original email parameters recommended based on the original email domain name; in response to an account password entry operation, displaying the verification email account entered through the account password entry operation and the encrypted email password corresponding to the verification email account; the verification email account is any one of at least one original email account; in response to an email verification operation, displaying the verification result of verifying the original email based on the original email parameters, the verification email account, and the corresponding email password.

[0099] Specifically, in addition to entering their email account and password, users can also enter the email domain name. For example, the terminal can display a "Create New Migration Task" control; when the user clicks the control, the terminal will display the domain name input page. For example, see reference... Figure 7 The domain input page includes an original email domain input box and a target email domain selection box. Users can enter the original email domain in the original email domain input box and select the target email domain in the target email domain selection box. The domain input page may also display a domain confirmation control, such as a "Next" button. When the user clicks the domain confirmation control, the terminal will respond to the domain confirmation operation and display the original email verification page. For example, it may display... Figure 8 The original email verification page shown is error 801. This page displays an area for configuring the original email address parameters and an area for entering your username and password. The original email address parameter configuration area displays recommended parameters based on the original email domain, such as the original email connection protocol, original server address, port number, etc. Figure 7 A schematic diagram of a domain name input page in one embodiment is shown. Figure 8 A schematic diagram of the original email verification page is shown in one embodiment.

[0100] Users can enter any of their original email addresses and its password in the account and password input area. For ease of description, this "any of their original email addresses" will be referred to as the verification email address below. When the user clicks the "Next" button, the terminal determines that the user has triggered an email verification operation. In response to this operation, the terminal sends the original email parameters, the verification email address, and the verification email address's password to the target server corresponding to the target domain. The target server can then connect to the verification email address based on the original email parameters, the verification email address, and the verification email address's password to confirm whether the verification email address's information is correct and usable, and return the verification result to the terminal for display.

[0101] In one embodiment, the user can also directly enter the original email address in the original email address parameter configuration area. Alternatively, if the recommended original email address is found to be incorrect, the recommended original email address can be modified.

[0102] In the above embodiments, by entering any original email account and the corresponding password, the original email can be verified based on the original email account and the corresponding password to confirm whether the information related to the original email is correct and usable. After confirming that the information related to the original email is correct and usable, the email migration task can be executed, which can greatly improve the success rate of the email migration task.

[0103] In one embodiment, the method includes: displaying a modification prompt message when the verification result is a verification failure; the modification prompt message is used to prompt modification of at least one of the original email parameters recommended based on the original email domain, the verification email account, and the email password corresponding to the verification email account.

[0104] Specifically, if the verification result fails, the terminal can display a modification prompt message. This modification prompt message is used to prompt the user to modify at least one of the following: the original email parameters, the verification email account, and the password corresponding to the verification email account. After modification, the user can perform email verification again based on the modified information.

[0105] In this embodiment, by displaying modification prompts, users can be prompted to modify their information, thus enabling email verification to be performed again based on the modified information.

[0106] In one embodiment, the method further includes: in response to the email migration initiation operation, sending a migration email configuration email to each original email account; the migration email configuration email is used to trigger the display of the migration email configuration page; the migration email configuration page displays at least the receiving time configuration item, the sending time configuration item, the sender configuration item, and the recipient configuration item; obtaining the receiving time configured based on the receiving time configuration item, the sending time configured based on the sending time configuration item, the sender information configured based on the sender configuration item, and the recipient information configured based on the recipient configuration item; and sending the sending time, receiving time, sender information, and recipient information to the target server, so that the target server can determine the emails that need to be migrated under the corresponding original email account based on the sending time, receiving time, sender information, and recipient information.

[0107] Specifically, when a user clicks the start control, the terminal responds to the email migration initiation operation by sending a migration email configuration email to each original email account. When the user clicks this migration email configuration email, the terminal displays the migration email configuration page. For example, after an administrator in Company A clicks the start control, the administrator's terminal can send a migration email configuration email to each employee of Company A. This email can contain a link to the migration email configuration page, and when an employee clicks this link, they will be redirected to the migration email configuration page. (Reference) Figure 9 The email migration configuration page displays three settings: Receipt Time, Sending Time, Sender, and Recipient. The Receipt Time setting determines emails from the original email account to be migrated based on their receipt time. For example, an employee of Company A can use this setting to select emails received within the last 30 days as eligible for migration. The Sending Time setting determines emails from the original email account to be migrated based on their sending time. For example, an employee of Company A can use this setting to select emails sent within the last 30 days as eligible for migration. The Sender setting determines emails from the original email account to be migrated based on the sender's information. For example, an employee of Company A can use this setting to select emails sent from email accounts A, B, and C under their original email account as eligible for migration. The Recipient setting determines emails from the original email account to be migrated based on the recipient's information. For example, an employee of Company A can select emails with recipients including email accounts D, E, and F as eligible for migration. Figure 9 A schematic diagram of the configuration of emails to be migrated is shown in one embodiment.

[0108] In one embodiment, the target server can also determine the emails to be migrated based on at least two of the following: the receipt time configuration item, the sending time configuration item, the sender configuration item, and the recipient configuration item. For example, if a user has configured the receipt time based on the receipt time configuration item and the sender information based on the sender configuration item, then the emails to be migrated under the original email account can be determined by combining the receipt time and the sender information.

[0109] In this embodiment, by displaying the migration email configuration page, users can easily configure the emails to be migrated through the migration email configuration page, allowing users to configure the emails to be migrated according to their own needs, thereby greatly improving the flexibility of email migration.

[0110] In one embodiment, the preset cache contains email data of at least one mass email account retrieved from the original server; during the process of retrieving the mass email data from the original server, if the retrieved mass emails meet the preset large-volume email judgment strategy, the retrieved mass email data is retrieved from the original server in segments.

[0111] Specifically, the target server can retrieve group email data from the original server. If the group email meets the large-volume email judgment policy, the email data of the group email is retrieved in segments, such as first retrieving the email header, then the email attachments, then the images, and so on. The retrieved email data is then cached in a preset cache.

[0112] In one embodiment, the migration progress includes at least the number of mailboxes that have completed email migration, the number of mailboxes that have not started email migration, and the number of mailboxes that are being migrated, a first ratio of the total number of mailboxes undergoing email migration to the number of mailboxes undergoing email migration, the email migration progress status corresponding to each original mailbox account, and a second ratio of the total number of migrated emails corresponding to each original mailbox account to the number of successfully migrated emails. Updating the migration progress of the original mailbox accounts undergoing email migration to indicate the progress of the target email migration is completed includes: when the target email is the first email migrated under the original mailbox account undergoing email migration, decrementing the number of mailboxes that have not started email migration by 1, and incrementing the number of successfully migrated emails in the second ratio corresponding to the original mailbox account undergoing email migration by 1.

[0113] Specifically, refer to Figure 4 The migration progress includes at least the following: 403. The number of mailboxes that have completed email migration; 404. The number of mailboxes that have not yet started email migration; 405. The number of mailboxes that are being migrated; 406. The first ratio of the total number of mailboxes undergoing migration to the number of mailboxes undergoing migration; 407. The email migration progress status for each original mailbox account; 401. The second ratio of the total number of migrated emails for each original mailbox account to the number of successfully migrated emails. When the target email is the first email migrated from an original mailbox account undergoing migration, the number of mailboxes that have not yet started migration is decremented by 1, and the number of successfully migrated emails in the second ratio for the original mailbox account undergoing migration is incremented by 1.

[0114] In one embodiment, the method further includes: when the target email is the last email to be migrated under the original email account for which the email migration is being performed, incrementing the number of email accounts that have completed email migration by 1, incrementing the number of email accounts that have completed email migration in the first ratio by 1, decrementing the number of email accounts that are being migrated by 1, incrementing the number of successfully migrated emails in the second ratio corresponding to the original email account for which the email migration is being performed by 1, and updating the email migration progress status corresponding to the original email account for which the email migration is being performed to the completed status.

[0115] In one embodiment, reference Figure 4 The migration progress also includes the number of mailboxes that failed to migrate (408). The number of mailboxes that failed to migrate refers to the number of mailboxes where all emails in the entire mailbox failed to migrate.

[0116] In one embodiment, when the target email is not the first email to be migrated or the last email to be migrated in the corresponding original mailbox, the migration progress of the original mailbox account that is migrating the email is updated to indicate the progress of the target email being migrated, including: incrementing the number of successfully migrated emails in the second ratio corresponding to the original mailbox account that is migrating the email by 1.

[0117] In the above embodiments, by updating multiple progress items in the email migration progress in real time, enterprise administrators can gain a comprehensive understanding of the email migration progress based on multiple progress items, thereby improving the user experience.

[0118] In one embodiment, the method further includes: displaying a retry element when the migration progress indicator of the original email account undergoing email migration indicates that the target email migration has failed; generating a retry instruction in response to a triggering operation on the retry element; the retry instruction is used to trigger the extraction of email data of the target email from the original server corresponding to the original email account undergoing email migration, and caching the email data in a preset cache of the target server, so that the target server performs a migration retry based on the email data of the target email in the preset cache.

[0119] Specifically, when the terminal determines that the migration progress of the original email account being migrated has failed, the terminal can display retry elements, such as references. Figure 4 A retry control 402 can be displayed in the progress list. When the user clicks the retry element, the terminal can respond to the trigger operation of the retry element, generate a retry command, and send the retry command to the target server. When the target server receives the retry command, it can retrieve the email data of the target email from the original server and store the email data of the target email in a preset cache. Then, the target server performs a migration retry based on the email data of the target email in the preset cache.

[0120] In this embodiment, by displaying retry elements, migration retries can be performed based on these elements, thereby improving the success rate of email migration.

[0121] In one embodiment, such as Figure 10 As shown, an email migration method is provided, which can be applied to... Figure 1 Taking server 106 as an example, the explanation includes the following steps:

[0122] Step 1002: From at least one original email account, determine the original email account currently being migrated, and obtain the basic email information of the emails currently being migrated under the original email account currently being migrated.

[0123] Specifically, the target server can migrate multiple emails simultaneously using multiple threads. The following explanation uses the migration of a single email as an example. For the email currently being migrated from the original email account, the target server can obtain the basic information of the email. This basic information may include the recipient, sender, CC recipients, email body tags, email sending and receiving times, and email subject.

[0124] In one embodiment, once the target server determines the emails to be migrated from the original email account being migrated, the target server can retrieve the basic email information of the emails to be migrated from the original server based on the original email account being migrated, the password corresponding to the original email account being migrated, and the email identifier of the emails to be migrated. Specifically, the email identifier of the emails to be migrated can be the email title, email ID, etc.

[0125] Step 1004: If it is determined that the email being migrated is a mass email based on the basic email information, determine the cache identifier of the email being migrated based on the basic email information of the email being migrated.

[0126] Specifically, the target server can determine whether the email being migrated is a mass email based on the obtained basic email information. If it determines that the email being migrated is a mass email, it can determine the cache identifier of the email being migrated based on the basic email information. The cache identifier is used to uniquely identify data in a preset cache.

[0127] In one embodiment, since basic email information may include recipients, senders, CC recipients, identifiers attached to the email body, email sending and receiving times, email subject, etc., it is possible to determine whether an email is a mass email based on this basic information. For example, if the total number of recipients, senders, and CC recipients exceeds a preset threshold, the currently migrated email is determined to be a mass email. Another example is to determine whether an email is a mass email based on its subject. For instance, subject keywords set for mass emails can be obtained; if the subject of the currently migrated email includes these subject keywords, the currently migrated email is determined to be a mass email.

[0128] In one embodiment, the basic information of the email being migrated can be encoded to obtain a cache identifier for the email being migrated. For example, a hash operation can be performed on the basic information of the email being migrated, and the result of the hash operation can be used as the cache identifier for the email being migrated.

[0129] Step 1006: After retrieving email data from the preset cache for mass emails based on the cache identifier, determine the target email address to which the emails under the original email account to be migrated.

[0130] Specifically, after the target server generates a cache identifier based on the basic email information, it can search in the preset cache for email data corresponding to that cache identifier. If email data corresponding to that cache identifier exists in the preset cache, the target server retrieves the email data corresponding to that cache identifier from the preset cache and determines the target mailbox to which the emails under the original email account currently being migrated should be migrated.

[0131] In one embodiment, before initiating email migration, at least one original email account and its corresponding target email account are uploaded via the terminal. Therefore, the terminal can send each original email account and its corresponding target email account to the target server. Once the target server identifies the original email accounts currently being migrated, it can determine the corresponding target email accounts based on these original accounts, and then determine the corresponding target email addresses based on these target email accounts. The target email address can be viewed as a storage space for storing email data, while the target email account is the account used to view the email data stored in this storage space.

[0132] In one embodiment, before email migration, for at least one mass email under the original email account, the target server can pre-extract the email data of each mass email from the original server and generate a cache identifier for each email data. The extracted email data and the generated cache identifier are then stored in a preset cache. Subsequently, the target server can extract the email data from the preset cache based on the cache identifier. During email migration, if the email data of the currently migrated email is not extracted from the preset cache based on the cache identifier of the currently migrated email, the target server can pull the email data of the currently migrated email from the original server, generate a cache identifier for the currently migrated email, and store the pulled email data and the generated cache identifier in the preset cache. After storing the email data of the currently migrated email and the generated cache identifier in the preset cache, the target server can re-execute steps 1006 to 1008.

[0133] It is easy to understand that before migrating emails, the target server may not pre-store the email data of each mass email under each original email account in a preset cache. Instead, during the email migration process, if the corresponding email data is not found in the preset cache, the step of storing the email data in the preset cache will be executed. This embodiment is not limited to this.

[0134] Step 1008: Store the extracted email data in the target mailbox.

[0135] Specifically, once email data is extracted from the preset cache, the target server can perform an inbound email operation. For example, the target server can store the extracted email data in the designated target mailbox, and then the user can view the content of the currently migrated email through the target mailbox's target email account.

[0136] In one embodiment, if the email being migrated is not a mass email, the target server directly pulls the email data of the email being migrated from the original server and performs an inbound email operation based on the directly pulled email data.

[0137] In one embodiment, reference Figure 11 , Figure 11 The diagram illustrates the overall process of email migration in one embodiment. For each email to be migrated from the original mailbox, the target server first determines whether the email is a mass email based on the email's basic information. If it is determined to be a mass email, a cache identifier is generated based on the email's basic information. The email data is then extracted from a preset cache using the cache identifier, and an inbound email operation is performed based on the extracted email data.

[0138] The email migration method described above, by identifying the emails currently being migrated from the original email account, can obtain the basic information of the emails being migrated. Based on this basic information, it can then be determined whether the emails being migrated are mass emails. If the emails are determined to be mass emails, a cache identifier for the emails being migrated can be determined based on the basic information. The email data for the emails being migrated can then be extracted from a preset cache based on this cache identifier. By extracting the email data from the preset cache, the email data can be stored in the target email address corresponding to the original email account being migrated, thus completing the email migration.

[0139] By pre-storing the bulk email data in a local cache and retrieving the data from that cache, the email migration process is completed using the retrieved data. Compared to retrieving the bulk email data from the original server, this reduces the number of interactions with the original server and the time spent establishing a connection. This not only saves bandwidth and CPU resources but also improves the efficiency of email data retrieval, thereby increasing the overall efficiency of email migration.

[0140] In one embodiment, the method further includes: determining that the currently migrated email is a mass email if the recipient information of the email contains an email group account based on the basic email information; determining that the total number of recipients, CC's, and BCC's of the currently migrated email is greater than a first quantity threshold if the recipient information, CC's, and BCC's of the email are determined to be a mass email based on the recipient information, CC's, and BCC's information in the basic email information; or determining that the currently migrated email is a mass email if the email header contains a preset mass email identifier based on the basic email information.

[0141] Specifically, after obtaining the basic information of the emails being migrated, the target server can determine whether the emails being migrated are mass emails using various methods. For example, refer to... Figure 12 The target server can extract recipient information from the basic email information and determine whether a mail group account exists in the recipient information. If a mail group account exists, the email being migrated is determined to be a mass email. Specifically, the recipient information can be a collection of email accounts that will receive the migrated email.

[0142] The target server can also extract recipient information, CC information, and BCC information from the basic email information. Based on the recipient, sender, and BCC information, it can count the total number of recipients, CC recipients, and BCC recipients for the currently migrated email. If the total number exceeds a first threshold, the currently migrated email is determined to be a mass email. For example, if the total number of recipients, CC recipients, and BCC recipients for the currently migrated email is greater than 10, the currently migrated email is determined to be a mass email. Specifically, the CC recipient information can be the set of email accounts that were CC'd in the currently migrated email; the BCC recipient information can be the set of email accounts that were BCC'd in the currently migrated email.

[0143] Furthermore, the target server can also determine whether a preset mass mailing identifier exists in the header of the email being migrated, based on the email's basic information. For example, the target server can obtain a set of preset mass mailing identifiers and check if a preset mass mailing identifier from that set exists in the email's basic information. If it does, then the target server determines that the email header of the email being migrated contains a preset mass mailing identifier. When it is determined that the email header of the email being migrated contains a preset mass mailing identifier, the target server determines that the email being migrated is a mass mailing. Figure 12 A schematic diagram illustrating the determination of mass email sending in one embodiment is shown.

[0144] It is easily understood that a currently migrated email can be determined to be a mass email if it meets one of the three conditions mentioned above, or if it meets at least two of the three conditions mentioned above. This embodiment does not limit this.

[0145] In this embodiment, by obtaining basic email information, it is possible to quickly and accurately determine whether the email being migrated is a mass email, thereby improving the migration efficiency of email migration.

[0146] In one embodiment, the cache identifier of the currently migrated email is determined based on the email basic information, including: extracting the subject, sender information, and email body attachment identifier of the currently migrated email from the email basic information; performing a hash operation on the subject to obtain a hash subject; concatenating the hash subject, sender information, and email body attachment identifier to obtain concatenated information; and performing a hash operation on the concatenated information to obtain the cache identifier of the currently migrated email.

[0147] Specifically, when calculating the cache identifier of a currently migrated email, the target server can first extract the subject, sender information, and email body attachment identifier from the basic email information of the currently migrated email, and then perform a hash operation on the subject of the currently migrated email to obtain a hash subject. Further, the target server can concatenate the hash subject, sender information, and email body attachment identifier to obtain concatenated information. For example, the target server can concatenate the sender information after the hash subject and the email body attachment identifier after the sender information to obtain concatenated information. Alternatively, a preset concatenation identifier can be used to concatenate the hash subject, sender information, and email body attachment identifier together to obtain concatenated information.

[0148] Furthermore, once the spliced ​​information is obtained, the target server can perform a hash operation on the spliced ​​information to obtain the cache identifier of the currently migrated email.

[0149] In one embodiment, the cache identifier Key can be generated using the following formula: Key = Hash(Hash(Subject) + Sender Information + MessageId). Here, Hash represents a hash operation, and MessageId is an identifier attached to the email body. The email body identifier is a unique identifier attached to the email body.

[0150] In this embodiment, by extracting the subject, sender information, and email body attachment identifier of the currently migrated email from the basic email information, a cache identifier can be generated based on the extracted subject, sender information, and email body attachment identifier, and then the corresponding email data can be extracted from the preset cache based on the cache identifier.

[0151] In one embodiment, the cache identifier is specifically the key in a key-value pair; the method further includes: finding the value corresponding to the cache identifier of the currently migrated email based on the cache identifier of the currently migrated email; extracting the email identifier from the value corresponding to the cache identifier of the currently migrated email; and extracting the corresponding email data from the preset cache for mass emails based on the email identifier.

[0152] Specifically, the cache identifier can be a key in a key-value pair, such as a key in a key-value pair (KV(key, value)). Once the key in the KV(key, value) is determined, the target server can retrieve the value in the KV(key, value) using that key. In other words, the target server can obtain the value in the key-value pair based on the key, and this value corresponds to the cache identifier of the currently migrated email. The value corresponding to the cache identifier of the currently migrated email consists of two parts: the first part is an encoded text obtained by encoding the email body, and the second part is the email identifier. Therefore, the target server can extract the email identifier from the value corresponding to the cache identifier of the currently migrated email and extract the email data corresponding to that email identifier from the preset cache, storing the extracted email data in the target mailbox corresponding to the original email account being migrated. The email identifier is a string that uniquely identifies an email.

[0153] In one embodiment, according to the email identifier, the corresponding email data is extracted from the preset cache for mass emails, including: obtaining the body data of the currently migrated email; encoding the body data of the currently migrated email to obtain a first encoded body; retrieving the second encoded body from the value corresponding to the cache identifier of the currently migrated email; and if the first encoded body and the second encoded body are consistent, extracting the corresponding email data from the preset cache for mass emails according to the email identifier.

[0154] Specifically, before extracting email data based on the email identifier, the correctness of the value found based on the cache identifier of the currently migrated email can be verified. When it is necessary to verify the correctness of the found value, the target server can obtain the body data of the currently migrated email and encode the body data to obtain the first encoded body. The target server can also extract the second encoded body from the value corresponding to the cache identifier of the currently migrated email, and compare whether the first encoded body and the second encoded body are consistent. If they are consistent, it is determined that the value found based on the cache identifier of the currently migrated email is correct. At this time, based on the email identifier in the value corresponding to the cache identifier of the currently migrated email, the corresponding email data is extracted from the preset cache.

[0155] In one embodiment, the email HTML typically includes a header, a content area, and a footer. The email header usually includes sender information, recipient information, subject, etc., and can be used in an HTML template. Tags are used to create content blocks, and then corresponding content and styles are added to them. In this example, the body data is the email body within the email content area. The bottom of the email typically includes copyright information, contact information, etc., and can also be used... Use tags to create the bottom area.

[0156] In one embodiment, the basic email information may include the body data, allowing the target server to directly extract the body data of the currently migrated email from the basic email information. Alternatively, the target server may retrieve the body data of the currently migrated email from the original server.

[0157] In the above embodiments, by generating coded text, the correctness of the value found based on the cache identifier can be verified based on the coded text, and the corresponding email data is extracted from the preset cache only when it is determined to be correct. In this way, the correctness of the extracted email data is greatly improved, thereby improving the correctness of email migration.

[0158] In one embodiment, reference Figure 13 Before migrating emails, the target server can first perform an email data caching step. For example, the target server can first identify the mass emails under each original email account and extract the email data of each mass email from the original server. The target server can generate a cache identifier for each mass email based on its subject, sender information, and email body identifier, using the formula Key = Hash(Hash(Subject) + Sender Information + MessageId). For ease of description, the cache identifier generated during the email data caching process will be referred to as the first cache identifier. Further, the target server can generate a value corresponding to each first cache identifier based on the body data and email identifier of each mass email, using the formula Value = Md5(Email Body Data) + Body MailID. Here, Md5 represents the message digest algorithm, Md5(Email Body Data) is the encoded body, and Body MailID represents the email identifier. The first cache identifier and value will be stored in key-value pairs. Further, the target server stores the email identifier and the email data of the mass email in a preset cache.

[0159] During email migration, if the email being migrated is determined to be a mass email, the target server can generate a cache identifier for the email using the subject, sender information, and a message body identifier, calculated using the formula Key = Hash(Hash(Subject) + Sender Information + MessageId). For ease of description, the cache identifier generated during email migration will be referred to as the second cache identifier. The target server then checks if a value corresponding to the second cache identifier exists; if so, it extracts that value. Once the value corresponding to the second cache identifier is obtained, the target server can extract the encoded text from it; this extracted encoded text is called the second encoded text. The target server can also obtain the body data of the email being migrated and calculate an encoded text using the formula Md5(email body data); this calculated encoded text is called the first encoded text. The target server determines whether the first encoded text and the second encoded text are consistent. If they are consistent, it determines that the value found based on the second cache identifier is correct. At this time, it extracts the corresponding email data from the preset cache through the email identifier in the value corresponding to the second cache identifier, and performs the inbound email operation based on the extracted email data. Figure 13 A schematic diagram of the overall process of email migration in one embodiment is shown.

[0160] In one embodiment, the method further includes: if it fails to extract email data from a preset cache for mass emails based on a cache identifier, determining whether the currently migrated email meets the large-volume email judgment policy; if it meets the large-volume email judgment policy, retrieving the currently migrated email in segments from the original server corresponding to the original email account currently being migrated, obtaining multiple segment data; concatenating the multiple segment data to obtain the email data of the currently migrated email; and caching the email data of the currently migrated email in a preset cache, so as to extract the email data of the currently migrated email from the preset cache again based on the cache identifier of the currently migrated email.

[0161] Specifically, if the target server cannot retrieve email data from the preset cache based on the cached data of the currently migrated email, it can retrieve the email data of the currently migrated email from the original server. When it needs to retrieve the email data of the currently migrated email from the original server, the target server can first determine whether the currently migrated email meets the large-volume email judgment policy. For example, if the currently migrated email is a large-volume email, it is determined that the currently migrated email meets the large-volume email judgment policy. Further, if the currently migrated email meets the large-volume email judgment policy, the target server retrieves the currently migrated email data from the original server in segments. For example, the target server first retrieves the email header data of the currently migrated email from the original server, and then retrieves the body data of the currently migrated email from the original server, and so on. After obtaining multiple segments of data, the target server can concatenate the segments to obtain complete email data and store the concatenated email data in the preset cache. It is easy to understand that the large-volume email judgment policy in this embodiment can be freely set according to needs, as long as it can improve the success rate of email data retrieval.

[0162] In this embodiment, when fetching complete email data at once, encountering large emails can easily lead to fetching failures due to their excessive size. This embodiment reduces the high failure rate when fetching complete email data at once by fetching emails in segments according to the large email judgment strategy, thereby improving the success rate of email data fetching. Furthermore, in traditional solutions, when email fetching fails, it is necessary to start fetching from the beginning again, resulting in wasted bandwidth resources. This embodiment saves bandwidth resources by improving the success rate of fetching.

[0163] In one embodiment, during the email data caching process performed before email migration, the target server may also adopt a segmented retrieval strategy to retrieve large volumes of bulk email data.

[0164] In one embodiment, determining whether the currently migrated email meets the large-volume email judgment strategy includes: determining that the email volume, the number of images contained, and the number of attachments contained in the currently migrated email meet the large-volume email judgment strategy if the email volume is greater than a preset volume threshold, the number of images is greater than a second quantity threshold, and the number of attachments is greater than a third quantity threshold.

[0165] Specifically, the target server can determine the email size, the number of images, and the number of attachments of the email being migrated. It then determines whether the email size exceeds a preset size threshold. If it does, the target server checks whether the number of images exceeds a second threshold and whether the number of attachments exceeds a third threshold. If both the number of images and attachments exceed the second and third thresholds, the email meets the large-size email judgment policy. In simpler terms, for the three conditions—"email size exceeds the preset size threshold," "number of images exceeds the second threshold," and "number of attachments exceeds the third threshold"—the email meets the large-size email judgment policy if any one of these conditions is met, or if at least two conditions are met, or if all three conditions are met simultaneously.

[0166] In this embodiment, email data retrieval failures are likely to occur when the email is too large, contains too many attachments, or contains too many images. Therefore, generating a large email judgment strategy based on email size, attachments, and images can improve the success rate of email data retrieval.

[0167] In one embodiment, the multiple segmented data includes email header data, body data, attachment data, and image data. The migrated email is retrieved segment by segment from the original server corresponding to the original email account being migrated, resulting in multiple segmented data, including: generating email header retrieval requests, body retrieval requests, attachment retrieval requests, and image retrieval requests; retrieving email header data from the original server corresponding to the original email account being migrated based on the email header retrieval request; retrieving body data from the original server corresponding to the original email account being migrated based on the body retrieval request; retrieving attachment data from the original server corresponding to the original email account being migrated based on the attachment retrieval request; and retrieving image data from the original server corresponding to the original email account being migrated based on the image retrieval request.

[0168] Specifically, the target server can generate email header retrieval requests for the email header, email body retrieval requests for the email body, corresponding attachment retrieval requests for each attachment, and image retrieval requests for each image. It can then retrieve email header data from the source server based on email header retrieval requests, retrieve email body data from the source server based on email body retrieval requests, retrieve attachments from the server based on attachment retrieval requests, and retrieve images from the source server based on image retrieval requests.

[0169] In one embodiment, multiple segmented data are concatenated to obtain the email data of the currently migrated email: including: obtaining an email template; the email template includes multiple parts, each part is distinguished by a boundary string, and each part includes header information for defining the email content; based on the header information included in each part, the corresponding segmented data of each part is determined, and the corresponding part is filled with data based on each segmented data to obtain the email data of the currently migrated email.

[0170] Specifically, when multiple segments of data need to be concatenated, the target server can obtain an email template, such as a MIME (Internet Mail Extensions) file template. A MIME email consists of one or more multipart message bodies, each of which can be text, HTML, images, etc.

[0171] Each part can include header information, which may include content type (such as text / plain, text / html, etc.), content description, content ID, etc. This header information is crucial for correctly parsing and displaying the email content. The target server concatenates the multiple message body parts, piecing them together in a specific order to form a multi-part email template. Each part of the email template has its own boundary marker to distinguish it from the others.

[0172] Furthermore, the target server determines the corresponding segment data for each part based on the header information included in each part. For example, if the header information of a part indicates that it is the email header, then the email header data from multiple segments is recorded in that part. If the header information of a part indicates that it is the email body, then the body data from multiple segments is recorded in that part, and so on. After all the segment data is filled into the corresponding parts, the email data of the currently migrated email is formed. It is easy to understand that attachments can be recorded in the corresponding parts as attachment links, and images can also be recorded in the corresponding parts as image links.

[0173] In this embodiment, by obtaining an email template, segmented data can be quickly spliced ​​based on the email template, thereby improving the efficiency of splicing segmented data and thus improving the efficiency of obtaining email data.

[0174] In one embodiment, reference Figure 14 , Figure 14 This diagram illustrates the overall process of segmented retrieval and concatenation in one embodiment. Based on the email's size, the number of images it contains, and the number of attachments it includes, it can be determined whether the email meets the criteria for a large-size email. If it does, the target server generates multiple retrieval requests and sends these requests to the original server to retrieve multiple segmented data pieces from the original server. After obtaining the multiple segmented data pieces, the target server can concatenate them to obtain the complete email data.

[0175] In one specific embodiment, a method for email migration is provided, including the following steps:

[0176] Step 1502: In response to the domain name entry operation, the terminal displays the original email domain name entered through the domain name entry operation; in response to the domain name confirmation operation, it displays the original email parameters recommended based on the original email domain name; in response to the account and password entry operation, it displays the verification email account entered through the account and password entry operation and the email password corresponding to the verification email account; the verification email account is any one of at least one original email account.

[0177] Step 1504: The terminal responds to the email verification operation and displays the verification result of verifying the original email based on the original email parameters, the verification email account, and the corresponding email password. If the verification is successful, the information entry page is displayed.

[0178] Step 1506: The terminal responds to the email migration information entry operation triggered by the information entry page, and obtains at least one original email account for the emails to be migrated and the target email account for each original email account to receive the migrated emails.

[0179] Step 1508: In response to the email migration initiation operation, the terminal sends a migration email configuration email to each original email account. The migration email configuration email is used to trigger the display of the migration email configuration page. The migration email configuration page displays at least the original email password input box, the receipt time configuration item, the sending time configuration item, the sender configuration item, and the recipient configuration item. The receipt time configuration item is used to determine the emails to be migrated under the original email account according to the receipt time, the sending time configuration item is used to determine the emails to be migrated under the original email account according to the sending time, the sender configuration item is used to determine the emails to be migrated under the original email account according to the sender information, and the recipient configuration item is used to determine the emails to be migrated under the original email account according to the recipient information.

[0180] Step 1510: The terminal obtains the original email password entered in the migration email configuration email, and obtains the configuration information based on the receiving time configuration item, sending time configuration item, sender configuration item, and recipient configuration item.

[0181] Step 1512: The terminal sends at least one original email account, the target email account corresponding to each original email account, the original email password corresponding to each original email account, and the configuration information corresponding to each original email account to the target server.

[0182] Step 1514: The target server retrieves the email data of the mass emails to be migrated under each original email account from the original server according to the configuration information, and stores the retrieved email data in the preset cache.

[0183] Step 15016: The target server determines the original email account currently being migrated from at least one original email account, and obtains the basic email information of the emails currently being migrated under the original email account currently being migrated.

[0184] Step 1518: If the target server determines that the recipient information of the currently migrated email contains an email group account based on the basic email information, the currently migrated email is a mass email; if the total number of recipients, CC's, and BCC's in the currently migrated email is greater than a first quantity threshold based on the recipient information, CC's information, and BCC's information in the basic email information, the currently migrated email is determined to be a mass email; or if the email header of the currently migrated email contains a preset mass email identifier based on the basic email information, the currently migrated email is determined to be a mass email.

[0185] Step 1520: If it is determined that the email being migrated is a mass email, the target server extracts the subject, sender information, and email body attachment identifier from the basic email information; performs a hash operation on the subject to obtain a hash subject; concatenates the hash subject, sender information, and email body attachment identifier to obtain concatenated information; performs a hash operation on the concatenated information to obtain the cache identifier of the email being migrated.

[0186] Step 1522: The target server obtains the body data of the currently migrated email; encodes the body data of the currently migrated email to obtain the first encoded body; extracts the second encoded body from the value corresponding to the cache identifier of the currently migrated email; if the first encoded body and the second encoded body are consistent, extracts the corresponding email data from the preset cache for mass emails according to the email identifier.

[0187] Step 1524: If email data is extracted from the preset cache for mass emails based on the cache identifier, the target server determines the target mailbox to which the emails under the original email account currently being migrated will be migrated; the extracted email data is stored in the target mailbox, and the terminal is triggered to update the migration progress of the original email account to indicate the progress of the current email migration being completed.

[0188] Step 1526: If it fails to extract email data from the preset cache for mass emails based on the cache identifier, the target server determines the email size, the number of images, and the number of attachments of the email being migrated. If at least one of the following conditions is met: the email size is greater than a preset size threshold, the number of images is greater than a second number threshold, and the number of attachments is greater than a third number threshold, the target server determines that the email being migrated meets the large-size email judgment strategy.

[0189] Step 1528: If the large email judgment strategy is met, the target server generates email header retrieval request, body retrieval request, attachment retrieval request, and image retrieval request.

[0190] Step 1530: The target server retrieves the email header data of the email being migrated from the original server corresponding to the original email account being migrated, based on the email header retrieval request; retrieves the email body data of the email being migrated from the original server corresponding to the original email account being migrated, based on the body retrieval request; retrieves the attachment data of the email being migrated from the original server corresponding to the original email account being migrated, based on the attachment retrieval request; and retrieves the image data of the email being migrated from the original server corresponding to the original email account being migrated, based on the image retrieval request.

[0191] Step 1532: The target server obtains the email template. The email template includes multiple parts, each of which is distinguished by a boundary string. Each part includes header information used to define the email content. Based on the header information included in each part, the corresponding segment data for each part is determined, and the corresponding part is filled with data based on the segment data to obtain the email data of the currently migrated email. Then, the process returns to step 1520 to continue execution.

[0192] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0193] In one embodiment, reference Figure 15 , Figure 15 This diagram illustrates an email migration process in one embodiment. Users initiate the migration from the instant messaging application's management backend, filling in the original server configuration information. They upload the list of migrating users and initiate the email migration. `qymailmovesvr` manages the migration information, `qycronsvr` periodically initiates email synchronization scheduling tasks, and `qyexternalxmq` runs the specific email migration tasks. The technical solution described in this application is used in email migration within `qyexternalxmq`.

[0194] In one embodiment, reference Figure 16 , Figure 16 This diagram illustrates the overall process of email migration in one embodiment. Step 1601: First, retrieve the basic email information (sender, recipient, CC, email body attachment identifier, time, subject) from the original server. Step 1602: Determine whether the email to be migrated hits the cache judgment logic based on the number of recipients, CC recipients, and email addresses. Step 1603: If the cache judgment logic is hit, i.e., if it is a mass email, continue to retrieve the body information (excluding attachments) of the email to be migrated, calculate the MD5 hash of the body, and calculate the cache identifier key. Step 1604: Attempt to retrieve cached content using the cache identifier key. Step 1605: If cached content is retrieved, Step 1606: Directly use the cached content to complete the email retrieval process. Step 1607: If cached content is not retrieved, retrieve segmented data of the email to be migrated from the original server. Step 1608: Perform security filtering on the retrieved segmented data using HtmlFilter. Step 1609: Reassemble the multiple segmented data to obtain the email MIME file, and store the body of the email after HtmlFilter security filtering in the cache. Step 1610: If the cache check logic is not hit, i.e., if it is not a mass email, retrieve the email data of the currently migrated email from the original server. Step 1611: Perform security filtering on the retrieved email data using HtmlFilter, and perform the incoming email operation based on the security-filtered email data.

[0195] The caching scheme is allowed for emails that meet one of the following conditions: 1. The recipients include an email group; 2. The number of recipients + CC + BCC is greater than 10; 3. The email header contains an identifiable group sending identifier.

[0196] The caching storage scheme includes: 1. Storing the entire email on disk, which can be retrieved using the email identifier (MailID); 2. Using KV (key, value) to store the cache index information; 3. Cache Key = Hash(Hash(subject) + sender + email body identifier); 4. Cache Value = MD5 (HTML part of the email body) + email identifier (MailID).

[0197] The cache read logic is as follows: 1. Determine whether the basic information of the email meets the cache conditions; 2. If it meets the conditions, calculate the cache identifier key and retrieve the index information value through the cache identifier key, and compare the MD5 of the value with the currently migrated email; 3. If they match, try to read the cache through the cache key, and if it exists, use it directly; 4. If the cache does not exist, retrieve the data from the original server and update the email identifier MailID.

[0198] The advantages of this application are as follows:

[0199] 1. Email migration traffic optimization algorithm: Identifies mass emails by detecting basic email information and reduces public network bandwidth transmission between email retrieval services by utilizing local cached data.

[0200] 2. Incoming email preprocessing technology: For large emails, the body of the email is preprocessed and cached to reduce bandwidth usage and CPU resource consumption.

[0201] 3. Segmented attachment retrieval strategy (i.e., large email judgment strategy): For large email attachments, implement a segmented download method to further reduce bandwidth requirements.

[0202] This application also provides an application scenario in which the above-described email migration method is applied. Specifically, the email migration method is applied in this scenario as follows:

[0203] When Company A decides to use the email service provided by the instant messaging application, an email migration task can be triggered to move the emails of Company A's employees from their original email accounts to the email accounts provided by the instant messaging application.

[0204] The above application scenarios are merely illustrative. It is understood that the application of the email migration method provided in the embodiments of this application is not limited to the above scenarios.

[0205] Based on the same inventive concept, this application also provides an email migration apparatus for implementing the email migration method described above. The solution provided by this apparatus is similar to the solution described in the above method; therefore, the specific limitations in one or more email migration apparatus embodiments provided below can be found in the limitations of the email migration method described above, and will not be repeated here.

[0206] In one embodiment, such as Figure 17 As shown, an email migration device 1700 is provided, including: an information input module 1702, a progress display module 1704, and a progress update module 1706, wherein:

[0207] The information entry module 1702 is used to respond to the email migration information entry operation and obtain at least one original email account of the email to be migrated and the target email account to receive the migrated email corresponding to each original email account.

[0208] The progress display module 1704 is used to respond to the email migration initiation operation and display the migration progress of emails under each original email account.

[0209] The progress update module 1706 is used to update the migration progress of the original email account to indicate that the migration of the target email is complete when the target email under the original email account being migrated is a mass email. This is done after the email data of the target email is extracted from the preset cache for mass emails and the email data of the target email is stored in the mailbox corresponding to the target email account.

[0210] In one embodiment, the information entry module 1702 is also used to display an information entry page, which includes a file upload area; in response to a drag-and-drop operation on an email migration information file, and when the email migration information file is dragged to the file upload area, it obtains at least one original email account recorded in the email migration information file and the target email account corresponding to each original email account.

[0211] In one embodiment, the email migration device 1700 further includes an email verification module, used to display the original email domain entered through the domain entry operation in response to the domain entry operation; to display the original email parameters recommended based on the original email domain in response to the domain confirmation operation; to display the verification email account entered through the account and password entry operation and the encrypted email password corresponding to the verification email account in response to the account and password entry operation; the verification email account is any one of at least one original email account; and to display the verification result of verifying the original email based on the original email parameters, the verification email account, and the corresponding email password in response to the email verification operation.

[0212] In one embodiment, the email verification module is further configured to display a modification prompt message when the verification result is a verification failure; the modification prompt message is configured to prompt modification of at least one of the recommended original email parameters, the verification email account, and the email password corresponding to the verification email account.

[0213] In one embodiment, the email migration device 1700 further includes an email configuration module, used to send a migration email configuration email to each original email account in response to the email migration initiation operation; the migration email configuration email is used to trigger the display of the migration email configuration page; the migration email configuration page displays at least the receiving time configuration item, the sending time configuration item, the sender configuration item, and the recipient configuration item; it obtains the receiving time configured based on the receiving time configuration item, the sending time configured based on the sending time configuration item, the sender information configured based on the sender configuration item, and the recipient information configured based on the recipient configuration item; and it sends the sending time, receiving time, sender information, and recipient information to the target server, so that the target server can determine the emails that need to be migrated under the corresponding original email account based on the sending time, receiving time, sender information, and recipient information.

[0214] In one embodiment, the preset cache contains email data of at least one mass email account retrieved from the original server; during the process of retrieving the mass email data from the original server, if the retrieved mass emails meet the preset large-volume email judgment strategy, the retrieved mass email data is retrieved from the original server in segments.

[0215] In one embodiment, the migration progress includes at least the number of mailboxes that have completed email migration, the number of mailboxes that have not started email migration, the number of mailboxes that are in the process of email migration, a first ratio of the total number of mailboxes undergoing email migration to the number of mailboxes in the process of email migration, the email migration progress status corresponding to each original mailbox account, and a second ratio of the total number of migrated emails corresponding to each original mailbox account to the number of successfully migrated emails. The progress update module 1706 is also used to decrement the number of mailboxes that have not started email migration by 1 and increment the number of successfully migrated emails in the second ratio corresponding to the original mailbox account undergoing email migration by 1 when the target email is the first email to be migrated under the original mailbox account undergoing email migration.

[0216] In one embodiment, the progress update module 1706 is further configured to, when the target email is the last email to be migrated under the original email account for which the email migration is being performed, increment the number of email accounts that have completed email migration by 1, increment the number of email accounts that have completed email migration in the first ratio by 1, decrement the number of email accounts that are being migrated by 1, increment the number of successfully migrated emails in the second ratio corresponding to the original email account for which the email migration is being performed by 1, and update the email migration progress status corresponding to the original email account for which the email migration is being performed to the completed status.

[0217] In one embodiment, the email migration device 1700 further includes a retry module, which displays a retry element when the migration progress indicator of the original email account undergoing email migration indicates that the target email migration has failed; generates a retry instruction in response to a trigger operation on the retry element; the retry instruction is used to trigger the extraction of email data of the target email from the original server corresponding to the original email account undergoing email migration, and caches the email data in a preset cache of the target server, so that the target server retryes the migration based on the email data of the target email in the preset cache.

[0218] In one embodiment, such as Figure 18 As shown, an email migration device 1800 is provided, including: a basic information acquisition module 1802, a cache identifier determination module 1804, and an email data storage module 1806, wherein:

[0219] The basic information acquisition module 1802 is used to determine the original email account currently being migrated from at least one original email account, and to obtain the basic email information of the emails currently being migrated under the original email account currently being migrated.

[0220] The cache identifier determination module 1804 is used to determine the cache identifier of the currently migrated email based on the email basic information when it is determined that the currently migrated email is a mass email based on the email basic information.

[0221] The email data storage module 1806 is used to determine the target mailbox to which the emails under the original email account to be migrated are to be migrated, based on the cache identifier and the preset cache for mass emails; and to store the extracted email data in the target mailbox.

[0222] In one embodiment, the cache identifier determination module 1804 is further configured to determine that the currently migrated email is a mass email if the recipient information of the currently migrated email contains a mail group account based on the basic email information; determine that the currently migrated email is a mass email if the total number of recipients, CCs, and BCCs of the currently migrated email is greater than a first quantity threshold based on the recipient information, CC information, and BCC information in the basic email information; or determine that the currently migrated email is a mass email if the email header contains a preset mass email identifier based on the basic email information.

[0223] In one embodiment, the cache identifier determination module 1804 is further configured to extract the subject, sender information, and email body attachment identifier of the currently migrated email from the basic email information; perform a hash operation on the subject to obtain a hash subject; concatenate the hash subject, sender information, and email body attachment identifier to obtain concatenated information; and perform a hash operation on the concatenated information to obtain the cache identifier of the currently migrated email.

[0224] In one embodiment, the email data storage module 1806 is further configured to: find the value corresponding to the cache identifier of the currently migrated email; extract the email identifier from the value corresponding to the cache identifier of the currently migrated email; and extract the corresponding email data from the preset cache based on the email identifier.

[0225] In one embodiment, the email data storage module 1806 is further configured to obtain the body data of the currently migrated email; encode the body data of the currently migrated email to obtain a first encoded body; extract a second encoded body from the value corresponding to the cache identifier of the currently migrated email; and, if the first encoded body and the second encoded body are consistent, extract the corresponding email data from the preset cache according to the email identifier.

[0226] In one embodiment, the email data storage module 1806 is further configured to determine whether the currently migrated email meets the large-volume email judgment strategy if the email data cannot be extracted from the preset cache according to the cache identifier; if the large-volume email judgment strategy is met, the currently migrated email is retrieved in segments from the original server corresponding to the original email account currently being migrated, resulting in multiple segment data; the multiple segment data are concatenated to obtain the email data of the currently migrated email; the email data of the currently migrated email is cached in the preset cache, so that the email data of the currently migrated email can be extracted from the preset cache again based on the cache identifier of the currently migrated email.

[0227] In one embodiment, the email data storage module 1806 is further configured to determine the email volume, the number of images contained, and the number of attachments contained in the currently migrated email; and to determine that the currently migrated email meets the large-volume email judgment strategy if at least one of the following conditions is met: the email volume is greater than a preset volume threshold, the number of images is greater than a second quantity threshold, and the number of attachments is greater than a third quantity threshold.

[0228] In one embodiment, the multiple segmented data includes email header data, body data, attachment data, and image data; the email data storage module 1806 is further configured to generate email header retrieval requests, body retrieval requests, attachment retrieval requests, and image retrieval requests; based on the email header retrieval request, the email header data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated; based on the body retrieval request, the body data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated; based on the attachment retrieval request, the attachment data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated; and based on the image retrieval request, the image data of the currently migrated email is retrieved from the original server corresponding to the original email account currently being migrated.

[0229] In one embodiment, the email data storage module 1806 is further configured to obtain an email template; the email template includes multiple parts, each part is distinguished by a boundary string, and each part includes header information for defining the email content; based on the header information included in each part, the corresponding segment data for each part is determined, and the corresponding part is filled with data based on the segment data to obtain the email data of the currently migrated email.

[0230] The modules in the aforementioned email migration device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of a computer device in software form, so that the processor can call and execute the corresponding operations of each module.

[0231] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 19 As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores mail migration data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a mail migration method.

[0232] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 20 As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When executed by the processor, the computer program implements a mail transfer method. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.

[0233] Those skilled in the art will understand that Figures 19 to 20 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0234] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.

[0235] In one embodiment, a computer-readable storage medium is provided storing a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0236] In one embodiment, a computer program product or computer program is provided, the computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and executes the computer instructions, causing the computer device to perform the steps in the above method embodiments.

[0237] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0238] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0239] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0240] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims. Use tags to create a table, and then set the appropriate rows and columns within the table to layout the header information. The email content area typically includes the email body, images, links, etc., and can be used...

Claims

1. A mail relocation method characterized by comprising: The method comprises: in response to a mail migration information input operation, obtaining at least one original mailbox account of the mail to be migrated and the target mailbox account corresponding to each original mailbox account to receive the migrated mail; in response to a mail migration start operation, displaying the migration progress of the mail under each original mailbox account; when the target mail to be migrated under the original mailbox account for mail migration is a mass mail, extracting the mail data of the target mail from the preset cache for mass mail, and storing the mail data of the target mail to the mailbox corresponding to the target mailbox account, the migration progress of the original mailbox account for mail migration is updated to the progress indicating that the target mail migration is completed.

2. The method of claim 1, wherein, In response to the mail migration information input operation, at least one original mailbox account of the mail to be migrated and the target mailbox account corresponding to each original mailbox account to receive the migrated mail are obtained, comprising: displaying an information input page, the information input page including a file upload area; in response to a drag operation on a mail migration information file, and in the case where the mail migration information file is dragged to the file upload area, obtaining at least one original mailbox account recorded in the mail migration information file and the target mailbox account corresponding to each original mailbox account.

3. The method of claim 1, wherein, The method further comprises: in response to a domain name input operation, displaying the original mailbox domain name input by the domain name input operation; in response to a domain name confirmation operation, displaying the original mailbox parameters recommended based on the original mailbox domain name; in response to an account password input operation, displaying the verification mailbox account input by the account password input operation and the mailbox password corresponding to the verification mailbox account; the verification mailbox account is any one of the at least one original mailbox account; in response to a mailbox verification operation, displaying the verification result of verifying the original mailbox based on the original mailbox parameters, the verification mailbox account and the corresponding mailbox password.

4. The method of claim 3, wherein, The method further comprises: in the case where the verification result is a verification failure, display a modification prompt information; The modification prompt information is used to prompt at least one of the recommended original mailbox parameters, the verification mailbox account and the mailbox password corresponding to the verification mailbox account to be modified.

5. The method of claim 1, wherein, The method further comprises: in response to a mail migration start operation, sending a migration mail configuration mail to each original mailbox account; the migration mail configuration mail is used to trigger the display of a migration mail configuration page; the migration mail configuration page at least displays a receiving time configuration item, a sending time configuration item, a sender configuration item and a recipient configuration item; obtaining the receiving time configured based on the receiving time configuration item, the sending time configured based on the sending time configuration item, the sender information configured based on the sender configuration item, and the recipient information configured based on the recipient configuration item; sending the sending time, the receiving time, the sender information and the recipient information to the target server, so that the target server determines the mail to be migrated under the corresponding original mailbox account based on the sending time, the receiving time, the sender information and the recipient information.

6. The method of claim 1, wherein, The preset cache caches the mail data of the mass mail under the at least one original mailbox account pulled from the original server; in the process of pulling the mail data of the mass mail from the original server, when the pulled mass mail meets a preset large-volume mail judgment strategy, the mail data of the pulled mass mail is obtained by segmenting from the original server.

7. The method of claim 1, wherein, The migration progress at least includes the number of mailboxes for which the mail migration is completed, the number of mailboxes for which the mail migration is not started, the number of mailboxes for which the mail migration is in progress, a first ratio of the total number of mailboxes for which the mail migration is performed to the number of mailboxes for which the mail migration is in progress, a mail migration progress state corresponding to each original mailbox account respectively, and a second ratio of the total number of mails for which the migration is performed to the number of mails for which the migration is successfully performed for each original mailbox account respectively; The method further includes: When the target mail is the first mail for which the migration is performed under the original mailbox account for which the mail migration is performed, the number of mailboxes for which the mail migration is not started is reduced by 1, and the number of mails for which the migration is successfully performed in the second ratio corresponding to the original mailbox account for which the mail migration is performed is increased by 1.

8. The method of claim 7, wherein, The method further includes: When the target mail is the last mail for which the migration is performed under the original mailbox account for which the mail migration is performed, the number of mailboxes for which the mail migration is completed is increased by 1, the number of mailboxes for which the mail migration is completed in the first ratio is increased by 1, the number of mailboxes for which the mail migration is in progress is reduced by 1, the number of mails for which the migration is successfully performed in the second ratio corresponding to the original mailbox account for which the mail migration is performed is increased by 1, and the mail migration progress state corresponding to the original mailbox account for which the mail migration is performed is updated to a completed state.

9. The method of claim 1, wherein, The method further includes: When the migration progress of the original mailbox account for which the mail migration is performed indicates that the target mail migration fails, a retry element is displayed; In response to a triggering operation on the retry element, a retry instruction is generated, which is used to trigger extraction of mail data of the target mail from an original server corresponding to the original mailbox account for which the mail migration is performed, and cache the mail data in a preset cache of a target server, so that the target server performs migration retry based on the mail data of the target mail in the preset cache.

10. A mail relocation method characterized by comprising: The method includes: From at least one original mailbox account, a current original mailbox account for which mail migration is performed is determined, and mail basic information of a current migrated mail under the current original mailbox account for which mail migration is performed is obtained; In a case where it is determined based on the mail basic information that the current migrated mail is a mass mail, a cache identifier of the current migrated mail is determined according to the mail basic information of the current migrated mail; In a case where the mail data is extracted from a preset cache for mass mail according to the cache identifier, a target mailbox to which the mail migration under the current original mailbox account for which the mail migration is performed is determined; The extracted mail data is stored in the target mailbox.

11. The method of claim 10, wherein, The method further includes: In a case where the mail group account is included in the recipient information of the current migrated mail based on the mail basic information, it is determined that the current migrated mail is a mass mail; In a case where the total number of recipients, carbon copies and blind carbon copies of the current migrated mail is greater than the first quantity threshold based on the recipient information, the carbon copy information and the blind carbon copy information in the mail basic information, it is determined that the current migrated mail is a mass mail; or In a case where the preset mass mail identifier exists in the mail header of the current migrated mail based on the mail basic information, it is determined that the current migrated mail is a mass mail.

12. The method of claim 10, wherein, The method further comprises: extracting the subject, the sender information and the mail body attachment identifier of the current migrated mail from the mail basic information; performing a hash operation on the subject to obtain a hash subject; splicing the hash subject, the sender information and the mail body attachment identifier to obtain spliced information; performing a hash operation on the spliced information to obtain the cache identifier of the current migrated mail.

13. The method of claim 10, wherein, The method further comprises: finding a value corresponding to the cache identifier of the current migrated mail according to the cache identifier of the current migrated mail; extracting a mail identifier from the value corresponding to the cache identifier of the current migrated mail; extracting corresponding mail data from the preset cache according to the mail identifier.

14. The method of claim 13, wherein, The method further comprises: obtaining the text data of the current migrated mail; encoding the text data of the current migrated mail to obtain a first encoded text; extracting a second encoded text from the value corresponding to the cache identifier of the current migrated mail; in a case where the first encoded text is consistent with the second encoded text, extracting corresponding mail data from the preset cache according to the mail identifier.

15. The method of claim 10, wherein, The method further comprises: in a case where the mail data is failed to be extracted from the preset cache according to the cache identifier, determining whether the current migrated mail satisfies a large-volume mail judgment strategy; in a case where the current migrated mail satisfies the large-volume mail judgment strategy, segmentally pulling the current migrated mail from the original server corresponding to the original mailbox account to which the current migrated mail is migrated, to obtain a plurality of segment data; splicing the plurality of segment data to obtain the mail data of the current migrated mail; caching the mail data of the current migrated mail in the preset cache, so as to extract the mail data of the current migrated mail from the preset cache based on the cache identifier of the current migrated mail.

16. The method of claim 15, wherein, The method further comprises: determining the mail volume, the number of included pictures and the number of included attachments of the current migrated mail. In the case that the mail volume is greater than a preset volume threshold, the number of pictures is greater than a second number threshold, and the number of attachments is greater than a third number threshold, it is determined that the current migrated mail meets the large-volume mail judgment strategy.

17. The method of claim 15, wherein, The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data.

18. The method of claim 15, wherein, The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data.

19. A mail relocation apparatus characterized by comprising: The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data.

20. A mail relocation apparatus, characterized by comprising: The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data, attachment data, and picture data. The plurality of segmented data includes mail header data, body data The cache identifier determination module is configured to, in a case where it is determined based on the mail basic information that the current migrated mail is a mass mail, determine a cache identifier of the current migrated mail according to mail basic information of the current migrated mail. The mail data storage module is configured to, in a case where the mail data is extracted from the preset cache for mass mails according to the cache identifier, determine a target mailbox to which the mail under the original mailbox account currently subjected to the mail migration is migrated; and store the extracted mail data into the target mailbox. 21.A computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the computer device is configured to perform the method according to any one of claims 1-20. The computer program is executed by the processor to implement the steps of the method of any one of claims 1 to 18.

22. A computer readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method of any one of claims 1 to 18.

23. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method of any one of claims 1 to 18.