Message generation method, electronic equipment, computer storage medium and program product

By obtaining session events and scenario information in instant messaging applications, and using personal session assisted data to generate recommended content, the problem of input burden and inefficiency when users generate messages is solved, and intelligent session message generation is realized.

CN120541286APending Publication Date: 2025-08-26DINGTALK (CHINA) INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510394489.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-31
Publication Date
2025-08-26

AI Technical Summary

Technical Problem

When existing instant messaging applications generate messages, it is difficult for users to intelligently assist user input, resulting in heavy input burden and low efficiency, making it difficult to meet the user's actual usage scenario needs.

Method used

By obtaining the user's session event and scene information in the session window, using personal session assistance data to generate recommended content that matches the input content, and display it in the message input box, receiving user operations to generate session messages.

Benefits of technology

It realizes that when the user only enters part of the content, intelligently generates session messages that meet user needs, reduces the input burden, and improves generation speed and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120541286A_ABST
    Figure CN120541286A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a message generation method, electronic equipment, a computer storage medium and a program product. The message generation method comprises the following steps: acquiring session event information of a user in a session window of an IM application, and acquiring session scene information of the session window according to the session event information; if it is determined that the session window is currently in a session message input completion scene according to the session scene information, obtaining content input by a user in a message input box of the session window; according to the input content and personal session auxiliary data of the user in the IM application, obtaining recommended content matched with the input content, and displaying the recommended content in a message input box; and receiving an operation of the user on the displayed recommended content, and generating a session message according to an operation result of the operation and the input content. The technical scheme in the embodiment of the invention effectively assists the user in generating the session message, and reduces the input burden of the user.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of computer technology, and in particular to a message generation method, electronic device, computer storage medium, and computer program product. Background Art

[0002] IM (Instant Messaging) applications are becoming increasingly popular in people's work and personal lives because they enable users to quickly exchange information and establish effective communication and contact channels. However, as a result, IM users are demanding greater intelligence to assist users in generating IM messages, reducing the burden of inputting these messages. Furthermore, they also hope that these assisted IM messages can better meet users' actual usage scenarios, improving their efficiency and success rate. Summary of the Invention

[0003] In view of this, an embodiment of the present application provides a message generation solution to at least partially solve the above problems.

[0004] According to a first aspect of an embodiment of the present application, a message generation method is provided, comprising: obtaining session event information of a user in a session window of an instant messaging (IM) application, and obtaining session scenario information of the session window based on the session event information; if it is determined, based on the session scenario information, that the session window is currently in a session message input completion scenario, obtaining content entered by the user in a message input box of the session window; obtaining recommended content matching the entered content based on the entered content and the user's personal session auxiliary data in the IM application, and displaying the recommended content in the message input box; receiving an operation by the user on the displayed recommended content, and generating a session message based on the operation result and the entered content.

[0005] According to a second aspect of an embodiment of the present application, another message generation method is provided, including: receiving a request sent by an instant messaging (IM) application to instruct intelligent completion of a user's input message, the request carrying content already entered by the user in a message input box of a conversation window; obtaining, based on the request, personal conversation auxiliary data of the user in the IM application; generating recommended content for the entered content based on the personal conversation auxiliary data, and returning the recommended content to the IM application.

[0006] According to a third aspect of an embodiment of the present application, an electronic device is provided, comprising: a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface communicate with each other through the communication bus; the memory is used to store at least one executable instruction, and the executable instruction enables the processor to perform an operation corresponding to the method described in the first aspect; or, to perform an operation corresponding to the method described in the second aspect.

[0007] According to a fourth aspect of an embodiment of the present application, a computer storage medium is provided, on which a computer program is stored. When the program is executed by a processor, the method described in the first aspect is implemented; or, the method described in the second aspect is implemented.

[0008] According to the fifth aspect of the embodiment of the present application, a computer program product is provided, comprising computer instructions, wherein the computer instructions instruct a computing device to perform operations corresponding to the method of the first aspect; or, to perform operations corresponding to the method of the second aspect.

[0009] According to the solution provided by an embodiment of the present application, session event information is first obtained for a user in an IM application's session window. Based on the session event information, session context information for the session window is then obtained. When the session context information determines that the session window is currently in a message input completion scenario, the user's inputted content in the message input box of the session window is obtained. Based on the inputted content and the user's personal session auxiliary data in the IM application, recommended content matching the inputted content is obtained. Furthermore, the recommended content is displayed in the message input box, and a user action is received. Based on the action result and the inputted content, a session message is generated that can be posted to the session window. This allows for accurate determination of the input completion scenario using session context information. Acquiring the user's personal session auxiliary data based on this determination improves the efficiency of acquiring personal session auxiliary data and avoids the waste of resources associated with acquiring personal session auxiliary data in non-input completion scenarios. Furthermore, the acquired personal session auxiliary data is combined with the user's inputted content to generate recommended content that better matches the user's personal session context and inputted content, and is more in line with the user's personal characteristics. Then, based on an action on the recommended content, such as accepting it, the final session message is generated in combination with the inputted content. As can be seen, through the embodiments of the present application, even if the user only enters a portion of the conversation message content, recommended content that meets the user's actual needs can be intelligently generated for the user, eliminating the need for the user to think and manually enter each character. This effectively assists the user in generating conversation messages, reduces the user's input burden, implements intelligent IM input, and improves the speed of IM conversation message generation. Furthermore, because the recommended content is derived from the user's personal conversation assistance data, it is more easily accepted by the user, thereby improving the efficiency and success rate of intelligent IM conversation message generation. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments recorded in the embodiments of the present application. For ordinary technicians in this field, other drawings can also be obtained based on these drawings.

[0011] Figure 1 A schematic diagram of an exemplary system applicable to the embodiments of the present application;

[0012] Figure 2A This is a flowchart of a message generation method according to an embodiment of the present application;

[0013] Figure 2B for Figure 2A A schematic diagram of an example of displaying recommended content in the illustrated embodiment;

[0014] Figure 2C for Figure 2A A schematic diagram of an example scenario in the illustrated embodiment;

[0015] Figure 3 This is a flowchart of another message generation method according to an embodiment of the present application;

[0016] Figure 4 Schematic diagram of the structure of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0017] In order to enable those skilled in the art to better understand the technical solutions in the embodiments of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the embodiments of the present application, all other embodiments obtained by ordinary technicians in this field should fall within the scope of protection of the embodiments of the present application.

[0018] Reference Figure 1 , shows an exemplary system applicable to the embodiment of the present application. Figure 1 As shown, the system 100 may include a cloud service 102, a communication network 104 and / or one or more user devices 106. Figure 1 The example in the figure is for multiple user devices.

[0019] The cloud server 102 can be any appropriate device for storing information, data, programs and / or any other suitable type of content, including but not limited to distributed storage system devices, server clusters, computing cloud server clusters, etc. In some embodiments, the cloud server 102 can perform any appropriate function. For example, in some embodiments, the cloud server 102 can receive a request sent by an IM application in the user device 106 to instruct intelligent completion of the user's input message, and the request carries the content that the user has entered in the message input box of the IM session window, and then obtain the user's personal session auxiliary data in the IM application based on the request, and then generate recommended content for the entered content based on the personal session auxiliary data. As another example, in some embodiments, the cloud server 102 can also be used to send recommended content to the user device 106.

[0020] In some embodiments, the communication network 104 can be any suitable combination of one or more wired and / or wireless networks. For example, the communication network 104 can include any one or more of the following: the Internet, an intranet, a wide area network (WAN), a local area network (LAN), a wireless network, a digital subscriber line (DSL) network, a frame relay network, an asynchronous transfer mode (ATM) network, a virtual private network (VPN), and / or any other suitable communication network. The user device 106 can be connected to the communication network 104 via one or more communication links (e.g., communication link 112), and the communication network 104 can be linked to the cloud service end 102 via one or more communication links (e.g., communication link 114). The communication link can be any communication link suitable for transmitting data between the user device 106 and the cloud service end 102, such as a network link, a dial-up link, a wireless link, a hard-wired link, any other suitable communication link, or any suitable combination of such links.

[0021] User device 106 may include, but is not limited to, any one or more user devices suitable for interacting with a user and capable of running an IM application. In some embodiments, user device 106 may be used to complete IM conversation messages. As an optional example, in some embodiments, user device 106 may first obtain conversation event information from a user in an IM application conversation window and, based on the conversation event information, obtain conversation context information for the conversation window. If the conversation context information determines that the conversation window is currently in a conversation message input completion scenario, user device 106 may obtain the content entered by the user in the message input box of the conversation window. Furthermore, based on the entered content and the user's personal conversation auxiliary data in the IM application, user device 106 may obtain recommended content that matches the entered content and display the recommended content in the message input box. User action on the displayed recommended content may then be received, and a conversation message may be generated based on the result of the action and the entered content. In some embodiments, user device 106 may include any suitable type of device. For example, in some embodiments, user device 106 may include a mobile device, a tablet computer, a laptop computer, a desktop computer, a wearable computer, or any other suitable type of user device.

[0022] Based on the above system, an embodiment of the present application provides a message generation solution, which is described below through multiple embodiments.

[0023] Reference Figure 2A , shows a flow chart of the steps of a message generation method according to an embodiment of the present application. The message generation method includes the following steps:

[0024] Step S202: Acquire the user's session event information in the session window of the IM application, and acquire the session scenario information of the session window based on the session event information;

[0025] IM (Instant Messaging) is an internet-based communication service that allows two or more people to instantly exchange messages using a conversation window on a communication platform. A conversation window can be a window for real-time, online, one-to-one or one-to-many conversations. In IM, conversation events can be various conversation-related events, including but not limited to changes in message status such as message sending, receiving, withdrawing, and reading, as well as operations such as conversation entry, conversation entry, conversation creation, updating, and deletion. The information corresponding to a conversation event is called conversation event information. Through this information, conversation state changes can be understood in real time, ensuring accurate transmission and timely processing of information. In an optional embodiment, the conversation event information in the embodiments of the present application can be implemented as conversation entry information (e.g., the current user opens an existing conversation window), conversation creation information (e.g., the current user creates a new conversation window), or conversation input information (e.g., the current user enters information in the message input box of the current conversation window). This eliminates the need to continuously acquire conversation scenario information based on conversation changes, reduces the information acquisition burden of the IM application, and improves the efficiency of the solution execution. However, those skilled in the art should understand that conversation event information corresponding to the above-mentioned conversation events other than these three are also applicable to the solutions of the embodiments of the present application.

[0026] In an embodiment of the present application, the conversation scenario information can reflect the processing scenario for the input message in the conversation window. In an optional manner, the conversation scenario information includes at least one of the following: scenario information for indicating a conversation message input completion scenario for intelligent completion of the message being input in the message input box, scenario information for indicating an intelligent reply scenario for automatically generating a reply message, scenario information for indicating a translation scenario for translating a conversation message, and scenario information for indicating a polishing scenario for text polishing of a conversation message to be sent. Since the solution of the embodiment of the present application is mainly used for intelligent completion, the conversation scenario information of the embodiment of the present application needs to include at least the above-mentioned conversation message input completion scenario and its scenario information, while other scenarios and scenario information can be selected and used by those skilled in the art according to actual needs, and other scenarios and scenario information can also be added according to actual needs.

[0027] Among them, in the conversation message completion scenario, when the user enters a message through the message input box of the conversation window, the IM application can predict what the user may want to express based on the content already entered by the user, and generate recommended content to follow the content already entered, helping the user to quickly complete the message input.

[0028] In the smart reply scenario, a complete IM reply message can be automatically generated for the reply user targeted by the IM message (such as the user who replied to the message through the "@" symbol or clear text instructions in the IM message), without any user input.

[0029] In the translation scenario, the message entered by the user in a certain language in the message input box can be automatically translated into a message in another specified language, realizing automatic conversion of the message language.

[0030] In the polishing scenario of text polishing of conversation messages, the text of the partial or complete message content entered by the user in the message input box is polished according to the preset polishing method (such as tone, style, text polishing, etc.) to improve the expression effect of the conversation message or make the style of the conversation message meet the needs of the user.

[0031] Different conversation scenarios can be enabled or disabled using a status switch. Based on this, a correspondence between conversation scenario information and the switch status can be established, thereby determining the conversation scenario that the conversation window is currently in. For example, when the status switch is set to 0, it indicates that the current conversation scenario is disabled; conversely, when the status switch is set to 1, it indicates that the current conversation scenario is enabled, i.e., the current conversation window is in that conversation scenario. Using the status switch, it is possible to efficiently and quickly determine which conversation scenario the current conversation window is in. However, this is not intended to be limiting; other methods for enabling or disabling a particular conversation scenario are also applicable to the solutions of the embodiments of this application.

[0032] Step S204: If it is determined based on the conversation scenario information that the conversation window is currently in a conversation message input completion scenario, the content input by the user in the message input box of the conversation window is obtained.

[0033] After obtaining the conversation scenario information, it is possible to determine whether the current conversation window is in the conversation message input completion scenario. For example, as previously described, if a status switch is used to enable or disable a particular conversation scenario, then in one optional approach, the conversation window can be determined to be in the conversation message input completion scenario based on the switch status corresponding to each scenario information. For example, if the switch status corresponding to the conversation message input completion scenario information is 1, it can be determined that the conversation window is currently in the completion scenario.

[0034] After determining that the conversation window is in the conversation message input completion scenario, the content that the user has entered in the message input box of the conversation window can be obtained. It should be noted that although emoticons, multimedia data, rich media text, etc. can all be used as the content entered in the message input box, in order to accurately understand the semantics and understand the user's intentions, in an optional manner, the content entered in the message input box at least includes text content. However, it should be noted that even if the entered content does not include text content, based on the understanding of key information of the entered content (such as the understanding of the semantics and / or emotions expressed by emoticons, the understanding of the content of multimedia data and rich media text, etc.), the solution of the embodiment of the present application can also be applied.

[0035] Step S206: According to the input content and the user's personal conversation auxiliary data in the IM application, recommended content matching the input content is obtained, and the recommended content is displayed in the message input box.

[0036] To ensure that the recommended content used to complete conversation messages is more closely aligned with the user and the conversation context, in embodiments of the present application, the user's personal conversation auxiliary data is also used as a reference when generating subsequent recommendations for input content. Personal conversation auxiliary data can be a variety of user-related data in IM applications that can provide auxiliary reference for generating recommended content. In one example, the user's personal conversation auxiliary data can be stored in the form of a knowledge graph, but this is not limited to this. Database storage or vector library storage methods are also applicable to the solutions of embodiments of the present application.

[0037] In some optional embodiments, the personal conversation assistance data may include at least one of the following: dynamically updated organizational data of the user's organization within the IM application; data on the user's contacts within the IM application whose intimacy exceeds a preset threshold; data on shared topics between the user and other users in the conversation window; data on the user's responsibilities with other users in the conversation window; data on the user's to-do items within the conversation window; and data on events of interest to the user within the IM application. By using this personal conversation assistance data, the intent of the user's input content can be better understood, and conversation message completion suggestions, i.e., recommendations, that better meet the user's needs can be provided, thereby reducing the burden on the user while entering IM messages and improving the user's IM message input efficiency.

[0038] Among them, the above-mentioned organizational data can represent the organization to which the user belongs, the organizational structure of the organization, member information within the organization, transaction data related to the organization, technical content, professional terminology, etc. For example, the organizational data can be obtained from the data (such as corporate information, corporate documents, etc.) published by the organization through the IM application, and can be updated as the published data is updated. Through organizational data, when completing the input of conversation messages, on the one hand, even for new users who have never published conversation messages in the IM application, input completion that is more in line with user needs can be achieved based on the organizational data of the organization to which they belong; on the other hand, because the organizational data is updated in a timely manner, it can ensure that the recommended content generated based on it, especially the recommended content in the work conversation environment, is more accurate and more in line with implementation needs; on the other hand, the organizational data can also provide assistance for accurately understanding the content that the user has entered.

[0039] In one optional approach, organizational data can be dynamically updated based on at least one of organizational documents published by the user's organization via IM applications, work-related organizational data, conversation messages posted by members of the organization via IM applications, and task data completed by members of the organization via IM applications. The user entering content in the message input box, i.e., the user whose conversation message is to be intelligently completed, is also a member of the organization. This ensures both the timeliness and the richness and comprehensiveness of organizational data.

[0040] The aforementioned contact data can represent the closeness of the relationship between the user and other users (i.e., contacts) in the IM application. In one optional approach, the closeness between the user and other users can be determined based on the frequency of interaction between the user and other users in the IM application, or the conversational semantics, or the conversational tone. The preset threshold can be flexibly set by those skilled in the art based on actual needs and is not limited in this embodiment of the present application. Because a conversation window may contain conversation messages involving a certain contact, the contact data can effectively complete the conversation message input for such situations.

[0041] Shared topic data between a user and other users in the current conversation window represents topics of frequent communication and interaction between the user and other users in the current conversation window. This data can be obtained by analyzing historical conversation messages in the current conversation window. Because shared topic data typically represents content shared by multiple users, using this data to understand user input and complete conversation message input can improve completion accuracy and efficiency.

[0042] The user's responsibility data with other users in the conversation window represents the professions, skills, positions, areas of responsibility, etc. of multiple users in the current conversation window. This responsibility data can be used to effectively complete the input of conversation messages involving work tasks or skill services.

[0043] The data of the user's to-do items in the conversation window is used to represent the tasks or items that need to be completed, recorded by the user or the user's device in the IM application. Through this data, the information of the tasks or items in which the user is involved can be reflected, providing a basis for input completion of the conversation message; and the to-do item reminder of the user can be realized through input completion in the conversation message involving the to-do item.

[0044] The data on user-focused events in IM applications can represent their interests and focus, indirectly reflecting their personality traits. This data can be obtained by analyzing their historical conversation messages or their actions on corresponding events in the IM application (such as saving, tagging, forwarding, or commenting on related events). This data can effectively understand the user's focus or interests, improve understanding of the user's input content, and provide effective reference for subsequent completion of the user's conversation messages.

[0045] Additionally, a user's personal conversation assistance data may optionally include at least one of the following: public knowledge completion data, including but not limited to data used to complete English conversation messages, data used to complete conversation messages using ancient Chinese poetry, internet buzzword data, and hot news data. These data expand and supplement the personal conversation assistance data, enriching its content.

[0046] Through these personal conversation auxiliary data, we can not only effectively assist in understanding the semantics and intentions of the content entered by the user, but also provide more accurate and valuable references for completing conversation message input, thereby making the generated recommended content more personalized to the user and in line with the user's actual needs, thereby improving the accuracy and usability of the recommended content.

[0047] Furthermore, based on the content input by the user and the user's personal conversation assistance data, recommended content matching the input content may be obtained.

[0048] In one example, personal conversation assistance data can be obtained locally from the user device, such as data cached locally or data persistently stored locally, etc. In this case, in one way, recommended content with semantic association can be matched and obtained from the personal conversation assistance data according to the semantics of the content that has been input. For example, assume that the input content is "The weather will be nice tomorrow, and I want to", and according to the semantics, it can be determined that the user wants to express going out with someone. Then, from the contact data in the personal conversation assistance data, contacts with the top N intimacy levels (N is an integer greater than or equal to 1) can be matched as the recommended content. Assume that the contact with the highest intimacy level is "Xiaobai", then "Xiaobai" will appear after the word "and" in "The weather will be nice tomorrow, and I want to". If it meets the user's needs, after the user clicks on "Xiaobai", the content in the message input box will become "The weather will be nice tomorrow, and I want to go with Xiaobai". However, it is not limited to this. In another way, the user device can send the input content and the personal conversation assistance data to a server, such as a cloud server. After receiving the input content and the personal conversation assistance data, the server will generate a prompt based on these two parts of data, and then submit this prompt to the LLM (Large Language Model) for generation processing to generate recommended content that matches the input content. Furthermore, the server will return this recommended content to the user device. After the user device obtains this recommended content, it can be displayed in the message input box of the conversation window. In this way, the server can directly process based on the relevant data, which can improve the generation speed and efficiency of the recommended content.

[0049] In another example, the personal conversation assistance data can be stored on the server, such as in a database stored on a cloud server. In this case, in one way, the server can obtain the input content and match and obtain recommended content with semantic association from the personal conversation assistance data stored on the server according to the semantics of the input content. In another way, the user device can send the input content to the server. After receiving the input content, the server uses the RAG (Retrieval-Augmented Generation) method to obtain the personal conversation assistance data associated with the input content from the database. Then, based on these two parts of data, a prompt is generated and this prompt is submitted to the LLM for generation processing to generate recommended content that matches the input content. Furthermore, the server will return this recommended content to the user device. After the user device obtains this recommended content, it can be displayed in the message input box of the conversation window. In this way, more and richer personal conversation assistance data of the user can be stored in the server, so that more abundant information can be provided to the LLM subsequently, making the recommended content generated by the LLM more in line with the user's needs.

[0050] It should be noted that the above uses LLM as an example to illustrate the method of using a machine learning model to generate recommended content, but those skilled in the art should understand that other machine learning models with similar functions can also be applied to the solutions of the embodiments of the present application.

[0051] While personalized conversational auxiliary data can already generate recommended content that meets actual needs, an optional approach can be used to make recommendations more precise and more contextually appropriate. The user's conversational context information in the conversation window can be obtained. Based on this contextual information, the entered content, and the user's personalized conversational auxiliary data in the IM application, recommendations matching the entered content can be generated. The conversational context information in the conversation window is closely related to the context and discussion of the current conversation, effectively assisting in understanding the semantics and intent of the user's entered content, thereby improving the accuracy and user acceptance of the generated recommendations.

[0052] In some optional embodiments, obtaining the user's conversation context information in the conversation window may include: determining the conversation message to be replied to by the user and obtaining the conversation context information associated with the conversation message; or determining the publisher of the conversation message to be replied to by the user and obtaining the conversation message between the user and the publisher as the conversation context information. In one scenario, a conversation window typically contains multiple rounds of interactive dialogue, and the user's input in the message input box is often related to a recently posted conversation message. In this case, the recently posted conversation message may be determined as the conversation message to be replied to. In another scenario, a posted conversation message may contain information about a designated replyer. If the current user is the designated replyer, the conversation message containing the designated replyer information may be determined as the conversation message to be replied to. In yet another scenario, if the user performs a "reply" or "quote" operation on a conversation message in the conversation window to enter a reply to the conversation message, the conversation message may be determined as the conversation message to be replied to. However, other methods for determining conversation messages to be replied to are also applicable to the embodiments of the present application.

[0053] After determining the conversation message to be replied to, the context of the conversation message can be obtained as the conversation context information associated with the conversation message. Alternatively, the semantics of the conversation message can be obtained and semantically related conversation messages from the context conversation can be selected as the conversation context information. This method of conversation context information can provide richer conversation information, which can not only better understand the content entered by the user, but also provide a rich and reliable basis for generating subsequent recommended content commissions.

[0054] Optionally, after determining the conversation message to be replied to, the publisher of the conversation message can be identified, and the conversation messages between the user and the publisher can be obtained as conversation context information. The conversation messages between the user and the publisher are more targeted, and may use abbreviations, slang, or specialized terms between the two. This approach allows for a more accurate understanding of the semantics of the user's input, improving the accuracy of subsequent recommendations.

[0055] In most cases, recommended content generated for completing conversation message input is in text form. However, this format is relatively simple and may not fully express the user's intent. Therefore, in one optional approach, the recommended content can include at least one of the following: plain text, emoticons, multimedia data, or rich media text. That is, the recommended content can be in the form of plain text, but is not limited to this. It can also be presented in other forms, or a combination of multiple forms. In a specific implementation, emoticons, multimedia data, and rich media text can all correspond to corresponding key information, such as emoticons corresponding to expression information, / or emotional information, and / or semantic information; multimedia data and rich media data corresponding to main content information, etc. Thus, recommended content can be generated by matching the input content to at least one of plain text, emoticons, multimedia data, or rich media text. Regarding the method of generating recommended content using a machine learning model such as LLM, the LLM can generate information containing preset symbols, logos, or addresses, and then, based on this information, obtain the corresponding emoticons, multimedia data, or rich media text as components of the recommended content.

[0056] In addition, in people's actual interactions, although the meaning is the same, different text expressions, tones, intonations, etc. will produce different emotional effects, some will lead to positive emotions, some will lead to negative emotions, and some will be neutral emotions. Obviously, positive emotions are more conducive to interaction and communication between people. To this end, in an optional scheme of the embodiment of the present application, the emotional tendency of the content entered by the user will also be judged. If the emotional tendency of the content entered by the user in the message input box of the conversation window is a negative emotional tendency, then based on the entered content and the user's personal conversation auxiliary data in the IM application, recommended content that matches the entered content and has a positive emotional tendency is obtained. This method may be called "high emotional intelligence conversation message completion". Among them, the emotional tendency judgment of the entered content can be implemented by those skilled in the art in any appropriate way, such as through keyword matching, or through the form of an emotional assessment model, etc. The embodiment of the present application does not limit the specific implementation of the situation tendency judgment.

[0057] When the input content is determined to be negative, this method generates positively biased recommendations to adjust the user's emotional orientation. In an optional approach, when the server generates a prompt based on the user's input content and personal conversation auxiliary data, it can add information instructing the LLM to generate positively biased content. Based on this prompt, the LLM will generate more positively biased recommendations for the input content, such as lighthearted, euphemistic, optimistic, or humorous content.

[0058] For example, without "High EQ Conversational Message Completion," the recommended content generated for the input "XX, you need to take five days off." With "High EQ Conversational Message Completion," the recommended content might be "It's a bit long, I'll miss you." This shows that "High EQ Conversational Message Completion" not only effectively expresses user intent, but also achieves better communication and interaction, increasing user stickiness.

[0059] It should be noted that the solution of the embodiments of the present application can be applied to scenarios where users enter various content in the message input box. However, in actual applications, users may wish to hide some of their own information and do not want the IM application to apply and complete this information, such as the user's mobile phone number, encrypted conversations, etc. To this end, in an optional manner, the embodiments of the present application also set a completion exclusion condition for the input completion of the conversation message. When the content entered by the user in the message input box meets the completion exclusion condition, the input content will not be completed. Based on this, the aforementioned method of obtaining recommended content that matches the input content based on the input content and the user's personal conversation auxiliary data in the IM application may include: determining whether the input content meets the preset completion exclusion condition; if not, obtaining recommended content that matches the input content based on the input content and the user's personal conversation auxiliary data in the IM application. In this way, user information confidentiality is guaranteed and users are more flexible in using conversation message input completion.

[0060] Among them, the preset completion exclusion conditions can be set by those skilled in the art according to actual needs. In an optional embodiment of the present application, the completion exclusion conditions include at least one of the following: the last character of the input content is a number or special character (such as,.,,¥$@#space, etc.); the input content is a preset type of conversation content (such as an encrypted conversation, etc.); the last content of the input content is the user's private data content (such as a password, ID card, mobile phone number, etc.). Because IM applications do not collect and use private data or security data, and users do not need intelligent completion most of the time, therefore, in these cases, the input completion of the conversation message can be omitted to save resource consumption and ensure user data security.

[0061] Through the above process, when the user is inputting a message, the user can intelligently generate recommended content that matches the input content and is more in line with the user's needs, personalized characteristics, and adapted to the conversation context. Then, the recommended content can be displayed in the message input box. An example of displaying recommended content is as follows: Figure 2B As shown by Figure 2B As can be seen, the user is typing in the message input box of the current conversation window. The input is "If you have respiratory problems, you should remember this." The corresponding recommendation is "Ventilate more," which is displayed after the input. This recommendation can be generated based on the various optional methods described above, taking into account the user's personal conversation assistance data and conversation context, so as to better meet the user's needs and actual context.

[0062] Step S208: receiving the user's operation on the displayed recommended content, and generating a conversation message according to the operation result and the input content.

[0063] As previously mentioned, recommended content can be displayed in the message input box, and users can simply click it to display it on the screen without having to manually enter it. However, considering that users may have different needs, the embodiments of the present application provide multiple operations for users to select from for the displayed recommended content to fully meet the different needs of different users.

[0064] Based on this, in an optional manner, for the displayed recommended content, the operations that can be provided and the generation of conversation messages based on the operation results and the input content can be implemented as follows: if the operation on the displayed content is an operation of accepting the recommended content, then a conversation message is generated based on the recommended content and the input content; if the operation on the displayed content is an operation of modifying the recommended content, then a conversation message is generated based on the modified recommended content and the input content; if the operation on the displayed content is an operation of instructing to optimize the recommended content, then the optimized recommended content is obtained, and a conversation message is generated based on the optimized recommended content and the input content.

[0065] In some cases, the originally generated recommendation content basically meets the user's needs, but the user wants to further modify it so that it and the input content can more accurately express the user's intention. In this case, the recommendation content can be modified and the modified recommendation content can be combined with the input content to generate a conversation message.

[0066] In other cases, the original recommendation content may already meet user needs, but the user desires further refinement to achieve a higher level of meaning. In this case, the recommendation content can be optimized, and a conversation message generated based on the optimized recommendation content and the input content. Optimization of recommended content can be implemented by those skilled in the art using any appropriate method based on actual needs. Optimization dimensions include, but are not limited to, word choice optimization, style optimization, and text optimization. Machine learning models with text optimization capabilities can be used to optimize recommended content.

[0067] As can be seen, this embodiment first obtains session event information from the user's conversation window in the IM application, and then obtains conversation context information for the conversation window based on the session event information. When the conversation window is determined to be in a conversation message input completion scenario based on the conversation context information, the user's input content in the message input box of the conversation window is obtained. Based on the input content and the user's personal conversation auxiliary data in the IM application, recommended content matching the input content is obtained. Furthermore, the recommended content is displayed in the message input box, and the user's operation is received. Based on the operation result and the input content, a conversation message that can be posted to the conversation window is generated. This allows accurate judgment of the input completion scenario based on the conversation context information. Acquiring the user's personal conversation auxiliary data based on this judgment improves the efficiency of obtaining personal conversation auxiliary data and avoids the waste of resources caused by obtaining personal conversation auxiliary data in non-input completion scenarios. Furthermore, the obtained personal conversation auxiliary data is combined with the user's input content to generate recommended content that better matches the user's personal conversation context and input content, and is more in line with the user's personal characteristics. Then, based on the operation on the recommended content, such as accepting the operation, the final conversation message is generated in combination with the input content. As can be seen, through the embodiments of the present application, even if the user only enters a portion of the conversation message content, recommended content that meets the user's actual needs can be intelligently generated for the user, eliminating the need for the user to think and manually enter each character. This effectively assists the user in generating conversation messages, reduces the user's input burden, implements intelligent IM input, and improves the speed of IM conversation message generation. Furthermore, because the recommended content is derived from the user's personal conversation assistance data, it is more easily accepted by the user, thereby improving the efficiency and success rate of intelligent IM conversation message generation.

[0068] The following is an example of a specific scenario to illustrate the above process. Figure 2C shown.

[0069] Depend on Figure 2C As can be seen in the figure, user A has opened a group chat session window "Smart Completion Special Group" in the IM application of his user device. This is an internal group used for work. After the session window entry event (a session event) is detected, the session scene information of user A in the session window is obtained. In this example, the switch status of the session message completion scene in the session scene information is set to on, and the switch status of other session scenes is set to off. Based on this, it is determined that for user A, he is in the session message input completion scene in the "Smart Completion Special Group" window.

[0070] Let's assume that user B posts a conversation message in the "Smart Completion Special Group" window: "Should the project essay my boss requested be sent out this week?" User A responds to this conversation message by entering "this project" in the message input box. First, the system checks whether the entered content meets the completion exclusion criteria. In this example, if it is determined that the completion exclusion criteria are not met, the conversation message can be completed.

[0071] On this basis, in this example, the input content is also segmented using a word segmenter to prepare for better determination of the personal auxiliary data to be used later.

[0072] In this example, it is assumed that the user device will obtain the personal conversation auxiliary data of user A, and assume that the organizational data of user A is obtained, which at least includes some internal terms of the project, such as "short composition", and the organizational relationship of user A as the supervisor of user B. Based on the organizational data, it is understood that the "short composition of the project" posted by user B means a summary of the project progress. Furthermore, based on the organizational data and the input content "this project", a prompt is generated, and the prompt is input into the LLM so that the LLM generates recommended content based on the information in the prompt. The recommended content generated by the LLM, such as "How's the progress?", will be fed back to the electronic device of user A to be displayed after "this project". If user A is a subordinate of user B, the recommended content may be "The short composition is almost done", and will be displayed after "this project" (not shown in the figure).

[0073] Assume that user A clicks and selects the recommended content "How is the progress?", a conversation message "How is the progress of this project?" will be generated. If no other content is required, the conversation message input is completed and the conversation message can be published to the current conversation window.

[0074] As can be seen from this example, the solution of the embodiment of the present application effectively realizes conversation message input completion that meets user needs and is more accurate and intelligent.

[0075] Below, refer to Figure 3 , from the perspective of the server, the message generation method provided in the embodiment of the present application is explained.

[0076] like Figure 3 As shown, the message generation method of this embodiment includes the following steps:

[0077] Step S302: receiving a request sent by an IM application to instruct intelligent completion of a user's input message.

[0078] The request carries the content that the user has input in the message input box of the conversation window.

[0079] In this embodiment, the generation of conversation messages is achieved through collaboration between the user device and the server. In this case, when the user device determines that the current IM conversation window is in a conversation message input completion scenario and has obtained the message content entered by the user in the message input box, it sends a request to the server to intelligently complete the user's input in the message input box, and the request includes the user's input content in the message input box. In response, the server receives the request and processes it based on the request.

[0080] Step S304: acquiring the user's personal conversation auxiliary data in the IM application according to the request for intelligent completion of the user's input message.

[0081] In this embodiment, the user's personal conversation auxiliary data is stored on the server. In one example, the user's personal conversation auxiliary data can be stored in the form of a knowledge graph, but is not limited to this. Database storage or vector library storage are also applicable to the solution of the embodiment of the present application.

[0082] As mentioned above, in some optional embodiments, personal conversation auxiliary data may include at least one of the following: dynamically updated organizational data of the organization to which the user belongs in the IM application; contact data of the user in the IM application whose intimacy is greater than a preset threshold; common topic data between the user and other users in the conversation window; responsibility data of the user and other users in the conversation window; to-do data of the user in the conversation window; and event data of the user's attention in the IM application.

[0083] Further optionally, the organization data may be dynamically updated by obtaining data published by the organization via an IM application, the data including at least one of the following: organizational documents of the organization, work-related organizational data, conversation messages published by organizational members in the IM application, and task data completed by organizational members via the IM application; wherein organizational members include users. The organization data may be dynamically updated based on the published data.

[0084] The specific implementation of the updating of the above-mentioned personal conversation auxiliary data and the organizational data therein can refer to the description of the relevant parts in the above-mentioned embodiments, and will not be repeated here.

[0085] Step S306: Generate recommended content for the input content based on the personal conversation assistance data, and return the recommended content to the IM application.

[0086] After obtaining the personal conversation assistance data, based on the content input by the user in the message input box, recommended content that matches the input content and follows the input content can be generated.

[0087] In one optional approach, to ensure that the generated recommended content provides a better user experience and emotional value, the aforementioned generation of recommended content for input content based on personal conversation auxiliary data can be implemented by: determining the emotional tendency of the input content; if the emotional tendency is negative, generating positive emotionally inclined recommendations for the input content based on the personal conversation auxiliary data. This achieves "high emotional intelligence conversation message completion" for conversation messages, improving user experience and user retention. The specific implementation of this process can be referred to the relevant description of the previous embodiment and will not be repeated here.

[0088] In another optional embodiment, the message generation method of this embodiment may further include: if the acquisition of personal conversation assistance data fails or the acquired personal conversation assistance data is invalid, generating recommended content matching the input content based on the input content using a machine learning model. Although the probability of personal conversation assistance data acquisition failure is very low, in certain extreme cases, such as a database crash or abnormal changes to the stored personal conversation assistance data, it is possible that the acquisition of personal conversation assistance data fails or the acquired data is invalid (e.g., garbled characters). In such cases, for example, using an LLM as the machine learning model, a prompt can be directly generated based on the content entered by the user in the message input box, so that the LLM generates recommended content based on the prompt, thereby ensuring the normal execution of conversation message input completion.

[0089] In addition, a resource library can be set up on the server side, which can store emoticons and their corresponding expression information and / or emotional information and / or semantic information, multimedia data and its corresponding main content information, and rich media data and its corresponding main content information. Based on this, in an optional method, generating recommended content for the input content based on personal conversation auxiliary data can be achieved by: obtaining at least one of the following matching content from the resource library based on the semantics and / or emotional tendencies of the input content: emoticons, multimedia data, rich media text; and generating recommended content for the input content based on the input content, personal conversation auxiliary data, and content obtained from the resource library. This enriches the expression form of the recommended content and improves the expression effect of the recommended content.

[0090] This embodiment intelligently generates recommended content tailored to the user's actual needs and context based on the partial content of the user's conversation message entered in the IM conversation window, eliminating the need for the user to think about or manually enter each character. This effectively assists the user in generating conversation messages, reduces the user's input burden, implements intelligent IM input, and speeds up IM conversation message generation. Furthermore, because the recommended content is derived from the user's personal conversation assistance data, it is more likely to be accepted by the user, thereby improving the efficiency and success rate of intelligent IM conversation message generation.

[0091] It should be noted that the description of each step in this embodiment is relatively simple, and the relevant parts can be referred to Figure 2A-2C The description of the corresponding parts in the illustrated embodiments has its corresponding beneficial effects.

[0092] Reference Figure 4 , shows a structural diagram of an electronic device according to the fifth embodiment of the present application. The specific embodiment of the present application does not limit the specific implementation of the electronic device.

[0093] like Figure 4 As shown, the electronic device may include: a processor (processor) 402 , a communication interface (Communications Interface) 404 , a memory (memory) 406 , and a communication bus 408 .

[0094] in:

[0095] The processor 402 , the communication interface 404 , and the memory 406 communicate with each other via a communication bus 408 .

[0096] The communication interface 404 is used to communicate with other electronic devices or servers.

[0097] The processor 402 is configured to execute the program 410 , and specifically may execute the relevant steps in the above method embodiment.

[0098] Specifically, the program 410 may include program codes, which include computer operation instructions.

[0099] Processor 402 may be a CPU, a Graphics Processing Unit (GPU), an Application Specific Integrated Circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application. The one or more processors included in the electronic device may be processors of the same type, such as one or more CPUs, or may be processors of different types, such as one or more CPUs and one or more ASICs.

[0100] The memory 406 is used to store the program 410. The memory 406 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.

[0101] The program 410 may include multiple computer instructions. Specifically, the program 410 may enable the processor 402 to execute operations corresponding to the message generation method described in any of the aforementioned method embodiments through the multiple computer instructions.

[0102] The specific implementation of each step in program 410 can refer to the corresponding description of the corresponding steps and units in the above-mentioned method embodiment, and has corresponding beneficial effects, which will not be repeated here. Those skilled in the art will clearly understand that for the convenience and brevity of description, the specific working process of the above-mentioned devices and modules can refer to the corresponding process description in the above-mentioned method embodiment, and will not be repeated here.

[0103] The present application also provides a computer storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in any of the aforementioned method embodiments. The computer storage medium includes, but is not limited to, a compact disc read-only memory (CD-ROM), random access memory (RAM), a floppy disk, a hard disk, or a magneto-optical disk.

[0104] An embodiment of the present application also provides a computer program product, including computer instructions, which instruct a computing device to execute operations corresponding to any message generation method in the above-mentioned multiple method embodiments.

[0105] In addition, it should be noted that the user-related information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to sample data used to train the model, user personal conversation auxiliary data, data used for analysis, stored data, displayed data, etc.) involved in the embodiments of the present application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data need to comply with the relevant laws, regulations and standards of relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0106] It should be pointed out that, according to the needs of implementation, the various components / steps described in the embodiments of the present application can be split into more components / steps, or two or more components / steps or partial operations of components / steps can be combined into new components / steps to achieve the purpose of the embodiments of the present application.

[0107] The above-mentioned method according to the embodiment of the present application can be implemented in hardware, firmware, or as software or computer code that can be stored in a recording medium (such as a CD-ROM, RAM, floppy disk, hard disk or magneto-optical disk), or as computer code that is originally stored in a remote recording medium or a non-temporary machine-readable medium downloaded via a network and will be stored in a local recording medium, so that the method described herein can be stored in such software processing on a recording medium using a general-purpose computer, a dedicated processor or programmable or dedicated hardware (such as an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA)). It can be understood that a computer, a processor, a microprocessor controller or programmable hardware includes a storage component (e.g., random access memory (RAM), read-only memory (ROM), flash memory, etc.) that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor or hardware, the method described herein is implemented. In addition, when a general-purpose computer accesses the code for implementing the method shown here, the execution of the code converts the general-purpose computer into a dedicated computer for executing the method shown here.

[0108] Those skilled in the art will appreciate that the units and method steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of this application.

[0109] The above implementation methods are only used to illustrate the embodiments of the present application, and are not intended to limit the embodiments of the present application. Ordinary technicians in the relevant technical field can make various changes and modifications without departing from the spirit and scope of the embodiments of the present application. Therefore, all equivalent technical solutions also fall within the scope of the embodiments of the present application, and the scope of patent protection of the embodiments of the present application should be defined by the claims.

Claims

1. A message generating method, comprising: Acquire session event information of a user in a session window of an instant messaging (IM) application, and acquire session scenario information of the session window based on the session event information; If it is determined according to the conversation scenario information that the conversation window is currently in a conversation message input completion scenario, obtaining the content input by the user in the message input box of the conversation window; Obtaining recommended content matching the input content based on the input content and the user's personal conversation auxiliary data in the IM application, and displaying the recommended content in the message input box; An operation performed by the user on the displayed recommended content is received, and a conversation message is generated according to an operation result of the operation and the input content.

2. The method according to claim 1, wherein The personal conversation assistance data includes at least one of the following: Dynamically updated organizational data of the organization to which the user belongs in the IM application; Contact data of the user in the IM application whose intimacy is greater than a preset threshold; Common topic data between the user and other users in the conversation window; Responsibility data of the user and other users in the conversation window; Data of the user's to-do items in the session window; The user's attention event data in the IM application.

3. The method according to claim 2, wherein: The organizational data is dynamically updated based on at least one of the organizational documents published by the organization through the IM application, the organizational data associated with the work, the conversation messages released by the organizational members of the organization in the IM application, and the task data completed by the organizational members of the organization through the IM application; wherein, the organizational members include the users.

4. The method according to any one of claims 1 to 3, wherein: The obtaining, based on the input content and the user's personal conversation auxiliary data in the IM application, recommended content matching the input content includes: If the emotional tendency of the content entered by the user in the message input box of the conversation window is negative, then based on the entered content and the user's personal conversation auxiliary data in the IM application, recommended content that matches the entered content and has a positive emotional tendency is obtained.

5. The method according to any one of claims 1 to 3, wherein: The recommended content includes at least one of the following: plain text content, emoticons, multimedia data, and rich media text.

6. The method according to any one of claims 1 to 3, wherein: The obtaining, based on the input content and the user's personal conversation auxiliary data in the IM application, recommended content matching the input content includes: Acquire session context information of the user in the session window; Recommended content matching the input content is obtained according to the conversation context information, the input content, and the user's personal conversation auxiliary data in the IM application.

7. The method according to claim 6, wherein: The acquiring of the session context information of the user in the session window includes: Determining a conversation message to be replied to by the user, and obtaining conversation context information associated with the conversation message; or, The message publisher of the conversation message to be replied by the user is determined, and the conversation message between the user and the message publisher is obtained as conversation context information.

8. The method according to any one of claims 1 to 3, wherein: Generating a conversation message according to the operation result of the operation and the input content includes: If the operation is an operation of accepting the recommended content, generating a conversation message according to the recommended content and the input content; If the operation is to modify the recommended content, generating a conversation message based on the modified recommended content and the input content; If the operation is an operation instructing to optimize the recommended content, the optimized recommended content is obtained, and a conversation message is generated according to the optimized recommended content and the input content.

9. The method according to any one of claims 1 to 3, wherein: In addition to the scenario information of the conversation message input completion scenario, the conversation scenario information further includes at least one of the following: scenario information for indicating a smart reply scenario for automatically generating a reply message, scenario information for indicating a translation scenario for translating a conversation message, and scenario information for indicating a polishing scenario for polishing a conversation message to be sent; The determining, based on the conversation scenario information, that the conversation window is currently in a conversation message input completion scenario includes: determining, based on a switch state corresponding to each scenario information, that the conversation window is currently in a conversation message input completion scenario.

10. The method according to any one of claims 1 to 3, wherein: The obtaining, based on the input content and the user's personal conversation auxiliary data in the IM application, recommended content matching the input content includes: Determining whether the input content meets the preset completion exclusion conditions; If not, obtaining recommended content that matches the input content based on the input content and the user's personal conversation auxiliary data in the IM application.

11. The method according to claim 10, wherein: The completion exclusion condition includes at least one of the following: The last character of the input content is a number or a special character; The input content is a conversation content of a preset type; The end of the input content is the user's private data content.

12. A message generating method, comprising: Receiving a request sent by an instant messaging (IM) application for instructing intelligent completion of a user's input message, wherein the request carries content input by the user in a message input box of a conversation window; Acquiring, according to the request, personal conversation auxiliary data of the user in the IM application; Generate recommended content for the input content according to the personal conversation assistance data, and return the recommended content to the IM application.

13. The method according to claim 12, wherein: The personal conversation assistance data includes at least one of the following: Dynamically updated organizational data of the organization to which the user belongs in the IM application; Contact data of the user in the IM application whose intimacy is greater than a preset threshold; Common topic data between the user and other users in the conversation window; Responsibility data of the user and other users in the conversation window; Data of the user's to-do items in the session window; The user's attention event data in the IM application.

14. The method according to claim 13, wherein The organizational data is dynamically updated in the following ways: Acquiring data published by the organization through the IM application, the data including at least one of the following: organizational documents of the organization, organizational data associated with work, conversation messages published by organizational members of the organization in the IM application, and task data completed by organizational members of the organization through the IM application; wherein the organizational members include the user; The organizational data is dynamically updated based on the published data.

15. The method according to any one of claims 12 to 14, wherein: Generating recommended content for the input content based on the personal conversation assistance data includes: Performing emotional tendency judgment on the input content; If the emotional tendency is a negative emotional tendency, then based on the personal conversation assistance data, recommended content with a positive emotional tendency is generated for the input content.

16. The method according to any one of claims 12 to 14, wherein: The method further comprises: If the acquisition of the personal conversation auxiliary data fails, or the acquired personal conversation auxiliary data is invalid data, then based on the input content, a machine learning model is used to generate recommended content that matches the input content.

17. The method according to any one of claims 12 to 14, wherein: Generating recommended content for the input content based on the personal conversation assistance data includes: According to the semantics and / or emotional tendency of the input content, obtaining at least one of the following matching contents from a resource library: emoticons, multimedia data, and rich media text; Generate recommended content for the input content based on the input content, the personal conversation assistance data, and content acquired from the resource library.

18. An electronic device comprising: A processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other via the communication bus; The memory is used to store at least one executable instruction, and the executable instruction enables the processor to perform an operation corresponding to the method according to any one of claims 1 to 11; or to perform an operation corresponding to the method according to any one of claims 12 to 17.

19. A computer storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the program implements the method according to any one of claims 1 to 11; or implements the method according to any one of claims 12 to 17.

20. A computer program product, comprising computer instructions, wherein the computer instructions instruct a computing device to perform operations corresponding to the method according to any one of claims 1 to 11; or to perform operations corresponding to the method according to any one of claims 12 to 17.