Method, apparatus, device and storage medium for message communication
Patent Information
- Application Number
- CN202510443365.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-09
- Publication Date
- 2026-10-16
Smart Images

Figure CN122933726A_ABST
Abstract
Description
Technical Field
[0001] The exemplary embodiments disclosed herein generally relate to the field of computers, and particularly to methods, apparatuses, devices, and storage media for message communication. Background Technology
[0002] With the development of information technology, various electronic devices can provide people with a variety of services in work and life. For example, electronic devices can output notification messages from applications connected to them via external devices. This allows users to promptly and conveniently receive notification messages from applications received by their electronic devices. Summary of the Invention
[0003] In a first aspect of this disclosure, a method for message communication is provided. The method includes: receiving a notification message from an application on a second client from an external device, wherein the external device has a communication connection with both a first client and the second client; obtaining an application name on the second client based on the notification message; and determining an output message for the first client based on the application's notification message and the application name, wherein the output message is provided to the external device for output.
[0004] In a second aspect of this disclosure, a method for message communication is provided. The method includes: in response to receiving a notification message from a second client of an application, sending the notification message to a first client, wherein an external device has a communication connection with both the first client and the second client; in response to receiving a first request from the first client for an application, sending a second request to the second client to request the application name of the application, wherein both the first request and the second request are generated based on at least a portion of the notification message; and in response to receiving a second response from the second client including the application name of the application, sending a first response to the first client for the first request, wherein the first response includes at least the application name.
[0005] In a third aspect of this disclosure, an apparatus for message communication is provided. The apparatus includes: a notification message receiving module configured to receive a notification message from an application on a second client from an external device, wherein the external device has a communication connection with both a first client and the second client; an application name acquisition module configured to acquire the application name of the application on the second client based on the notification message; and an output message determining module configured to determine an output message of the first client based on the notification message and the application name, wherein the output message is provided to the external device for output.
[0006] In a fourth aspect of this disclosure, an apparatus for message communication is provided. The apparatus includes: a notification message receiving module configured to send a notification message to a first client in response to receiving a notification message from an application from a second client, wherein an external device has a communication connection with both the first client and the second client; a request module configured to send a second request to the second client to request the application name of the application in response to receiving a first request for the application from the first client, wherein both the first request and the second request are generated based on at least a portion of the notification message; and an application name acquisition module configured to send a first response to the first request to the first client in response to receiving a second response from the second client including the application name of the application, wherein the first response includes at least the application name.
[0007] In a fifth aspect of this disclosure, an electronic device is provided. The 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 or second aspect.
[0008] In a sixth aspect of this disclosure, a computer-readable storage medium is provided. This computer-readable storage medium stores a computer program that can be executed by a processor to implement the methods of the first or second aspect.
[0009] In a seventh aspect of this disclosure, a computer program product is provided. The computer program product 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 or second aspect.
[0010] It should be understood that the content described in this content section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0011] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:
[0012] Figure 1 A schematic diagram is shown of an example environment in which embodiments of the present disclosure may be implemented;
[0013] Figures 2 to 3 A flowchart of the signaling flow for message communication according to some embodiments of this disclosure is shown;
[0014] Figures 4A to 4C An example interface for message communication according to some embodiments of this disclosure is shown;
[0015] Figures 5 to 6 A flowchart illustrating an example process of message communication according to some embodiments of this disclosure is shown;
[0016] Figures 7 to 8 A schematic structural block diagram of an example apparatus for message communication according to some embodiments of the present disclosure is shown; and
[0017] Figure 9 A block diagram of an electronic device capable of implementing several embodiments of the present disclosure is shown. Detailed Implementation
[0018] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0019] It should be noted that the headings of any section / subsection provided herein are not limiting. Various embodiments are described throughout this document, and embodiments of any type may be included under any section / subsection. Furthermore, embodiments described in any section / subsection may be combined in any way with any other embodiments described in the same section / subsection and / or different sections / subsections.
[0020] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below. The terms "first", "second", etc., may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0021] The embodiments of this disclosure may involve user data, data acquisition, and / or use. All of these aspects comply with applicable laws, regulations, and relevant provisions. In the embodiments of this disclosure, all data collection, acquisition, processing, manipulation, forwarding, and use are conducted with the user's knowledge and confirmation. Accordingly, in implementing the embodiments of this disclosure, 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 in accordance with relevant laws and regulations through appropriate means. The specific methods of notification and / or authorization may vary depending on the actual situation and application scenario, and the scope of this disclosure is not limited in this respect.
[0022] In this specification and the embodiments, any processing of personal information will be carried out only under the premise of legality (such as obtaining the consent of the personal information 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 other than that necessary for basic functions will not affect the user's use of basic functions.
[0023] As mentioned above, electronic devices can currently connect to external devices. A client within the electronic device (e.g., the operating system) can send notification messages received from other clients (e.g., applications) installed on the external device via a communication link. The external device can then output notification messages received from the electronic device. However, due to constraints imposed by the electronic device's operating system, notification messages received by external devices are typically configured to include specific notification content, often lacking the name of the source of the notification message. Without the application name, users cannot intuitively distinguish the source of the notification message. In other words, users cannot determine which application on the electronic device the message output from. This results in the external device being unable to output a complete application notification message or process the notification message accordingly, leading to a poor user experience.
[0024] Embodiments of this disclosure propose an improved message communication scheme. The scheme includes: receiving a notification message from an application on a second client from an external device, wherein the external device has a communication connection with both a first client and the second client; obtaining the application name of the application on the second client based on the notification message; and determining an output message for the first client based on the application's notification message and the application name, wherein the output message is provided to the external device for output.
[0025] In this way, embodiments of this disclosure can obtain the application name based on the application's notification message after receiving it. Then, based on the application's notification message and application name, an output message containing the complete notification content of the application is determined. This facilitates the timely provision of an output message indicating the source of the notification message to the user. This allows users to obtain the complete notification content of the application promptly through external devices, especially quickly identifying which application the notification content originated from, thereby improving the user experience.
[0026] The following section provides a detailed description of various example implementations of this scheme, with reference to the accompanying drawings.
[0027] Figure 1 A schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. For example... Figure 1 As shown, example environment 100 may include user 110, external device 130, electronic device 140, and server 150.
[0028] In this example environment 100, the external device 130 can be a terminal device capable of connecting to the electronic device 140 via wireless or wired communication. Wireless communication methods may include, but are not limited to, cellular network communication, wireless LAN, Bluetooth, satellite communication, wireless personal area network, etc. Wired communication methods may include, but are not limited to, USB communication, high-definition multimedia interface (HDMI) communication, video graphics array (VGA) communication, etc. External device 130 may include, but is not limited to: wearable terminal devices, personal digital assistants (PDAs), portable computers, desktop computers, image capture terminal devices such as digital cameras, gaming terminal devices, music storage and playback devices, vehicle-mounted wireless terminal devices, wireless endpoints, mobile stations, laptop embedded devices (LEEs), laptop-mounted devices (LMEs), Universal Serial Bus (USB) dongles, smart devices, wireless customer premises equipment (CPEs), Internet of Things (IoT) devices, watches or other wearable devices, head-mounted displays (HMDs), vehicles, drones, medical devices and applications (e.g., remote surgery), industrial devices and applications (e.g., robots and / or other wireless devices operating in industrial and / or automated processing chain environments), consumer electronics devices, devices operating on commercial and / or industrial wireless networks, etc.
[0029] In environment 100, electronic device 140 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 embodiments, electronic device 140 may also support any type of interface for user 110 (such as "wearable" circuitry).
[0030] In environment 100, multiple clients, including client 120, client 160, etc., can be installed on electronic device 140. Different clients can provide different services to user 110. As an example, client 120 can be an application capable of processing notification messages from applications on electronic device 140, such as an application summarizing application notification messages. Client 120 can be configured to receive notification messages from other applications installed on electronic device 140 and determine messages to be output via external device 130 based on the application notification messages, including playback messages or display messages, etc. Client 160 can correspond to the operating system installed on electronic device 140 for managing and allocating various resources of electronic device 140 (e.g., CPU, memory, hard disk, etc.). It should be understood that client 160 can be any type of operating system. For example, client 160 can be an iOS system, an Android system, or any other suitable terminal operating system. The following discussion of various embodiments of this disclosure will primarily use client 160 (sometimes referred to herein as a second client) as an example of an iOS system installed on electronic device 140.
[0031] It should be understood that the above provides only illustrative examples of client 120 and client 160 (i.e., both client 120 and client 160 are installed on electronic device 140). In practical applications, client 120 and client 160 can be installed on any suitable device. For example, client 120 can be installed on external device 130, and client 160 can be installed on electronic device 140. The various embodiments of this disclosure will be described below with the example of client 120 (sometimes referred to herein as the first client) installed on electronic device 140.
[0032] In some embodiments, as the operating system of the electronic device 140, the client device 160 can receive notification messages from various applications installed on the electronic device 140. The client device 160 can provide system notifications from the electronic device 140 to notify these application notification messages. In some embodiments, depending on user authorization, the client device 160 can also send the notification messages corresponding to these applications to the external device 130, as will be described in detail below.
[0033] As another example, both client 120 and client 160 can be applications of appropriate types installed on electronic device 140. Client 120 can be an application capable of processing notification messages from applications installed on electronic device 140. For example, client 120 can be configured to receive notification messages from other applications installed on electronic device 140 and can determine the output messages provided to external device 130. Client 160 can be a different application installed on electronic device 140 than client 120, and can provide notification messages to another client according to user configuration or other predetermined configurations. For example, client 160 can be an application that supports online shopping for user 110, therefore, the notification messages of client 160 can include, but are not limited to: product logistics messages, new product arrival messages, and shopping activity messages.
[0034] It should be understood that the above only provides example clients and example notification messages. In practical applications, the solutions disclosed herein can be applied to any suitable client as needed. Furthermore, the application's notification messages may contain more, less, or other content, and the embodiments of this disclosure do not limit this.
[0035] exist Figure 1 In environment 100, if a client corresponding to a certain application is active, electronic device 140 can present the application interface 170.
[0036] In some embodiments, server 150 communicates with electronic device 140 to provide services to clients in electronic device 140. Server 150 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. Server 150 may include, for example, computing systems / servers, such as mainframes, edge computing nodes, computing devices in a cloud environment, etc. Server 150 can provide background services for clients in electronic device 140 that summarize and output application notification messages.
[0037] A communication connection can be established between server 150 and electronic device 140. This communication connection can be established via wired or wireless means. The communication connection may include, but is not limited to, Bluetooth, mobile network, Universal Serial Bus (USB), and Wireless Fidelity (WiFi) connections, and the embodiments of this disclosure are not limited in this respect. In the embodiments of this disclosure, server 150 and electronic device 140 can achieve signaling interaction through the communication connection between them.
[0038] It should be understood that the structure and function of the various elements in environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure.
[0039] The following description will continue with reference to the accompanying drawings, which will be used to describe some exemplary embodiments of the present disclosure. For illustrative purposes, embodiments of the present disclosure will be described below using the example of a first client (hereinafter referred to as client 120) that processes notification messages from applications in electronic device 140 and a second client (hereinafter referred to as client 160) that is an iOS system installed in electronic device 140.
[0040] Figure 2 A flowchart of a signaling flow 200 for message communication according to some embodiments of the present disclosure is shown. The signaling flow 200 can be based on... Figure 1 The environment shown is 100% achieved. The following is combined with... Figure 1 To describe Figure 2 The signaling flow shown is 200.
[0041] like Figure 2As shown, in embodiments of this disclosure, external device 130 is able to establish (212) a communication connection (hereinafter referred to as "first communication connection") with client 160 in electronic device 140. External device 130 is able to communicate messages through the first communication connection established with client 160. The first communication connection may be a communication connection based on a near-field communication protocol. In some embodiments, different communication protocols may be used based on different types of external devices. As an example, external device 130 may be a Bluetooth device such as a wireless headset or speaker, or a wired headset. The first communication connection may be a communication connection based on the Bluetooth protocol. As another example, external device 130 may be a smart home device. The first communication connection may be a communication connection based on ZigBee. It should be understood that only example external devices and example first communication connections are given herein. In practical applications, the solutions of this disclosure can be applied to any suitable external device and with a suitable communication connection, and the embodiments of this disclosure are not limited. In some embodiments, the messages communicated through the established first communication connection may include, but are not limited to: system notification messages from client 160 and notification messages from applications in electronic device 140.
[0042] In some embodiments, client 160 may respond to a request from external device 130 by sending (214) an application notification message to external device 130. The request from external device 130 may be a subscription request for a communication service. In some embodiments, for message security reasons, electronic device 140 will only share and interact with external device 130 after external device 130, connected to electronic device 140, has subscribed to the relevant communication service. For example, external device 130 may subscribe to a notification service that instructs sharing and interacting with notification messages for applications within electronic device 140. After successful subscription, if electronic device 140 receives an application notification message, it can send the application notification message to external device 130 via the first communication connection to achieve message sharing.
[0043] The following combination Figures 4A to 4C The example interfaces 400A to 400C shown describe the process of generating a subscription request. Interfaces 400A to 400C can, for example, be generated by... Figure 1The interface shown is provided by the electronic device 140. It should be understood that the interface shown in the figures is merely an example, and various interface designs may exist in practice. The various graphical elements in the interface may have different arrangements and different visual representations, one or more of which may be omitted or replaced, and one or more other elements may also be present. The embodiments of this disclosure are not limited in this respect. Furthermore, in the following, exemplary embodiments will be described primarily with respect to electronic device 140. It should be understood that the actions described with respect to electronic device 140 may be performed by a client on electronic device 140, or may be performed by a client in collaboration with its server (e.g., server 150). In some embodiments, in a scenario where electronic device 140 is performed in collaboration with its server (e.g., server 150), electronic device 140 may request the server to provide a message to be presented, or server 150 may proactively or in response to the operation of electronic device 140 provide the message to be presented to electronic device 140.
[0044] In some embodiments, Figure 4A The interface 400A shown can indicate the settings interface for notification playback in electronic device 140. Interface 400A can present setting 410 indicating whether external device 130 is allowed to play application notification messages, as well as several other settings. Figure 4A (Settings A, B, etc. are shown). If user 110 wishes to use an external device 130 connected to electronic device 140 to broadcast notification messages from applications in electronic device 140, a confirmation control 420 associated with setting 410 can be triggered.
[0045] In some embodiments, the electronic device 140 may present a confirmation control 420 in response to its activation. Figure 4B The interface 400B is shown. A pop-up message 430 is displayed on interface 400B. Pop-up message 430 prompts user 110 to confirm again whether to allow external device 130 to receive notification messages from applications on electronic device 140. If electronic device 140 receives a selection of control 440 through interface 400B, and if electronic device 140 is connected to at least one external device (including external device 130), electronic device 140 can display... Figure 4C The interface 400C shown presents multiple settings for external devices connected to electronic device 140, including setting 460 indicating whether application notification messages can be shared with the external device, the device name of the external device, the device type, and several other settings. Figure 4C(Settings A, B, etc. are shown). User 110 can select the desired external device (e.g., external device 130) in interface 400C and can trigger the confirmation control 470 associated with setting 460. Electronic device 140 can generate a request to enable the communication service in response to the triggering of the confirmation control 470.
[0046] It should be understood that the above is only a sample interface for generating a request to enable the communication service. In practical applications, other suitable methods can be provided to user 110 to control message sharing and interaction between electronic device 140 and external device 130, depending on actual needs (e.g., for different types of electronic devices).
[0047] Continue to refer to Figure 2 After successfully subscribing to the communication service, the external device 130 can receive notification messages from the application on the client 160 via the first communication connection. In some embodiments, the notification message from the client 160 to the external device 130 includes at least an application identifier (App ID). The application identifier can be a string consisting of at least one of letters, numbers, and underscores. The application identifier can be used to distinguish different applications installed on the electronic device 140.
[0048] In some embodiments, the application's notification message may further include at least one of the following: a notification title, a notification body, and the time when the client 120 receives the notification message. The notification title may be a summary of the notification body (e.g., extracted keywords from the notification body), or it may indicate the module of the application involved in the notification message, the type of notification message, etc. Understandably, the notification title typically consists of a limited number of characters to facilitate quick browsing by the user.
[0049] In some embodiments, to facilitate quick identification of notification messages by users, a main title and subtitle can be configured for application notification messages. For example, a notification message from a social communication application in electronic device 140 could be “[Contact A], [Meeting Notification], [Notification Body]”, where “Contact A” can be the main title of the notification message, used to inform user 110 of the provider of the notification message. “Meeting Notification” can indicate the type of the notification message.
[0050] In some embodiments, the notification body may be a further explanation and supplement to the title. Alternatively, the notification body may provide detailed information to user 110. For example, the notification body of a notification message from an online shopping application in electronic device 140 may be: "Item B, which you purchased at XXX time, is being transferred from location C to location D, and is expected to arrive at address XXXX on XX day."
[0051] In some embodiments, the time when the client 120 receives the notification message can be the time when the client 120 receives the notification message. The time when the client 120 receives the notification message helps the user 110 understand the timeliness of the notification message. The presentation of the time when the client 120 receives the notification message can be in the format of "year + month + day + specific time", or "XX minutes / hours / days ago", etc.
[0052] Continue to refer to Figure 2 In embodiments of this disclosure, the external device 130 can establish a (210) communication connection (hereinafter referred to as the "second communication connection") with the client 120 in the electronic device 140. The second communication connection can be a communication connection based on a proprietary protocol. With authorization from the electronic device 140, the external device 130 can share messages with the client 120 in the electronic device 140 through the second communication connection. In some embodiments, the messages shared through the established second communication connection may include, but are not limited to: notification messages from other applications in the electronic device 140, and application names of other applications in the electronic device 140.
[0053] Still as Figure 2 As shown, in an embodiment of this disclosure, client 120 can receive (216) notification messages from an application on client 160 via a second communication connection from external device 130. To ensure the integrity of the output application notification messages, client 120 can obtain (218) the application name based on the application notification messages. To provide the application-specific notification messages to the user, client 120 can determine (222) the output message based on the application notification messages and the obtained application name. Further, client 120 sends the output message to external device 130 (224) so that the output message can be output (226) via external device 130. In this way, user 110 can obtain complete notification messages from applications in electronic device 140 in a timely manner via external device 130.
[0054] The following is for reference Figure 3 The signaling flow 300 of message communication according to some embodiments of this disclosure describes in detail the message communication process between external device 130 and electronic device 140. For example... Figure 3As shown, external device 130 can establish a second communication connection (310) with client 120 in electronic device 140 and a first communication connection (312) with client 160 in electronic device 140. After receiving (314) a request to enable the communication service (hereinafter referred to as a subscription request), client 120 can send (316) a request to enable the communication service to external device 130. External device 130 can respond to the client 120's enable request and request to subscribe to the communication service (318) from client 160. For example, external device 130 can successfully subscribe to the communication service by requesting to subscribe to the communication service and its features, requesting to subscribe to the data source, requesting to subscribe to notifications, etc. For illustrative purposes, this is intended to... Figure 3 For a detailed description of the above processes, please refer to the [reference needed]. Figure 2 The description will not be repeated here.
[0055] Continue to refer to Figure 3 After external device 130 successfully subscribes to the communication service, when client 160 receives (320) a notification message from another application in electronic device 140, it can first send (322) the user identifier of the application's notification message to external device 130. Then, external device 130 can request (324) the notification message of the application corresponding to the user identifier from client 160 based on the user identifier of the notification message. Client 160 can respond to the request from external device 130 and send (326) the notification message of the application corresponding to the user identifier to external device 130. Then, external device 130 can send (328) the application's notification message to client 120 via a second communication connection with client 120.
[0056] In some embodiments, after receiving a notification message containing an application identifier, the client 120 can determine whether a locally established mapping table exists that matches the application notification message. It should be noted that the mapping table locally established and stored by the client 120 can employ a specific data structure. For example, the mapping table can employ a key-value pair data structure. In some embodiments, the mapping table can include a mapping relationship between application identifiers and application names. In this case, the terminal device 120 can determine the uniquely corresponding application name according to the application identifier. It should be understood that only an example mapping table applicable to this disclosure is given herein. In practical applications, the mapping table can be used to indicate the mapping relationship between any appropriate information, and the embodiments of this disclosure do not limit this. It is understood that the mapping table can be stored in the local storage space of the client 120 in any suitable storage method, including but not limited to: memory storage, file storage, database storage, hybrid storage, etc.
[0057] Continue to refer to Figure 3 Taking the mapping table as an example, which includes the mapping relationship between application identifiers and application names, after receiving a notification message containing the application identifier, client 120 can determine (330) whether there is an application name corresponding to the application identifier in the locally established mapping table. In some embodiments, if client 120 determines that there is no application name corresponding to the application identifier in the local mapping table, it can send (332) a first request generated based on the application identifier to external device 130. Then, based on the application identifier contained in the first request, external device 130 sends a second request generated based on the application identifier to client 160 through a first communication connection to request to obtain (334) the application name corresponding to the application identifier. Client 160 responds to the second request from external device 130 and sends (336) the application name corresponding to the application identifier to external device 130 through the first communication connection. Further, external device 130 responds to the first request from client 120 and sends (338) the application name corresponding to the application identifier and the application identifier received from client 160 to client 120 through a second communication connection. Understandably, in order to facilitate the client 160 in recognizing the response of the external device 130 to the request, the external device can determine the application identifier and the application name corresponding to the application identifier as the first response to the first request according to the data structure in the mapping table, and send the first response to the client 120.
[0058] In some embodiments, still taking the mapping table including the mapping relationship between application identifiers and application names as an example, to improve message communication efficiency, after receiving the application identifier and the corresponding application name from the external device 130, the client 120 can update the locally stored mapping table. Alternatively, the client 120 can store the received application identifier and the corresponding application name in the mapping table. If the client 120 receives a notification message from the same application again, it can retrieve the corresponding application name from the mapping table based on the application identifier in the notification message. This saves the time cost incurred by the client 120 in requesting the application name corresponding to the application identifier from the external device 130 again, at least improving the efficiency of the client 120 in determining the notification message for the application.
[0059] Continue to refer to Figure 3Taking the mapping table, which includes the mapping relationship between application identifiers and application names, as an example, if client 120 obtains the application name corresponding to the application identifier from the locally established mapping table, or requests the application name corresponding to the application identifier from external device 130, client 120 can determine (342) the output message based on the application's notification message and the obtained application name corresponding to the application identifier. As an example, the output message may contain only one complete notification message for the application. In some embodiments, client 120 may combine the application's notification message and application name in a configured order to determine the complete notification message for the application. For example, the application name can be configured as the information in the order of priority, and the application's notification message can be configured as the information in the order of priority. In this way, user 110 can obtain the application name first through the output message output by external device 130, so as to quickly understand the source of the application's notification message and quickly determine the importance of the application's notification message through the application name. As another example, the output message may be a summary message of multiple notification messages for the application. After identifying multiple complete notification messages, client 120 can send them to server 150, which is connected to client 120. Server 150 can summarize the multiple complete notification messages received from client 120 using methods such as machine learning models or configured summarization strategies. After summarization, server 150 can send a summary message to client 120. Client 120 can then determine the summary message as the output message.
[0060] Furthermore, client 120 can send the determined output message to external device 130 via the second communication connection (344). External device 130 can output the output message in any suitable form (346) after receiving it from client 120. In some embodiments, the output message from client 120 can be presented in text form. External device 130 can convert the text-presented output message into an output message presented in media form such as audio. Then, external device 130 can provide the media-presented output message to user 110. User 110 can obtain timely notification messages from applications in electronic device 140 through external device 130, thereby improving user experience.
[0061] In this manner, embodiments of this disclosure can obtain complete notification messages of applications in electronic device 140 through at least two communications between external device 130 and the client in electronic device 140, and can promptly present the complete notification message containing the application to user 110 via external device 130. In this way, user 110 can quickly obtain complete notification messages of applications in electronic device 140 via external device 130. In particular, user 110 can quickly determine the importance of application notification messages based on the application name contained in the output message, thereby improving user experience. Furthermore, embodiments of this disclosure also implement the establishment of a mapping table locally on the client of electronic device 140 to store application names matching application notification messages (e.g., application identifiers). In this way, when multiple notification messages from the same application are obtained, the client of electronic device 140 can quickly match the application name matching the application notification message from the local mapping table, thereby saving the time cost of repeatedly requesting external device 130 to obtain the application name matching the application notification message and improving message communication efficiency.
[0062] Figure 5 A flowchart of an example process 500 for message communication according to some embodiments of the present disclosure is shown. Process 500 can be implemented at a client 120 in an electronic device 140. Reference is made below. Figure 1 To describe process 500.
[0063] like Figure 5 As shown in block 510, client 120 receives notification messages from an application on client 160 from external device 130, wherein external device 130 has communication connections with client 120 and client 160 respectively.
[0064] In box 520, client 120 obtains the application name of the application on client 160 based on the notification message.
[0065] In box 530, client 120 determines the output message of client 120 based on the application's notification message and application name, wherein the output message is provided to external device 130 for output.
[0066] In some embodiments, client 120 determines whether an application name matching the notification message exists in the client 120's mapping table; in response to determining that the mapping table includes an application name matching the notification message, it extracts the application name of the application from the mapping table; and in response to determining that the mapping table does not include an application name matching the notification message, it obtains the application name of the application from the external device 130 based on the notification message.
[0067] In some embodiments, the notification message includes at least the application's identifier, and the mapping table includes a mapping relationship between the application's identifier and the application name.
[0068] In some embodiments, in response to determining that the mapping table includes application names corresponding to application identifiers, the client 120 retrieves the application name corresponding to the application identifier from the mapping table.
[0069] In this way, the client 120 can quickly match the application name corresponding to the application identifier from the local mapping table, thereby saving the time of requesting the external device 130 to obtain the application name corresponding to the application identifier and improving message communication efficiency.
[0070] In some embodiments, in response to determining that the mapping table does not include an application name corresponding to the application's identifier, the client 120 sends a first request to the external device 130, wherein the first request includes the application's identifier; and receives a first response to the first request from the external device 130, wherein the first response includes the application's identifier and the application name.
[0071] In this way, client 120 can obtain the complete notification message of the application through two communications with external device 130.
[0072] In some embodiments, the client 120 updates the mapping table based on the application name and application identifier obtained from the external device 130.
[0073] In this way, when the client receives notification messages from the same application more than once, it can quickly match the application name corresponding to the application identifier contained in the application's notification message from the local mapping table, thereby saving the time cost of requesting the external device 130 again to obtain the application name corresponding to the application identifier and improving message communication efficiency.
[0074] In some embodiments, the notification message may also include at least one of the following: a notification title, a notification body, or the time the client 160 receives the notification message. In this way, the user 110 can obtain various notification messages from the application via the external device 130, allowing the user 110 to better assess the importance of the application's notification messages.
[0075] In some embodiments, client 160 is installed on electronic device 140, and external device 130 has a communication connection with electronic device 140.
[0076] Figure 6 A flowchart of an example process 600 for message communication according to some embodiments of the present disclosure is shown. Process 600 may be implemented at an external device 130 in electronic device 140. Reference is made below. Figure 1To describe process 600.
[0077] like Figure 6 As shown in block 610, external device 130, in response to receiving a notification message from client 160, sends a notification message to client 120, wherein external device 130 has communication connections with both client 120 and client 160.
[0078] In box 620, in response to receiving a first request for an application from client 120, external device 130 sends a second request to client 160 to request the application name of the application, wherein both the first request and the second request are generated based on at least a portion of a notification message.
[0079] In box 630, in response to receiving a second response from client 160 including the application name, external device 130 sends a first response to client 120 in response to the first request, the first response including at least the application name.
[0080] In some embodiments, the notification message includes at least the identifier of the application, and both the first request and the second request include the identifier of the application, and the first response also includes the identifier of the application.
[0081] In some embodiments, the external device 130 receives output messages from the client 120, the output messages being determined based at least on the application's notification messages and the application's application name; and outputs output messages via the external device 130.
[0082] In this way, the external device 130 can promptly present a complete notification message to the user 110, which includes at least the application's notification message and the application's name.
[0083] In some embodiments, the external device 130 receives a user identifier corresponding to an application notification message from the client 160; and retrieves the application notification message from the client 160 based on the user identifier. This improves the security of application notification messages in the electronic device 140.
[0084] In some embodiments, in response to receiving an enable request for a communication service from a client 120, an external device 130 subscribes to the communication service of a client 160 based on the enable request, wherein the communication service is configured to allow the external device 130 to receive notification messages from applications on the client 160; and receives notification messages from the application from the client 160 based on the subscription to the communication service.
[0085] In this way, the external device 130 can share and interact with the electronic device 140 regarding notification messages.
[0086] Embodiments of this disclosure also provide corresponding apparatus for implementing the above methods or processes. Figure 7 A schematic structural block diagram of an example device 700 for message communication according to certain embodiments of the present disclosure is shown. Device 700 may be implemented as or included at a client 120 in electronic device 140. Various modules / components in device 700 may be implemented by hardware, software, firmware, or any combination thereof.
[0087] like Figure 7 As shown, the device 700 includes: a notification message receiving module 710, configured for client 120 to receive notification messages from an application on client 160 from an external device 130, wherein the external device 130 has a communication connection with client 120 and client 160 respectively; an application name acquisition module 720, configured for client 120 to acquire the application name of the application on client 160 based on the application notification message; and an output message determination module 730, configured for client 120 to determine its output message based on the notification message and the application name, wherein the output message is provided to the external device 130 for output.
[0088] In some embodiments, the application name acquisition module 720 may also be configured to determine whether there is an application name matching the notification message in the mapping table of the client 120; extract the application name of the application from the mapping table in response to determining that the mapping table includes an application name matching the notification message; and obtain the application name of the application from the external device 130 based on the notification message in response to determining that the mapping table does not include an application name matching the notification message.
[0089] In some embodiments, the notification message includes at least the application's identifier, and the mapping table includes a mapping relationship between the application's identifier and the application name.
[0090] In some embodiments, in response to determining that the mapping table includes application names corresponding to application identifiers, the client 120 retrieves the application name corresponding to the application identifier from the mapping table.
[0091] In some embodiments, the application name acquisition module 720 may also be configured to send a first request to the external device 130 in response to determining that the mapping table does not include an application name corresponding to the application's identifier, wherein the first request includes the application's identifier; and to receive a first response to the first request from the external device 130, wherein the first response includes the application's identifier and the application name.
[0092] In some embodiments, the application name acquisition module 720 may also be configured to update the mapping table based on the application name and application identifier of the application obtained from the external device 130.
[0093] In some embodiments, the notification message may further include at least one of the following: at least one notification title, notification body content, or the time when the client 160 receives the notification message.
[0094] In some embodiments, client 160 is installed on electronic device 140, and external device 130 has a communication connection with electronic device 140.
[0095] Figure 8 A schematic structural block diagram of an example device 800 for message communication according to certain embodiments of the present disclosure is shown. Device 800 may be implemented as or included in an external device 130. Various modules / components in device 800 may be implemented by hardware, software, firmware, or any combination thereof.
[0096] like Figure 8 As shown, the device 800 includes: a notification message receiving module 810 configured to send a notification message to a client 120 in response to receiving an application notification message from a client 160, wherein an external device 130 has a communication connection with both the client 120 and the client 160; a request module 820 configured to send a second request to the client 160 to request the application name of the application in response to receiving a first request for the application from the client 120, wherein both the first request and the second request are generated based on at least a portion of the notification message; and an application name acquisition module 830 configured to send a first response to the first request to the client 120 in response to receiving a second response including the application name of the application from the client 160, wherein the first response includes at least the application name.
[0097] In some embodiments, the notification message includes at least the identifier of the application, and both the first request and the second request include the identifier of the application, and the first response also includes the identifier of the application.
[0098] In some embodiments, the apparatus 800 further includes: a message output module configured to receive output messages from the client 120, the output messages being determined based at least on the application's notification messages and the application's application name; and to output the output messages via an external device 130.
[0099] In some embodiments, the notification message receiving module 810 is configured to receive a user identifier corresponding to an application notification message from the client 160; and to obtain the application notification message from the client 160 based on the user identifier.
[0100] In some embodiments, the notification message receiving module 810 is configured to, in response to receiving an enable request for a communication service from the client 120, subscribe to the communication service of the client 160 based on the enable request, wherein the communication service is configured to allow the external device 130 to obtain notification messages from the application on the client 160; and receive application notification messages from the client 160 based on the subscription to the communication service.
[0101] like Figure 9 As shown, electronic device 900 is in the form of a general-purpose electronic device. Components of electronic device 900 may include, but are not limited to, at least one processor 910 or processing unit, memory 920, storage device 930, one or more communication units 940, one or more input devices 990, and one or more output devices 960. Processor 910 may be a physical or virtual processor and is capable of performing various processes according to programs stored in memory 920. In a multiprocessor system, multiple processors execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 900.
[0102] Electronic device 900 typically includes multiple computer storage media. Such media can be any accessible media that is accessible to electronic device 900, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 920 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 930 can be removable or non-removable media and can 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 900.
[0103] Electronic device 900 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 9 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 920 may include computer program product 925 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.
[0104] The communication unit 940 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 900 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 900 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.
[0105] Input device 990 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 960 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 900 can also communicate with one or more external devices (not shown) via communication unit 940 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 900, or with any device that enables electronic device 900 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).
[0106] According to an exemplary implementation of this disclosure, 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. According to an exemplary implementation of this disclosure, 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.
[0107] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0108] 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.
[0109] 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.
[0110] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. 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 indicated in the blocks may occur in a different order than those indicated in the drawings. 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, may 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.
[0111] Various implementations of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed 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 various implementations disclosed herein.
Claims
1. A message communication method, implemented in a first client, comprising: Receive notification messages from an application on a second client from an external device, wherein the external device has a communication connection with both the first client and the second client. Based on the notification message, obtain the application name of the application on the second client; as well as Based on the notification message and the application name, the output message of the first client is determined, wherein the output message is provided to the external device for output.
2. The method according to claim 1, wherein obtaining the application name of the application includes: Determine whether an application name matching the notification message exists in the mapping table of the first client; In response to determining that the mapping table includes an application name that matches the notification message, the application name of the application is extracted from the mapping table; as well as In response to determining that the mapping table does not include an application name that matches the notification message, the application name of the application is obtained from the external device based on the notification message.
3. The method of claim 2, wherein the notification message includes at least the identifier of the application, and the mapping table includes a mapping relationship between the application identifier and the application name.
4. The method according to claim 3, wherein extracting the application name from the mapping table includes: In response to determining that the mapping table includes an application name corresponding to the identifier of the application, the application name corresponding to the identifier of the application is obtained from the mapping table.
5. The method of claim 3, wherein obtaining the application name of the application from the external device includes: In response to determining that the mapping table does not include an application name corresponding to the identifier of the application, a first request is sent to the external device, wherein the first request includes the identifier of the application; and Receive a first response to the first request from the external device, wherein the first response includes the identifier of the application and the application name.
6. The method according to claim 5, further comprising: The mapping table is updated based on the application name and the application identifier obtained from the external device.
7. The method of claim 1, wherein the notification message further comprises at least one of the following: At least one notification title, The main body of the notification, or The second client's reception time of the notification message.
8. The method of claim 1, wherein the second client is installed on an electronic device, and the external device has a communication connection with the electronic device.
9. A message communication method, implemented in an external device, comprising: In response to receiving a notification message from the application from the second client, the notification message is sent to the first client, wherein the external device has a communication connection with the first client and the second client respectively; In response to receiving a first request for the application from the first client, a second request is sent to the second client to request the application name of the application, wherein both the first request and the second request are generated based on at least a portion of the notification message; as well as In response to receiving a second response from the second client that includes the application name of the application, a first response to the first client is sent to the first client in response to the first request, wherein the first response includes at least the application name.
10. The method of claim 9, wherein the notification message includes at least an identifier of the application, and wherein both the first request and the second request include the identifier of the application, and the first response further includes the identifier of the application.
11. The method of claim 9, further comprising: Receive output messages from the first client, wherein the output messages are determined based at least on the application's notification messages and the application's application name; as well as The output message is output via the external device.
12. The method of claim 9, wherein receiving the notification message from the application from the second client comprises: Receive the user identifier corresponding to the notification message from the application from the second client; as well as Based on the user identifier, the notification message of the application is obtained from the second client.
13. The method of claim 9, wherein receiving the notification message from the application from the second client comprises: In response to receiving an enable request for a communication service from the first client, the external device subscribes to the communication service of the second client based on the enable request, wherein the communication service is configured to allow the external device to receive notification messages from applications on the second client; as well as Based on the subscription to the communication service, the notification message of the application is received from the second client.
14. An apparatus for message communication, comprising: The notification message receiving module is configured to receive notification messages from an application on a second client from an external device, wherein the external device has a communication connection with both the first client and the second client. The application name acquisition module is configured to acquire the application name of the application on the second client based on the notification message; as well as The output message determination module is configured to determine the output message of the first client based on the notification message and the application name, wherein the output message is provided to the external device for output.
15. An apparatus for message communication, comprising: The notification message receiving module is configured to send the notification message to the first client in response to receiving an application notification message from the second client, wherein the external device has a communication connection with the first client and the second client respectively. The request module is configured to send a second request to the second client in response to receiving a first request for the application from the first client to request the application name of the application, wherein both the first request and the second request are generated based on at least a portion of the notification message; as well as The application name acquisition module is configured to send a first response to the first client in response to receiving a second response from the second client that includes the application name of the application, wherein the first response includes at least the application name.
16. 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, when executed by the at least one processor, causing the electronic device to perform the method according to any one of claims 1 to 8, or to perform the method according to any one of claims 9 to 13.
17. A computer-readable storage medium having stored thereon computer-executable instructions, said computer-executable instructions being executable by a processor to implement the method according to any one of claims 1 to 8, or to implement the method according to any one of claims 9 to 13.
18. A computer program product tangibly stored in a computer storage medium and comprising computer-executable instructions that, when executed by a device, cause the device to perform the method according to any one of claims 1 to 8, or to perform the method according to any one of claims 9 to 13.