Message searching method and device, computer device, storage medium and program product

By popping up a list of filter options in the search box, users can select the sub-channel identifier or channel member identifier of the main channel to directly display matching historical messages. This solves the problems of low efficiency and poor accuracy in message search on social platforms, and achieves efficient and accurate message location and management.

CN116150505BActive Publication Date: 2025-12-09TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111401824.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-19
Publication Date
2025-12-09
Estimated Expiration
2041-11-19

AI Technical Summary

Technical Problem

Existing message search methods cannot achieve reasonable and comprehensive search results on social platforms, especially when the user base is large and there are many channels. Traditional message search is inefficient and cannot accurately locate historical messages that reflect the user's intent.

Method used

A message search method is provided, which pops up a list of filter options related to the search terms in the search box. The filter options are the sub-channel identifier of the main channel or the channel member identifier. Users can select the filter options to directly display the historical messages that match them, avoiding the process of matching every attribute.

Benefits of technology

It improves the efficiency and accuracy of message search, enabling quick location of relevant historical messages, reducing time consumption, supporting combined searches with multiple filter options, and improving the efficiency of administrators in managing malicious messages.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116150505B_ABST
    Figure CN116150505B_ABST
Patent Text Reader

Abstract

The application relates to a message search method and device, computer equipment, a storage medium and a program product. The method comprises the following steps: displaying a message search interface of a main channel in which a target account is located; the main channel comprises a plurality of independent sub-channels, the speech themes of the plurality of independent sub-channels are different and are associated with the main channel; in response to inputting a search word in a search box of the message search interface, a filter item list related to the search word is popped up at the search box; the filter item in the filter item list is one of a sub-channel identifier belonging to the main channel and a channel member identifier belonging to the main channel; in response to a trigger operation on the filter item in the filter item list, the filter item is displayed in the search box, and historical messages matched with the filter item are displayed in the message search interface. The method can improve the accuracy and efficiency of locating messages.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer, in particular to a message search method and device, computer equipment, storage medium and computer program product. BACKGROUND

[0002] With the rapid development of computer technology and Internet technology, various social platforms emerge in an endless stream. For example, friends or employees can communicate online through instant messaging clients, and strangers can exchange topics, show themselves and make friends through instant messaging clients, interactive communities or interactive platforms.

[0003] Generally, these various social platforms support message management functions, which can be used by ordinary users to search historical messages or by administrator users to manage searched historical messages, such as deleting or revoking malicious messages. At present, in the process of searching messages, only message filtering is supported according to search terms from a single message content dimension. With the increasing size of social platform users and the increasing number of social channels that users participate in, the number of historical messages is also increasing. Traditional message search methods cannot obtain reasonable and comprehensive search results, nor can they quickly and accurately search messages in a large number of channels. SUMMARY

[0004] Therefore, it is necessary to provide a message search method, device, computer equipment, computer readable storage medium and computer program product that can improve the efficiency and accuracy of message searching.

[0005] In a first aspect, the present application provides a message search method. The method comprises:

[0006] displaying a message search interface of a main channel in which a target account is located; the main channel comprises a plurality of independent sub-channels, and the speaking topics of the plurality of independent sub-channels are different and are associated with the main channel;

[0007] in response to inputting a search term in a search box of the message search interface, a filter item list related to the search term is popped up at the search box; the filter item in the filter item list is one of a sub-channel identifier belonging to the main channel and a channel member identifier belonging to the main channel;

[0008] in response to a triggering operation on at least one filter item in the filter item list, the at least one filter item is displayed in the search box, and historical messages matched with the at least one filter item are displayed in the message search interface.

[0009] In a second aspect, the present application further provides a message search device. The device comprises:

[0010] The search interface display module is configured to display a message search interface of a main channel in which the target account is located; the main channel comprises a plurality of independent sub-channels, and the plurality of independent sub-channels have different speech topics and are associated with the main channel.

[0011] The search box display module is configured to, in response to input of a search word in a search box of the message search interface, pop up a filter item list related to the search word at the search box; the filter items in the filter item list are one of sub-channel identifiers belonging to the main channel and channel member identifiers belonging to the main channel.

[0012] The message display module is configured to, in response to a triggering operation on at least one filter item in the filter item list, display the at least one filter item in the search box and display historical messages matching the at least one filter item in the message search interface.

[0013] In a third aspect, the present application further provides a computer device. The computer device comprises a memory and a processor, the memory stores a computer program, and the processor implements the following steps when executing the computer program:

[0014] The message search interface of the main channel in which the target account is located is displayed; the main channel comprises a plurality of independent sub-channels, and the plurality of independent sub-channels have different speech topics and are associated with the main channel.

[0015] In response to input of a search word in a search box of the message search interface, a filter item list related to the search word is popped up at the search box; the filter items in the filter item list are one of sub-channel identifiers belonging to the main channel and channel member identifiers belonging to the main channel.

[0016] In response to a triggering operation on at least one filter item in the filter item list, the at least one filter item is displayed in the search box, and historical messages matching the at least one filter item are displayed in the message search interface.

[0017] In a fourth aspect, the present application further provides a computer readable storage medium. The computer readable storage medium stores a computer program, and the computer program is executed by a processor to implement the following steps:

[0018] The message search interface of the main channel in which the target account is located is displayed; the main channel comprises a plurality of independent sub-channels, and the plurality of independent sub-channels have different speech topics and are associated with the main channel.

[0019] in response to inputting a search word in a search box of the message search interface, popping up a filter option list related to the search word at the search box; the filter options in the filter option list are one of sub-channel identifications belonging to the main channel and channel member identifications belonging to the main channel;

[0020] in response to a triggering operation on at least one filter option in the filter option list, displaying the at least one filter option in the search box and displaying historical messages matching the at least one filter option in the message search interface.

[0021] In a fifth aspect, the present application further provides a computer program product. The computer program product comprises a computer program which, when executed by a processor, implements the following steps:

[0022] displaying a message search interface of a main channel in which a target account is located; the main channel comprises a plurality of independent sub-channels, the speaking topics of the plurality of independent sub-channels are different and are associated with the main channel;

[0023] in response to inputting a search word in a search box of the message search interface, popping up a filter option list related to the search word at the search box; the filter options in the filter option list are one of sub-channel identifications belonging to the main channel and channel member identifications belonging to the main channel;

[0024] in response to a triggering operation on at least one filter option in the filter option list, displaying the at least one filter option in the search box and displaying historical messages matching the at least one filter option in the message search interface.

[0025] The message search method, device, computer device, storage medium and computer program product described above, in the case that the number of independent sub-channels belonging to the main channel is large, after entering the message search interface of the main channel and obtaining a search word input in the search box, a filter option list related to the search word is popped up at the search box, since each filter option in the filter option list is a sub-channel identification belonging to the main channel or a channel member identification belonging to the main channel, when at least one filter option is selected from the filter option list, it indicates that the filter option is closely related to the historical messages that the user intends to search, and the historical messages matching the at least one filter option are directly displayed, thereby providing the user with a small amount of accurate search results. Moreover, since the filter options are sub-channel identifications belonging to the main channel or channel member identifications belonging to the main channel, both of which are attributes of the messages themselves, relevant historical messages can be quickly found from a large number of historical messages according to the attributes represented by the filter options, thereby avoiding the time consumption caused by directly traversing each attribute of the messages and sequentially matching, so that the efficiency of message search can be improved. BRIEF DESCRIPTION OF DRAWINGS

[0026] Figure 1 Figure 1 is a diagram illustrating an application environment of a message search method according to one embodiment;

[0027] Figure 2 Figure 2 is a diagram illustrating a flowchart of a message search method according to one embodiment;

[0028] Figure 3 Figure 3 is a diagram illustrating an interface of a main channel according to one embodiment;

[0029] Figure 4 Figure 4 is a diagram illustrating an interface of a message search according to one embodiment;

[0030] Figure 5 Figure 5 is a diagram illustrating an interface of a message search according to another embodiment;

[0031] Figure 6 Figure 6 is a diagram illustrating components of a message search interface according to one embodiment;

[0032] Figure 7 Figure 7 is a diagram illustrating a message search interface according to one specific embodiment;

[0033] Figure 8 Figure 8 is a diagram illustrating a flowchart of a message search according to one specific embodiment;

[0034] Figure 9 Figure 9 is a diagram illustrating an interface of displaying historical messages of a target sub-channel according to one specific embodiment;

[0035] Figure 10 Figure 10 is a diagram illustrating a switching between different message type controls according to one embodiment;

[0036] Figure 11 Figure 11 is a diagram illustrating a picture message display according to different views according to one embodiment;

[0037] Figure 12 Figure 12 is a diagram illustrating a pop-up of a preset filter control according to one embodiment;

[0038] Figure 13 Figure 13 is a diagram illustrating a pop-up of a sub-channel list according to one embodiment;

[0039] Figure 14 Figure 14 is a diagram illustrating a pop-up of a channel member list according to one embodiment;

[0040] Figure 15 Figure 15 is a diagram illustrating a pop-up of a speaking date filter according to one embodiment;

[0041] Figure 16 Figure 16 is a diagram illustrating a selection of a main channel through a main channel filter according to one embodiment;

[0042] Figure 17 This is a schematic diagram of the interface for selecting a sub-channel using a sub-channel filter in one embodiment;

[0043] Figure 18 This is a schematic diagram of the interface for selecting channel members using a channel member filter in one embodiment;

[0044] Figure 19 This is a schematic diagram of an interface for selecting a speaking date using a speaking date filter in one embodiment;

[0045] Figure 20 This is a structural block diagram of a message search device in one embodiment;

[0046] Figure 21 This is a structural block diagram of the message search device in another embodiment;

[0047] Figure 22 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

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

[0049] The message search method provided in this application embodiment can be applied to, for example, Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104, or it can be located in the cloud or on another network server.

[0050] In one embodiment, terminal 102 can display the message search interface of the main channel where the target account is located; the main channel contains multiple independent sub-channels, and the topics of the multiple independent sub-channels are different and related to the main channel; in response to entering a search term in the search box of the message search interface, a list of filter items related to the search term pops up in the search box; the filter items in the filter item list are either sub-channel identifiers belonging to the main channel or channel member identifiers belonging to the main channel; in response to triggering an operation on at least one filter item in the filter item list, at least one filter item is displayed in the search box, and historical messages matching at least one filter item are displayed in the message search interface.

[0051] In one embodiment, the terminal 102 is installed with and runs an application program supporting instant communication, which can support instant communication between users with a friendship relationship and can also support instant communication between strangers. The terminal 102 can display a message search interface and display historical messages matching a filter in a search box based on the filter.

[0052] In this application, a main channel is a virtual space specially used for communication and exchange of an object or a thing, which can be any real object or virtual object, and which can be any event, information, game, character, etc. The main channel contains a plurality of independent sub-channels as a medium for users to make speeches and discussions. Different sub-channels have different speech themes but are associated with the main channel, i.e., associated with the object or thing. Exemplarily, a user can create a new main channel in an instant communication application and manage the main channel as an administrator user, such as creating a new sub-channel, inviting users to follow the created main channel, joining a newly created sub-channel to start instant exchange, for example, managing channel members following the main channel, and for example, managing messages generated by channel members in a sub-channel.

[0053] Exemplarily, instant communication can support users to follow a main channel of interest. After following a main channel, the user can instantly join a sub-channel, instantly quit a current sub-channel, and instantly join another sub-channel belonging to the main channel. Users currently in the same sub-channel can communicate and discuss online. Each sub-channel belonging to the main channel is independent and does not interfere with each other, like independent small rooms or chat rooms. Speech themes of sub-channels exist differences but are associated with the main channel, and immersive interaction between users can be achieved.

[0054] For example, the main channel is “XX game community”, and sub-channels belonging to the main channel include “summer game preheat”, “official information”, “highlight moments”, “team recruitment”, “chat room 1”, “chat room 2”, etc. The sub-channels can also be classified into video sub-channels, voice sub-channels, live sub-channels, and instant conversation sub-channels according to interaction types, and can also be classified according to interaction themes, for example, “chat room 1” and “chat room 2” can be classified as “chat room”, and “official information” and “team recruitment” can be classified as “game hall”.

[0055] The terminal 102 can be, but is not limited to, various personal computers, notebook computers, smart phones, tablet computers, Internet of Things devices, and portable wearable devices. The Internet of Things device can be a smart speaker, a smart television, a smart air conditioner, a smart vehicle device, etc. The portable wearable device can be a smart watch, a smart bracelet, a head-mounted device, etc. The server 104 can be implemented by a standalone server or a server cluster composed of multiple servers.

[0056] To make the embodiments of the present application clearer, the following introduces the message search method in the related art:

[0057] Method one: entering a target session to view historical messages, which can only view the historical messages of the target session. This method limits the search to the historical messages of the target session from the session entered, does not support searching across different sessions, and cannot obtain comprehensive search results. In the present application, a filtering item related to the keyword is provided, which can be a sub-channel identifier, and can support searching across multiple sub-channels after selecting multiple sub-channels, thereby improving the comprehensiveness and rationality of message search. For example, an administrator user can find malicious messages generated in multiple sub-channels at one time and then revoke them, without the need for repeated operations.

[0058] Method two: inputting a keyword for global search, which directly matches the keyword with global historical messages. This method directly matches the keyword with global historical messages, which has a large matching amount and low efficiency, and the search results can be very numerous, which cannot accurately locate the historical messages intended to be found by the user. In the present application, a filtering item related to the keyword is provided, which can be a sub-channel identifier or a channel member identifier, which is an attribute of the message itself, thereby directly locating the historical messages related to the sub-channel represented by the filtering item or the channel member represented by the filtering item, and improving the accuracy of message search.

[0059] Method three: inputting a keyword, which directly gives the search results, without multiple filtering item combination searches. For example, the search result is a group matching the keyword, and clicking the search result directly enters the group, that is, the search result is not the historical messages related to the group; for another example, the search result is a contact matching the keyword, and the search result is the contact, and clicking the search result directly enters the session interface with the contact or displays the contact information, and the search result is not the historical messages related to the contact. This method does not support locating the historical messages at one time, and does not support multiple filtering item combination searches.

[0060] In one embodiment, as shown in FIG. 1, a message search method is provided, which is applied to the terminal 102 in FIG. 1 as an example for description, and includes the following steps: Figure 2 Figure 1 In one embodiment, as shown in FIG. 1, a message search method is provided, which is applied to the terminal 102 in FIG. 1 as an example for description, and includes the following steps:​

[0061] In step 202, a message search interface of a main channel in which the target account is located is displayed; the main channel includes a plurality of independent sub-channels, and the sub-channels have different topics and are associated with the main channel.

[0062] The target account is used to uniquely identify a user, and can represent a current user currently using the application or a user identifier of a currently logged-in user. The main channel is a virtual space specially used for communication and exchange of an object or a matter. The object can be any real object or virtual object, and the matter can be any event, information, game, character, or the like. The main channel accommodates a plurality of independent sub-channels as a medium for users to make speeches and discussions. Different sub-channels have different topics but are associated with the main channel, that is, associated with the object or the matter.

[0063] The message search interface is a user interaction interface provided by the application for users to view and manage messages. In an embodiment, the message search interface can be entered through a historical message portal. The historical message portal is an entrance for searching historical messages related to the current main channel, and is an entrance for entering the message search interface of the main channel. The historical message portal can be in the form of a button or a triggerable icon, and the embodiment of the present application does not limit the form of the historical message portal. The historical message portal, as an entrance of a message manager of the main channel, can be displayed at any position of the main channel interface, and the embodiment of the present application does not limit the position of the historical message portal. For example, the historical message portal can be displayed in a speech area corresponding to each sub-channel, and the message search interface can be entered through the historical message portal. For another example, the historical message portal is arranged on a channel information bar of the main channel, and the embodiment of the present application does not limit the position of the historical message portal.

[0064] In an embodiment, before the message search interface of the main channel in which the target account is located is displayed, the method further includes: displaying a main channel interface of the main channel in which the target account is located; in the main channel interface, displaying a speech area corresponding to a sub-channel belonging to the main channel; the sub-channel is any one of a plurality of independent sub-channels belonging to the main channel; and in response to a trigger operation on a historical message portal in the speech area, displaying the message search interface of the main channel.

[0065] Specifically, after entering a main channel, a speech area corresponding to a sub-channel in which a user currently makes a speech and belongs to the main channel can be directly displayed in a main channel interface. The user can realize online exchange with other users in an immersive atmosphere in the speech area. The main channel interface is a channel interaction-based interface provided by the application.

[0066] As shown in FIG. 2, it is a schematic diagram of the main channel interface in an embodiment. Figure 3 Figure 3 ​On the left side of the main channel interface 300, there are various main channels 302 that the user is interested in, and each main channel has a different main channel identifier for distinguishing, which can be a main channel icon or a main channel name. Referring to Figure 3 For example, different main channels are distinguished by different main channel icons. The user can switch between different main channel identifiers to enter different main channels.

[0067] Referring to Figure 3 The main channel interface can also include a plurality of sub-channel identifiers 304 belonging to the main channel that the user is currently in, and each sub-channel has a different sub-channel identifier for distinguishing, which can be a main channel icon or a main channel name. Referring to Figure 3 For example, different sub-channels are distinguished by their respective sub-channel names. In addition, for example, the sub-channel names can also be marked with interaction types to indicate that the sub-channels are video sub-channels, voice sub-channels, live sub-channels, or chat sub-channels, etc. The user can switch between different sub-channel identifiers to join different sub-channels.

[0068] In one embodiment, the sub-channel is a first sub-channel, and the method further comprises: in response to a triggering operation on a speech entry corresponding to a second sub-channel belonging to the main channel, immediately exiting the first sub-channel and immediately joining the second sub-channel; and displaying a speech area corresponding to the second sub-channel in the theme channel interface.

[0069] The speech entry corresponding to the sub-channel can be represented by the sub-channel identifier, and the user can switch between the speech entries corresponding to each sub-channel to switch between different sub-channels. That is, after the user enters the main channel, the user cannot enter multiple sub-channels at the same time, but can only be in one sub-channel. After exiting the current sub-channel, the user can join another sub-channel, and accordingly, the main channel interface simultaneously displays the speech entries corresponding to multiple sub-channels, and only displays the speech area corresponding to the sub-channel in which the user is currently participating in the speech.

[0070] In one embodiment, displaying the speech area corresponding to the sub-channel belonging to the main channel comprises: displaying the speech entries corresponding to the sub-channels belonging to the main channel in the main channel interface; and in response to a triggering operation on a speech entry corresponding to a target sub-channel, immediately joining the target sub-channel and displaying a speech area corresponding to the target sub-channel in the main channel interface.

[0071] The target sub-channel is a sub-channel in which the user intends to speak, and the terminal responds to the user's triggering operation on the speech entry of the target sub-channel to immediately join the target sub-channel, and the terminal displays the speech area corresponding to the target sub-channel. Referring to Figure 3The right side shows a list of channel members currently joined in the target sub-channel 310.

[0072] With reference to Figure 3 The main channel interface can also display a speech area 306 corresponding to the currently joined sub-channel, in which the user can speak to interact with the users currently joined in the sub-channel. The sub-channel has the immersive interactive features of instant joining and instant exiting, i.e., when the user switches from one sub-channel to another sub-channel, the user instantaneously exits the one sub-channel and instantaneously joins the other sub-channel. With reference to Figure 3 The speech area 306 is divided into a speech content browsing area 3062 and an input panel 3064, the speech content browsing area 3062 is used to display the speech content of each user joined in the sub-channel, and the input panel 3064 is used for the current user to input speech content.

[0073] In the embodiments of the present application, the history message portal is displayed in the speech area corresponding to each sub-channel. When the message search interface is entered through the speech area corresponding to the target sub-channel, the history messages originating from the target sub-channel are automatically and by default displayed in the message search interface, so that the history messages generated in the target sub-channel can be quickly and directly displayed for the user or administrator currently joined in the target sub-channel without additional user operations. With reference to Figure 4 The history message portal 308 is displayed in the input panel 3064 of the speech area.

[0074] The triggering operation on the history message portal is used to indicate that the message search interface needs to be displayed. In the exemplary embodiments, the triggering operation can be a single-click operation, a double-click operation, a press operation or a sliding operation, etc. on the history message portal, and the embodiments of the present application do not limit this.

[0075] Specifically, the terminal can display the speech area corresponding to the sub-channel switched to by the user after displaying the main channel interface, the speech area contains a history message portal, and the message search interface is entered from the main channel interface in response to the triggering operation on the history message portal.

[0076] With reference to Figure 4 The interface diagram of the message search interface in one embodiment is shown. With reference to Figure 5In the message search interface 400, a search box 402 is included, which can be used by a user to input a search term. In addition, at least one filter can be displayed based on the input search term and the interaction of the user, including a sub-channel identifier, a channel member identifier, a message speaking date, and the like. Furthermore, the message search interface also includes a historical message area 404. After triggering a search request based on the filter in the search box 402, if a historical message can be matched, the historical message area displays the historical message matched with the filter in the search box. For example, if no historical message can be matched, or if there is no filter in the search box, the historical message area is blank, or the historical message area displays the historical message generated in the target sub-channel currently joined by the user.

[0077] At step 204, in response to inputting a search term in the search box of the message search interface, a filter list related to the search term is popped up at the search box. The filter in the filter list is one of a sub-channel identifier belonging to the main channel and a channel member identifier belonging to the main channel.

[0078] The embodiments of the present application provide multiple search modes, which can be combined with each other. In the embodiments, the search mode based on the search term can determine at least one filter based on the search term input by the user, so as to implement message search based on the filter, or search based on the filter combination formed by the filter and the search term. It can be understood that the filter is a filter condition used for filtering messages.

[0079] In the embodiments of the present application, the filter in the filter list popped up at the search box is an attribute of the message itself, for example, the attribute can be a sub-channel identifier corresponding to a sub-channel from which the message originates, a channel member identifier of a message speaker, a channel member identifier mentioned in the message, a message speaking date, and the like. In the embodiments of the present application, the filters in the filter list are mainly taken as examples of the sub-channel identifier and the channel member identifier.

[0080] Specifically, if the sub-channel identifier or the channel member identifier related to the input search term is matched, or if the sub-channel identifier and the channel member identifier related to the input search term are both matched, the terminal pops up a filter list at the search box, and each filter in the filter list is the sub-channel identifier and / or the channel member identifier matched with the search term. For example, the matching can be that the sub-channel identifier or the channel member identifier starts with the search term, or the matching can be that the sub-channel identifier or the channel member identifier contains the input search term.

[0081] As shown in FIG. 4, it is a schematic diagram of a message search interface in an embodiment. Referring to FIG. 4, Figure 5 Figure 5 ​, the main channel that the current login user joins is "Honor of Kings community", the user inputs the search word "king" in the search box, the terminal pops up a filter item list at the search box based on the matched sub-channel identifiers "Honor of Kings technical exchange", "Honor of Kings team", "Honor of Kings leisure" and the matched channel member identifiers "Honor of Kings Xiaqiu", "Honor of Kings Doudou", "Honor of Kings ABC", the filter item list includes the above filter items for the user to select.

[0082] In one embodiment, when there is a sub-channel identifier that belongs to the main channel and is related to the search word, a sub-channel list composed of sub-channel identifiers is displayed at the search box, and each sub-channel identifier in the sub-channel list is displayed in a preset sub-channel style.

[0083] In one embodiment, when there is a channel member identifier that belongs to the main channel and is related to the search word, a channel member list composed of channel member identifiers is displayed at the search box, and each channel member identifier in the channel member list is displayed in a preset channel member style.

[0084] To distinguish whether the filter item is a sub-channel identifier or a channel member identifier, refer to Figure 6 The filter item list can also separately show the sub-channel identifiers and the channel member identifiers. The sub-channel identifiers are displayed in a preset sub-channel style, and the channel member identifiers are displayed in a preset channel member style. The embodiments of the present application do not limit the specific styles of the preset sub-channel style and the preset channel member style.

[0085] In one embodiment, when there is no sub-channel identifier or channel member identifier that belongs to the main channel and is related to the search word, the search word is directly displayed in the search box of the message search interface; and in the historical message area of the message search interface, historical messages that belong to the main channel and are related to the search word are displayed.

[0086] Since the search word of the user in the search box may not match the sub-channel identifier or the channel member identifier, the filter item list can be popped up only when the sub-channel identifier or the channel member identifier is matched, so that the user can select the filter item from the list. When the search word does not hit any sub-channel identifier or channel member identifier that belongs to the main channel, the search word is directly displayed in the search box, and based on the triggered submission of the search request, the search word is matched with the message content of the historical messages that belong to the main channel, and the matched historical messages are displayed in the historical message area of the message search interface. For example, the search word "good" is input in the search box, and the sub-channel identifier or the channel member identifier is not hit, so the filter item list is not popped up, and the terminal directly displays "good" in the search box. After the user clicks to confirm the search, the submission of the search request is triggered, and the historical messages matched with "good" are displayed in the historical message area.

[0087] It is mentioned above that the sub-channel identifier and the channel member identifier are inherent attributes of the message. In this application, in order to facilitate fast and accurate support for the terminal to search for historical messages, the server stores the following attributes for each message generated in the sub-channel:

[0088] Message key value (id), message content (content), message type (msType), main channel from which the message originates (channelId), sub-channel from which the message originates (roomId), message speaker (userId), message-mentioned channel members (targetUserIds), message status (status), message speaking date (createTs), and message-associated message (targetMessageId).

[0089] Among them, the message type of the message varies with the message content. For example, there are 8 message types, enumerated as follows: text message (msType is 1), picture (msType is 2), video (msType is 3), emoticon package (msType is 4), attitude feedback (msType is 5), message content containing "@" (msType is 6), message containing url (msType is 7), and file (msType is 8). Among them, the message content of the picture, video, emoticon package, attitude feedback, and file is the resource link (url) of the corresponding resource. The enumerated values of the message status (status) include 1, indicating available, and 0, indicating unavailable, such as withdrawn, deleted, expired, etc. The message-associated message (targetMessageId) is, for example, the message cited when replying to a message.

[0090] In one embodiment, the method further comprises: after the terminal obtains a speaking message in any one sub-channel belonging to the main channel, extracting the message content of the speaking message; generating a message type for the speaking message according to the message content; and storing the speaking message in the message database according to the message type.

[0091] The above-mentioned attributes of the message do not all need to be used in the message search scenario. Based on the attributes that need to be matched when searching for a message: message type, message content, message-mentioned user, message speaker, main channel from which the message originates, and sub-channel from which the message originates, the server can store each speaking message in the message database according to the above-mentioned required attributes. In this way, when the terminal sends a search request to the server, the server can query the message database according to the keywords in the submitted search request to quickly locate the search result.

[0092] In one embodiment, the terminal can listen to the input event in the search box, and when the input event is detected, the search word corresponding to the input event is obtained, the quick search request is triggered based on the search word, the main channel identifier of the main channel, and the user identifier of the currently logged-in user, and the quick search request is sent to the server. The server receives the quick search request, obtains the main channel identifier of the main channel where the currently logged-in user is located, performs preliminary screening from the message database according to the main channel identifier, determines whether there is a screening item that hits the search word, and if there is, returns the screening item to the terminal for display. In one embodiment, when it is determined that the search word is hit, the server can further determine the screening type of the screening item that hits the search word, and respond to the quick search request based on the hit screening item and the screening type of the screening item.

[0093] Specifically, referring to Figure 6 , the schematic diagram of the components constituting the message search interface in one embodiment. Referring to Figure 7 , the component definition of the message search interface of the application program is the message search panel IMHistoryPanel, which is divided into three areas from top to bottom, namely the header component Header, the message type classification component TabBar, and the message display component TabView. For the Header component, it includes a drop-down box component QuicksearchdropDown, a search box input component input, and a search confirmation component Buttons. The search box input component input is used to listen to the input event in the search box, and when the input event is detected, the quick search service QuickSearchServer is called to generate a quick search request. The structure of the quick search service QuickSearchServer includes: search word (content), main channel identifier (channelId), and current login user identifier (userId). The message type classification component TabBar includes multiple message type controls Button, and each control is transmitted to the message display component TabView area after being clicked, so that it displays different panel styles according to the message type. The message display component TabView is used to display the historical message area, which contains multiple message components tabItem, each element component is used to display each returned historical message, and the style of the element component tabItem can be changed according to the message type triggered by the message type classification component TabBar.

[0094] The server receives the quick search request and returns a response body QuickSearchServerRsp. The response body QuickSearchServerRsp includes a hit identification code and hit data. The hit identification code is 1, indicating that the search term is not hit, and the hit identification code is 0, indicating that the search term is hit. The hit data includes a filtering type and a data source (list). The filtering type has the following enumerated values: 0 indicates no hit, 1 indicates channel member identification (user), 2 indicates date of speech (date), and 3 indicates sub-channel identification (room). For filtering types 1 and 3, the data source format is consistent, and is denoted as QuickSearchRetUser and QuickSearchRetRoom, respectively.

[0095] When the hit identification code (code) is 1, data.type is 0, and data.list is empty, indicating that the currently input search term does not hit any filtering item. When the hit identification code (code) is 0, it indicates that the currently input search term hits a filtering item, and the terminal needs to display the filtering item list to display the search term hit filtering item. The hit filtering item can be a channel member identification or a sub-channel identification, which is distinguished by the filtering type data.type. For the filtering type of channel member identification, the response body QuickSearchRetUser includes: channel member identification (userid), channel member avatar (avatar), and channel member nickname (nick). For the filtering type of sub-channel identification, the response body QuickSearchRetRoom includes: sub-channel identification (roomId), sub-channel icon (icon), and sub-channel name (name).

[0096] Each input triggers a quick search request, which requests to call the QuickSearchServer interface of the server. If the code value in the response body QuickSearchServerRsp of the callback is 0, the terminal extracts the data.type field in the response body QuickSearchServerRsp to obtain the filtering type of the hit filtering item. When type is date, the local defined date filter DatePicker component is popped up. When type is user, the filtering item list including channel member identification is popped up. When type is room, the filtering item list including sub-channel identification is popped up, and the filtering items in the filtering item list are displayed according to the filtering type and data source (list). When user and room are hit at the same time, the popped up filtering item list can include sub-channel identification and channel member identification.

[0097] In response to the triggering operation on at least one filter item in the filter item list, at least one filter item is displayed in the search box, and historical messages matching the at least one filter item are displayed in the message search interface.

[0098] For the filter item list popped up at the search box, the user can select one or multiple filter items, and the terminal displays the selected at least one filter item in the search box.

[0099] In an embodiment, when the filter item is a sub-channel identifier belonging to the main channel, the filter item is displayed in the search box in a preset sub-channel style; when the filter item is a channel member identifier belonging to the main channel, the filter item is displayed in the search box in a preset channel member style.

[0100] Since the data returned by the server includes not only the filter items matching the search term, but also the filter types of the filter items, after the user selects at least one filter item, the terminal can display the selected at least one filter item in the search box, and display the filter items in the search box in a preset style according to the filter type of the selected filter item, which can help the user to distinguish the message attributes represented by the filter items.

[0101] In addition, when the user triggers confirmation search based on the selected at least one filter item, the terminal triggers a submission search request and sends it to the server, receives historical messages matching the selected filter items returned by the server and displays them. Specifically, the request body CommitSearchServerReq of the submission search request triggered by the terminal includes the selected filter items, the filter types of the filter items, the user identifier of the currently logged-in user, and the main channel identifier in which the user is currently located. The response body CommitSearchServerRsp of the submission search request returned by the server includes the hit identifier code code and the message data.

[0102] In an embodiment, when the selected at least one filter item includes two or more filter items, the server determines the filter types of the filter items from the submission search request, takes the union of the filter items of the same filter type, takes the intersection of the filter items of different filter types to obtain a filter combination, and then finds historical messages from the message database according to the filter combination. For example, the user selects four filter items, including sub-channel identifiers A and B, and channel member identifiers C and D, so the filter combination is (A∪B)∩(C∪D).

[0103] In an embodiment, if the input search term is input under the premise that the search box already contains a filter, the at least one filter selected by the user based on the search term will be newly displayed in the search box. The terminal newly displays at least one filter in the search box to form a filter combination with the already contained filter. When the user triggers the confirmation search, the terminal triggers a search request based on the filter combination formed by the already contained filter and the at least one currently selected filter, and displays the historical messages belonging to the main channel and related to the filter combination in the historical message area of the message search interface according to the historical messages returned by the server that match the filter combination.

[0104] In combination with Figure 8 the interface schematic diagram and Figure 9 the flowchart schematic diagram, the above is illustrated by way of example.

[0105] Suppose that the user identifier of the currently logged-in user is 3614, and the main channel identifier in which the currently logged-in user is located is 10086. There are two sub-channels belonging to the main channel, i.e., the sub-channel identifier is “King” and “Original God”. There are two channel members belonging to the main channel, i.e., the channel member identifier is “Wang Xiaofei”, “Curious”, and “Baby”. From the start of user input to the user clicking the confirmation search to trigger the submission of a search request, the specific process includes:

[0106] First, the user inputs “Wang”, and the terminal triggers a quick search request according to the search term “Wang”, the main channel identifier “10086”, and the currently logged-in user identifier “3614”. The server queries the filter related to “Wang” in the sub-channel identifier and the channel member identifier belonging to the main channel, including the sub-channel identifier “King” and the channel member identifier “Wang Xiaofei”. The server returns a response to the quick search request, including the hit identifier code code: 0 and two data data1: {type: 3, list: {King}}; data2: {type: 1, list: {Wang Xiaofei}}. After receiving the response, the terminal sets and displays the filter list, in which “King” is displayed in a preset sub-channel style, and “Wang Xiaofei” is displayed in a preset channel member style. If the user selects “King”, “King” is displayed in a preset sub-channel style in the search box.

[0107] Then, the user continues to input "good", and the terminal triggers a quick search request according to the search word "good", the main channel identifier "10086", and the current login user identifier "3614". The server queries the filter items related to "good" in the subchannel identifiers and the channel member identifiers belonging to the main channel, including the channel member identifier "curious", and returns a response to the quick search request, including the hit identifier code: 0 and the data: {type: 1; list: {curious}}. After the terminal receives the response, the terminal sets and displays the filter item list according to the filter type indicated by the data in the response, and "curious" is displayed in a preset channel member style. After the user selects "curious", "curious" is newly displayed in the preset channel member style in the search box.

[0108] At this time, there are two cases. If the user clicks to confirm the search, the terminal triggers a submission search request according to the filter items "king" and "curious", the search word null, the main channel identifier "10086", and the current login user identifier "3614". The server queries the historical messages that originate from the subchannel "king" and are related to the channel member "curious" in the historical messages belonging to the main channel. If no historical message is found, the returned response includes: the hit identifier code: 1; the message list data: null. If a historical message is found, the returned response body includes: the hit identifier code: 0; the message list data: [messages], and the terminal displays the searched historical message in the historical message area in a preset style.

[0109] If the user does not click to confirm the search, but continues to input "of", the terminal triggers a quick search request according to the search word "of", the main channel identifier "10086", and the current login user identifier "3614". The server queries the filter items related to "of" in the subchannel identifiers and the channel member identifiers belonging to the main channel, but fails to find any filter item. The server returns a response to the quick search request, including the hit identifier code: 1 and the data: {type: 0; list: null}. After the terminal receives the response, the terminal does not display the filter item list. If the user clicks to confirm the search, the terminal triggers a submission search request according to the filter items "king" and "curious", the search word "good", the main channel identifier "10086", and the current login user identifier "3614". The server queries the historical messages that originate from the subchannel "king", are related to the channel member "curious", and contain "of" in the message content in the historical messages belonging to the main channel. If no historical message is found, the returned response includes: the hit identifier code: 1; the message list data: null. If a historical message is found, the returned response body includes: the hit identifier code: 0; the message list data: [messages], and the terminal displays the searched historical message in the historical message area in a preset style.

[0110] The aforementioned message search method, when dealing with numerous independent sub-channels belonging to a main channel, allows users to access the main channel's message search interface and obtain the search terms entered in the search box. A list of filter options related to the search terms pops up in the search box. Since each filter option in this list is either a sub-channel identifier or a channel member identifier belonging to the main channel, selecting at least one filter option indicates that the filter option is closely related to the user's intended historical message search. The method then directly displays historical messages matching the selected filter option, providing the user with a small number of accurate search results. Furthermore, because the filter options are either sub-channel identifiers or channel member identifiers belonging to the main channel—both attributes of the message itself—the method allows for rapid retrieval of relevant historical messages from a large pool of historical messages based on the attributes represented by the filter option. This avoids the time-consuming process of directly iterating through each attribute of the message by the search term and matching them sequentially, thus improving the efficiency of message search.

[0111] This application embodiment also provides a message search method: after the message search interface is displayed on the terminal, historical messages generated in the target sub-channel of the currently logged-in user are automatically displayed by default. That is: in response to the fact that no search term is entered in the search box of the message search interface, the sub-channel identifier corresponding to the target sub-channel is displayed in the search box of the message search interface; and historical messages originating from the target sub-channel are displayed in the historical message area of ​​the message search interface.

[0112] Specifically, when entering the message search interface from the target sub-channel, the terminal monitors the input event in the search box. If no search term is detected, the terminal triggers a search request based on the main channel identifier (channelId), the target sub-channel identifier (roomId), and the currently logged-in user identifier (userId), and receives the historical messages generated in the target sub-channel returned by the server, and displays the received historical messages in the historical message area.

[0113] like Figure 9 As shown, refer to Figure 9 In section (a), the main channel is "XX Game Community," and its sub-channels include "Summer Season Preview," "Official News," "Highlights," "Team Recruitment," "Chat Room 1," "Chat Room 2," etc. The currently logged-in user has entered "Highlights," displaying the "Highlights" chat area. Clicking the historical message entry in the chat area displays... Figure 9 The message search interface is shown in section (b). (Refer to...) Figure 10 As shown in section (b), when the user does not enter a search term in the search box, "Highlights" is displayed in the search box by default, and historical messages originating from "Highlights" are displayed in the historical messages area.

[0114] In an embodiment, for the found historical messages matching at least one filter and / or keyword, further filtering by message type is supported. No matter the historical messages are the default displayed historical messages originated from the target sub-channel, or the historical messages found based on at least one filter selected according to the user input search word, or the historical messages found based on the combination of at least one filter and search word, further filtering by message type is supported.

[0115] Taking the default displayed historical messages originated from the target sub-channel as an example:

[0116] In an embodiment, in response to the triggering operation on the target message type control in the message search interface, in the historical message area of the message search interface, the historical messages originated from the target sub-channel and of the target message type indicated by the target message type control are displayed.

[0117] As mentioned above, the message types include text message, picture, video, emoticon package, attitude feedback, message content containing “@”, containing url and file. The message search interface is provided with message type controls corresponding to the 8 message types respectively, to realize further filtering of historical messages. The target message type control is the message type selected by the user. The terminal further filters the displayed historical messages matching the filter in the search box based on the target message type indicated by the target type control selected by the user.

[0118] For example, assuming that the only filter in the search box is the target sub-channel identifier, the target sub-channel identifier channleId=10086, and the current login user id is 3614, the query statement for filtering by message type control is as follows:

[0119] Find all messages:

[0120] select * from im_message where channleId=10086 and status=1

[0121] Find pictures / videos:

[0122] select * from im_message where channleId=10086 and type in (2,3) and status=1

[0123] Find emoticons:

[0124] select * from im_message where channleId=10086 and type=4 and status=1

[0125] Find the file:

[0126] select * from im_message where channleId=10086 and type=8 and status=1

[0127] Find what's related to me:

[0128] select * from im_message where channleId=10086 and type=6 andtargetUserIds like '%3614%' and status=1

[0129] Search link:

[0130] select * from im_message where channleId=10086 and type=7 and status=1

[0131] Search for attitude feedback:

[0132] select * from im_message where channleId=10086 and type=5 and status=1

[0133] In addition, as mentioned earlier, after the target message type control Button is clicked, it is passed to the message display component TabView area, so that the TabView can display further filtered historical messages according to the style of the target message type.

[0134] like Figure 11 The diagram illustrates switching between different message type controls in one embodiment. Switching to "All" displays all historical messages belonging to the main channel and matching the filters and / or keywords in the search box. Switching to "Images / Videos" displays image or video messages belonging to the main channel and matching the filters and / or keywords in the search box. Switching to "Related to Me" displays messages belonging to the main channel, matching the filters and / or keywords in the search box, and related to the currently logged-in user. Similarly, switching to "Emojis," "Files," "Links," and "Feedback" displays further filtered historical messages according to their respective styles.

[0135] In one embodiment, the method further includes: when the historical messages of the target message type belong to rich media messages, in response to the triggering operation of the message view switching control in the message search interface, displaying the historical messages of the target message type in a grid view or a list view in the historical message area of ​​the message search interface.

[0136] Specifically, for rich media messages, such as image messages, video messages, file messages, and links, both grid view and list view can be supported for display. Based on the trigger operation of the message view switching control, the terminal displays historical messages in either grid view or list view using the message display component TabView.

[0137] like Figure 11 The image shown is a schematic diagram illustrating the display of image messages in different views in one embodiment. (Refer to...) Figure 12 For image messages, users can select different views using the message view switching control 1102.

[0138] This application also provides a message search method based directly on preset filter controls, eliminating the need for users to input search terms. Of course, this method can be combined with the previously described message search method based on search terms to enable message searching under various filter conditions, improving the efficiency and accuracy of message location.

[0139] In one embodiment, the method further includes: in response to the fact that no search term is entered in the search box of the message search interface, a preset filter control pops up at the search box, the preset filter control including a sub-channel filter control, a channel member filter control and a speech date filter control.

[0140] Specifically, when the terminal detects that no search term has been entered in the search box, it can pop up a preset filter control in the search box. The preset filter control includes a sub-channel filter control, a channel member filter control, and a posting date filter control. The sub-channel filter control, when triggered, retrieves all sub-channel identifiers belonging to the current main channel for the user to select as a filter. The channel member filter control, when triggered, retrieves all channel member identifiers belonging to the current main channel for the user to select as a filter. The posting date filter control displays a posting date filter according to a preset style, allowing the user to select a date as a filter.

[0141] In one embodiment, in response to the absence of a search term in the search box of the message search interface, a preset filter control is displayed at the search box, including: in response to the absence of filter items and absence of a search term in the search box of the message search interface, the preset filter control is displayed at the search box; or, in response to the presence of filter items in the search box of the message search interface and absence of a search term after the included filter items, the preset filter control is displayed at the search box.

[0142] like Figure 12 The image shown is a schematic diagram of an interface that displays a preset filter control in one embodiment. (Refer to...) Figure 12 In part (a), if no search term is entered, this can mean that no search term was entered when the search box does not contain any filter options, i.e., the search box is empty. In this case, a preset filter control will pop up. The preset filter controls include "Search by Sub-channel," "Search by Channel Member," and "Search by Date," which are sub-channel filter controls, channel member filter controls, and posting date filter controls, respectively. (See reference...) Figure 13 In part (b), if no search term is entered, it can also mean that no further search term is entered after the existing filter items in the search box. In this case, a preset filter control can pop up. It should be noted that the existing filter items can be selected from the filter list that pops up through the preset filter control, or it can be selected from the filter list that pops up based on the search term.

[0143] In one embodiment, the message search method based on preset filter controls can be combined with the message search method based on search terms provided above. That is, if no filter item is matched after entering a search term and the filter item list fails to pop up (i.e., QuickSearchServerRsp.code == 0), the terminal can pop up the preset filter control in the search box; or, if the search box already contains the filter item selected based on the search term and no further search term is entered after the already contained filter item, the terminal can pop up the preset filter control in the search box.

[0144] In one embodiment, the method further includes: in response to entering a search term in the search box of the message search interface, the terminal cancels the display of the preset filter control that pops up in the search box; or, in response to a filter item list popping up after entering a search term and matching the filter item, the terminal cancels the display of the preset filter control that pops up in the search box; or, in response to canceling the search operation, the terminal cancels the display of the preset filter control that pops up in the search box.

[0145] In one embodiment, after the terminal pops up preset filtering controls at the search box, the triggering event of the preset filtering controls is monitored in real time. After the triggering operation of the preset filtering controls is monitored, the filtering type indicated by the selected preset filtering controls is determined. Based on the filtering type (type), the main channel identifier (channelld), and the current login user identifier (userId), a quick search request QuickSearchServer is submitted. After the server receives the quick search request, the filtering items corresponding to the filtering type and belonging to the main channel are searched according to the main channel identifier, and a response body QuickSearchServerRsp is returned. The terminal extracts the filtering items in the response body and displays the drop-down box in a style corresponding to the filtering type. When the user selects a filtering item from the drop-down box and confirms the search, the terminal triggers a search request CommitSearchServer based on the selected filtering item and the type of the filtering item, and after receiving the response body CommitSearchServerRsp returned by the server, the historical messages are displayed in a preset style.

[0146] In one embodiment, the method further comprises: in response to the triggering operation of the sub-channel filtering controls, canceling the display of the preset filtering controls popped up at the search box, and popping up a sub-channel list constituted by the sub-channel identifiers belonging to the main channel at the search box; in response to the triggering operation of at least one sub-channel identifier in the sub-channel list, displaying the at least one sub-channel identifier in the search box of the message search interface; and displaying the historical messages belonging to the main channel and originating from the at least one sub-channel identifier in the historical message area of the message search interface.

[0147] In the embodiment, when the user selects “find by sub-channel”, the terminal determines that the filtering type (type) is the sub-channel identifier (room), submits a quick search request based on the main channel identifier and the filtering type being the sub-channel, obtains all sub-channel identifiers belonging to the main channel, and displays the sub-channel list in a preset sub-channel style. After the user selects one or more sub-channel identifiers from the sub-channel list, the terminal displays the selected sub-channel identifiers in the search box. If the user directly triggers the confirmation search at this time, the terminal triggers a search request based on the selected sub-channel identifier. The server queries the historical messages originating from the selected sub-channel among the historical messages belonging to the main channel and returns them. The terminal displays the searched historical messages in the historical message area in a preset style. After the user selects at least one sub-channel identifier, if no search term is input, the preset filtering controls can be popped up again, and the above operation is repeated. After the user selects at least one sub-channel identifier, if the user continues to input a search term, the filtering item is selected in combination with the above method based on the search term. Finally, a search request is triggered based on all the filtering items in the search box and the search term.

[0148] AsFigure 13 Fig. 4 shows an interface diagram of pop-up sub-channel list in an embodiment. Refer to Fig. 1 and Fig. 4, when the user selects the "find by sub-channel" in the preset filter control, the three preset filter controls are cancelled and a sub-channel list is popped up, which is composed of all sub-channel identifiers belonging to the current main channel. Figure 14

[0149] In an embodiment, the method further comprises: in response to the triggering operation on the channel member filter control, cancelling the preset filter control popped up at the search box and popping up a channel member list composed of channel member identifiers belonging to the main channel at the search box; in response to the triggering operation on at least one channel member identifier in the channel member list, displaying the at least one channel member identifier in the search box of the message search interface; displaying the historical messages related to the at least one channel member identifier in the historical message area of the message search interface.

[0150] In the embodiment, when the user selects the "find by channel member", the terminal determines the filter type (type) as the channel member identifier (user), submits a quick search request based on the main channel identifier and the filter type as the channel member, obtains all channel member identifiers belonging to the main channel, and displays the channel member list in a preset channel member style. After the user selects one or more channel member identifiers from the channel member list, the terminal displays the selected channel member identifiers in the search box. If the user directly triggers the confirmation search at this time, the terminal triggers the submission of a search request based on the selected channel member identifiers, the server queries the historical messages related to the selected channel member identifiers in the historical messages belonging to the main channel and returns, and the terminal displays the searched historical messages in the historical message area in a preset style. After the user selects at least one channel member identifier, if no search term is input, the preset filter control can be popped up again to repeat the above operation. After the user selects at least one channel member identifier, if the user continues to input a search term, the selection of the filter item is continued in combination with the above search term-based mode, and finally the submission of a search request is triggered based on all filter items and the search term in the search box.

[0151] Fig. 5 shows an interface diagram of pop-up channel member list in an embodiment. Refer to Fig. 1 and Fig. 5, when the user selects the "find by channel member" in the preset filter control, the three preset filter controls are cancelled and a channel member list is popped up, which is composed of all channel member identifiers belonging to the current main channel. Figure 14 Figure 15

[0152] ​​​In one embodiment, the method further includes: in response to a triggering operation on the speech date filter control, canceling the display of the preset filter control that pops up in the search box, and popping up a speech date filter in the search box; in response to a triggering operation on at least one speech date in the speech date filter, displaying at least one speech date in the search box of the message search interface; and displaying historical messages belonging to the main channel and related to at least one speech date in the historical message area of ​​the message search interface.

[0153] In this embodiment, when the user selects "Search by Date," the terminal determines the filter type as "speech date" and directly pops up the speech date filter. Optionally, the terminal can also submit a quick search request based on the main channel identifier and the filter type as speech date to obtain the speech dates of all historical messages belonging to that main channel, and mark the queried speech dates in the speech date filter to provide accurate speech dates for the user to select. After the user selects one or more speech dates from the speech date filter, the terminal displays the selected speech dates in the search box. If the user directly triggers a search confirmation at this time, the terminal triggers a search request based on the selected speech dates. The server queries the historical messages belonging to that main channel for speech dates with the speech dates selected by the user and returns them. The terminal displays the searched historical messages in the historical message area according to a preset style. After the user selects at least one speech date, if no search term is entered, the preset filter control can pop up again, and the above operation can be repeated. After the user selects at least one speech date, if the user continues to enter search terms, the terminal continues to select filter items based on the search terms described above, and finally triggers a search request based on all filter items in the search box and the search terms.

[0154] like Figure 15 The image shown is a schematic diagram of the interface for displaying a message date filter in one embodiment. (Refer to...) Figure 16 The preset filter controls that pop up in the search box include "Search by sub-channel", "Search by channel member", and "Search by date". If the user selects "Search by date", these three preset filter controls will be canceled and a post date filter will pop up for the user to select.

[0155] In an embodiment, the method further comprises: in response to a triggering operation on a first filtering control in the preset filtering control, canceling display of the preset filtering control popped up at the search box, and popping up a first filtering item list belonging to the main channel and related to a filtering type indicated by the first filtering control at the search box; in response to a triggering operation on at least one first target filtering item in the first filtering item list, displaying the at least one first target filtering item in the search box, and popping up the preset filtering control at the search box; in response to a triggering operation on a second filtering control in the preset filtering control, canceling display of the preset filtering control popped up at the search box, and popping up a second filtering item list belonging to the main channel and related to a filtering type indicated by the second filtering control at the search box; in response to a triggering operation on at least one second target filtering item in the second filtering item list, newly displaying the at least one second target filtering item in the search box to form a filtering item combination with the first target filtering item; displaying, in a historical message area of the message search interface, historical messages belonging to the main channel and related to the filtering item combination formed by the first target filtering item and the second target filtering item; wherein the first filtering control and the second filtering control are any one of a sub-channel filtering control, a channel member filtering control, and a speaking date filtering control.

[0156] The embodiment provides an interaction process of popping up the preset filtering control twice in succession. After each time of popping up the preset filtering control, the user can continue to select filtering items and form a filtering item combination with the filtering items already contained in the search box, and can also form a filtering item combination with a search word input by the user, to jointly trigger a submission of a search request. The terminal determines filtering conditions according to the filtering types based on all the filtering items and the search word, and returns response data. For example, the user selects four filtering items, including sub-channel identifiers A and B, channel member identifiers C and D, and a search word "de" that fails to hit a filtering item. The filtering item combination is (A∪B)∩(C∪D)∩"de", that is, the server filters, from all historical messages belonging to the main channel, historical messages that originate from the sub-channel A and the sub-channel B, are related to the channel member C and the channel member D, and contain "de" in the message content.

[0157] In the embodiment, a message search mode based on a filter is also provided. The message search mode based on the filter can be combined with the message search mode based on the search word and the message search mode based on the preset filtering control to obtain a filtering item combination formed by multiple filtering items, to jointly trigger the submission of the search request.

[0158] In one embodiment, the method further comprises: in response to a triggering operation on the main channel filter in the message search interface, displaying a main channel list formed by main channel identifiers associated with the current user; in response to a triggering operation on a target main channel in the main channel list, displaying a sub-channel list formed by sub-channel identifiers belonging to the target main channel in the sub-channel filter in the message search interface; and in response to a triggering operation on at least one sub-channel identifier in the sub-channel list, displaying the at least one sub-channel identifier as a filter in the search box.

[0159] Exemplarily, the main channel filter, the channel member filter, the sub-channel filter and the speech date filter can also be provided in the message search interface. In addition, these filters can be folded or hidden according to the triggering operation of the user. The main channel filter is used to determine the historical messages belonging to which main channel. The terminal monitors the triggering event on the main channel filter, and when the triggering event on the main channel filter is monitored, a quick search request is submitted according to the current login user identifier, the server returns the main channel identifiers corresponding to all the main channels followed by the current login user based on the quick search request, and the terminal pops up the main channel list at the main channel filter in a preset main channel style. When the user selects a target main channel from the main channel list, the target main channel is displayed in the main channel filter.

[0160] As shown in Figure 16 , it is an interface schematic diagram for selecting a main channel through the main channel filter in one embodiment. Referring to Figure 17 , the main channel filter is displayed on the right side of the message search interface, and the currently selected main channel is “main channel 1”. When the user clicks the main channel filter, a main channel list formed by all the main channels followed by the user can be popped up for the user to select.

[0161] In this embodiment, after the user selects a main channel, a quick search request is automatically submitted according to the target main channel identifier, the server returns all the sub-channel identifiers belonging to the target main channel based on the quick search request, and the terminal pops up a sub-channel list at the sub-channel filter. When the user selects at least one sub-channel identifier from the sub-channel list, the selected at least one sub-channel identifier is displayed in the sub-channel filter and the search box at the same time.

[0162] As shown in Figure 17 , it is an interface schematic diagram for selecting a sub-channel through the sub-channel filter in one embodiment. Referring to Figure 17 , the main channel filter is displayed on the right side of the message search interface, and the currently selected main channel is “main channel 1”. A sub-channel list formed by all the sub-channels belonging to “main channel 1” can be popped up for the user to select. The user can select one or more sub-channels. As shown in Figure 18As shown, when a user selects "Sub-channel 1" and "Sub-channel 2", "Sub-channel 1" and "Sub-channel 2" will be displayed in the search box to form a filter combination with other filter options in the search box. Furthermore, the selected "Sub-channel 1" and "Sub-channel 2" can be marked or displayed in the sub-channel filter.

[0163] In one embodiment, the method further includes: displaying a list of channel members formed by channel member identifiers belonging to the target main channel in the channel member filter of the message search interface; and, in response to a trigger operation on at least one channel member identifier in the channel member list, adding at least one channel member identifier to the search box to form a filter combination with at least one sub-channel identifier.

[0164] In this embodiment, after the user selects the main channel and sub-channel identifiers, the system monitors for triggering operations on the channel member filter and the speaking date filter. When a triggering event is detected on the channel member filter, a quick search request is automatically submitted based on the target main channel identifier. The server uses this quick search request to find all channel member identifiers belonging to the target main channel and returns them. The terminal then displays a list of channel members in the channel member filter. When the user selects at least one channel member identifier from the list, the selected identifier is displayed in the channel member filter. Simultaneously, the selected identifier is added to the search box to form a filter combination with the already selected sub-channel identifier.

[0165] like Figure 18 The image shown is a schematic diagram of an interface for selecting channel members using a channel member filter in one embodiment. (Refer to...) Figure 19 The user selects "Main Channel 1" as the main channel through the main channel filter. The channel member filter then displays a list of all channel members belonging to "Main Channel 1". When the user selects "Channel Member 1" and "Channel Member 2", the terminal displays "Channel Member 1" and "Channel Member 2" in the search box, allowing them to be combined with other filter options in the search box. Furthermore, the selected "Channel Member 1" and "Channel Member 2" can be marked or displayed within the channel member filter.

[0166] In one embodiment, the method further includes: in response to a triggered operation on at least one speech date in the speech date filter of the message search interface, adding at least one speech date to the search box to form a filter combination with at least one sub-channel identifier.

[0167] In this embodiment, after the user selects the main channel and the sub-channel identifier, the triggering operation of the channel member filter and the speaking date filter is monitored. When the triggering event of the speaking date filter is monitored, the speaking date filter is automatically displayed. When the user selects at least one speaking date from the speaking date filter, the selected at least one speaking date is displayed in the speaking date filter, and the selected at least one speaking date is newly displayed in the search box to form a filter item combination with the selected at least one sub-channel identifier and / or at least one channel member identifier.

[0168] As shown in Figure 19 , it is an interface schematic diagram for selecting a speaking date through a speaking date filter in an embodiment. Referring to Figure 20 , the main channel selected by the user through the main channel filter is "main channel 1", and the user selects "2021-10-05" through the speaking date filter. The terminal displays "2021-10-05" in the search box to form a filter item combination with other filter items in the search box.

[0169] In an embodiment, the method further comprises: after displaying the historical messages, acquiring real-time speaking messages in each sub-channel belonging to the main channel in real time; and when the real-time speaking messages match the at least one filter item, updating the historical messages matching the at least one filter item displayed in the message search interface in real time according to the real-time speaking messages.

[0170] Exemplarily, after returning the historical messages matching the at least one filter item to the terminal, the server also receives real-time speaking messages sent by each terminal in real time, and stores them in the message database according to the message structure. That is, the message database is constantly updated. When the terminal does not trigger a search request based on new filter items, the server can continuously match the at least one filter item with the updated messages in the message database, obtain updated search results, and return them to the terminal, so that the terminal refreshes the historical messages. Since this way has a high real-time requirement for searching, and considering that the administrator user needs to process the historical messages in batches and at one time when managing the messages, in order to reduce the large concurrent pressure on the server side, this real-time refreshing method can be only open to administrator users and not open to ordinary users.

[0171] In a specific application scenario, the message search method can be applied to an instant messaging application. A user can enter a main channel interface from the instant messaging application. The main channel interface displays icons corresponding to each main channel that the user follows. The user can select an icon to enter a main channel. After entering a main channel, a sub-channel list of all sub-channels belonging to the main channel is displayed. It should be noted that different users entering the same main channel should display consistent sub-channels belonging to the main channel. The user can enter or leave any sub-channel in the sub-channel list at any time to speak in the sub-channel and exchange with other users in the same sub-channel in an immersive atmosphere.

[0172] In addition, a history message entry is displayed in the speaking area of each sub-channel. The user can enter the message search interface through the history message entry. For message search in the message search interface, the most specific embodiments are given in combination with multiple message search methods.

[0173] The user inputs a search term "A" in the search box of the message search interface. A filter item list composed of sub-channel identifiers or channel member identifiers related to "A" is popped up at the search box. After the user selects a sub-channel identifier "AA123" from the filter item list, "AA123" is displayed in the search box. At this time, preset filtering controls "find by sub-channel", "find by channel member", and "find by date" are popped up. The user does not click the preset filtering controls or confirm the search. The user continues to input a search term "Wang". The preset filtering controls displayed at the search box are cancelled. A filter item list composed of sub-channel identifiers or channel member identifiers related to "Wang" is popped up at the search box. After the user selects a channel member identifier "Wang Xiaojun" from the filter item list, "Wang Xiaojun" is added to the search box. At this time, the preset filtering controls are popped up. The user does not input a search term or click the confirm search. The user selects "find by date" in the preset filtering controls. A speaking date filter is popped up. The speaking date "2021-10-05" is selected. "2021-10-05" is added to the search box. At this time, the preset filtering controls are popped up. The user does not select the preset filtering controls or click the confirm search. The user inputs a search term "team" again. The filter item list composed of sub-channel identifiers or channel member identifiers related to "team" cannot be popped up at the search box. After the user clicks the confirm search, the terminal triggers a search request based on the sub-channel identifier "AA123", the channel member identifier "Wang Xiaojun", the speaking date "2021-10-05", and the message content "team" to request the server to return corresponding history messages.

[0174] It should be understood that although the steps in the flowcharts involved in the above embodiments are shown in sequence according to the arrows, the steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, the execution of the steps is not strictly limited in sequence, and the steps can be executed in other sequences. Moreover, at least some of the steps in the flowcharts involved in the above embodiments can include multiple steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution sequence of the steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least part of other steps or steps or stages in other steps.

[0175] Based on the same inventive concept, the embodiments of the present application also provide a message search device for implementing the above-mentioned message search method. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme described in the above method, so the specific limitations in one or more message search device embodiments provided below can refer to the limitations of the message search method in the above text, which will not be repeated here.

[0176] In one embodiment, as shown in Figure 21 A message search device 2000 is provided, comprising: a search interface display module 2002, a search box display module 2004, and a message display module 2006, wherein:

[0177] The search interface display module 2002 is configured to display a message search interface of a target account in a main channel. The main channel includes a plurality of independent sub-channels, and the speech topics of the plurality of independent sub-channels are different and associated with the main channel.

[0178] The search box display module 2004 is configured to, in response to inputting a search term in a search box of the message search interface, pop up a filter item list related to the search term at the search box. The filter items in the filter item list are one of sub-channel identifiers belonging to the main channel and channel member identifiers belonging to the main channel.

[0179] The message display module 2006 is configured to, in response to a triggering operation on at least one filter item in the filter item list, display the at least one filter item in the search box, and display historical messages matching the at least one filter item in the message search interface.

[0180] In one embodiment, as shown in Figure 21As shown, the message search apparatus 2000 further includes: a main channel interface display module 2008, configured to display a main channel interface of a main channel in which the target account is located; display a speech area corresponding to a sub-channel belonging to the main channel in the main channel interface; the sub-channel is any one of a plurality of mutually independent sub-channels belonging to the main channel; in response to a triggering operation on a historical message portal in the speech area, display a message search interface of the main channel.

[0181] In one embodiment, the main channel interface display module 2008 is further configured to display speech portals respectively corresponding to sub-channels belonging to the main channel in the main channel interface; in response to a triggering operation on a speech portal corresponding to a target sub-channel, instantaneously join the target sub-channel, and display a speech area corresponding to the target sub-channel in the main channel interface.

[0182] In one embodiment, the sub-channel is a first sub-channel, and the message search apparatus further includes a sub-channel switching module configured to instantaneously exit the first sub-channel and instantaneously join a second sub-channel in response to a triggering operation on a speech portal corresponding to the second sub-channel belonging to the main channel; display a speech area corresponding to the second sub-channel in the main channel interface.

[0183] In one embodiment, the message display module 2006 is further configured to, in response to no search term being input in a search box of the message search interface, display a sub-channel identifier corresponding to the target sub-channel in the search box of the message search interface; and display historical messages originating from the target sub-channel in a historical message area of the message search interface.

[0184] In one embodiment, as shown in Figure 21 the message search apparatus further includes a message type selection module 2010 configured to, in response to a triggering operation on a target message type control in the message search interface, display historical messages originating from the target sub-channel and having a target message type indicated by the target message type control in a historical message area of the message search interface.

[0185] In one embodiment, as shown in Figure 22 the message search apparatus further includes a message view selection module 2012 configured to, when the historical messages of the target message type are rich media messages, display the historical messages of the target message type in a grid view or a list view in a historical message area of the message search interface in response to a triggering operation on a message view switching control in the message search interface.

[0186] In one embodiment, the search box display module 2004 is configured to, in response to no search term being input in a search box of the message search interface, pop up a preset filtering control at the search box, and the preset filtering control includes a sub-channel filtering control, a channel member filtering control, and a speech date filtering control.

[0187] In an embodiment, the search box display module 2004 is further configured to, in response to that no filter option is included in the search box of the message search interface and no search term is input, pop up the preset filter control at the search box; or, in response to that a filter option is included in the search box of the message search interface and no search term is input after the included filter option, pop up the preset filter control at the search box.

[0188] In an embodiment, the search box display module 2004 is further configured to, in response to that a search term is input in the search box of the message search interface or a search operation is cancelled, cancel the display of the preset filter control popped up at the search box.

[0189] In an embodiment, the search box display module 2004 is further configured to, when there is a sub-channel identifier belonging to the main channel and related to the search term, display a sub-channel list composed of the sub-channel identifiers at the search box, and each sub-channel identifier in the sub-channel list is displayed in a preset sub-channel style; when there is a channel member identifier belonging to the main channel and related to the search term, display a channel member list composed of the channel member identifiers at the search box, and each channel member identifier in the channel member list is displayed in a preset channel member style.

[0190] In an embodiment, the search box display module 2004 is further configured to, when there is no sub-channel identifier or channel member identifier belonging to the main channel and related to the search term, directly display the search term in the search box of the message search interface; and display, in a historical message area of the message search interface, a historical message belonging to the main channel and related to the search term.

[0191] In an embodiment, the search box display module 2004 is further configured to, when the filter option is a sub-channel identifier belonging to the main channel, display the filter option in the search box in a preset sub-channel style; and when the filter option is a channel member identifier belonging to the main channel, display the filter option in the search box in a preset channel member style.

[0192] In an embodiment, when the search box already includes a filter option, the search box display module 2004 is further configured to newly display at least one filter option in the search box to form a filter option combination with the already included filter option; and display, in a historical message area of the message search interface, a historical message belonging to the main channel and related to the filter option combination.

[0193] In an embodiment, the search box display module 2004 is further configured to, in response to a triggering operation on the sub-channel filtering control, cancel display of the preset filtering control popped up at the search box, and pop up a sub-channel list composed of sub-channel identifiers belonging to the main channel at the search box; in response to a triggering operation on at least one sub-channel identifier in the sub-channel list, display the at least one sub-channel identifier in the search box of the message search interface; and the message display module 2006 is further configured to display, in the historical message area of the message search interface, historical messages belonging to the main channel and originating from the at least one sub-channel identifier.

[0194] In an embodiment, the search box display module 2004 is further configured to, in response to a triggering operation on the channel member filtering control, cancel display of the preset filtering control popped up at the search box, and pop up a channel member list composed of channel member identifiers belonging to the main channel at the search box; in response to a triggering operation on at least one channel member identifier in the channel member list, display the at least one channel member identifier in the search box of the message search interface; and the message display module 2006 is further configured to display, in the historical message area of the message search interface, historical messages belonging to the main channel and related to the at least one channel member identifier.

[0195] In an embodiment, the search box display module 2004 is further configured to, in response to a triggering operation on the speech date filtering control, cancel display of the preset filtering control popped up at the search box, and pop up a speech date filter at the search box; in response to a triggering operation on at least one speech date in the speech date filter, display the at least one speech date in the search box of the message search interface; and the message display module 2006 is further configured to display, in the historical message area of the message search interface, historical messages belonging to the main channel and related to the at least one speech date.

[0196] In an embodiment, the search box display module 2004 is further configured to, in response to a triggering operation on a first filter control in the preset filter control, cancel display of the preset filter control popped up at the search box, and pop up a first filter item list belonging to the main channel and related to a filter type indicated by the first filter control at the search box; in response to a triggering operation on at least one first target filter item in the first filter item list, display the at least one first target filter item in the search box, and pop up the preset filter control at the search box; in response to a triggering operation on the first filter control in the preset filter control, cancel display of the preset filter control popped up at the search box, and pop up a first filter item list belonging to the main channel and related to a filter type indicated by the first filter control at the search box; in response to a triggering operation on at least one first target filter item in the first filter item list, display the at least one first target filter item in the search box, and pop up the preset filter control at the search box; and the message display module 2006 is further configured to display, in a historical message area of the message search interface, a historical message belonging to the main channel and related to a filter item combination formed by the first target filter item and a second target filter item. The first filter control and the second filter control are any one of a sub-channel filter control, a channel member filter control, and a speaking date filter control.

[0197] In an embodiment, the message search device further comprises a filter display module configured to, in response to a triggering operation on a main channel filter in the message search interface, display a main channel list formed by main channel identifiers associated with a current user; and in response to a triggering operation on a target main channel in the main channel list, display, in a sub-channel filter in the message search interface, a sub-channel list formed by sub-channel identifiers belonging to the target main channel. The search box display module 2004 is further configured to, in response to a triggering operation on at least one sub-channel identifier in the sub-channel list, display the at least one sub-channel identifier as a filter item in the search box.

[0198] In an embodiment, the filter display module is further configured to display, in a channel member filter in the message search interface, a channel member list formed by channel member identifiers belonging to the target main channel. The search box display module 2004 is further configured to, in response to a triggering operation on at least one channel member identifier in the channel member list, newly display the at least one channel member identifier in the search box to form a filter item combination with the at least one sub-channel identifier.

[0199] In an embodiment, the search box display module 2004 is further configured to, in response to a triggering operation on at least one speaking date in a speaking date filter in the message search interface, newly display the at least one speaking date in the search box to form a filter item combination with the at least one sub-channel identifier.

[0200] In an embodiment, the message searching apparatus 2000 further comprises a message storage module, configured to acquire a speech message in any one of the sub-channels belonging to the main channel; extract a message content of the speech message; generate a message type for the speech message according to the message content; and store the speech message in the message database according to the message type.

[0201] In an embodiment, the message searching apparatus 2000 further comprises a real-time refreshing module, configured to acquire real-time speech messages in each of the sub-channels belonging to the main channel in real time after the historical messages are displayed; and update the historical messages matching the at least one filtering item in the message searching interface in real time according to the real-time speech messages when the real-time speech messages match the at least one filtering item.

[0202] In the message searching apparatus 2000, when the number of the sub-channels belonging to the main channel is large, after entering the message searching interface of the main channel and obtaining the search term input in the search box, the filtering item list related to the search term is popped up at the search box, and each filtering item in the filtering item list is the sub-channel identifier belonging to the main channel or the channel member identifier belonging to the main channel. When at least one filtering item is selected from the filtering item list, it indicates that the filtering item is closely related to the historical messages intended to be searched by the user, and the historical messages matching the at least one filtering item are directly displayed, thereby providing the user with a small amount of accurate search results. Moreover, since the filtering item is the sub-channel identifier belonging to the main channel or the channel member identifier belonging to the main channel, both of which are attributes of the message itself, the relevant historical messages can be quickly searched from a large number of historical messages according to the attributes represented by the filtering item, thereby avoiding the time consumption caused by directly traversing each attribute of the message and sequentially matching, and improving the efficiency of message searching.

[0203] Each module in the message searching apparatus 2000 can be realized by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in a hardware form, or stored in a memory in a computer device in a software form, so as to be called and executed by a processor to perform the operations corresponding to each module.

[0204] In an embodiment, a computer device is provided, which can be a terminal, and an internal structure diagram of the computer device can be as shown in Figure 22As shown in the figure. The computer device includes a processor, a memory, a communication interface, a display screen and an input device connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium to run. The communication interface of the computer device is used for wired or wireless communication with external terminals. Wireless communication can be achieved through WIFI, mobile cellular network, NFC (Near Field Communication) or other technologies. The computer program is executed by the processor to implement a message search method. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen. The input device of the computer device can be a touch layer overlaid on the display screen, or a key, trackball or touchpad provided on the shell of the computer device, or an external keyboard, touchpad or mouse, etc.

[0205] Those skilled in the art can understand that, ​ The structure shown in the figure is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computer device to which the scheme of the present application is applied. The specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different component arrangement.

[0206] In one embodiment, a computer device is provided, including a memory and a processor, the memory stores a computer program, and the processor executes the computer program to implement the message search method in any of the above embodiments.

[0207] In one embodiment, a computer readable storage medium is provided, which stores a computer program, and the computer program is executed by a processor to implement the message search method in any of the above embodiments.

[0208] In one embodiment, a computer program product is provided, including a computer program, and the computer program is executed by a processor to implement the message search method in any of the above embodiments.

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

[0210] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer readable storage medium, and when the computer program is executed, the processes of the above-mentioned embodiments of the methods can be included. Any reference to memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical storage, high-density embedded non-volatile memory, resistive memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration but not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The database involved in the embodiments provided in the present application can include at least one of a relational database and a non-relational database. The non-relational database can include a distributed database based on a block chain, etc., without being limited thereto. The processor involved in the embodiments provided in the present application can be a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., without being limited thereto.

[0211] Any combination of the technical features of the above embodiments can be made. In order to make the description simple, all possible combinations of the technical features in the above embodiments are not described, however, as long as the combination of the technical features does not exist, it should be considered as the scope of the present application.

[0212] The above embodiments only express several implementation manners of the present application, and the description is more specific and detailed, but it should not be understood as a limitation on the scope of the patent of the present application. It should be pointed out that for ordinary skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are within the scope of protection of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.

Claims

1. A message search method characterized by comprising: The method comprises: displaying a message search interface of a main channel where a target account is located; the main channel comprises a plurality of independent sub-channels, and the sub-channels have different topics and are associated with the main channel; in response to inputting a search keyword in a search box of the message search interface, a filter list related to the search keyword is popped up at the search box; when there is a sub-channel identifier of a sub-channel belonging to the main channel and related to the search keyword, the filter list is a sub-channel list composed of the sub-channel identifier of the sub-channel belonging to the main channel and related to the search keyword, and each sub-channel identifier in the sub-channel list is displayed in a preset sub-channel style; when there is a channel member identifier of a channel member belonging to the main channel and related to the search keyword, the filter list is a channel member list composed of the channel member identifier of the channel member belonging to the main channel and related to the search keyword, and each channel member identifier in the channel member list is displayed in a preset channel member style; when the search box already contains a filter, in response to a triggering operation on at least one filter in the filter list, the at least one filter is newly displayed in the search box to form a filter combination with the filter already contained, wherein when the triggered filter is a sub-channel identifier belonging to the main channel, the filter is displayed in the search box in a preset sub-channel style; when the triggered filter is a channel member identifier belonging to the main channel, the filter is displayed in the search box in a preset channel member style; and in a historical message area of the message search interface, historical messages related to the filter combination and belonging to the main channel are displayed.

2. The method of claim 1, wherein, The method further comprises: displaying a main channel interface of a main channel where a target account is located; in the main channel interface, a speech area corresponding to a sub-channel belonging to the main channel is displayed; the sub-channel is any one of a plurality of independent sub-channels belonging to the main channel; in response to a triggering operation on a historical message entry in the speech area, a message search interface of the main channel is displayed.

3. The method of claim 2, wherein, The display of the speech area corresponding to the sub-channel belonging to the main channel comprises: in the main channel interface, speech entries corresponding to the sub-channels belonging to the main channel are displayed respectively; in response to a triggering operation on a speech entry corresponding to a target sub-channel, the target sub-channel is joined immediately, and a speech area corresponding to the target sub-channel is displayed in the main channel interface.

4. The method of claim 2, wherein, The sub-channel is a first sub-channel, and the method further comprises: in response to a triggering operation on a speech entry corresponding to a second sub-channel belonging to the main channel, the first sub-channel is exited immediately and the second sub-channel is joined immediately; a speech area corresponding to the second sub-channel is displayed in the main channel interface.

5. The method of claim 3, wherein, The method further comprises: In response to no search term being input in the search box of the message search interface, a sub-channel identifier corresponding to the target sub-channel is displayed in the search box of the message search interface, and a historical message originating from the target sub-channel is displayed in the historical message area of the message search interface.

6. The method of claim 5, wherein, The method further includes: In response to a triggering operation on a target message type control in the message search interface, a historical message originating from the target sub-channel and having a target message type indicated by the target message type control is displayed in the historical message area of the message search interface.

7. The method of claim 6, wherein, The method further includes: When the historical message of the target message type is a rich media message, in response to a triggering operation on a message view switching control in the message search interface, the historical message of the target message type is displayed in a grid view or a list view in the historical message area of the message search interface.

8. The method of claim 1, wherein, The method further includes: In response to no search term being input in the search box of the message search interface, a preset filtering control is popped up at the search box, and the preset filtering control includes a sub-channel filtering control, a channel member filtering control, and a speaking date filtering control.

9. The method of claim 8, wherein, The method further includes: In response to no filtering item being included in the search box of the message search interface and no search term being input, the preset filtering control is popped up at the search box; or In response to a filtering item being included in the search box of the message search interface and no search term being input after the included filtering item, the preset filtering control is popped up at the search box.

10. The method of claim 8, wherein, The method further includes: In response to a search term being input in the search box of the message search interface or a search cancel operation being performed, the preset filtering control popped up at the search box is canceled.

11. The method of claim 1, wherein, The method further includes: When no sub-channel identifier or channel member identifier belonging to the main channel and related to the search term exists, the search term is directly displayed in the search box of the message search interface. In the historical message area of the message search interface, a historical message belonging to the main channel and related to the search term is displayed.

12. The method of claim 8, wherein, The method further includes: In response to a triggering operation on the sub-channel filtering control, the preset filtering control popped up at the search box is canceled, and a sub-channel list composed of sub-channel identifiers belonging to the main channel is popped up at the search box. In response to a triggering operation on at least one sub-channel identifier in the sub-channel list, the at least one sub-channel identifier is displayed in the search box of the message search interface. In the historical message area of the message search interface, a historical message belonging to the main channel and originating from the at least one sub-channel identifier is displayed.

13. The method of claim 8, wherein, The method further includes: In response to a triggering operation on the channel member filtering control, the preset filtering control popped up at the search box is canceled, and a channel member list composed of channel member identifiers belonging to the main channel is popped up at the search box. In response to a triggering operation on at least one channel member identifier in the channel member list, the at least one channel member identifier is displayed in a search box of the message search interface; In a historical message area of the message search interface, historical messages belonging to the main channel and related to the at least one channel member identifier are displayed.

14. The method of claim 8, wherein, The method further comprises: In response to a triggering operation on the speech date filter, the preset filter displayed at the search box is removed, and a speech date filter is displayed at the search box; In response to a triggering operation on at least one speech date in the speech date filter, the at least one speech date is displayed in the search box of the message search interface; In a historical message area of the message search interface, historical messages belonging to the main channel and related to the at least one speech date are displayed.

15. The method of claim 8, wherein, The method further comprises: In response to a triggering operation on a first filter in the preset filter, the preset filter displayed at the search box is removed, and a first filter item list related to a filtering type indicated by the first filter and belonging to the main channel is displayed at the search box; In response to a triggering operation on at least one first target filter item in the first filter item list, the at least one first target filter item is displayed in the search box, and the preset filter is displayed at the search box; In response to a triggering operation on a second filter in the preset filter, the preset filter displayed at the search box is removed, and a second filter item list related to a filtering type indicated by the second filter and belonging to the main channel is displayed at the search box; In response to a triggering operation on at least one second target filter item in the second filter item list, the at least one second target filter item is newly displayed in the search box to form a filter item combination with the first target filter item; In a historical message area of the message search interface, historical messages belonging to the main channel and related to the filter item combination formed by the first target filter item and the second target filter item are displayed; The first filter and the second filter are any one of a sub-channel filter, a channel member filter, and a speech date filter.

16. The method of claim 1, wherein, The method further comprises: In response to a triggering operation on a main channel filter in the message search interface, a main channel list formed by main channel identifiers associated with a current user is displayed; In response to a triggering operation on a target main channel in the main channel list, a sub-channel list formed by sub-channel identifiers belonging to the target main channel is displayed in a sub-channel filter of the message search interface, and in response to a triggering operation on at least one sub-channel identifier in the sub-channel list, the at least one sub-channel identifier is displayed as a filter item in the search box.

17. The method of claim 16, wherein, The method further comprises: In the channel member filter in the message search interface, a channel member list formed by channel member identifiers belonging to the target main channel is displayed, and in response to a triggering operation on at least one channel member identifier in the channel member list, the at least one channel member identifier is newly displayed in the search box to form a filter item combination with the at least one sub-channel identifier.

18. The method of claim 16, wherein, The method further includes: In response to a triggering operation on at least one speech date in the speech date filter of the message search interface, the at least one speech date is newly displayed in the search box to form a filter item combination with the at least one sub-channel identifier.

19. The method of claim 1, wherein, The method further includes: Obtaining speech messages in any one of the sub-channels belonging to the main channel; Extracting the message content of the speech messages; Generating a message type for the speech messages according to the message content; Storing the speech messages in the message database according to the message type.

20. The method according to any one of claims 1 to 19, characterized in that, The method further includes: After displaying the historical messages, real-time speech messages in each sub-channel belonging to the main channel are obtained in real time; When the real-time speech messages match the at least one filter item, the historical messages matching the at least one filter item displayed in the message search interface are updated in real time according to the real-time speech messages.

21. A message search apparatus characterized by comprising: The device includes: A search interface display module for displaying a message search interface of a target account in a main channel; the main channel includes a plurality of independent sub-channels, and the speech topics of the plurality of independent sub-channels are different and associated with the main channel; A search box display module for, in response to inputting a search term in a search box of the message search interface, popping up a filter item list related to the search term at the search box, wherein when there is a sub-channel identifier belonging to the main channel and related to the search term, the filter item list is a sub-channel list formed by the sub-channel identifiers belonging to the main channel and related to the search term, and each sub-channel identifier in the sub-channel list is displayed in a preset sub-channel style; when there is a channel member identifier belonging to the main channel and related to the search term, the filter item list is a channel member list formed by the channel member identifiers belonging to the main channel and related to the search term, and each channel member identifier in the channel member list is displayed in a preset channel member style; The message display module is configured to, when the search box already contains a filter, in response to a triggering operation on at least one filter in the filter list, add the at least one filter to the search box to form a filter combination with the filter already contained, wherein, when the triggered filter is a subchannel identifier belonging to the main channel, the filter is displayed in the search box in a preset subchannel style; when the triggered filter is a channel member identifier belonging to the main channel, the filter is displayed in the search box in a preset channel member style; and in a historical message area of the message search interface, historical messages belonging to the main channel and related to the filter combination are displayed.

22. The apparatus of claim 21, wherein, The device further comprises: The main channel interface display module is configured to display a main channel interface of a main channel in which a target account is located; display a speech area corresponding to a subchannel belonging to the main channel in the main channel interface; the subchannel is any one of a plurality of mutually independent subchannels belonging to the main channel; and in response to a triggering operation on a historical message portal in the speech area, display a message search interface of the main channel.

23. The apparatus of claim 22, wherein, The main channel interface display module is configured to display speech portals respectively corresponding to subchannels belonging to the main channel in the main channel interface; and in response to a triggering operation on a speech portal corresponding to a target subchannel, instantly join the target subchannel and display a speech area corresponding to the target subchannel in the main channel interface.

24. The apparatus of claim 22, wherein, The subchannel is a first subchannel, and the device further comprises: The subchannel switching module is configured to, in response to a triggering operation on a speech portal corresponding to a second subchannel belonging to the main channel, instantly exit the first subchannel and instantly join the second subchannel; and display a speech area corresponding to the second subchannel in the main channel interface.

25. The apparatus of claim 23, wherein, The message display module is further configured to, in response to no search term being input in a search box of the message search interface, display a subchannel identifier corresponding to the target subchannel in the search box of the message search interface; and display historical messages originating from the target subchannel in a historical message area of the message search interface.

26. The apparatus of claim 25, wherein, The device further comprises: The message type selection module is configured to, in response to a triggering operation on a target message type control in the message search interface, display historical messages originating from the target subchannel and having a target message type indicated by the target message type control in a historical message area of the message search interface.

27. The apparatus of claim 26, wherein, The device further comprises: The message view selection module is configured to, when the historical messages of the target message type are rich media messages, in response to a triggering operation on a message view switching control in the message search interface, display the historical messages of the target message type in a grid view or a list view in a historical message area of the message search interface.

28. The apparatus of claim 21, wherein, The search box display module is configured to, in response to no search term being input in the search box of the message search interface, pop up preset filtering controls at the search box, the preset filtering controls including a sub-channel filtering control, a channel member filtering control, and a speaking date filtering control.

29. The apparatus of claim 28, wherein, The search box display module is further configured to, in response to no filtering item being included in the search box of the message search interface and no search term being input, pop up the preset filtering controls at the search box; or, in response to a filtering item being included in the search box of the message search interface and no search term being input after the included filtering item, pop up the preset filtering controls at the search box.

30. The apparatus of claim 28, wherein, The search box display module is further configured to, in response to a search term being input in the search box of the message search interface or a search operation being cancelled, cancel display of the preset filtering controls popped up at the search box.

31. The apparatus of claim 21, wherein, The search box display module is further configured to, when no sub-channel identifier or channel member identifier belonging to the main channel and related to the search term exists, directly display the search term in the search box of the message search interface; and display, in a historical message area of the message search interface, historical messages belonging to the main channel and related to the search term.

32. The apparatus of claim 28, wherein, The search box display module is further configured to, in response to a triggering operation on the sub-channel filtering control, cancel display of the preset filtering controls popped up at the search box and pop up, at the search box, a sub-channel list composed of sub-channel identifiers belonging to the main channel. In response to a triggering operation on at least one sub-channel identifier in the sub-channel list, the search box display module is configured to display the at least one sub-channel identifier in the search box of the message search interface and display, in a historical message area of the message search interface, historical messages belonging to the main channel and originating from the at least one sub-channel identifier.

33. The apparatus of claim 28, wherein, The search box display module is further configured to, in response to a triggering operation on the channel member filtering control, cancel display of the preset filtering controls popped up at the search box and pop up, at the search box, a channel member list composed of channel member identifiers belonging to the main channel; in response to a triggering operation on at least one channel member identifier in the channel member list, display the at least one channel member identifier in the search box of the message search interface and display, in a historical message area of the message search interface, historical messages belonging to the main channel and related to the at least one channel member identifier.

34. The apparatus of claim 28, wherein, The search box display module is further configured to, in response to a triggering operation on the speaking date filtering control, cancel display of the preset filtering controls popped up at the search box and pop up, at the search box, a speaking date filter; and in response to a triggering operation on at least one speaking date in the speaking date filter, display the at least one speaking date in the search box of the message search interface. The message display module is further configured to display, in a historical message area of the message search interface, historical messages belonging to the main channel and related to the at least one speaking date.

35. The apparatus of claim 28, wherein, The search box display module is further configured to, in response to a triggering operation on a first filtering control in the preset filtering controls, cancel display of the preset filtering controls popped up at the search box, and pop up a first filtering item list belonging to the main channel and related to a filtering type indicated by the first filtering control at the search box; In response to a triggering operation on at least one first target filtering item in the first filtering item list, the search box display module is configured to display the at least one first target filtering item in the search box, and pop up the preset filtering controls at the search box; In response to a triggering operation on a second filtering control in the preset filtering controls, the search box display module is configured to cancel display of the preset filtering controls popped up at the search box, and pop up a second filtering item list belonging to the main channel and related to a filtering type indicated by the second filtering control at the search box; and in response to a triggering operation on at least one second target filtering item in the second filtering item list, the search box display module is configured to newly display the at least one second target filtering item in the search box to form a filtering item combination with the first target filtering item. The message display module is further configured to display, in a historical message area of the message search interface, a historical message belonging to the main channel and related to a filtering item combination formed by the first target filtering item and the second target filtering item; and the first filtering control and the second filtering control are any one of a subchannel filtering control, a channel member filtering control and a speaking date filtering control.

36. The apparatus of claim 21, wherein, The device further includes a filter display module configured to, in response to a triggering operation on a main channel filter in the message search interface, display a main channel list formed by main channel identifiers associated with a current user; In response to a triggering operation on a target main channel in the main channel list, the filter display module is configured to display, in a subchannel filter of the message search interface, a subchannel list formed by subchannel identifiers belonging to the target main channel; The search box display module is further configured to, in response to a triggering operation on at least one subchannel identifier in the subchannel list, display the at least one subchannel identifier as a filtering item in the search box.

37. The device of claim 36, wherein, The filter display module is further configured to display, in a channel member filter in the message search interface, a channel member list formed by channel member identifiers belonging to the target main channel, and in response to a triggering operation on at least one channel member identifier in the channel member list, newly display the at least one channel member identifier in the search box to form a filtering item combination with the at least one subchannel identifier.

38. The apparatus of claim 21, wherein, The search box display module is further configured to, in response to a triggering operation on at least one speaking date in a speaking date filter of the message search interface, newly display the at least one speaking date in the search box to form a filtering item combination with the at least one subchannel identifier.

39. The device of claim 21, wherein, The device further includes a message storage module configured to acquire a speaking message in any one subchannel belonging to the main channel, extract a message content of the speaking message, and generate a message type for the speaking message according to the message content. The speech message is stored in a message database according to the message type.

40. The device of any one of claims 21 to 39, wherein, The device further comprises a real-time refreshing module, configured to, after displaying the historical messages, acquire real-time speech messages in each sub-channel belonging to the main channel in real time; and when the real-time speech messages match the at least one filtering item, update the historical messages matching the at least one filtering item displayed in the message search interface in real time according to the real-time speech messages. 41.A computer device, comprising a memory and a processor, wherein the memory stores a computer program. The processor, when executing the computer program, implements the steps of the method of any one of claims 1 to 20.

42. A computer readable storage medium having stored thereon a computer program, characterized in that, The computer program, when executed by the processor, implements the steps of the method of any one of claims 1 to 20.

43. A computer program product comprising a computer program, characterised in that, The computer program, when executed by the processor, implements the steps of the method of any one of claims 1 to 20. The computer program, when executed by the processor, implements the steps of the method of any one of claims 1 to 20.

Citation Information

Patent Citations

  • Hotel search and information management method and device, electronic equipment and storage medium

    CN111400588A

  • Media asset information display method, and display device

    WO2021212814A1