Methods, apparatuses, devices, storage media, and program products for communication
By using email addresses and email protocols to communicate between intelligent components and business systems, the challenge of communication between intelligent components across devices and network environments is solved, enabling efficient task collaboration and result exchange, and improving the system's collaborative execution capabilities.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING ZITIAO NETWORK TECH CO LTD
- Filing Date
- 2026-04-22
- Publication Date
- 2026-06-05
AI Technical Summary
Existing technologies struggle to achieve efficient communication between intelligent components and business systems across devices and network environments, especially when intelligent components are deployed on local devices or private networks, making it impossible to communicate through public network access or predefined interfaces.
By using email addresses as communication identifiers for intelligent components and email as the communication medium, an email protocol is defined to achieve cross-domain communication, supporting asynchronous task collaboration between intelligent components, between business systems and intelligent components, and between users and intelligent components.
It enables reliable cross-domain communication, allowing intelligent components to receive task assignments and return results without providing publicly accessible application programming interface endpoints, thus improving task processing efficiency and system collaborative execution capabilities.
Smart Images

Figure CN122160357A_ABST
Abstract
Description
Technical Field
[0001] The examples in this article generally relate to the field of computers, and in particular to methods, apparatuses, electronic devices, computer-readable storage media, and computer program products for communication. Background Technology
[0002] With the development of artificial intelligence and network communication technologies, intelligent components with processing capabilities are increasingly being applied in various scenarios. For example, in some scenarios, intelligent components can respond to external requests to perform tasks, process data, or provide services, thereby assisting users in completing complex operations. In this process, intelligent components may need to communicate with other objects to achieve information exchange and collaborative processing. Summary of the Invention
[0003] In a first aspect, a method for communication is provided. The method includes: receiving an operation request and a first email address, the operation request indicating a first operation, the first email address being associated with a first smart component; sending a first email, the recipient of which includes the first email address, the first email including the operation request; and receiving a second email, the sender of which includes the first email address, the second email including response information indicating the result of the first smart component's execution of the first operation.
[0004] In a second aspect, a method for information processing is provided. The method includes: receiving a first email sent to a first email address, the first email including an operation request instructing a first operation, the first email address being associated with a first smart component; performing the first operation using the first smart component; and sending a second email including response information instructing the first smart component on the result of its execution of the first operation.
[0005] In a third aspect, an apparatus for communication is provided. The apparatus includes: an information receiving module configured to receive an operation request and a first email address, the operation request indicating a first operation, the first email address being associated with a first intelligent component; a first email sending module configured to send a first email, the recipient of which includes the first email address, the first email including the operation request; and a second email receiving module configured to receive a second email, the sender of which includes the first email address, the second email including response information indicating the result of the first intelligent component's execution of the first operation.
[0006] In a fourth aspect, an information processing apparatus is provided. The apparatus includes: a first email receiving module configured to receive a first email sent to a first email address, the first email including an operation request indicating a first operation, the first email address being associated with a first smart component; a first operation execution module configured to execute the first operation using the first smart component; and a second email sending module configured to send a second email including response information indicating the execution result of the first smart component on the first operation.
[0007] In a fifth aspect, an electronic device is provided. The electronic device includes: at least one processor; and at least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor. When executed by the at least one processor, the instructions cause the device to perform the methods of the first aspect or the second aspect.
[0008] In a sixth aspect, a computer-readable storage medium is provided. The computer-readable storage medium stores computer-executable instructions that can be executed by a processor to implement the methods of the first or second aspect.
[0009] In a seventh aspect, a computer program product is provided, which is tangibly stored in a computer storage medium and includes computer-executable instructions that, when executed by a device, cause the device to perform the method of the first aspect or the second aspect.
[0010] In this way, in some situations, by using email addresses as communication identifiers for intelligent components and using email as the communication medium to transmit operation requests and responses, communication between the platform and intelligent components, and / or between intelligent components, can be achieved. In some cases, intelligent components can receive task assignments from the platform or other intelligent components via email, execute tasks, and return results. In other cases, they can be scheduled by external platforms or other intelligent components without providing publicly accessible application programming interface endpoints.
[0011] It should be understood that the content described in this section is not intended to limit the key or important features of the examples in this article, nor is it intended to restrict the scope of the solution. Other features will become readily apparent from the following description. Attached Figure Description
[0012] The above and other features, advantages, and aspects of the various examples herein will become more apparent when taken in conjunction with the accompanying drawings and the following detailed description. In the accompanying drawings, the same or similar reference numerals denote the same or similar elements, wherein: Figure 1A Examples of communication schemes from related solutions discovered by the inventors of this paper are shown; Figure 1B A schematic diagram of an example environment based on some examples is shown; Figure 2 A schematic diagram of a mail-based communication system based on some examples is shown; Figure 3 An example of a signaling flow used for communication and information processing is shown; Figure 4 A flowchart illustrating example methods for communication is shown, based on several examples. Figure 5 A flowchart of an example method for processing information based on other examples is shown; Figure 6 A schematic structural block diagram of an example device for communication, based on some examples, is shown; Figure 7 A schematic structural block diagram of an example device for information processing based on other examples is shown; and Figure 8 A block diagram is shown in which one or more examples of an electronic device can be implemented. Detailed Implementation
[0013] The examples in the text will now be described in more detail with reference to the accompanying drawings. While some examples are shown in the drawings, it should be understood that solutions can be implemented in various forms and should not be construed as limited to the examples presented herein. Rather, these examples are provided to provide a more thorough and complete understanding of the solutions. It should be understood that the drawings and examples in this document are for illustrative purposes only and are not intended to limit the scope of protection of the solutions.
[0014] In the description of the examples in this document, the term "including" and similar terms should be understood as open inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "an example" or "the example" should be understood as "at least one example". The term "some examples" should be understood as "at least some examples". Other explicit and implicit definitions may also be included below. The terms "first", "second", etc., may refer to different or the same objects. The term "trigger" refers to one or more interactive actions by a user on a terminal device. Further, these interactive actions may be triggered within the same user interface / pop-up window or within different user interfaces / pop-up windows. There is no limitation in this regard. Other explicit and implicit definitions may also be included below.
[0015] It should be noted that, unless explicitly stated otherwise, performing a step in response to A does not mean that the step is performed immediately after A, but may include one or more intermediate steps.
[0016] The examples in this article may involve user data, data acquisition, and / or use. All of these aspects comply with relevant laws, regulations, and rules. In the examples presented here, all data collection, acquisition, processing, manipulation, forwarding, and use are conducted with the user's knowledge and confirmation. Accordingly, when implementing each example, the type, scope of use, and usage scenarios of any data or information that may be involved should be communicated to the user and their authorization obtained through appropriate means, in accordance with relevant laws and regulations. The specific methods of notification and / or authorization can vary depending on the actual situation and application scenario; the scope of the solution is not limited in this regard.
[0017] In this manual and the sample solutions, any processing of personal information will be conducted only under legal grounds (such as obtaining the consent of the data subject or being necessary for the performance of a contract) and will only be carried out within the scope stipulated or agreed upon. A user's refusal to process personal information beyond what is necessary for basic functions will not affect the user's use of basic functions.
[0018] In this paper, intelligent components are implemented based on machine learning models. Intelligent components can also be referred to as intelligent systems, intelligent modules, AI modules, AI systems, AI components, etc. For example, intelligent components can make decisions and autonomously execute actions based on machine learning models to achieve preset goals or complete preset tasks. An intelligent component can be an automated program that understands the user's intent and can use models or invoke tools to complete various types of tasks. In some cases, examples of intelligent components may include, but are not limited to: agents, bots, chatbots, digital avatars, intelligent customer service, digital assistants, etc. Alternatively, an intelligent component can also be an intelligent role implemented based on a machine learning model. "Intelligent components" can process user requests based on generative models (e.g., language models, multimodal models) to perform specified types of tasks. Intelligent components can be deployed on local devices, cloud servers, or any other suitable computing environment.
[0019] In this article, the term "machine learning model" can refer to a computational model that performs tasks by learning patterns and rules from data. Machine learning models can include, but are not limited to, neural network models, deep learning models, and large language models. In some cases, large language models are an example of machine learning models that can understand and generate natural language text and can be used to perform tasks such as task decomposition, tool invocation, and content generation.
[0020] As mentioned above, with the widespread deployment of intelligent components across different terminal devices and network environments, the demand from business systems for scheduling intelligent components and for collaborative execution between them is increasing. However, the inventors of this paper have discovered that in some scenarios, intelligent components may be deployed on local devices, local networks, or private network environments, lacking network addresses accessible from the public network side, or struggling to provide services externally through predefined program interfaces. In such cases, communication with the corresponding intelligent components may be difficult.
[0021] Figure 1A Example 100A of a communication scheme from a related scheme discovered by the inventors of this paper is shown. For example... Figure 1A As shown, Example 100A involves user 101, business system 102, and intelligent component 103.
[0022] Business system 102 may have certain data processing capabilities or be considered a multi-functional collaboration platform. For example, business system 102 may possess any appropriate functions such as business management, business creation, and business planning. Within business system 102, people can systematically, standardizedly, and visually manage and collaborate on the entire lifecycle of a business, from initiation, planning, execution, monitoring to closure.
[0023] User 101's terminal device can, for example, provide the user with an interface to business system 102, through which user 101 can send commands to business system 102. Business system 102 can provide messages to the user via message notifications. Different business systems 102 can also communicate with each other through an API. User 101's terminal device can also provide an interactive interface between user 101 and intelligent component 103, through which user 101 can send commands to intelligent component 103. Intelligent component 103 can call tools or modules of business system 102 through the interface.
[0024] However, reference Figure 1A While the proposed solutions provide communication methods between user 101 and business system 102, methods for user 101 to send instructions to intelligent component 103, and methods for intelligent component 103 to call tools or modules of business system 102, they fail to provide methods for communication between intelligent component 103 and user 101's terminal device, between business system 102 and intelligent component 103, or between different intelligent agents. This will affect the application of intelligent components and business systems deployed on different devices and in different environments, thereby impacting task processing efficiency.
[0025] Based on the aforementioned research and analysis, the inventors have proposed an improved communication scheme. According to this scheme, an operation request and a first email address can be received. The operation request indicates a first operation, and the first email address is associated with a first intelligent component. A first email is sent, with the recipient including the first email address, and the first email includes the operation request. A second email is received, with the sender including the first email address, and the second email includes response information indicating the execution result of the first intelligent component on the first operation. Therefore, by utilizing email addresses as communication identifiers for intelligent components and using email as a communication medium to transmit operation requests and response information, communication between the platform and intelligent components, as well as between intelligent components themselves, can be achieved.
[0026] An improved information processing scheme is also proposed. According to this scheme, a first email sent to a first email address can be received. The first email includes an operation request indicating a first operation, and the first email address is associated with a first intelligent component. The first intelligent component executes the first operation. A second email is sent, including response information indicating the result of the first intelligent component's execution of the first operation. Thus, the intelligent component can receive task assignments from a platform or other intelligent components via email, execute tasks, and return results, without needing to provide a publicly accessible application programming interface endpoint to be scheduled by an external platform or other intelligent components.
[0027] Previously, email was only used for sending and receiving information among users and was not applied to communication with intelligent components. This paper's solution innovatively uses email as the communication medium between users, business systems, and intelligent components. For example, users and business systems can use email as an information carrier to send operational information (such as scheduling instructions or task parameters) to intelligent components. Intelligent components can also communicate with each other via email. In this way, because email is a widely supported communication method, using it as the communication medium between users, business systems, and intelligent components enables communication. By defining the information carried in the email, or the structure of the information, intelligent components and business systems can accurately understand and execute the corresponding tasks.
[0028] The following sections, in conjunction with the accompanying drawings, further illustrate various examples in detail.
[0029] Figure 1B A schematic diagram of an example environment 100B is shown, based on some examples, and the scheme proposed in this disclosure will be implemented in environment 110B. For example... Figure 1BAs shown, the example environment 100B may involve user 110, multiple business systems 120-1, 120-2, 120-3, etc. (for ease of description, they are collectively referred to as business system 120 or individually) and multiple intelligent components 130-1, 130-2, 130-3, etc. (for ease of description, they are collectively referred to as intelligent component 130 or individually).
[0030] Different business systems in multiple business systems 120 can be deployed on different electronic devices / computing environments, and can communicate with each other, for example, through interfaces. User 110 can send instructions to business system 120 and receive message notifications from business system 120 through the interface of the business system.
[0031] As used in this disclosure, the term "business system" refers to a software platform or application used to perform specific business functions. A business system can be deployed in a server or cloud environment to process business processes, manage tasks, or provide services. Different intelligent components among the multiple intelligent components 130 can also be deployed in different electronic device / computing environments, and these different intelligent components can communicate with each other, for example, via email. User 110 can send instructions to intelligent component 130 through an interface associated with intelligent component 130, and receive information from intelligent component 130 via instant messaging or email. Business system 120 can, for example, send instructions to intelligent component 130 via email, and can receive information from intelligent component 130 via communication protocols or email.
[0032] In some examples, business system 120 or a user can send an operation request to intelligent component 120 to trigger intelligent component 130 to perform a corresponding operation. In other examples, business system 120 or a user can obtain operation execution results or execution status information from intelligent component 130.
[0033] In this paper, intelligent components can refer to program components with the capabilities of task understanding, task execution, and result feedback. Intelligent components can be implemented by programs deployed on terminal devices or servers, and can invoke computing resources, storage resources, model services, and various tools to assist in completing the received operations. A business system can refer to a software system that provides one or more business functions, and can provide services externally through predefined program interfaces.
[0034] The aforementioned email-based communication method can be based on a specific email protocol that supports email communication between intelligent components, between intelligent components and business systems, and between users and intelligent components. Such an email protocol can solve the problem of reliable asynchronous collaboration across organizations, platforms, and intelligent agents. By accessing an email service that supports this communication protocol and using registered email addresses, task collaboration can be completed between intelligent components, between intelligent components and business systems, and between users and intelligent components, including task assignment, task execution, result exchange, task assistance, and status monitoring. The email protocol treats each participant as a mailbox endpoint capable of sending, receiving, checking, and archiving task messages. In some examples, such an email protocol can be an asynchronous task collaboration protocol with mailboxes as the native control plane, used to complete task assignment, execution, manual escalation, and result exchange between independent intelligent components at runtime. In some examples, the email protocol can use standard internet email as an interoperable control plane to carry out the delegation, confirmation, clarification, cancellation, and result delivery of long-running tasks between independent participants.
[0035] In some scenarios, according to this email protocol, emails can carry natural language identifiers, attachments, and / or machine-readable information, enabling different participants to interpret the email and collaborate based on the information conveyed. In some examples, the protocol semantics of the email express machine-readable content through structured information in the email header, while human-oriented narrative content, contextual descriptions, and attachments remain in the email body. This preserves the advantages of email in terms of machine readability, cross-system accessibility, and human review, while also meeting the requirements for structured state and incremental progress visibility in collaboration with intelligent components. Therefore, regardless of whether business systems and intelligent components are located on the same device or belong to the same network, cross-domain communication can be achieved through emails conforming to the preset email protocol.
[0036] Figure 2 A schematic diagram of a mail-based communication system 200 according to some examples is shown. The communication system 200 involves a business system 120, a terminal device 201, a mailbox server 210, multiple tools 212 (e.g., tools 212-1, 212-2, 212-3, ...), and multiple smart components 130 (e.g., smart components 130-1, 130-2, 130-3, ...). User 110-1 can be a user operating the business system 120, and user 110-2 can be a user corresponding to the terminal device 201.
[0037] Email server 210 can provide email services. It can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks, and big data and artificial intelligence platforms. Email server 210 may include, for example, computing systems / servers such as mainframes, edge computing nodes, computing devices in a cloud environment, etc. Email server 210 can provide email services to business system 120 and / or intelligent component 130 on terminal device 201.
[0038] Terminal device 201 can be any type of mobile terminal, fixed terminal, or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, handheld computers, portable gaming terminals, VR / AR devices, personal communication system (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, positioning devices, television receivers, radio receivers, e-book devices, gaming devices, or any combination thereof, including accessories and peripherals of these devices or any combination thereof. In some cases, terminal device 201 may also support any type of user-facing interface (such as "wearable" circuitry).
[0039] Business system 120, terminal device 201, and smart component 130 can all communicate with email server 210. Email server 210 acts as a communication hub, facilitating information exchange between business system 120, terminal device 201, and multiple smart components 130. Although shown as a single server, in some example application scenarios, it is understood that multiple email servers may exist, all conforming to email communication based on a preset email protocol. Different email servers can be provided by different email providers, which may provide the same or different email domains. However, since these email providers all support the preset email protocol (i.e., the protocol capable of enabling email communication with smart components), information exchange can be completed through the corresponding email server. Therefore, for smart platforms and smart components that support the preset email protocol, even if they are not on the same device or a unified network, cross-domain communication between the platform and smart components, as well as between smart components, can be achieved via the preset email protocol.
[0040] The term "domain" as used in this article refers to the logical boundary or scope of an object for management and classification, such as the logical boundary or scope of a type of computing resource, communication address, or entity. Different domains can correspond to different object scopes. For example, different domains can correspond to different email providers, or different domains can correspond to the domains of different email service providers. For instance, related intelligent components or business systems deployed on the same device but registered through different email service providers and obtaining email addresses with different domains can be classified as belonging to different domains. Furthermore, different domains can correspond to different entities. Entities can include objects with independent management or usage boundaries, such as different organizations, different devices, or different geographical locations. For example, different enterprises or institutions can correspond to different domains; intelligent components running on different terminal devices can also correspond to different domains; systems located in different network environments or geographical locations can also be classified into different domains. Entities in different domains are usually under different management or control scopes. Therefore, communication between objects associated with different domains can be called cross-domain communication.
[0041] Communication connections can be established between the email server 210 and the terminal device 201, and between the email server 210 and the smart components 130-1 to 130-3. These communication connections can be established via wired or wireless means. The communication connections can include, but are not limited to, Bluetooth connections, mobile network connections, Universal Serial Bus (USB) connections, and Wireless Fidelity (WiFi) connections. In some cases, the email server 210 and the terminal device 201, and the email server 210 and the smart components 130-1 to 130-3, can use these corresponding communication connections to send and receive emails and exchange signaling.
[0042] User 110-2 can access communication system 200 through terminal device 201, which can communicate with email server 210. Business system 120 can dispatch tasks to multiple intelligent components 130 through email server 210. Email server 210 routes messages between business system 120 and multiple intelligent components 130, enabling platform-to-intelligent component communication even if the intelligent components 130 do not have publicly accessible application programming interface endpoints. In some cases, intelligent component 130 can invoke one or more tools (e.g., tools 212-1, 212-2, and 212-3) to access email server 210. Multiple tools 212 can provide access layer functionality to email services, allowing various types of intelligent components to be integrated into the communication network supported by email server 210.
[0043] In some examples, mailbox server 210 can implement the JSON Meta Application Protocol (JMAP). JMAP is more suitable for intelligent components to perform read and write operations than traditional email protocols because it uses JSON format for data exchange, making it easier for programs to parse and process. In the default email protocols, Simple Mail Transfer Protocol (SMTP) is responsible for email delivery, while JMAP is responsible for email retrieval, synchronization, and attachment processing. It is understood that mailbox server 210 can also support any other suitable data access protocols.
[0044] In some examples, tools 212-1, 212-2, and 212-3 may include a Software Development Kit (SDK), a Command Line Interface (CLI) tool, a protocol bridging tool, or a plugin. The protocol bridging tool can automatically scan for smart components installed on the local device that support specific protocols and connect them to the email-based communication network. For example, the protocol bridging tool can scan for smart components on the local device that support inter-process communication protocols, request a corresponding email address for each smart component, and establish a connection with the email server 210, thereby enabling these smart components to communicate across devices and networks via email. In some examples, the SDK-based runtime can automatically send a task confirmation email after receiving a task dispatch email. With these out-of-the-box tools, various smart components can quickly connect to the email service, reducing the complexity of the integration process.
[0045] In this document, "email address" refers to the address used to identify user 110, business system 120, or intelligent component 130 in communication system 200, and can be considered as the email identity of these participants. Thus, in email communication, each participant can be addressed through their email identity. Using the email address, one of the participants—user 110, business system 120, or intelligent component 130—can send emails to another, enabling email-based communication. For example, user 110 can send emails to the email addresses of business system 120 or intelligent system 130; business system 120 can also send emails to other business systems, user 110, or intelligent component 130; and intelligent component 130 can send emails to other intelligent components, business system 120, or user 110.
[0046] In some example application scenarios, user 110, business system 120, and intelligent system 130 can trigger or execute any appropriate operation via email. This operation may include one or more operation types. In some cases, the operation type may indicate the intent or semantics of the operation indicated by the email. Operation types will be illustrated exemplarily below. By way of example only, the operation type of the first operation may be represented by a specific field name, such as "X-Intent," whose field value may indicate the operation type of the first operation.
[0047] In some examples, the operation type may include a first type. The first type allows the sender of the email to assign a task to the recipient. For example, the field value indicating the first type could be "task.dispatch" or any other suitable value. In this document, the sender and recipient can be any one or more of user 110, business system 120, or intelligent component 130. In some cases, the first type of operation may be referred to as, for example, a task scheduling operation. For example, user 110 may assign a new task to intelligent component 130 or add supplementary instructions to an existing task. If supplementary instructions are added to an existing task, intelligent component 130 may treat the email content as additional instructions for that existing task. As another example, business system 120 may assign a new task to intelligent component 130 or add supplementary instructions to an existing task. Yet another example, intelligent component 130-1 may assign a new task to user 110, business system 120, or intelligent component 130-2 or add supplementary instructions to an existing task.
[0048] Alternatively and / or additionally, the operation type may include a second type. The second type indicates that the sender is requesting cancellation of a task assigned to the receiver. For example, the field value indicating the second type could be "task.cancel" or any other suitable value. In some cases, the second type of operation may be referred to as a task cancellation operation, for example. The receiver (also referred to as the task executor) may, in response to a task cancellation operation, stop a task that is about to be executed (e.g., in a queue) or is currently being executed. For example, user 110 may send an email to intelligent system 130 to request cancellation of a task assigned to intelligent system 130. As another example, business system 120 may send an email to intelligent system 130 to request cancellation of a task assigned to intelligent system 130.
[0049] Alternatively and / or additionally, the operation type may include a third type. A third type indicates that the recipient has received the email sent by the sender. For example, the field value indicating a third type could be "task.ack" or any other suitable value. In some cases, the email indicating a third type operation could be called an email acknowledgment receipt. For example, a sender might send an email to a recipient, and after receiving that email, the recipient might send another email to the sender. This other email serves to notify the sender that the recipient has received the previous email. In this case, the operation type corresponding to this other email is a third type.
[0050] Alternatively and / or additionally, the operation type may include a fourth type. The fourth type may indicate a question to the recipient of the email. For example, the field value indicating the fourth type could be "task.help_needed" or any other appropriate value. In some situations, if the executor of the task (e.g., user 110, intelligent component 130, or business system 120) believes that the task cannot continue due to missing information (e.g., reference information, confirmation, instructions, etc.), the executor may ask a question to other interacting parties (e.g., user 110, intelligent component 130, or business system 120). For example, if intelligent system 130 believes that missing information prevents the task from continuing, intelligent system 130 may send an email to user 110 instructing them to ask a question. User 110 may reply to the email to provide a response to intelligent system 130.
[0051] Alternatively and / or additionally, the operation type may include a fifth type. The fifth type indicates that the sender sends the result of the task's execution to the recipient. For example, the field value indicating the fifth type could be "task.result" or any other appropriate value. In some cases, the email sending the execution result may include status information and feedback information. The status information may indicate that the task has been completed, failed, or was rejected. If the status information indicates that the task has been completed, the feedback information may include the task's output, such as text, images, programs, or files in a specific format. The feedback information may be sent as the email body or as an attachment. If the status information indicates that the task was rejected, the feedback information may include the reason for rejecting the task.
[0052] Alternatively and / or additionally, the operation type may include a sixth type. A sixth type may instruct the sender to request capability information (such as capability cards or other information) from the receiver, which describes the receiver's capabilities. For example, the field value indicating the sixth type could be "card.query" or any other suitable value. In some cases, the sixth type operation may also be referred to as, for example, a capability query operation or a card query operation. For example, intelligent system 130-1 may send an email to intelligent system 130-2 requesting a capability card from intelligent system 130-2 to understand the operations that intelligent system 130-2 can perform. Of course, capability information may also be displayed in, for example, a list or other data format. This document does not impose any limitations on this.
[0053] Alternatively and / or additionally, the operation type may include a seventh type. The seventh type indicates response capability information. For example, the field value indicating the seventh type could be "card.response" or any other suitable value. In some cases, the seventh type operation may be referred to as, for example, a response operation or a card response operation. For example, smart system 130-2 sends an email to smart system 130-1, which may carry the capability card of smart system 130-2. In this case, the operation indicated by the email could be of the seventh type.
[0054] Alternatively and / or additionally, the operation type may include an eighth type. The eighth type indicates that the sender provides the receiver with a data stream identifier (e.g., a data stream number or a data stream address). For example, the field value indicating the seventh type could be "streamID" or any other suitable value. The receiver can obtain the task's execution status based on this data stream identifier. For example, during task execution by the intelligent system 130, the task's execution status can be updated in the storage space corresponding to the data stream identifier. The intelligent system 130 can provide the data stream number to the business system 120. The business system 120 can obtain the task's execution status in real time based on the data stream number. The business system 120 can also display the task's execution status to facilitate user 110's understanding of the task's execution progress.
[0055] In some examples, the email may include operation information related to the action. This operation information may include any appropriate information related to the action. In some cases, the operation information may include structured data, or the operation information may be stored as structured data. The following provides an illustrative example of the content of the operation information.
[0056] In some examples, the operation information may include the operation type. In some cases, the operation information may include tags or other information that can identify the operation type. Tags may indicate the operation type corresponding to the email. For example, if the email indicates a task scheduling operation, the tag may include "task" or "task.dispatch". If the email indicates a task cancellation operation, the tag may include "task.cancel". If the email indicates a third type of operation, the tag may include "task.ack". If the email indicates a fourth type of operation, the tag may include "task.help_needed". If the email indicates a fifth type of operation, the tag may include "task.result", and so on. Of course, the above operation types and information indicating operation types are merely illustrative, and any appropriate operation type or information can be selected to indicate the operation type according to actual needs. This document does not impose any restrictions on this.
[0057] Alternatively and / or additionally, operation information may include an identifier for the operation (sometimes referred to herein as the "first identifier"), such as a task number, code, or identifier. The identifier for the operation may be represented by the field "X-TaskId," whose value indicates the identifier of the operation. In some examples, the value of this field may be a string of numbers or characters; this identifier may be user-specified or randomly generated by the sender. It is understood that each operation's identifier is unique, which helps distinguish different operations. It is important to note that if an operation is related to a second operation, and the execution of the second operation is based on the execution result of the first operation (in this case, the second operation can be referred to as the parent operation of the first operation, and the second operation as the child operation of the second operation), the operation request may also include the identifier of the second operation. In some examples, the field "X-ParentTaskId" may be used to indicate that the operation has a parent operation, and the value of this field is the identifier of the parent operation.
[0058] Alternatively and / or additionally, the operation information may include a descriptive description of the operation. For example, if the email instructs a task scheduling operation, the descriptive information may include a natural language-based task description. Alternatively and / or additionally, the operation information may include a time limit for the operation, which may include a deadline for the operation (e.g., XXXX year XX month XX day XX hour XX minute). The time limit may also indicate that the operation has no deadline (e.g., "no deadline"). The time limit for the operation may be represented as the field "X-Expires-At", whose value indicates the expiration time of the operation. This value may indicate a specific time or time period. For example, the field corresponding to the time limit may be "X-Expires-At: A year B month C day, aa:bb:cc", which indicates that the operation expires at aa:bb:cc on A year B month C day. As another example, the field corresponding to the time limit may be "X-Expires-At: one week", which indicates that the operation expires if the recipient has not completed the operation within one week of receiving the first email.
[0059] Alternatively and / or additionally, the operation information may include the operation's priority, such as urgent, high, normal, etc. This priority indicates the degree of priority of the operation. The priority can be represented as a field "X-Priority," whose value indicates the operation's priority. In some cases, this value may include, for example, urgent, high, or normal. For example, the priority field could be "X-Priority: high," indicating that the operation has a high priority. Of course, this value can also be a specific numerical value.
[0060] Alternatively and / or additionally, the operation information may indicate requirements for the output format of the operation, i.e., the format requirements for the execution result. For example, the operation information may indicate outputting a file in a specific format. Alternatively and / or additionally, the operation information may include reference information. In some cases, the reference information may include reference content or a reference file. In other cases, the reference information may indicate how to obtain the reference content or reference file; for example, the reference information may indicate a reference field in a node in the workflow, from which the sender or receiver can obtain the reference content. Another example is that the reference information may indicate the address of a reference file. Of course, the above operation information is merely exemplary, and any appropriate operation information can be selected according to actual needs. This document does not impose any limitations on this.
[0061] Alternatively and / or additionally, operation information may include operation context information. For example, operation context information may be represented as the field "X-Dispatch-Context," whose value may indicate one or more of the following: the source of the operation, the initiator of the operation, the operation associated with the operation, or the task node corresponding to the operation. It is understood that an operation request may include one or more fields; for example, an operation request may simultaneously include a field indicating the identifier of the operation and a field indicating the priority of the operation.
[0062] In some examples, an email may include an email header and an email body.
[0063] As used in this article, the term "email header" refers to the header portion of an email data packet, distinct from the email body. The email header may contain sender information, recipient information, sending date, signature, etc. While some content of the email header is not typically visible in regular email clients, it is transmitted and processed as part of the email data. The term "email body," as used in this article, refers to the body portion of an email data packet, containing user-visible content such as the email subject and body. The content of the email body may include natural language text or other user-readable information.
[0064] In some scenarios, during email communication between business system 120 and intelligent component 130, between intelligent components 130, and between a user and intelligent component 130, the email header can be expanded to include structured semantic information. Therefore, all or part of the operation information described above can be stored in the email header or email body. For example, at least one of the following—operation type, identifier, time limit, priority, reference information, context information, and requirements for the output format of the operation—can be recorded in the email header as structured data. The information in the email header is typically encapsulated as structured information, including one or more fields, each field name corresponding to an information type, and field values that may include the corresponding information. By placing machine-readable semantics in the email header, such structured information can be processed and extracted more easily and quickly by the email recipient (e.g., business system, intelligent component), thereby improving communication efficiency. It should be understood that in other scenarios, this operation information can also be recorded in the email body. In the email body, this operation information can also be represented in a structured information format, or any other suitable format, to facilitate parsing by the email recipient.
[0065] In some situations, during email communications between business system 120 and intelligent component 130, between intelligent components 130, and between a user and intelligent component 130, descriptive information or at least some reference information related to the operation can be recorded in the email body. For example, task descriptions, outputs, reasons for blocking, and narrative context expressed in natural language can be placed in the email body. In other situations, this information can also be recorded in the email header.
[0066] In an exemplary application scenario, user 110, business system 120, and intelligent system 130 can trigger or execute any appropriate operation via email. (See reference) Figure 3 , Figure 3 An example of a signaling flow 300 used for communication and information processing is shown. For example... Figure 3 As shown, signaling flow 300 may involve sender 301 and receiver 302, where sender 301 is the sender of the first email in the example described below, and receiver 302 is the recipient of the first email. Receiver 302 may be associated with a first email address. Sender 301 may be implemented, for example, in business system 120, terminal device 201, or smart component 130, and receiver 302 may be implemented, for example, as smart component 130. In some examples, receiver 302 may be a first smart component.
[0067] It is understood that both sender 301 and receiver 302 can communicate with other devices / systems / smart components. For example, sender 301 can receive emails from other devices / systems / smart components, and receiver 302 can send emails to other devices / systems / smart components. In some examples, both sender 301 and receiver 302 can communicate by invoking tools (e.g., Figure 2 Multiple tools 212 in the system establish a communication connection with the mail service (which may be provided by the mailbox server 210, for example) and can send and receive emails through this communication connection.
[0068] like Figure 3As shown, sender 301 can receive (311) an operation request and a first email address, the operation request indicating a first operation. The first email address is associated with the first smart component. In some examples, the first email address may be an email address registered by the first smart component with an email service. The email service may be provided by email server 210. In some examples, sender 301 can send a first request to the first smart component, which requests the first smart component to register an email address with the email service. The first smart component may respond to the first request, register an email address with the email service, and send the first email address to sender 301. Sender 301 can obtain the first email address of the first smart component. Through the email registration mechanism, each smart component can have its own email address as a communication identifier.
[0069] In some examples, sender 301 may provide an interactive interface with the user, through which it receives user input of an operation request and a first email address. In some examples, sender 301 may obtain the operation request solely through the interactive interface, and based on the operation request, select a first smart component matching the operation request from at least one smart component. Sender 301 may then determine the first email address corresponding to the first smart component. In some cases, sender 301 may pre-store a mapping between email addresses and smart components, as well as at least one email address. For example, in response to selecting a first smart component from at least one smart component, sender 301 may determine the first email address matching the first smart component from at least one email address based on the mapping.
[0070] Regarding the specific method of selecting a first intelligent component from at least one intelligent component based on an operation request, in some cases, the operation request can specify a first intelligent component, and the sender 301 can directly select the first intelligent component from at least one intelligent component based on the operation request. In some cases, the sender 301 can obtain capability information of at least one intelligent component, which can indicate the capabilities of each of the at least one intelligent component. The capability of each intelligent component can indicate its function (e.g., what operations the intelligent component can perform) and purpose (e.g., in which application scenarios the intelligent component can perform operations). For example, the sender 301 can select a first intelligent component that matches the operation request from at least one intelligent component based on the capability information. Through the capability matching mechanism, intelligent components suitable for performing specific tasks can be dynamically selected.
[0071] In some examples, sender 301 can also receive a fifth email from a third email address, which may at least include an identifier for an operation request. Sender 301 can determine the operation request based on the fifth email. In some cases, if the fifth email includes a first email address, sender 301 can directly determine the first email address based on the fifth email. If the fifth email does not include a first email address, sender 301 can determine the first email address corresponding to the first smart component based on the operation request. The specific methods for determining the email address based on the operation request will not be elaborated further here.
[0072] In some examples, after the sender 301 determines the operation request and the first email address, it can determine (312) the first email. Specifically, the sender 301 can determine the email body and email header of the first email. The first email can be regarded as a data packet, with the email header being the header part of the data packet and the email body being the body part of the data packet. The email header can at least contain technical information such as sender information, recipient information, sending date, and signature. The email body can contain user-visible content, such as email title, email body, email attachments, etc.
[0073] In the relevant solutions, if the communication between the business system and the intelligent components, as well as between the intelligent components themselves, relies entirely on natural language, then the identification of communication intent (such as whether it is a task assignment, a status query, or a task result feedback) and the extraction of structured information (such as task identifier, priority, deadline, and context information) may depend to a large extent on the language processing and understanding capabilities of the intelligent components themselves, which may lead to limitations in the consistency of cross-component communication.
[0074] Based on the aforementioned research and analysis, the inventors proposed a scheme to add an operation request to the email header. In some examples, the email header may also include an operation request, and the email body may include a description of the first operation, which can be natural language text. In some cases, the sender 301 may receive the description information input by the user via an interactive interface. It is important to note that the information in the email header is at least partially invisible to the user; for example, the operation request in the email header is invisible to the user. This ensures that the recipient of the first email can accurately obtain the information while maintaining the simplicity of the user-visible portion of the email, making it convenient for the user to view the email. By placing the operation request in the email header, intelligent components can accurately identify the intent of the email without relying entirely on natural language understanding to parse the email content, thereby improving the accuracy and reliability of communication.
[0075] In some examples, the action request in the email header is structured information and can indicate various content. As an example only, the email header may at least include the "X-Version" field, which can indicate the email's protocol version. In some examples, the action request can indicate one or more of the following: the action type of the first action, the identifier of the first action, the priority of the first action, the time limit of the first action, or the context information of the first action. Therefore, by defining multiple action types, various communication scenarios such as task dispatch, task cancellation, help requests, and capability queries can be supported.
[0076] In some cases, the email header may also include one or more fields. In some cases, the email header may include different fields depending on the information indicated by the operation request. For example, if the operation request indicates the type of operation for the first operation, the email header may include the field "X-Intent"; if the operation request indicates the identifier of the first operation, the email header may include the field "X-TaskId", and so on. In some cases, each field may also be filled with different field values. The sender 301 may, for example, determine the fields included in the email header and the values of each field based on the operation request.
[0077] As an example only, the operation type of the first operation can be represented by the field "X-Intent," whose field values can indicate the operation type of the first operation. For instance, this field value can include at least one of task.dispatch, task.cancel, task.help_needed, or card.query. task.dispatch can indicate that the operation type of the first operation is a first type, indicating that the first task is dispatched to the first smart component. task.cancel can indicate that the operation type of the first operation is a second type, indicating that the first smart component cancels the first task. task.help_needed can indicate that the operation type of the first operation is a third type, indicating that a question is asked to the first smart component. card.query can indicate that the operation type of the first operation is a fourth type, indicating that a query is made to the capabilities of the first smart component.
[0078] The identifier of the first operation can be represented by the field "X-TaskId", whose value indicates the identifier of the first operation. In some examples, the field value can be a string of numbers or characters. This identifier can be user-specified or randomly generated by the sender. It's understood that each operation's identifier is unique, which helps distinguish different operations. It's important to note that if the first operation is related to a second operation, the execution of the second operation is based on the execution result of the first operation (in this case, the second operation can be called the parent operation of the first operation, and the first operation can be called the child operation of the second operation). The operation request can also include the identifier of the second operation. In some examples, the field "X-ParentTaskId" can be used to indicate that the first operation has a parent operation, and the field value of this field is the identifier of the parent operation. Using the operation identifier, devices / systems / intelligent components can quickly find emails related to the same operation, facilitating email communication management. Furthermore, the complete task topology can be tracked using parent and child task identifiers, supporting complex task orchestration scenarios.
[0079] The priority of the first operation can be represented by the field "X-Priority," whose value indicates the priority of the first operation. In some cases, this field value may include urgent, high, or normal. For example, the priority field could be "X-Priority: high," indicating that the first operation has a high priority. Of course, this field value can also be a specific numerical value.
[0080] The expiration time for the first action can be represented by the field "X-Expires-At", whose value indicates the expiration time of the first action. This field value can indicate a specific time or time period. For example, the field corresponding to the expiration time can be "X-Expires-At: A year B month C day, aa:bb:cc", which indicates that the first action expires at the time "aa:bb:cc" on A year B month C day. As another example, the field corresponding to the expiration time can be "X-Expires-At: one week", which indicates that if the recipient has not completed the first action within one week of receiving the first email, the first action has expired.
[0081] The context information of the first operation can be represented by the field "X-Dispatch-Context", whose field values can indicate one or more of the following: the source of the first operation, the initiator of the first operation, the operation associated with the first operation, or the task node corresponding to the first operation. It is understood that an operation request can include one or more fields; for example, an operation request can simultaneously include a field indicating the identifier of the first operation and a field indicating the priority of the first operation.
[0082] In some examples, the first email may also include a feedback request, which can indicate the required response information. As an example only, if the first operation instructs the first intelligent component to generate structured information (e.g., generate a chart), the feedback request could indicate the format of the structured information, the type of computer language corresponding to the structured information, data access information (e.g., access permissions), etc. Data access permissions inform the first intelligent component which data it can access and allow it to perform the first operation based on the accessible data. By specifying feedback requests, it can be ensured that the intelligent component returns the task results in the expected format. Additionally, it should be noted that in some examples, the operation request can also be contained in the body of the first email. In some cases, in cross-domain communication scenarios, each email can also include the domain name of the sender and / or receiver of the email, which can indicate the communication domain in which the sender and / or receiver reside. This facilitates the identification of entities in different communication domains.
[0083] The sender can then send (313) the first email to the first email address. The receiver 302 can receive (314) the first email sent to the first email address. In some examples, the receiver 302 can parse the first email in response to receiving it to determine (315) the first operation. In some cases, the receiver 302 can perform semantic analysis on the descriptive information in the body of the first email to determine the specific content of the first operation indicated by the sender 301. In some cases, the receiver 302 can also analyze the operation request in the header of the first email to determine the operation type, identifier, priority, time limit, or context information of the first operation. For example, the receiver 302 can identify fields in the header and determine the information indicated by the operation request based on the fields in the header and their values.
[0084] Taking an email header including a field corresponding to the operation type of the first operation as an example, receiver 302 can determine that the first email is used to dispatch a first task to the first intelligent component in response to the field value corresponding to the operation type being of the first type, and then use the first intelligent component to execute the first task. Receiver 302 can determine that the first intelligent component should interrupt the currently executing task in response to the field value corresponding to the operation type being of the second type; this task could be, for example, a task indicated by a previously sent email by sender 301. Receiver 302 can determine that the task corresponding to the first operation is a task seeking help from the first intelligent component in response to the field value corresponding to the operation type being of the third type. In this case, the first email may also include a specific question, and in some scenarios, may also include response options for the question. Receiver 302 can use the first intelligent component to determine the response to the question. Receiver 302 can determine that the task corresponding to the first operation is to determine the capabilities of the first intelligent component in response to the field value corresponding to the operation type being of the fourth type, and needs to determine the capabilities of the first intelligent component and feed them back to sender 301.
[0085] Taking the email header including a field corresponding to the priority of the first operation as an example, the receiver 302 can determine the priority of the first intelligent component in executing the first operation based on the field value of the priority field. The priority indicates the urgency of the first operation, and the first intelligent component can, for example, process multiple operations sequentially according to their respective priorities. Taking the email header including a field corresponding to the time limit of the first operation as an example, the receiver 302 can determine the expiration time of the first operation based on the field value of the time limit field; after this time, the first operation will be considered expired. Since intelligent components may not be continuously online, time limits are crucial for their scheduling. For example, intelligent components deployed on electronic devices may temporarily go offline due to device hibernation. When the intelligent component comes back online, it can determine which tasks are still valid and which have expired based on the time limit information, thereby avoiding the execution of expired tasks or prioritizing the execution of tasks that are about to expire.
[0086] Taking the email header including the context information corresponding to the first operation as an example, receiver 302 can determine one or more of the following based on the value of the priority field: the source of the first operation, the initiator of the first operation, the operation associated with the first operation, or the task node corresponding to the first operation. In some cases, the value of the priority field can be a key=value pair encoded with percent-encoding, used to attach portable authorization or routing context. For example, the context information may include key-value pairs such as user_key=alice and project_key=proj_123. Context information can be used for authentication. For example, receiver 302 can determine whether to execute the first operation based on the context information. Through the context information, receiver 302 can know who is currently performing the operation, in which space the operator is performing the operation, and in which task the operation is taking place, thereby determining whether the first operation indicated by the first email should be executed. For example, receiver 302 can determine whether the first operation was dispatched by the owner of the first smart component (such as the creator of the first smart component or a user with usage rights to the first smart component), and not by someone else.
[0087] Receiver 302 may use the first intelligent component to perform (316) the first operation. The first intelligent component may, for example, perform the first operation based on the description information in the body of the first email and the operation request in the header. Receiver 302 may determine a second email in response to receiving the execution result of the first intelligent component on the first operation. The second email may include response information. In some examples, the body of the second email may include a natural language description of the execution result of the first intelligent component on the first operation. In some cases, the header of the second email may also include a field “X-Status”, which may indicate the execution status of the first operation. For example, the value of this field may include “completed”, indicating that the execution of the first operation has been completed.
[0088] In some examples, the header of the second email may include the type of response information. By way of example only, the type of response information may also be represented by the field "X-Intent," whose value in the second email can indicate the type of response information. For example, this field value may include at least one of task.ack, task.result, card.response, or task.stream.opened. task.ack may indicate that the response information type is type five, indicating acknowledgment of receipt of the first email. It is important to note that task.ack only indicates receipt of the email and does not indicate completion of the operation. task.result may indicate that the response information type is type six, indicating the result of the execution of the first operation. In some examples, where the header of the second email includes the field "X-Intent: task.result," the second email may include the specific execution result; for example, the body of the second email may include attachments, descriptions, etc., of the execution result. In some examples, if the first smart component cannot perform the first operation or refuses to perform the first operation, the second email may not include the execution result and may include the reason for refusing to perform the operation or being unable to perform the operation.
[0089] `card.response` can indicate that the response information is of type seven, which indicates the capability information of the first smart component. In some examples, if the header of the second email includes the field "X-Intent: card.response", the second email may also include capability description text, capability description table, or capability name card of the first smart component. `task.stream.opened` can indicate that the response information is of type eight, which indicates that a data stream identifier (such as a data stream number or data stream address) is provided to the first smart component / sender 301 to obtain the execution status of the first operation based on the data stream identifier. As an example only, the field "X-Intent: task.stream.opened" can be used to provide a data stream identifier during the execution of the first operation, declaring that the first operation has been bound to a real-time stream, which allows the operation dispatcher (such as sender 301) to obtain the execution status of the task in real time. It should be noted that in some cases, if the second email includes the field "X-Intent: task.stream.opened", the second email must include the operation identifier to strongly bind the data stream to the operation.
[0090] By defining multiple response types, various response scenarios can be supported, such as task confirmation, result return, capability response, and real-time status subscription.
[0091] As mentioned earlier, the first email may include feedback requirements indicating the desired response information. These requirements could, for example, specify the format of the structured information, its computer language representation, etc. In this case, the first intelligent component can perform a first operation based on the feedback requirements to determine the result. This result can include structured information that satisfies the feedback requirements. It's important to note that if the first intelligent component cannot satisfy the feedback requirements (e.g., the structured information generated by the first intelligent component does not meet the format indicated by the feedback requirements), the first intelligent component can also send an email to sender 301 informing them of the supported formats, allowing the user corresponding to sender 301 to determine whether to continue performing the first operation and / or whether to change the format to one supported by the first intelligent component. By returning structured execution results, the business system can directly parse and process task results without relying on natural language understanding capabilities.
[0092] The first intelligent component can, for example, determine the response information based on the execution result, and then determine a second email that includes the response information. In some examples, if the execution result includes structured information, this structured information can be included as an attachment in the body of the second email. In this case, the header of the second email can include a structured instruction indicating that the body of the second email includes the structured information. In other examples, the header of the second email can directly include the structured information. For example, the header of the second email can directly include a JSON field.
[0093] It is important to note that if, during the execution of the first operation, the first intelligent component determines that the result of the first operation requires the execution result of other operations (i.e., the first operation is the parent operation of other operations), the first intelligent component can identify the other operations and instruct the other intelligent component (which can be configured to execute other operations) to perform those other operations. The first intelligent component can obtain the execution result of the other intelligent component for the other operations and determine the execution result of the first operation based on that result.
[0094] Receiver 302 can send (317) a second email to sender 301. This second email includes response information indicating the result of the first smart component's execution of the first operation. Sender 301 can receive (318) the second email. In some examples, if sender 301 also expects to call other smart components to perform operations related to the first operation, sender 301 can also determine a fourth email based on the response information. This fourth email can include the response information and / or information obtained based on the response information. Since the response information is the response information of the first operation, this fourth email can also include the identifier of the first operation. Sender 301 can then send the fourth email to the second email address, and the smart component associated with the second email address can be configured to perform other operations corresponding to the fourth email. Thus, through the cascading dispatch mechanism, complex task scenarios where smart components call other smart components can be supported.
[0095] In some examples, if sender 301 receives a fifth email from a third email address, and this fifth email at least includes an identifier for an operation request, it can be considered that the sender corresponding to the fifth email invokes / instructs sender 301 to perform the first operation. In this case, sender 301 will also send a sixth email to the third email address, which may include the response information from the second email. Alternatively, sender 301 may forward the second email to the third email address to provide the third email address with the execution result of the first operation.
[0096] It should be noted that the fields shown above are just examples. In real-world scenarios, information can be configured to be represented by other fields, and the examples in this article do not limit this.
[0097] Therefore, by using email addresses as communication identifiers for intelligent components and email as the communication medium to transmit operation requests and responses, cross-domain communication between the platform and intelligent components, as well as between intelligent components themselves, can be achieved. Furthermore, intelligent components can receive task assignments from the platform or other intelligent components via email, execute tasks, and return results, without needing to provide publicly accessible application programming interface endpoints to be scheduled by external platforms or other intelligent components.
[0098] Figure 4 A flowchart of an example process 400 for communication is shown, based on several scenarios. Process 400 can be implemented in business system 120, terminal device 201, or smart components 130-1, 130-2, 130-3. See below for reference. Figure 2 To describe process 400.
[0099] like Figure 4As shown, in box 410, an operation request and a first email address are received. The operation request indicates a first operation, and the first email address is associated with a first smart component.
[0100] In box 420, send the first email. The recipient of the first email includes the first email address, and the first email includes an operation request.
[0101] In box 430, a second email is received. The sender of the second email includes the first email address. The second email includes response information indicating the result of the first smart component's execution of the first operation.
[0102] In some cases, the first email may include an email header and an email body. The email header may include an operation request, and the email body may include a description of the first operation, which may include natural language text.
[0103] In some cases, an operation request may indicate at least one of the following: the operation type of the first operation, the identifier of the first operation, the priority of the first operation, the time limit of the first operation, or the context information of the first operation.
[0104] In some cases, the operation type of the first operation may include at least one of the following: a first type, which may indicate dispatching a first task to a first intelligent component; a second type, which may indicate canceling the first task by the first intelligent component; a third type, which may indicate asking a question to the first intelligent component; or a fourth type, which may indicate querying the capabilities of the first intelligent component.
[0105] In some cases, the response information may include at least one of the following: a fifth type, which may indicate confirmation of receipt of the first email; a sixth type, which may indicate the execution result of the first operation; a seventh type, which may indicate the capability information of the first intelligent component; or an eighth type, which may indicate providing a data stream identifier to the first intelligent component, based on which the execution status of the first operation can be obtained.
[0106] In some cases, the context information of the first operation may indicate at least one of the following: the source of the first operation, the initiator of the first operation, the operation associated with the first operation, or the task node corresponding to the first operation.
[0107] In some cases, the first and second emails may include an identifier of the first operation.
[0108] In some cases, process 400 may also include: identifying a first email and a second email related to the first operation from a plurality of emails based on the identifier of the first operation.
[0109] In some cases, the first operation may be related to the second operation, the execution of the second operation may be based on the execution result of the first operation, and the operation request may also include an identifier of the second operation.
[0110] In some cases, the result of the first intelligent component performing the first operation may include structured information, which may be represented by a computer language.
[0111] In some cases, the first email may include a feedback request, which may indicate a request for response information.
[0112] In some cases, the first email address can be obtained by the first intelligent component registering with the email service. The process 400 may also include: sending a first request to the first intelligent component, which may be used to request the first intelligent component to register an email address with the email service; and obtaining the first email address of the first intelligent component.
[0113] In some cases, receiving an operation request and a first email address may include receiving user input at an interactive interface, where the user input may indicate the operation request and the first email address.
[0114] In some cases, process 400 may further include: receiving capability information that may indicate the capabilities of at least one smart component; and obtaining a first email address of the first smart component, wherein the capability information of the first smart component may be matched with an operation request.
[0115] In some cases, process 400 may further include: sending a fourth email to a second email address based on the response information, the fourth email including the response information and / or information obtained based on the response information, wherein the fourth email may also include an identifier of the first operation.
[0116] In some cases, receiving an operation request may include: receiving a fifth email, the sender of which may include a third email address, and the fifth email may include at least an identifier for the operation request; process 400 may also include: sending a sixth email, the recipient of which may include a third email address, and the sixth email may include response information.
[0117] In some cases, the fifth email may also include the first email address, or the first email address may be determined by the first smart component based on the operation request.
[0118] In some cases, process 400 may also include: establishing a communication connection with the mail service by invoking a tool, wherein the sending of the first email and the receiving of the second email can be done via the communication connection.
[0119] Figure 5A flowchart of an example process 500 for information processing is shown, depending on several scenarios. Process 500 can be implemented at intelligent components 130-1, 130-2, or 130-3. See below for reference. Figure 2 To describe process 500.
[0120] like Figure 5 As shown, in box 510, a first email sent to a first email address is received. The first email includes an operation request that indicates a first operation. The first email address is associated with a first smart component.
[0121] In box 520, the first operation is performed using the first smart component.
[0122] In box 530, a second email is sent, which includes response information indicating the result of the first smart component's execution of the first operation.
[0123] In some cases, the first email may also include descriptive information of the first operation, which may include natural language text, and the first intelligent component may perform the first operation based on the descriptive information.
[0124] The various examples described herein also provide corresponding apparatus for implementing the methods or processes described above.
[0125] Figure 6 Block diagrams of a communication apparatus 600 in several scenarios are shown. Apparatus 600 can be implemented as or included in a business system 120, terminal device 201, or smart components 130-1, 130-2, 130-3. The various modules / components in apparatus 600 can be implemented by hardware, software, firmware, or any combination thereof.
[0126] like Figure 6 As shown, device 600 includes an information receiving module 610 configured to receive an operation request and a first email address, the operation request indicating a first operation, and the first email address associated with a first smart component; a first email sending module 620 configured to send a first email, the recipient of which includes the first email address, and the first email including the operation request; and a second email receiving module 630 configured to receive a second email, the sender of which includes the first email address, and the second email including response information, the response information indicating the execution result of the first smart component on the first operation.
[0127] In some cases, the first email may include an email header and an email body. The email header may include an operation request, and the email body may include a description of the first operation, which may include natural language text.
[0128] In some cases, an operation request may indicate at least one of the following: the operation type of the first operation, the identifier of the first operation, the priority of the first operation, the time limit of the first operation, or the context information of the first operation.
[0129] In some cases, the operation type of the first operation may include at least one of the following: a first type, which may indicate dispatching a first task to a first intelligent component; a second type, which may indicate canceling the first task by the first intelligent component; a third type, which may indicate asking a question to the first intelligent component; or a fourth type, which may indicate querying the capabilities of the first intelligent component.
[0130] In some cases, the response information may include at least one of the following: a fifth type, which may indicate confirmation of receipt of the first email; a sixth type, which may indicate the execution result of the first operation; a seventh type, which may indicate the capability information of the first intelligent component; or an eighth type, which may indicate providing a data stream identifier to the first intelligent component, based on which the execution status of the first operation can be obtained.
[0131] In some cases, the context information of the first operation may indicate at least one of the following: the source of the first operation, the initiator of the first operation, the operation associated with the first operation, or the task node corresponding to the first operation.
[0132] In some cases, the first and second emails may include an identifier of the first operation.
[0133] In some cases, the device 600 may also include a processing module configured to: determine, based on the identifier of the first operation, a first email and a second email related to the first operation from a plurality of emails.
[0134] In some cases, the first operation may be related to the second operation, the execution of the second operation may be based on the execution result of the first operation, and the operation request may also include an identifier of the second operation.
[0135] In some cases, the result of the first intelligent component performing the first operation may include structured information, which may be represented by a computer language.
[0136] In some cases, the first email may include a feedback request, which may indicate a request for response information.
[0137] In some cases, the first email address can be obtained by the first smart component registering with the email service. The device 600 also includes: a request sending module configured to send a first request to the first smart component, the first request being used to request the first smart component to register an email address with the email service; and an address receiving module configured to obtain the first email address of the first smart component.
[0138] In some cases, the information receiving module 610 can be further configured to receive user input at an interactive interface, whereby the user input may indicate an operation request and a first email address.
[0139] In some cases, the device 600 further includes: a capability information receiving module configured to also be configured to receive capability information, which may indicate the capabilities of at least one smart component; and an address acquisition module configured to acquire a first email address of the first smart component, wherein the capability information of the first smart component may be matched with an operation request.
[0140] In some cases, the device 600 further includes a fourth email sending module configured to send a fourth email to a second email address based on response information. The fourth email may include the response information and / or information obtained based on the response information, wherein the fourth email may also include an identifier of the first operation.
[0141] In some cases, the information receiving module 610 may be further configured to receive a fifth email, the sender of which may include a third email address, and the fifth email may include at least an identifier of an operation request; and the device 600 may also include a sixth email sending module configured to send a sixth email, the recipient of which may include a third email address, and the sixth email may include response information.
[0142] In some cases, the fifth email may also include the first email address, or the first email address may be determined by the first smart component based on the operation request.
[0143] In some cases, the device 600 may also include a communication module, which can be configured to establish a communication connection with the mail service by invoking a tool, wherein the sending of the first email and the receiving of the second email can be done via the communication connection.
[0144] Figure 7 Block diagrams of an information processing apparatus 700 in several scenarios are shown. Apparatus 700 can be implemented as or included in intelligent components 130-1, 130-2, or 130-3. The various modules / components in apparatus 700 can be implemented by hardware, software, firmware, or any combination thereof.
[0145] like Figure 7As shown, the device 700 includes a first email receiving module 710, configured to receive a first email sent to a first email address, the first email including an operation request indicating a first operation, the first email address being associated with a first smart component; a first email execution module 720, configured to execute the first operation using the first smart component; and a second email sending module 730, configured to send a second email, the second email including response information indicating the execution result of the first smart component on the first operation.
[0146] In some cases, the first email may also include descriptive information of the first operation, which may include natural language text, and the first email execution module 720 may be further configured to perform the first operation using the first intelligent component based on the descriptive information.
[0147] The modules included in device 600 and / or device 700 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some examples, one or more modules can be implemented using software and / or firmware, such as machine-executable instructions stored on a storage medium. In addition to or as an alternative to machine-executable instructions, some or all of the units in device 600 and / or device 700 can be implemented at least partially by one or more hardware logic components. By way of example and not limitation, exemplary types of hardware logic components that can be used include field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard parts (ASSPs), systems on a chip (SOCs), complex programmable logic devices (CPLDs), and so on.
[0148] Figure 8 A block diagram of an electronic device 800 in which one or more examples may be implemented is shown. It should be understood that... Figure 8 The electronic device 800 shown is merely exemplary and should not be construed as limiting the functionality and scope of the examples described herein. Figure 8 The illustrated electronic device 800 can be used to implement the electronic device 110 discussed above.
[0149] like Figure 8As shown, electronic device 800 is in the form of a general-purpose electronic device. Components of electronic device 800 may include, but are not limited to, one or more processing units or processors 810, memory 820, storage devices 830, one or more communication units 840, one or more input devices 850, and one or more output devices 860. Processor 810 may be a physical or virtual processor and is capable of performing various processes according to programs stored in memory 820. In a multiprocessor system, multiple processors execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 800.
[0150] Electronic device 800 typically includes multiple computer storage media. Such media can be any accessible media that is accessible to electronic device 800, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 820 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof). Storage device 830 can be removable or non-removable media and may include machine-readable media, such as flash drives, disks, or any other media that can be used to store information and / or data and can be accessed within electronic device 800.
[0151] Electronic device 800 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 8 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 820 may include computer program product 825 having one or more program modules configured to perform various methods or actions of various examples.
[0152] The communication unit 840 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 800 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 800 can operate in a networked environment using logical connections to one or more other servers, networked personal computers, or another network node.
[0153] Input device 850 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 860 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 800 can also communicate with one or more external devices (not shown) via communication unit 840 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 800, or with any device that enables electronic device 800 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).
[0154] A computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. A computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, which are executed by a processor to implement the methods described above.
[0155] The flowcharts and / or block diagrams of the methods, apparatus, devices, and computer program products referred to herein describe various aspects. It should be understood that each block of the flowcharts and / or block diagrams, as well as combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0156] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0157] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0158] The flowcharts and block diagrams in the accompanying figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to some examples. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the figures. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0159] Various examples have been described above. The foregoing descriptions are exemplary and not exhaustive, nor are they limited to the proposed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the proposed implementations.
Claims
1. A method for communication, comprising: Receive an operation request and a first email address, wherein the operation request indicates a first operation and the first email address is associated with a first smart component; Send a first email, the recipient of which includes the first email address, and the first email includes the operation request; as well as Receive a second email, the sender of which includes the first email address, and the second email includes response information indicating the result of the first smart component's execution of the first operation.
2. The method of claim 1, wherein the operation request indicates at least one of the following: The operation type of the first operation. The identifier of the first operation, The priority of the first operation, The time limit of the first operation, or The context information of the first operation.
3. The method according to claim 1, wherein the operation type of the first operation includes at least one of the following: The first type indicates that a first task is dispatched to the first intelligent component. The second type instructs the first intelligent component to cancel the first task. The third type indicates a question to the first intelligent component, or The fourth type indicates a query for the capabilities of the first intelligent component.
4. The method of claim 1, wherein the type of the response information includes at least one of the following: The fifth type indicates confirmation that the first email has been received. A sixth type, wherein the sixth type indicates the result of the execution of the first operation, A seventh type, wherein the seventh type indicates the capability information of the first intelligent component, or The eighth type indicates that a data stream identifier is provided to the first intelligent component, and the execution status of the first operation is obtained based on the data stream identifier.
5. The method of claim 2, wherein the context information of the first operation indicates at least one of the following: The source of the first operation, The initiator of the first operation, The operation associated with the first operation, or The task node corresponding to the first operation.
6. The method of claim 1, further comprising at least one of the following: The first email includes an email header and an email body. The email header includes the operation request, and the email body includes a description of the first operation, which includes natural language text; or The first email and the second email include the identifier of the first operation; or The execution result of the first intelligent component on the first operation includes structured information, which is represented by a computer language; or The first email includes a feedback request, which indicates a requirement for the response information.
7. The method of claim 1, wherein the first email and the second email include an identifier of the first operation, the method further comprising: Based on the identifier of the first operation, the first email and the second email related to the first operation are identified from multiple emails.
8. The method of claim 1, wherein the first email includes an identifier of the first operation, and in response to the first operation being related to a second operation, and the execution of the second operation being based on the execution result of the first operation, the operation request further includes an identifier of the second operation.
9. The method according to claim 1, wherein the first email address is obtained by the first intelligent component registering with the email service, and the method further includes: Send a first request to the first intelligent component, the first request being used to request the first intelligent component to register an email address with the email service; as well as Obtain the first email address of the first smart component.
10. The method of claim 1, wherein receiving the operation request and the first email address comprises: The system receives user input at the interactive interface, where the user input indicates the operation request and the first email address.
11. The method according to claim 1, further comprising: Receive capability information, which indicates the capabilities of at least one intelligent component; Obtain the first email address of the first intelligent component, wherein the capability information of the first intelligent component matches the operation request.
12. The method according to claim 1, further comprising: Based on the response information, a fourth email is sent to the second email address. The fourth email includes the response information and / or information obtained based on the response information. The fourth email also includes the identifier of the first operation.
13. The method of claim 1, wherein receiving the operation request comprises: Receive a fifth email, the sender of which includes a third email address, and the fifth email at least includes an identifier for the operation request. The method further includes: Send a sixth email, the recipient of which includes the third email address, and the sixth email includes the response information.
14. The method of claim 13, wherein the fifth email further includes the first email address, or the first email address is determined by the first smart component based on the operation request.
15. The method according to claim 1, further comprising: By invoking tools, a communication connection is established with the email service. The sending of the first email and the receiving of the second email are connected via the communication connection.
16. An information processing method, comprising: Receive a first email sent to a first email address, the first email including an operation request, the operation request indicating a first operation, the first email address being associated with a first smart component; The first operation is performed using the first intelligent component; as well as Send a second email, the second email including response information indicating the result of the first smart component's execution of the first operation.
17. The method of claim 16, wherein the first email further includes description information of the first operation, the description information including natural language text, and wherein the first intelligent component performs the first operation based on the description information.
18. An electronic device comprising: At least one processor; as well as At least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor, the instructions causing the electronic device to perform the method according to any one of claims 1 to 15, and / or, the method according to any one of claims 16 to 17, when executed by the at least one processor.
19. A computer-readable storage medium having stored thereon computer-executable instructions, which are executable by a processor to perform the method according to any one of claims 1 to 15, and / or, according to any one of claims 16 to 17.
20. A computer program product comprising computer-executable instructions, wherein the computer-executable instructions are executed by a processor according to any one of claims 1 to 15, and / or, according to any one of claims 16 to 17.