Interactive message distribution method and device, computer device and storage medium

By grouping and dynamically adjusting service nodes, the buffer overflow problem in the interactive message distribution system was solved, improving the system's stability and reliability and ensuring that users in different language environments can reliably receive messages.

CN117857641BActive Publication Date: 2026-06-26TENCENT TECHNOLOGY (SHENZHEN) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TENCENT TECHNOLOGY (SHENZHEN) CO LTD
Filing Date
2022-09-29
Publication Date
2026-06-26

Smart Images

  • Figure CN117857641B_ABST
    Figure CN117857641B_ABST
Patent Text Reader

Abstract

The application relates to an interactive message distribution method and device, computer equipment, a storage medium and a computer program product. The method comprises the following steps: acquiring the number of online objects of each service node and the interactive data information of each service node, wherein the interactive data information is used for describing the speed of sending interactive messages by each online object in the service node; grouping each service node based on the number of online objects of each service node and the interactive data information of each service node, so as to obtain a plurality of service node groups, wherein each service node group comprises at least one service node; and distributing the interactive messages sent by each online object to each service node group. The method can improve the reliability of interactive message distribution.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of Internet technology, and in particular to an interactive message distribution method, apparatus, and computer device. Background Technology

[0002] With the rapid development of mobile internet technology, more and more users are using mobile devices for instant messaging and entertainment. However, because mobile users are located in different regions, the language environments may vary. For example, some regions use Simplified Chinese, while others use English, Japanese, or Traditional Chinese. Therefore, messaging systems need to consider communication between users in the same language environment as well as between users in different language environments.

[0003] Currently, message interaction systems typically periodically acquire the number of online users and group them accordingly. Interactive messages sent by users belonging to the same group are then distributed. Since users in the same group may belong to different service nodes, interactive messages are broadcast to all service nodes corresponding to that service. Each service node then places the interactive message in its buffer and periodically sends it to the corresponding user based on its message sending rules. Thus, regardless of language environment or service node affiliation, users within the same group can receive interactive messages sent by other users in that group. However, if there are too many interactive messages in a particular group, the number of messages broadcast to a service node may exceed its buffer storage capacity, causing a buffer overflow. This reduces system stability and consequently, the reliability of interactive message distribution. Therefore, improving the reliability of interactive message distribution is a pressing issue that needs to be addressed. Summary of the Invention

[0004] Therefore, it is necessary to provide an interactive message distribution method, apparatus, computer device, and storage medium that can improve the reliability of interactive message distribution in order to address the above-mentioned technical problems.

[0005] Firstly, this application provides an interactive message distribution method. The method includes:

[0006] Obtain the number of online objects in each service node, as well as the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages.

[0007] Based on the number of online objects at each service node and the interaction data of each service node, the service nodes are grouped to obtain multiple service node groups, and each service node group includes at least one service node.

[0008] Distribute interactive messages sent by each online object to each service node group.

[0009] In one embodiment, the method further includes:

[0010] The online objects of each service node in each service node group are grouped to obtain multiple object groups for each service node group. Each object group includes at least one online object.

[0011] Distribute interactive messages sent by online objects to each service node group, including:

[0012] Distribute interactive messages sent by each online object to each object group in each service node group.

[0013] In one embodiment, the online objects of each service node in each service node group are grouped, including:

[0014] Determine the primary object language for each online object, and group the online objects of each service node in each service node group based on the primary object language of each online object;

[0015] Among these, for each service node: online objects belonging to the same object group use the same primary object language, while online objects belonging to different object groups use different primary object languages.

[0016] In one embodiment, based on the number of online objects at each service node and the interaction data information of each service node, the service nodes are grouped to obtain multiple service node groups, including:

[0017] Obtain multiple initial service node groups, each of which includes at least one service node;

[0018] Based on the number of online objects in each service node and the interaction data of each service node, the service nodes in each initial service node group are regrouped and adjusted to obtain each service node group.

[0019] In one embodiment, based on the number of online objects at each service node and the interaction data information of each service node, the service nodes in each initial service node group are regrouped to obtain each service node group, including:

[0020] Based on the number of online objects at each service node and the interaction data of each service node, update the group interaction data of the initial service node group to which each service node belongs.

[0021] Based on the updated group interaction data of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group.

[0022] In one embodiment, based on the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, including:

[0023] Determine the interactive data range corresponding to each initial service node group. The interactive data range is used to describe the upper limit and lower limit of the interactive data information of the initial service node group.

[0024] Based on the interactive data range corresponding to each initial service node group and the updated group interactive data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group.

[0025] In one embodiment, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, including:

[0026] If there is updated group interaction data for the initial service node group, and it falls within the interaction data range corresponding to the initial service node group, then the initial service node group will be determined as the service node group.

[0027] In one embodiment, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, including:

[0028] If there is updated group interaction data for the initial service node group that exceeds the upper limit of the interaction data range corresponding to the initial service node group, sort the interaction data of each service node in the initial service node group.

[0029] Based on the sorting results, the first service node is determined from the initial service node group, and then the first service node is deleted from the initial service node group to obtain the service node group.

[0030] In one embodiment, the service nodes in each initial service node group are adjusted by grouping the service nodes within each initial service node group according to the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, to obtain each service node group, and the method further includes:

[0031] If there is updated group interaction data for the initial service node group that is less than the lower limit of the interaction data range corresponding to the initial service node group, the first service node is added to the initial service node group, and the service node group is obtained.

[0032] In one embodiment, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, and the method further includes:

[0033] If, after adding the first service node to the initial service node group, it is determined that there are multiple first service nodes that have not been added to the initial service node group, the first service nodes that have not been added will be merged to obtain the service node group.

[0034] In one embodiment, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, and the method further includes:

[0035] If, after adding the first service node to the initial service node group, it is determined that there are initial service node groups that have not added the first service node, these initial service node groups that have not added the first service node will be merged to obtain the service node groups.

[0036] In one embodiment, the method further includes:

[0037] The interactive messages sent by each object are translated based on the static translated text, and the first interactive message is determined.

[0038] Obtain temporary translated text, which is used to provide the first interactive message with an adjusted first translation text in multiple preset languages;

[0039] The static translation text is updated based on the temporary translation text, and the translation is performed based on the interactive messages sent by each object based on the updated static translation text.

[0040] In one embodiment, the interactive message has a corresponding message identifier;

[0041] Update the static translation text based on the temporary translation text, including:

[0042] Obtain the first interactive message and determine the first message identifier corresponding to the first interactive message;

[0043] The first translated text is obtained from the temporary translated text based on the first message identifier;

[0044] Based on the first message identifier, determine the second translation text in multiple preset languages ​​corresponding to the first interactive message from the static translation text, and replace the second translation text with the first translation text.

[0045] Secondly, this application also provides an interactive message distribution device. The device includes:

[0046] The acquisition module is used to acquire the number of online objects in each service node, as well as the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages.

[0047] The grouping module is used to group service nodes based on the number of online objects and the interaction data of each service node, resulting in multiple service node groups, each of which includes at least one service node.

[0048] The message distribution module is used to distribute interactive messages sent by online objects to each service node group.

[0049] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:

[0050] Obtain the number of online objects in each service node, as well as the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages.

[0051] Based on the number of online objects at each service node and the interaction data of each service node, the service nodes are grouped to obtain multiple service node groups, and each service node group includes at least one service node.

[0052] Distribute interactive messages sent by each online object to each service node group.

[0053] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:

[0054] Obtain the number of online objects in each service node, as well as the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages.

[0055] Based on the number of online objects at each service node and the interaction data of each service node, the service nodes are grouped to obtain multiple service node groups, and each service node group includes at least one service node.

[0056] Distribute interactive messages sent by each online object to each service node group.

[0057] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:

[0058] Obtain the number of online objects in each service node, as well as the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages.

[0059] Based on the number of online objects at each service node and the interaction data of each service node, the service nodes are grouped to obtain multiple service node groups, and each service node group includes at least one service node.

[0060] Distribute interactive messages sent by each online object to each service node group.

[0061] The aforementioned interactive message distribution method, apparatus, computer equipment, storage medium, and computer program product acquire the number of online objects at each service node and the interactive data information of each service node. This interactive data information describes the speed at which each online object in a service node sends interactive messages. Based on the number of online objects and the interactive data information of each service node, the service nodes are grouped into multiple service node groups, each including at least one service node. Interactive messages sent by online objects are then distributed to each service node group. By grouping service nodes based on both the number of online objects and the interactive data information, the distributed interactive messages are ensured to be distributed to specific service node groups. This reduces the scope of interactive message distribution, avoids direct distribution to all service nodes, and prevents the impact on other service node groups when there are too many interactive messages in a particular service node group, as distribution is based on that group. This avoids system instability and improves the reliability of interactive message distribution. Attached Figure Description

[0062] Figure 1 This is an application environment diagram of an interactive message distribution method in one embodiment;

[0063] Figure 2 This is a system architecture diagram of an interactive message distribution system in one embodiment;

[0064] Figure 3 This is a flowchart illustrating an interactive message distribution method in one embodiment;

[0065] Figure 4This is a schematic diagram of the process of grouping online objects in one embodiment;

[0066] Figure 5 Here is a system architecture diagram of an interactive message distribution system in another embodiment;

[0067] Figure 6 This is a schematic diagram of the process of grouping online objects in another embodiment;

[0068] Figure 7 This is a partial flowchart illustrating the grouping and adjustment of service nodes in one embodiment.

[0069] Figure 8 This is a partial flowchart illustrating the grouping and adjustment of service nodes in another embodiment;

[0070] Figure 9 This is a partial flowchart illustrating the grouping adjustment based on the range of interactive data in one embodiment.

[0071] Figure 10 This is a partial flowchart illustrating the process of determining service node groups based on the range of interactive data in one embodiment.

[0072] Figure 11 This is a partial flowchart illustrating the process of determining service node groups based on the range of interactive data in another embodiment.

[0073] Figure 12 This is a partial flowchart illustrating the process of determining service node groups based on the range of interactive data in yet another embodiment;

[0074] Figure 13 This is a partial flowchart illustrating the process of determining service node groups based on the range of interactive data in another embodiment;

[0075] Figure 14 This is a partial flowchart illustrating the interactive message translation process during interactive message distribution in one embodiment.

[0076] Figure 15 This is a schematic diagram of a translation process based on static translated text in one embodiment;

[0077] Figure 16 This is a schematic diagram of the system architecture for updating static translated text based on temporary translated text in one embodiment;

[0078] Figure 17 This is a schematic diagram illustrating the complete process of updating static translated text based on temporary translated text in one embodiment;

[0079] Figure 18 This is a schematic diagram of the system architecture for updating static translated text based on temporary translated text in another embodiment;

[0080] Figure 19 This is a complete flowchart of an interactive message distribution method in one embodiment;

[0081] Figure 20 This is a structural block diagram of an interactive message distribution device in one embodiment;

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

[0083] 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.

[0084] The interactive message distribution 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 server. Specifically, a client is deployed on terminal 102. Online users input interactive messages through the client deployed on terminal 102 and send these messages through relevant operations. Communication between terminal 102 and server 104 enables server 104 to retrieve the interactive messages sent by online users.

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

[0086] Based on this, the interactive message distribution system provided in the embodiments of this application will be described in detail below, such as... Figure 2 As shown, multiple service nodes, including service node 201, service node 202, and service node 203, communicate with the control server 204. Specifically, the control server 204 obtains the number of online objects and interaction data of each service node. Based on the number of online objects and interaction data of each service node, it groups the service nodes to obtain multiple service node groups, as shown below. Figure 2The service node groups 205, 206, and 207 shown are used to control the server 204 to distribute interactive messages sent by online objects to each service node group in order to complete the distribution of interactive messages.

[0087] Among them, service nodes 201, 202, and 203 are multiple service nodes. Figure 1 The server 104 shown is used for communication with the network and terminal 102. Secondly, the control server 204 is a server used to manage the interactive message distribution function. Figure 1 Similarly, the server provided in this application embodiment can be implemented using a standalone server or a server cluster consisting of multiple servers.

[0088] Taking the application of this application to a multilingual game as an example, one game service area can be associated with one service node. Therefore, a service node needs to provide interactive message distribution, system message broadcasting, and other functions for the game service area. To ensure the reliability of interactive message distribution for game objects from different regions, cultures, and languages ​​in multilingual games, the service nodes corresponding to different game service areas need to be grouped by the control server to obtain service node groups that include at least one service node. Considering that different online objects in multilingual games use different primary languages, the online objects in the service node groups can be further grouped based on their primary languages ​​to obtain object groups under a service node group. Therefore, during the interactive message distribution process, the primary languages ​​of the same object group are the same after classification, which can improve the reliability and efficiency of interactive message translation.

[0089] It is understood that the embodiments of this application can also be applied to other multiplayer online games or real-time chat applications, which will not be elaborated here.

[0090] In one embodiment, such as Figure 3 As shown, an interactive message distribution method is provided, which can be applied to... Figure 2 Taking the control server as an example, it can be understood that this method can also be applied to a system including a control server, multiple service nodes, and terminals, and is implemented through the interaction between the terminals and service nodes, as well as between the service nodes and the control server. In this embodiment, the method includes the following steps:

[0091] Step 302: Obtain the number of online objects in each service node and the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages.

[0092] Among them, online objects are objects that communicate with the service node through the terminal and are in an online state. Therefore, the number of online objects of a service node is the total number of objects that communicate with the service node and are in an online state. For example, the number of online objects of service node A1 is 500 and the number of online objects of service node A2 is 600.

[0093] Secondly, the interactive data information is used to describe the speed at which each online object in the service node sends interactive messages. Specifically, the speed at which each online object sends interactive messages is the ratio of the total number of interactive messages sent by all online objects (i.e., all online objects) within a preset time interval to the preset time interval. For example, if all online objects in service node A1 send a total of 8000 interactive messages in 1 minute, then the interactive data information for service node A1 at this time is: 8000 interactive messages / 1 minute. If all online objects in service node A2 send a total of 6000 interactive messages in 30 seconds, then the interactive data information for service node A2 at this time is: 12000 interactive messages / 1 minute. It should be understood that the specific setting of the preset time interval needs to be determined according to actual needs, and the specific unit of the preset time interval also needs to be determined based on actual needs. Therefore, the aforementioned examples should not be construed as limitations of this application.

[0094] Specifically, each service node reports the number of online objects and interaction data of that service node to the control server at a preset frequency. This allows the control server to obtain the number of online objects and interaction data of each service node. For example, service node A1 reports the number of online objects and interaction data of service node A1 to the control server every minute. Similarly, service node A2 reports the number of online objects and interaction data of service node A2 to the control server every minute. It should be understood that the aforementioned preset frequency can be once every 30 seconds, once every minute, or once every 2 minutes. In practical applications, the preset frequency for each service node to report data can be the same or different. Therefore, the specific setting of the preset frequency needs to be flexibly determined based on actual needs.

[0095] Furthermore, the control server, upon acquiring the number of online objects and interaction data of each service node at the first moment, stores these data. Based on this, after receiving the reported number of online objects and interaction data from each service node at the next moment adjacent to the first moment, the control server updates the stored data. That is, the control server stores the number of online objects and interaction data of each service node at the next moment adjacent to the first moment, thus ensuring that the number of online objects and interaction data grouped by each service node are updated in real time.

[0096] Step 304: Based on the number of online objects in each service node and the interaction data information of each service node, group the service nodes to obtain multiple service node groups, each service node group including at least one service node.

[0097] Each service node group includes at least one service node. The number of service nodes included in each service node group can be the same or different, and the number of service node groups is less than the total number of service nodes. For example, the service nodes used to provide services include service node A1, service node A2, service node A3, service node A4, and service node A5. After grouping service nodes A1 to A5, service node groups B1 and B2 can be obtained. Service node group B1 includes service nodes A1, A2, and A3, and service node group B2 includes service nodes A4 and A5.

[0098] Specifically, the control server can determine the activity level of each service node based on the number of online objects and the interaction data of each service node. In other words, the more online objects a service node has and the faster the interaction data is sent (i.e., the faster the interaction messages are sent), the higher the activity level of that service node, meaning that the online objects under that service node send more interaction messages. In order to balance the number of interaction messages to be received in each service node group, i.e., to minimize the difference in activity level between each service node group, it is necessary to consider both the number of online objects and the interaction data of each service node, and group each service node into multiple service node groups. The difference in activity level between each service node group should be less than the activity level threshold.

[0099] Furthermore, the control server can directly group service nodes based on the number of online objects and the interaction data of each service node, thus obtaining multiple service node groups. For example, service node A1 has 600 online objects and 12,000 interaction messages per minute. Service node A2 has 300 online objects and 5,000 interaction messages per minute. Service node A3 has 200 online objects and 2,000 interaction messages per minute. It is clear that service node A1 has a larger number of online objects and more interaction data. Therefore, based on service requirements, service node A1 can be grouped into service node group B1, and service nodes A2 and A3 can be grouped into service node group B2, to avoid excessive differences in the number of online objects and interaction data between service node groups.

[0100] Alternatively, the control server can obtain multiple initial service node groups. These initial service node groups can be determined by grouping the historical number of online objects and the historical interaction data of each service node. Then, based on the number of online objects and the interaction data of each service node, the service nodes in each initial service node group can be further grouped and adjusted to obtain the final service node groups. The specific grouping method is not limited here.

[0101] Step 306: Distribute the interactive messages sent by each online object to each service node group.

[0102] Specifically, the control server broadcasts interactive messages sent by online objects to each service node group. Each service node group then forwards these messages to its respective service nodes, which in turn distribute them to the online objects. For example, the control server broadcasts interactive messages sent by online objects to service node groups B1 and B2. Service node group B1 then forwards the messages to service nodes A1, A2, and A3, and service node B2 forwards the messages to service nodes A4 and A5.

[0103] In the above-mentioned interactive message distribution method, in addition to considering the number of online objects at each service node, the interactive data information of each service node is further considered to group the service nodes. This ensures that the distributed interactive messages are distributed to the respective service node groups, thereby reducing the scope of interactive message distribution and avoiding direct distribution of interactive messages to all service nodes. Furthermore, when there are too many interactive messages in a certain service node group, since the distribution is based on the service node group, it will not affect other service node groups, thus avoiding system instability and improving the reliability of interactive message distribution.

[0104] In one embodiment, such as Figure 4 As shown, the interactive message distribution method also includes:

[0105] Step 402: Group the online objects of each service node in each service node group to obtain multiple object groups for each service node group. Each object group includes at least one online object.

[0106] Specifically, each object group includes at least one online object, and the number of online objects included in each object group may be the same or different. Online objects belonging to the same object group share at least one common object attribute, which may include, but is not limited to: the object's primary language, gender, age group, and region.

[0107] Specifically, the control server determines the grouping object attribute from the object attributes of each online object. This grouping object attribute is the object attribute used for grouping. Then, the control server groups the online objects of each service node within each service node group based on the grouping object attribute, resulting in multiple object groups for each service node group. Online objects belonging to the same object group have the same grouping object attribute, while online objects belonging to different object groups have different grouping object attributes. It should be understood that the grouping object attribute can include one or more object attributes.

[0108] For example, if we use the age range of online objects as a grouping attribute, and the specific age ranges are divided into: under 18 years old, 18 to 30 years old, 31 to 45 years old, and over 45 years old, then based on the age ranges of online objects included in each service node (i.e., service node A1, service node A2, and service node A3) in service node group B1, we can obtain object groups C1, C2, C3, and C4. The age range of online objects in object group C1 is under 18 years old, the age range of online objects in object group C2 is 18 to 30 years old, the age range of online objects in object group C3 is 31 to 45 years old, and the age range of online objects in object group C4 is over 45 years old. It should be understood that online objects in object groups C1 to C4 can come from online objects managed by service nodes A1, A2, and A3. That is, online objects included in each object group can belong to the same service node or different service nodes.

[0109] It should be understood that the grouping object attributes determined by different service node groups can also be different. For example, service node group B1 uses the age range of online objects as the grouping object attribute, while service node group B2 uses the primary language of online objects as the grouping object attribute.

[0110] Based on this, interactive messages sent by each online object are distributed to each service node group, including:

[0111] Step 404: Distribute the interactive messages sent by each online object to each object group of each service node group.

[0112] Specifically, the control server distributes interactive messages sent by online objects to each service node group via broadcast, so that each service node group forwards the interactive messages to each object group belonging to that service node group, and then the object group distributes the interactive messages to each online object belonging to that object group.

[0113] For example, based on the aforementioned example, the control server broadcasts and distributes interactive messages sent by various online objects to service node groups B1 and B2. Then, service node group B1 forwards the interactive messages to object groups C1, C2, C3, and C4 belonging to service node group B1. Object groups C1 to C4 then further forward the interactive messages to online objects belonging to object groups C1 to C4. That is, object group C1 forwards interactive messages to online users under the age of 18 belonging to service node group B1; similarly, object group C2 forwards interactive messages to online users aged 18 to 30 belonging to service node group B1; object group C3 forwards interactive messages to online users aged 31 to 45 belonging to service node group B1; and object group C4 forwards interactive messages to online users over the age of 45 belonging to service node group B1.

[0114] For ease of understanding, based on Figure 2 The system architecture of the interactive messaging system shown is as follows: Figure 5 As shown, the control server 504 obtains the number of online objects at each service node and the interaction data information of each service node. Based on the number of online objects at each service node and the interaction data information of each service node, it groups the service nodes to obtain multiple service node groups, as shown in the figure. Figure 5 The service node groups 505, 506, and 507 shown are used to further group online objects, as shown in the diagram. The control server 504 further groups the online objects accordingly. Figure 5 The online objects in service node group 505 are grouped into object groups 508, 509, and 510. The same applies to service node groups 506 and 507, which will not be elaborated upon here. Based on this, the interactive messages sent by each online object are distributed to each object group within each service node group to complete the interactive message distribution.

[0115] It should be understood that Figure 4 The examples in the embodiments are only for understanding this solution and should not be construed as specific limitations on this solution. Furthermore, the determined grouping object attributes and grouping methods need to be determined based on the actual application scenario and requirements.

[0116] In this embodiment, based on grouping each service node, the resulting service node groups are further grouped based on the object attributes of online objects. This reduces the scope of interactive message distribution and avoids directly distributing interactive messages to all service nodes. Furthermore, it separates each online object through object attributes, thus avoiding mutual interference between multiple object groups. Multi-level grouping can improve the reliability of interactive messages and ensure the stability of interactive message distribution.

[0117] The foregoing embodiments described how the control server can group online objects within each service node group based on the grouping object attribute of the online objects. Considering the practical application scenarios of multi-voice applications, the following will detail how to group online objects when the grouping object attribute is the primary language of the online object:

[0118] In one embodiment, such as Figure 6 As shown, the online objects of each service node in each service node group are grouped, including:

[0119] Step 602: Determine the primary object language for each online object, and group the online objects of each service node in each service node group based on the primary object language of each online object.

[0120] Among these, for each service node: online objects belonging to the same object group use the same primary language, while online objects belonging to different object groups use different primary languages. The aforementioned primary language is the language used by the online object to send interactive messages. This can be the language selected during the online object's login process, or it can be a commonly used language assigned based on the region where the online object is located. In this embodiment, the object's active language can include, but is not limited to: Simplified Chinese, Traditional Chinese, English, French, and Japanese.

[0121] Specifically, based on the language used by online objects to send interactive messages, the primary language of each online object is determined. Then, online objects using the same primary language are grouped together within each service node group, thus obtaining multiple object groups.

[0122] For example, taking the example of objects whose active language includes Simplified Chinese, Traditional Chinese, English, French, and Japanese, if we group the online objects based on the age range of the service nodes (i.e., service nodes A4 and A5) in service node group B2, we can obtain object groups C1, C2, C3, C4, and C5. The active language of online objects in object group C1 is Simplified Chinese, the active language of online objects in object group C2 is Traditional Chinese, the active language of online objects in object group C3 is English, the active language of online objects in object group C4 is French, and the active language of online objects in object group C5 is Japanese. It should be understood that the online objects in object groups C1 to C5 can come from the online objects managed by service nodes A4 and A5; that is, the online objects included in each object group can belong to the same service node or different service nodes.

[0123] Secondly, in practical applications, the active language of the target can also include, but is not limited to, Russian, Korean, Arabic, Turkish, Indonesian, Vietnamese, Spanish, etc. The specific language to be used needs to be determined flexibly based on the languages ​​supported by the translation system and the actual situation of the application.

[0124] In this embodiment, online objects are grouped based on their primary language, and further separated by their primary language. This approach provides more reliable and stable distribution of interactive messages for online objects using the same primary language, while avoiding mutual interference between users of online objects using different primary languages. This further enhances the reliability of interactive messages and ensures the stability of interactive message distribution.

[0125] The foregoing embodiments mentioned the method of grouping service nodes by the control server. The following will describe in detail how to adjust the grouping of service nodes in each initial service node group:

[0126] In one embodiment, such as Figure 7 As shown, based on the number of online objects at each service node and the interaction data of each service node, the service nodes are grouped to obtain multiple service node groups, including:

[0127] Step 702: Obtain multiple initial service node groups, each of which includes at least one service node.

[0128] The initial service node group includes at least one service node, and the initial service node group is similar to the service node group described in the previous embodiments, so it will not be repeated here.

[0129] Specifically, the control server obtains multiple initial service node groups, each group including at least one service node. That is, the control server can directly group service nodes based on the historical number of online objects and historical interaction data of each service node, thus obtaining multiple initial service node groups. Alternatively, it can obtain multiple historical service node groups prior to obtaining the initial service node groups and adjust these historical groups accordingly to obtain multiple initial service node groups. Therefore, the specific method for obtaining multiple initial service node groups is not limited here.

[0130] Step 704: Based on the number of online objects in each service node and the interaction data information of each service node, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group.

[0131] The grouping adjustment includes at least: maintaining the service nodes included in the initial service node group, deleting at least one service node included in the initial service node group, adding at least one service node to the initial service node group, and merging the initial service node groups.

[0132] Specifically, the control server adjusts the service nodes in each initial service node group based on the number of online objects in each service node and the interaction data information of each service node, thus obtaining each service node group.

[0133] In this embodiment, by adjusting the service nodes in the initial service node group, the service nodes can be dynamically grouped from the perspective of the system as a whole. This avoids large discrepancies in the number of online objects and the interaction data information between service node groups, thereby improving the reliability and globality of service node grouping and ensuring the stability of interactive message distribution.

[0134] In one embodiment, such as Figure 8 As shown, based on the number of online objects at each service node and the interaction data of each service node, the service nodes in each initial service node group are regrouped and adjusted to obtain each service node group, including:

[0135] Step 802: Based on the number of online objects in each service node and the interaction data information of each service node, update the group interaction data information of the initial service node group to which each service node belongs.

[0136] Among them, the group interaction data information is used to describe the total number of interaction data information of each service node in the service node group.

[0137] Specifically, the control server calculates the group interaction data for each initial service node group based on the number of online objects at each service node and the interaction data of each service node. This updates the group interaction data for each service node's initial service node group. For example, if the initial service node group had 12,000 interaction messages per minute before the update, and the calculated group interaction data based on the number of online objects at each service node and the interaction data of each service node is 15,000 interaction messages per minute, then the updated initial service node group will have 15,000 interaction messages per minute.

[0138] Step 804: Based on the updated group interaction data of each initial service node group, the service nodes in each initial service node group are adjusted to obtain each service node group.

[0139] Specifically, the updated group interaction data information of each initial service node group is compared with the unupdated group interaction data information. Based on the comparison results, the service nodes in each initial service node group are adjusted to form different service node groups. The comparison results must include at least the following: the difference between the updated and unupdated group interaction data information is less than a preset value; or, the difference between the updated and unupdated group interaction data information is greater than a preset value, and the updated group interaction data information is less than the unupdated group interaction data information; or, the difference between the updated and unupdated group interaction data information is greater than a preset value, and the updated group interaction data information is greater than the unupdated group interaction data information.

[0140] Therefore, if the difference between the updated group interaction data and the unupdated group interaction data is less than a preset value, then the service nodes in that service node group do not need to be adjusted.

[0141] Secondly, if the comparison result shows that the difference between the updated group interaction data and the previous group interaction data is greater than the preset value, and the updated group interaction data is less than the previous group interaction data, it indicates that the speed at which online objects in the updated initial service node group send interaction messages has decreased. In this case, you can choose to add at least one service node to the initial service node group.

[0142] Furthermore, if the comparison result shows that the difference between the updated group interaction data and the previous group interaction data is greater than the preset value, and the updated group interaction data is greater than the previous group interaction data, it indicates that the speed at which online objects in the updated initial service node group send interactive messages has improved. At this time, at least one service node can be deleted from the initial service node group.

[0143] In this embodiment, the updated group interaction data of each initial service node group is compared with the group interaction data before the update. The change range of interaction data in each initial service node group is considered, and the grouping is adjusted based on the comparison results to improve the feasibility of this solution. That is, the interaction data of each service node is considered to dynamically adjust the grouping of each service node. Based on the grouping adjustment, the possibility of too many interaction messages in a certain service node group is reduced, thereby improving the reliability of the grouping adjustment and ensuring the reliability of interaction message distribution.

[0144] In one embodiment, such as Figure 9 As shown, based on the updated group interaction data of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, including:

[0145] Step 902: Determine the interactive data range corresponding to each initial service node group. The interactive data range is used to describe the upper limit and lower limit of the interactive data information of the initial service node group.

[0146] The "interaction data range" describes the upper and lower limits of interaction data for each initial service node group. For example, the upper limit for interaction data in initial service node group D1 is 13,000 interaction messages per minute, and the lower limit is 11,000 interaction messages per minute. Alternatively, the upper limit for interaction data in initial service node group D2 is 15,000 interaction messages per minute, and the lower limit is 9,000 interaction messages per minute.

[0147] Specifically, the control server can determine the interaction data range corresponding to each initial service node group based on the group interaction data information before the initial service node group update. For example, if the group interaction data information before the initial service node group D1 update is 12,000 interaction messages / minute, then the interaction data range corresponding to the initial service node group D1 is determined to be between 11,000 interaction messages / minute and 13,000 interaction messages / minute. Alternatively, the control server can also set a corresponding interaction data range for the initial service node groups after the initial division of the entire system, and subsequent steps are all determined based on the initially set interaction data range. Therefore, this embodiment does not limit the method of determining the interaction data range corresponding to each initial service node group.

[0148] Step 904: Based on the interactive data range corresponding to each initial service node group and the updated group interactive data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group.

[0149] Specifically, the control server determines whether the updated group interaction data of each initial service node group falls within the corresponding interaction data range for that initial service node group. Based on the comparison results, it adjusts the service nodes within each initial service node group to obtain the service node groups. The aforementioned comparison results include at least the following: the updated group interaction data of the initial service node group falls within the corresponding interaction data range; the updated group interaction data of the initial service node group exceeds the upper limit of the corresponding interaction data range; and the updated group interaction data of the initial service node group is less than the lower limit of the corresponding interaction data range.

[0150] In this embodiment, the updated group interaction data information of each initial service node group is determined to be within the interaction data range by comparing the interaction data range of each initial service node group, thereby further improving the feasibility of this solution. Secondly, the interaction data information of each service node is also considered to dynamically adjust the grouping of each service node. Based on the grouping adjustment, the possibility of too many interaction messages within a certain service node group is reduced, further improving the reliability of the grouping adjustment, thereby ensuring the reliability of interaction message distribution.

[0151] Based on this, the methods for adjusting the groups to obtain the service node groups under different circumstances will be described in detail below:

[0152] In one embodiment, such as Figure 10As shown, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, including:

[0153] Step 1002: If there is updated group interaction data information for the initial service node group that is within the interaction data range corresponding to the initial service node group, then the initial service node group is determined as the service node group.

[0154] Specifically, if there is updated group interaction data for the initial service node group that falls within the corresponding interaction data range, it indicates that the group interaction data within that initial service node group has not fluctuated significantly within the preset time interval. In this case, the initial service node group is directly determined as the service node group, meaning that the service nodes included in that initial service node group are not adjusted. For example, based on the aforementioned example, if the interaction data range corresponding to the initial service node group D1 is determined to be from 11,000 interaction messages / minute to 13,000 interaction messages / minute, and the updated group interaction data for the initial service node group D1 is 12,500 interaction messages / minute, then the service nodes included in the initial service node group D1 are not adjusted, and the initial service node group D1 is directly determined as the service node group.

[0155] In this embodiment, if the updated group interaction data information of the initial service node group is within the interaction data range corresponding to the initial service node group, the service nodes included in the initial service node group will not be adjusted. Based on the interaction data information and the number of online users, the adjustment of interaction message distribution caused by multiple adjustments to the service node group is avoided, thereby ensuring the stability of service nodes within the service node group and the stability of interaction message distribution.

[0156] In one embodiment, such as Figure 11 As shown, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, including:

[0157] Step 1102: If there is updated group interaction data information for the initial service node group that is greater than the upper limit of the interaction data range corresponding to the initial service node group, sort the interaction data information of each service node in the initial service node group.

[0158] Specifically, if the updated group interaction data of the initial service node group exceeds the upper limit of the interaction data range corresponding to the initial service node group, it means that the group interaction data within the initial service node group has increased within a preset time interval and exceeded the upper limit of the interaction data range. Therefore, it is necessary to adjust the service nodes within the initial service node group to avoid the excessive number of interaction messages within the initial service node group affecting system stability.

[0159] Specifically, the control server sorts the interaction data of each service node in the initial service node group. The sorting can be done by ranking the interaction data from largest to smallest, or from smallest to largest; the specific order is not limited here.

[0160] Step 1104: Determine the first service node from the initial service node group based on the sorting result, delete the first service node from the initial service node group, and obtain the service node group.

[0161] Specifically, the service node group obtained by deleting the first service node from the initial service node group should have group interaction data information within the interaction data range corresponding to the initial service node group.

[0162] Among them, the first service node is the service node corresponding to the smaller interactive data information among the interactive data information of each service node in the initial service node group.

[0163] Specifically, the control server determines the first service node from the initial service node group based on the sorting results. This means selecting the service node with the smallest amount of interactive data from each service node's interactive data as the first service node. Furthermore, it should be considered that the interactive data of the obtained service node group falls within the interactive data range corresponding to the initial service node group.

[0164] For example, the interaction data of each service node can be sorted from largest to smallest, and the initial service node group D1 includes service node A1, service node A2, service node A3 and service node A4, and the interaction data range of the initial service node group D1 is described as 11,000 interaction messages / 1 minute to 13,000 interaction messages / 1 minute.

[0165] If service node A1 has 5000 interaction messages per minute, service node A2 has 3000 interaction messages per minute, service node A3 has 4000 interaction messages per minute, and service node A4 has 2000 interaction messages per minute, then if we sort the interaction data of each service node from largest to smallest, the sorted result is: service node A1, service node A3, service node A2, and service node A4. Therefore, service node A4 can be identified as the first service node, and the first service node (service node A4) can be deleted from the initial service node group D1. At this time, the total interactive data information of service nodes A1 to A3 is 12,000 interactive messages / 1 minute (5,000 interactive messages / 1 minute + 4,000 interactive messages / 1 minute + 3,000 interactive messages / 1 minute), which is within the interactive data range of the initial service node group D1. Therefore, the service node group including service node A1, service node A2 and service node A3 can be obtained.

[0166] It should be understood that in practical applications, if the group interaction data of the initial service node group is less than the lower limit of the interaction data range after deleting the first service node, the first service node determined in other initial service node groups can be added to the initial service node group until the group interaction data of the initial service node group is within the interaction data range, thereby obtaining the service node group.

[0167] In this embodiment, if the updated group interaction data of the initial service node group is greater than the upper limit of the interaction data range corresponding to the initial service node group, the service nodes with smaller interaction data within the initial service node group are deleted. This reduces the group interaction data of the service node group and decreases the possibility of the interaction messages exceeding the storage limit in that service node group, thereby ensuring the stability of the service nodes within the service node group and the stability of the interaction message distribution.

[0168] In one embodiment, such as Figure 12 As shown, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, which also includes:

[0169] Step 1202: If there is updated group interaction data information for the initial service node group that is less than the lower limit of the interaction data range corresponding to the initial service node group, add the first service node to the initial service node group and obtain the service node group.

[0170] Specifically, if the updated group interaction data of the initial service node group is less than the lower limit of the interaction data range corresponding to the initial service node group, it means that the group interaction data within the initial service node group has decreased within the preset time interval and has decreased to the lower limit of the interaction data range. Therefore, it is necessary to adjust the service nodes within the initial service node group to avoid the problem of excessive differences in the number of interaction messages between different service node groups and to ensure the stability of the activity level within the service node group.

[0171] Furthermore, as can be seen from the foregoing embodiments, when the updated group interaction data of the initial service node group exceeds the upper limit of the interaction data range corresponding to the initial service node group, the first service node will be deleted from the initial service node group. Based on this, the control server adds the first service node to the initial service node group and obtains the service node group. It should also be considered that the interaction data of the obtained service node group is within the interaction data range corresponding to the initial service node group.

[0172] For example, taking the initial service node group D2's interaction data range as 9000 to 15000 interaction messages per minute, and assuming that initial service node group D2 includes service nodes A5 and A6, if service node A5 has 4500 interaction messages per minute and service node A6 has 4000 interaction messages per minute, then the group interaction data for initial service node group D2 is 8500 interaction messages per minute, which is lower than the limit of the initial service node group D2's interaction data range. Figure 11 In the example, since the control server determines to delete service node A4 from the initial service node group D1, and the interaction data of service node A4 is 2000 interaction messages / 1 minute, the control server adds service node A4 to the initial service node group D2. At this time, the total interaction data of service nodes A4 to A6 is 10500 interaction messages / 1 minute (4500 interaction messages / 1 minute + 4000 interaction messages / 1 minute + 2000 interaction messages / 1 minute), which is within the interaction data range of the initial service node group D2. Therefore, the service node group including service node A4, service node A5, and service node A6 can be obtained.

[0173] In this embodiment, if the updated group interaction data of the initial service node group is less than the lower limit of the interaction data range corresponding to the initial service node group, the first service node deleted from other initial service node groups is added to the initial service node group to ensure that the group interaction data of the service node group is within a stable interaction data range, thereby ensuring the stability of service nodes within the service node group and the stability of interaction message distribution.

[0174] In one embodiment, such as Figure 13 As shown, based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, which also includes:

[0175] Step 1302: If, after adding the first service node to the initial service node group, it is determined that there are multiple first service nodes that have not been added to the initial service node group, the first service nodes that have not been added are merged to obtain the service node group.

[0176] Specifically, in practical applications, it's necessary to consider whether the interaction data of each service node group falls within the corresponding interaction data range. Therefore, a deleted first service node might not be added to the initial service node group. Based on this, the control server needs to merge the unadded first service nodes to obtain service node groups. There can be one or more service node groups obtained by merging the unadded first service nodes. It should be understood that during merging, the interaction data of the merged service node groups should also be considered, ensuring it falls within the expected range of interaction data for each service node group. For example, if the expected interaction data for each service node group is less than 20,000 interaction messages per minute, then the merging process should adhere to this condition.

[0177] In an optional embodiment, in step 1304, if the first service group interactive data information service node is added to the initial service node group, it is determined that there are initial service node groups that have not added the first service node, and the initial service node groups that have not added the first service node are merged to obtain the service node group.

[0178] Specifically, in practical applications, it is necessary to consider whether the interactive data information of each service node group is within the corresponding interactive data range. There may be initial service node groups that have not yet added the first service node after the first service node has been added to the initial service node group. Furthermore, the updated group interactive data information of the initial service node groups that have not yet added the first service node is less than the lower limit of the interactive data range corresponding to the initial service node group.

[0179] Based on this, the control server merges the initial service node groups that have not added the first service node to obtain service node groups. The specific merging method is similar to the method of merging the first service node in step 1302, and the group interaction data information of the merged service node groups should also be taken into account during the merging, and should be within the range of the group interaction data information of each service node group expected by the service.

[0180] In this embodiment, under different circumstances, the first service nodes that have not been added are merged to ensure that all service nodes can be grouped and that the grouping reliability is guaranteed. Furthermore, initial service node groups that have not had a first service node added but whose updated group interaction data is less than the lower limit of the interaction data range are merged, ensuring that the group interaction data of the service node groups remains within a stable interaction data range. This further improves the stability of service nodes within a service node group and the stability of interaction message distribution.

[0181] Since this application can be applied to multilingual games and multilingual chat applications, which require the translation of interactive messages in different languages ​​to ensure smooth communication between online users speaking different languages, the following will describe in detail the method for translating interactive messages during the message distribution process provided in this embodiment:

[0182] In one embodiment, such as Figure 14 As shown, the interactive message distribution method also includes:

[0183] Step 1402: Translate the interactive messages sent by each object based on the static translated text, and determine the first interactive message.

[0184] Among them, the static translation text is the translation text of the stored fixed fields. And when the online object switches the primary language of the object, the interactive message displayed on the terminal of the online object is: the translation text of the primary language of the object that the online object is currently using. And the static translation text is generated by preset configurations, and the preset configurations at least include: translation configurations by the local translation team and translation personnel translation configurations, etc., which are not limited here. Secondly, the first interactive message can be an interactive message with a translation error or an interactive message that needs to be adjusted and updated.

[0185] In this embodiment, a Chinese text message in simplified Chinese can be provided first, and then translation texts in multiple preset languages can be obtained based on the Chinese text message, so as to obtain the Chinese text message and the translation texts in multiple preset languages corresponding to the Chinese text message. It should be understood that in practical applications, an English text message in English can also be provided first, and then translation texts in multiple preset languages can be obtained based on the English text message, so as to obtain the English text message and the translation texts in multiple preset languages corresponding to the English text message. From this, it can be seen that the static translation text includes multiple text messages and the translation texts in multiple preset languages corresponding to each text message.

[0186] For example, if the Chinese text message is "service", the translation texts corresponding to this Chinese text message can include the English translation text "Serve" and the Russian translation text "служить" and other language translation texts. Then, if the English text message is "Serve", the translation texts corresponding to this English text message can include the Chinese translation text "服务" and the Russian translation text "служить" and other language translation texts. Based on this, the text message and the translation texts in multiple preset languages corresponding to the text message have corresponding message identifiers, that is, the corresponding translation text can be determined based on the message identifier.

[0187] Specifically, the control server specifically translates the interactive messages sent by each online object based on the static translation text. Such as <00004As shown, the specific process of translation based on static translation text includes: static translation text generation, static translation text extraction, and static translation text activation. First, the step of obtaining static translation text is performed, i.e., collecting text messages and then translating them to obtain static translation text. Next, the step of static translation text extraction is performed, specifically, automatically extracting translation key fields from the static translation text using a pre-configured table, and storing the translation text corresponding to the translation key fields in the Translation.xls file. Therefore, the Translation.xls file stores the translation text corresponding to each translation key field (i.e., the translation text in all preset languages). Based on this, the step of activating the static translation text is performed, i.e., determining the configured text messages to be translated from the Server.xml file. These text messages are the interactive messages that need to be translated, and then extracting the translation text in all preset languages ​​corresponding to the text messages to be translated from the Translation.xls file, thereby generating a background translation table. The background translation table is then converted into a Server_translate.lua file that can be used by the background program. When it is necessary to translate interactive messages sent to an object, the Server_translate.lua file is loaded to complete the translation of the interactive message.

[0188] Furthermore, when an interactive message with a translation error or inaccuracy occurs, or when an interactive message requires adjustment and updating, the control server identifies this interactive message as the first interactive message. At this point, the translated text corresponding to the first interactive message needs to be updated and replaced. The method for identifying the first interactive message can be as follows: an online object can report a translation error, allowing the control server to determine if the first interactive message is translated incorrectly or inaccurately. Alternatively, the translator can proactively identify the first interactive message as inaccurate, etc. The specific method is not limited here.

[0189] Step 1404: Obtain temporary translated text. The temporary translated text is used to provide adjusted translations of the first interactive message in multiple preset languages.

[0190] The temporary translation text is used to provide adjusted translations in multiple preset languages ​​for the first interactive message. Furthermore, the temporary translation text can also be used to provide adjusted translations in multiple preset languages ​​for other interactive messages, without limitation. For example, if the first interactive message is "Service," the original translation text includes the English translation "Serve" and the Russian translation "служить," etc. Then, the adjusted translation text for "Service" could include the English translation "Service" and the Russian translation "служить," etc.

[0191] It should be understood that temporary translation text can be an adjustment to the translation text in one preset language corresponding to the text message, an adjustment to the translation text in multiple preset languages, or a translation text in a new language; there are no limitations here.

[0192] Specifically, in step 1402, the control server determines that the first interactive message corresponding to the translated text needs to be updated or replaced, at which point it can obtain temporary translated text. The methods for obtaining temporary translated text include, but are not limited to, local translation team updates and updates by individual translators.

[0193] Step 1406: Update the static translation text based on the temporary translation text, and translate the interactive messages sent by each object based on the updated static translation text.

[0194] Specifically, the control server updates the static translation text based on the temporary translation text, and then translates the interactive messages sent by each object based on the updated static translation text.

[0195] For ease of understanding, based on the foregoing embodiments, the online objects of each service node in each service node group are grouped according to the object-oriented language of each online object, such as... Figure 16 As shown, the idipsvr server transmits the temporary translated text to the director server. The director server adjusts the preset language of the translated text according to the specific settings in the temporary translated text, and broadcasts the temporary translated text to each service node group. Based on the primary language of the object group corresponding to the object group in each service node group, the temporary translated text is received, causing the processes in each object group to update the temporary translated text to the idip_translate_cfg.lua file. Then, based on the idip_translate_cfg.lua file, the server_translate.lua file is updated and adjusted, thereby completing the update of the static translated text.

[0196] In this embodiment, by updating and adjusting the temporary translated text, the need to modify or adjust the translated text can be met, thereby improving the flexibility and efficiency of translating interactive messages.

[0197] Based on the foregoing embodiments, the following will describe in detail how to update the static translation text based on the temporary translation text, that is, how the temporary translation text takes effect during the translation process:

[0198] In one embodiment, such as Figure 17 As shown, interactive messages have corresponding message identifiers.

[0199] Specifically, as introduced in the foregoing embodiments, a text message and translation texts of the text message in multiple preset languages have corresponding message identifiers, that is, the corresponding translation texts can be determined based on the message identifiers. For example, if the Chinese text message is "Service", the translation texts corresponding to this Chinese text message may include the English translation text "Serve" and the Russian translation text "служить". Then, "Service", "Serve", and "служить" can all carry the same message identifier. That is, the message identifier can also be used to indicate the translation text corresponding to the interactive message.

[0200] Based on this, updating the static translation text based on the temporary translation text includes:

[0201] Step 1702: Obtain a first interactive message and determine a first message identifier corresponding to the first interactive message.

[0202] Specifically, based on the temporary translation text, determine the first interactive message for which the translation text needs to be adjusted and updated, and determine the first message identifier corresponding to the first interactive message. For example, if the first interactive message is "Service", the corresponding first message identifier may be 1. And in practical applications, based on the foregoing embodiments, it can be known that if the first interactive message is "Serve", the corresponding first message identifier can also be 1.

[0203] Step 1704: Obtain a first translation text from the temporary translation text based on the first message identifier.

[0204] Specifically, since the message identifier can also be used to indicate the translation text corresponding to the interactive message, the control server can obtain the first translation text from the temporary translation text based on the first message identifier. For example, if the temporary translation text includes the English translation text "Service" of "Service", the Russian translation text "служить", the English translation text "Online" of "上线", and the Russian translation text "Онлайн". And the first message identifier is used to indicate "Service", then the first translation text obtained can be: the English translation text "Service" of "Service" and the Russian translation text "служить".

[0205] Step 1706: Determine second translation texts in multiple preset languages corresponding to the first interactive message before adjustment from the static translation text, and replace the second translation texts with the first translation text.

[0206] Specifically, the control server, in a manner similar to step 1704, determines the second translated text in multiple preset languages ​​corresponding to the first interactive message from the static translated text based on the first message identifier; this will not be elaborated further here. Further, when the control server obtains the first interactive message again, it will call the first translated text to translate the first interactive message. During the translation process, the first translated text overwrites the second translated text, thus completing the step of replacing the second translated text with the first translated text.

[0207] For ease of understanding, based on Figure 16 Please refer to the process structure shown. Figure 18 The director server adjusts the preset language of the translation text according to the specific details in the temporary translation text, and broadcasts the temporary translation text to each service node group. Based on the primary language of the object group corresponding to the object group in each service node group, the temporary translation text is received, and the process of each object group updates the temporary translation text to the idip_translate_cfg.lua file. When the online object sends the first interactive message again, it looks up the first translation text corresponding to the first interactive message in the idip_translate_cfg.lua file, and then looks up the second translation text before adjustment corresponding to the first interactive message in the server_translate.lua file. Thus, during the translation of the first interactive message, the first translation text overwrites the second translation text to complete the update of the static translation text, making the temporary translation text effective.

[0208] It should be understood that the foregoing examples are for the purpose of understanding this solution and should not be construed as limiting this solution.

[0209] In this embodiment, the translated text before and after adjustment corresponding to the first interactive message is determined by the message identifier, and the translated text is overwritten and replaced based on this. This ensures that the replacement process of the translated text does not affect the normal interaction of online objects, thereby improving the efficiency and reliability of translating interactive messages that require adjustment of translated text.

[0210] Based on the detailed description of the foregoing embodiments, the complete process of the interactive message distribution method of this application will be described below, such as... Figure 19 As shown, this method is applied to Figure 2 Taking the control server as an example, it can be understood that this method can also be applied to a system including a control server, multiple service nodes, and terminals, and is implemented through the interaction between the terminals and service nodes, as well as between the service nodes and the control server. In this embodiment, the method includes the following steps:

[0211] Step 1901: Obtain the number of online objects at each service node, as well as the interaction data information of each service node.

[0212] Among them, online objects are those that communicate with the service node through the terminal and are in an online state. Therefore, the number of online objects of a service node is the total number of objects that communicate with the service node and are in an online state. Secondly, the interaction data information is used to describe the speed at which each online object in the service node sends interaction messages. Specifically, the speed at which each online object sends interaction messages is the ratio of the total number of interaction messages sent by all online objects (i.e., all online objects) in the service node within a preset time interval to the preset time interval.

[0213] Specifically, each service node reports the number of online objects of that service node and the interaction data information of the service node to the control server at a preset frequency, so that the control server can obtain the number of online objects of each service node and the interaction data information of each service node.

[0214] Step 1902: Obtain multiple initial service node groups.

[0215] The initial service node group includes at least one service node, and the initial service node group is similar to the service node group described in the previous embodiments, so it will not be repeated here.

[0216] Specifically, the control server obtains multiple initial service node groups, each group including at least one service node. That is, the control server can directly group service nodes based on the historical number of online objects and historical interaction data of each service node, thus obtaining multiple initial service node groups. Alternatively, it can obtain multiple historical service node groups prior to obtaining the initial service node groups and adjust these historical groups accordingly to obtain multiple initial service node groups. Therefore, the specific method for obtaining multiple initial service node groups is not limited here.

[0217] Step 1903: Based on the number of online objects in each service node and the interaction data information of each service node, update the group interaction data information of the initial service node group to which each service node belongs.

[0218] Among them, the group interaction data information is used to describe the total number of interaction data information of each service node in the service node group.

[0219] Specifically, the control server calculates the group interaction data information of the initial service node group based on the number of online objects of each service node and the interaction data information of each service node, that is, updates the group interaction data information of the initial service node group to which each service node belongs.

[0220] Step 1904: Determine the range of interactive data corresponding to each initial service node group.

[0221] The interactive data range describes the upper and lower limits of the interactive data information for each initial service node group. Specifically, the control server can determine the interactive data range for each initial service node group based on the group interactive data information before the initial service node group update. This embodiment does not limit the method for determining the interactive data range for each initial service node group.

[0222] Step 1905: Based on the interactive data range corresponding to each initial service node group and the updated group interactive data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group.

[0223] Specifically, the control server determines whether the updated group interaction data of each initial service node group falls within the corresponding interaction data range for that initial service node group. Based on the comparison results, it adjusts the service nodes within each initial service node group to obtain the service node groups. The aforementioned comparison results include at least the following: the updated group interaction data of the initial service node group falls within the corresponding interaction data range; the updated group interaction data of the initial service node group exceeds the upper limit of the corresponding interaction data range; and the updated group interaction data of the initial service node group is less than the lower limit of the corresponding interaction data range.

[0224] Step 1906: Group the online objects of each service node in each service node group to obtain multiple object groups for each service node group.

[0225] Specifically, based on the language used by online objects to send interactive messages, the primary language of each online object is determined. Then, online objects using the same primary language are grouped together within each service node group, thus obtaining multiple object groups.

[0226] Step 1907: Distribute the interactive messages sent by each online object to each object group of each service node group.

[0227] Specifically, the control server distributes interactive messages sent by online objects to each service node group via broadcast, so that each service node group forwards the interactive messages to each object group belonging to that service node group, and then the object group distributes the interactive messages to each online object belonging to that object group.

[0228] Since this application can be applied to multilingual games and multilingual chat applications, the process of distributing interactive messages sent by various online objects also includes a process of translating the multilingual interactive messages, as detailed below:

[0229] Step 1908: Translate the interactive messages sent by each object based on the static translated text, and determine the first interactive message.

[0230] The static translation text refers to the translated text of fixed fields stored in the database. Furthermore, when an online object switches its primary language, the interactive message displayed on the online object's terminal is the translated text of the primary language used by the online object in real time. Specifically, the control server translates the interactive messages sent by each object based on the static translation text. Further, when an interactive message with a translation error or inaccuracy occurs, or when an interactive message requires adjustment or updating, the control server identifies this interactive message as the first interactive message, and at this time, the translated text corresponding to the first interactive message needs to be updated and replaced.

[0231] Step 1909: Obtain temporary translated text. The temporary translated text is used to provide adjusted translations of the first interactive message in multiple preset languages.

[0232] The temporary translated text is used to provide adjusted translations in multiple preset languages ​​for the first interactive message, and can also be used to provide adjusted translations in multiple preset languages ​​for other interactive messages; this is not limited here. Specifically, in step 1909, the control server determines that the first interactive message needs to have its corresponding translated text updated or replaced, at which point it can obtain the temporary translated text. The methods for obtaining the temporary translated text include at least: updates by a local translation team and updates by translators, etc., and are not limited here.

[0233] Step 1910: Update the static translation text based on the temporary translation text, and translate the interaction messages sent by each object based on the updated static translation text.

[0234] Specifically, the control server updates the static translation text based on the temporary translation text, and then translates the interactive messages sent by each object based on the updated static translation text.

[0235] It should be understood that the specific implementation methods of steps 1901 to 1910 have been described in detail in the foregoing embodiments, and will not be repeated here.

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

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

[0238] In one embodiment, such as Figure 20 As shown, an interactive message distribution device is provided, including: an acquisition module 2002, a grouping module 2004, and a message distribution module 2006, wherein:

[0239] The acquisition module 2002 is used to acquire the number of online objects in each service node, as well as the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages.

[0240] Grouping module 2004 is used to group service nodes based on the number of online objects in each service node and the interaction data information of each service node, resulting in multiple service node groups, each service node group including at least one service node.

[0241] The message distribution module 2006 is used to distribute interactive messages sent by online objects to each service node group.

[0242] In one embodiment, the grouping module 2004 is further configured to group each online object of each service node in each service node group to obtain multiple object groups for each service node group, wherein each object group includes at least one online object.

[0243] The message distribution module 2006 is also used to distribute interactive messages sent by online objects to each object group in each service node group.

[0244] In one embodiment, the grouping module 2004 is further configured to determine the primary object language of each online object, and group each online object of each service node in each service node group based on the primary object language of each online object; wherein, for each service node: online objects belonging to the same object group have the same primary object language, and online objects belonging to different object groups have different primary object languages.

[0245] In one embodiment, the grouping module 2004 is further configured to obtain multiple initial service node groups, each initial service node group including at least one service node; and to adjust the service nodes in each initial service node group based on the number of online objects in each service node and the interaction data information of each service node, thereby obtaining each service node group.

[0246] In one embodiment, the grouping module 2004 is further configured to update the group interaction data information of the initial service node group to which each service node belongs based on the number of online objects of each service node and the interaction data information of each service node; and to adjust the grouping of service nodes in each initial service node group based on the updated group interaction data information of each initial service node group to obtain each service node group.

[0247] In one embodiment, the grouping module 2004 is further configured to determine the interactive data range corresponding to each initial service node group, wherein the interactive data range is used to describe the upper limit and lower limit of the interactive data information of the initial service node group; and based on the interactive data range corresponding to each initial service node group and the updated group interactive data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group.

[0248] In one embodiment, the grouping module 2004 is further configured to determine the initial service node group as a service node group if there is updated group interaction data information of the initial service node group that is within the interaction data range corresponding to the initial service node group.

[0249] In one embodiment, the grouping module 2004 is further configured to sort the interaction data information of each service node in the initial service node group if there is updated group interaction data information of the initial service node group that is greater than the upper limit of the interaction data range corresponding to the initial service node group; and determine the first service node from the initial service node group based on the sorting result, delete the first service node from the initial service node group, and obtain the service node group.

[0250] In one embodiment, the grouping module 2004 is further configured to add the first service node to the initial service node group and obtain the service node group if the updated group interaction data information of the initial service node group is less than the lower limit of the interaction data range corresponding to the initial service node group.

[0251] In one embodiment, the grouping module 2004 is further configured to, after completing the addition of the first service node to the initial service node group, determine that there are multiple first service nodes that have not been added to the initial service node group, and merge the unadded first service nodes to obtain the service node group.

[0252] In one embodiment, the grouping module 2004 is further configured to, after completing the addition of the first service node to the initial service node group, determine that there are initial service node groups that have not added the first service node, and merge the initial service node groups that have not added the first service node to obtain the service node group.

[0253] In one embodiment, the interactive message distribution device further includes a translation module 2008;

[0254] Translation module 2008 is used to translate interactive messages sent by each object based on static translation text and to determine the first interactive message;

[0255] The acquisition module 2002 is also used to acquire temporary translated text, which is used to provide the first interactive message with an adjusted first translation text in multiple preset languages;

[0256] The Translation Module 2008 is also used to update the static translation text based on the temporary translation text, and to translate based on the interactive messages sent by each object based on the updated static translation text.

[0257] In one embodiment, the interactive message has a corresponding message identifier;

[0258] The translation module 2008 is also used to obtain the first interactive message and determine the first message identifier corresponding to the first interactive message; and obtain the first translated text from the temporary translated text based on the first message identifier; and determine the second translated text in multiple preset languages ​​corresponding to the first interactive message from the static translated text based on the first message identifier, and replace the second translated text with the first translated text.

[0259] Each module in the aforementioned interactive message distribution device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can invoke and execute the corresponding operations of each module.

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

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

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

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

[0264] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

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

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

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

[0268] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. An interactive message distribution method, characterized in that, The method includes: The number of online objects in each service node and the interaction data information of each service node are obtained. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages. Based on the number of online objects in each service node and the interaction data information of each service node, the service nodes are grouped to obtain multiple service node groups, and each service node group includes at least one of the service nodes. Distribute the interactive messages sent by each of the online objects to each of the service node groups.

2. The method according to claim 1, characterized in that, The method further includes: The online objects of each service node in each service node group are grouped to obtain multiple object groups for each service node group, and each object group includes at least one online object; The distribution of interactive messages sent by each of the online objects to each of the service node groups includes: Distribute interactive messages sent by each online object to each of the respective object groups of each of the respective service node groups.

3. The method according to claim 2, characterized in that, The process of grouping the online objects of each service node in each of the service node groups includes: Determine the primary object language for each online object, and group the online objects of each service node in each service node group based on the primary object language of each online object; Among them, for each of the service nodes: online objects belonging to the same object group have the same primary object language, and online objects belonging to different object groups have different primary object languages.

4. The method according to claim 1, characterized in that, Based on the number of online objects at each service node and the interaction data information of each service node, the service nodes are grouped to obtain multiple service node groups, including: Obtain multiple initial service node groups, wherein each initial service node group includes at least one of the service nodes; Based on the number of online objects in each service node and the interaction data information of each service node, the service nodes in each initial service node group are adjusted to obtain each service node group.

5. The method according to claim 4, characterized in that, Based on the number of online objects at each service node and the interaction data information of each service node, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group, including: Based on the number of online objects in each service node and the interaction data information of each service node, update the group interaction data information of the initial service node group to which each service node belongs; Based on the updated group interaction data of each initial service node group, the service nodes in each initial service node group are adjusted to obtain each service node group.

6. The method according to claim 5, characterized in that, The updated group interaction data information based on each initial service node group is used to adjust the grouping of service nodes in each initial service node group to obtain each service node group, including: Determine the interaction data range corresponding to each of the initial service node groups. The interaction data range is used to describe the upper limit value and the lower limit value of the interaction data information of the initial service node group. Based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, the service nodes in each initial service node group are grouped and adjusted to obtain each service node group.

7. The method according to claim 6, characterized in that, The process involves adjusting the service nodes within each initial service node group based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, thereby obtaining each service node group, including: If there is updated group interaction data information for the initial service node group that falls within the interaction data range corresponding to the initial service node group, then the initial service node group is determined as the service node group.

8. The method according to claim 6, characterized in that, The process involves adjusting the service nodes within each initial service node group based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group, thereby obtaining each service node group, including: If there is updated group interaction data information for the initial service node group that is greater than the upper limit of the interaction data range corresponding to the initial service node group, the interaction data information of each service node in the initial service node group is sorted. Based on the sorting results, a first service node is determined from the initial service node group, and the first service node is deleted from the initial service node group to obtain the service node group.

9. The method according to claim 8, characterized in that, The step of adjusting the service nodes in each initial service node group based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group to obtain each service node group further includes: If there is updated group interaction data information for the initial service node group that is less than the lower limit of the interaction data range corresponding to the initial service node group, the first service node is added to the initial service node group, and the service node group is obtained.

10. The method according to claim 9, characterized in that, The step of adjusting the service nodes in each initial service node group based on the interaction data range corresponding to each initial service node group and the updated group interaction data information of each initial service node group to obtain each service node group further includes: If, after adding the first service node to the initial service node group, it is determined that there are multiple first service nodes that have not been added to the initial service node group, the first service nodes that have not been added are merged to obtain the service node group; If, after adding the first service node to the initial service node group, it is determined that there are initial service node groups that have not added the first service node, these initial service node groups that have not added the first service node are merged to obtain the service node group.

11. The method according to claim 1, characterized in that, The method further includes: The interactive messages sent by each of the online objects are translated based on the static translated text, and the first interactive message is determined; Obtain temporary translated text, which is used to provide the first interactive message with an adjusted first translation text in multiple preset languages; The static translation text is updated based on the temporary translation text, and the interactive messages sent by each of the online objects are translated based on the updated static translation text.

12. The method according to claim 11, characterized in that, The interactive messages have corresponding message identifiers; The step of updating the static translated text based on the temporary translated text includes: Obtain the first interactive message and determine the first message identifier corresponding to the first interactive message; Based on the first message identifier, obtain the first translated text from the temporary translated text; Based on the first message identifier, determine the second translated text in multiple preset languages ​​corresponding to the first interactive message from the static translated text, and update the second translated text based on the first translated text.

13. An interactive message distribution device, characterized in that, The device includes: The acquisition module is used to acquire the number of online objects in each service node, as well as the interaction data information of each service node. The interaction data information is used to describe the speed at which each online object in the service node sends interaction messages. The grouping module is used to group the service nodes based on the number of online objects in each service node and the interaction data information of each service node, to obtain multiple service node groups, wherein each service node group includes at least one of the service nodes. The message distribution module is used to distribute interactive messages sent by each of the online objects to each of the service node groups.

14. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 12.

15. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 12.