CN111628877B - Group message sending method, device and system - Google Patents
Group message sending method, device and system Download PDFInfo
- Publication number
- CN111628877B CN111628877B CN202010451251.7A CN202010451251A CN111628877B CN 111628877 B CN111628877 B CN 111628877B CN 202010451251 A CN202010451251 A CN 202010451251A CN 111628877 B CN111628877 B CN 111628877B
- Authority
- CN
- China
- Prior art keywords
- message
- splitting
- group
- sub
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention relates to a group message sending method, a device and a system, which are used for receiving a group message which is sent by a message sending end and carries all user identifications in a group; performing message splitting on the group message according to the number of users in the group, a preset splitting total level and a user number upper limit to obtain at least two group sub-messages carrying user identification groups; and sending each group sub-message to a message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message. By adopting the technical scheme, the group message can be subjected to message splitting so as to be divided into a plurality of group sub-messages, and each group sub-message carries different user identification groups, so that the plurality of group sub-messages can be simultaneously subjected to message sending according to the corresponding user identification groups.
Description
Technical Field
The invention relates to the technical field of instant messaging, in particular to a group message sending method, device and system.
Background
Instant Messaging (Instant Messaging) is a real-time communication system that allows two or more people to communicate text messages, files, voice and video in real time using a network. Instant messaging is the most popular communication method on the Internet at present, and various instant messaging software also comes out endlessly.
In the prior art, a write diffusion mode is generally adopted for sending group messages in instant messaging software, and write diffusion is to actively write messages into a message list of subscribers (group members), but when there are many subscribers, that is, there are many group members, many write operations need to be executed in sequence, so that the write operations are very heavy, the write diffusion pressure is high, and the message sending delay and the message processing time are long due to the fact that the write operations are executed in sequence.
Disclosure of Invention
In view of the above, an object of the present invention is to provide a group message sending method, apparatus and system, so as to solve the problems in the prior art that when there are many group members, many write operations need to be sequentially executed, which results in heavy write operations and large write diffusion pressure, and further, the sequential execution of write operations causes message sending delay and long message processing time.
In order to achieve the purpose, the invention adopts the following technical scheme:
a group message sending method, comprising:
receiving a group message which is sent by a message sending end and carries all user identifications in a group;
performing message splitting on the group message according to the number of users in the group, a preset splitting total level and a preset user number upper limit to obtain at least two group sub-messages carrying user identification groups;
and sending each group sub-message to a message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message.
Further, in the group message sending method, the splitting the group message according to the number of users in the group, a preset splitting total level and a preset user number upper limit to obtain at least two group sub-messages carrying the user identifier group includes:
taking the group message as a message to be split;
according to the number of the users, the upper limit of the number of the users, the total splitting level and the current splitting level, message splitting is carried out on the message to be split by using a message splitting rule to obtain a splitting sub-message carrying a splitting identification group;
determining whether the current split level reaches the split total level;
if the current splitting level does not reach the splitting total level, taking the current identification number of the user identification in the splitting identification group as the user number, taking the splitting sub-message as the message to be split, and continuing to perform message splitting on the message to be split by using a message splitting rule;
and if the current splitting level reaches the splitting total level, taking the splitting sub-message carrying the splitting identification group as a group sub-message carrying the user identification group.
Further, in the group message sending method, the splitting the message to be split by using a message splitting rule according to the number of users, the upper limit of the number of users, the total splitting level, and the current splitting level to obtain a splitting sub-message carrying a splitting identifier group includes:
determining the current splitting number of the splitting sub-message by using a message splitting rule according to the user number, the user number upper limit, the splitting total level and the current splitting level;
determining the current identifier number of the user identifiers in the splitting identifier group carried by each splitting information according to the current splitting number and the user number;
and splitting the message to be split according to the current splitting number and the current identification number corresponding to each split sub-message to obtain the split sub-message carrying the split identification group.
Further, in the group message sending method, before the determining whether the current splitting level reaches the splitting total level, the method further includes:
judging whether the current identification number of the user identification in the splitting identification group carried by each splitting information is higher than the upper limit of the user number;
and if the current identification number is not higher than the upper limit of the number of users, taking the split sub-message carrying the split identification group corresponding to the current identification number as a group sub-message carrying the user identification group.
Further, in the group message sending method, the user identifier group includes at least one user identifier.
The present invention also provides a group message sending apparatus, including:
the receiving module is used for receiving the group message which is sent by the message sending end and carries all the user identifications in the group;
the message splitting module is used for splitting the group message according to the number of users in the group, a preset splitting total level and a user number upper limit to obtain at least two group sub-messages carrying the user identification group;
and the sending module is used for sending each group sub-message to a message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message.
Further, in the group message sending device, the message splitting module includes: the device comprises a first determining unit, a splitting judging unit and a second determining unit;
the first determining unit is used for taking the group message as a message to be split;
the splitting unit is used for splitting the message to be split by using a message splitting rule according to the number of the users, the upper limit of the number of the users, the total splitting level and the current splitting level to obtain a splitting sub-message carrying a splitting identifier group;
the splitting judgment unit is used for judging whether the current splitting level reaches the splitting total level;
the second determining unit is configured to, if the current splitting level does not reach the splitting total level, use the current identifier number of the user identifier in the splitting identifier group as a user number, use the splitting sub-message as the message to be split, and continue to perform message splitting on the message to be split by using a message splitting rule;
the second determining unit is further configured to, if the current splitting level reaches the total splitting level, use the splitting sub-message carrying the splitting identifier group as a group sub-message carrying the user identifier group.
Further, in the group message sending apparatus, the splitting unit includes: a quantity determining subunit and a message splitting subunit;
the number determining subunit is configured to determine, according to the number of users, the upper limit of the number of users, the total splitting hierarchy, and the current splitting hierarchy, a current splitting number of the split sub-message by using a message splitting rule; determining the current identifier number of the user identifiers in the splitting identifier group carried by each splitting information according to the current splitting number and the user number;
and the message splitting subunit is configured to perform message splitting on the message to be split according to the current splitting number and the current identifier number corresponding to each splitting sub-message, so as to obtain the splitting sub-message carrying the splitting identifier group.
Further, in the group message sending device, the message splitting module further includes: a quantity judgment unit and a third determination unit;
the number judgment unit is configured to judge whether the current identifier number of the user identifier in the split identifier group carried by each split identifier message is higher than the upper limit of the number of users;
and the third determining unit is configured to, if the current identifier number is not higher than the upper limit of the number of users, use the split sub-message carrying the split identifier group corresponding to the current identifier number as a group sub-message carrying the user identifier group.
The invention also provides a group message sending system, comprising: the system comprises a message sending end, a server and a plurality of message receiving ends;
the message sending end and the message receiving end are respectively connected with the server;
the message sending terminal is used for sending the group message input by the message sending user to the server;
the server is used for executing the group message sending method;
and the message receiving end is used for receiving the group sub-message sent by the server and displaying the group sub-message to the group user corresponding to the message receiving end.
The invention provides a group message sending method, a device and a system, which are used for receiving a group message which is sent by a message sending end and carries all user identifications in a group; performing message splitting on the group message according to the number of users in the group, a preset splitting total level and a user number upper limit to obtain at least two group sub-messages carrying user identification groups; and sending each group sub-message to a message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message. By adopting the technical scheme, the group message can be subjected to message splitting so as to be divided into a plurality of group sub-messages, and each group sub-message carries different user identification groups, so that the plurality of group sub-messages can be simultaneously subjected to message sending according to the corresponding user identification groups.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a flowchart provided by an embodiment of a group message sending method of the present invention;
fig. 2 is a flow chart provided by another embodiment of the group message sending method of the present invention;
FIG. 3 is a schematic diagram of a group messaging device according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram provided by an embodiment of the group messaging system of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be described in detail below. It is to be understood that the described embodiments are merely exemplary of the invention, and not restrictive of the full scope of the invention. All other embodiments, which can be derived by a person skilled in the art from the examples given herein without any inventive step, are within the scope of the present invention.
Fig. 1 is a flowchart provided in an embodiment of a method for sending a group message according to the present invention, and as shown in fig. 1, the method for sending a group message according to the present embodiment specifically includes the following steps:
s101, receiving a group message which is sent by a message sending end and carries all user identifications in a group;
in this embodiment, if the message sending user needs to send a group message in a group, the message sending end may be used to send a group message to the group, where the group message carries user identifiers of all group members in the group. If the messaging user also belongs to a group member, the group message need not carry the user identification of the messaging user.
S102, performing message splitting on the group message according to the number of users in the group, a preset splitting total level and a user number upper limit to obtain at least two group sub-messages carrying user identification groups;
after receiving a group message carrying a user identifier, splitting the group message according to the number of users in the group, a preset splitting total level and a preset upper user limit, thereby obtaining group sub-messages carrying the user identifier groups, wherein the group sub-messages at least comprise two groups, and the user identifier groups carried by each group sub-message are different. All the user identifications in the group are dispersed into each user identification group, and each user identification group at least comprises one user identification.
S103, each group sub-message is sent to a message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message.
And after group sub-messages carrying the user identification groups are obtained, each group sub-message is sent to a message receiving end corresponding to the user identification in the user identification groups carried by the group sub-messages. In this embodiment, at least two group sub-messages can be obtained, the sending of the plurality of group sub-messages to the message receiving end can be performed simultaneously, and the sending of each group sub-message to the message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message is performed sequentially, so that the group message is divided into the plurality of group sub-messages, the number of the user identifiers carried by each group sub-message is reduced, the simultaneous sending of the plurality of group sub-messages can be realized, the pressure of write diffusion can be reduced, the message sending speed is increased, the message sending delay is reduced, and the message processing time is reduced.
In addition, the present embodiment may set the upper limit of the number of users of the split group sub-message to limit the number of users sending each group sub-message, thereby reducing the pressure of write diffusion, increasing the message processing speed, reducing the time consumption for message processing, increasing the message sending rate, and reducing the message sending delay.
Further, fig. 2 is a flowchart provided in another embodiment of the group message sending method of the present invention, and as shown in fig. 2, the group message is split according to the number of users in the group, a preset splitting total level and a preset upper limit of the number of users, so as to obtain at least two group sub-messages carrying the user identifier group, and the specific steps are as follows:
s201, taking the group message as a message to be split;
and after receiving the group message carrying the user identification, taking the group message as a message to be split so as to split the message.
S202, according to the number of users, the upper limit of the number of users, the total splitting level and the current splitting level, message splitting is carried out on the message to be split by using a message splitting rule to obtain a splitting sub-message carrying a splitting identification group;
and according to the number of users, the upper limit of the number of users, the total splitting level and the current splitting level, message splitting is carried out on the messages to be split by using a message splitting rule, so that at least two splitting sub-messages are obtained, wherein each splitting sub-message carries a corresponding splitting identification group, and each splitting identification group at least comprises one user identification. The message splitting method comprises the following specific steps:
firstly, determining the current splitting number of split sub-messages by using a message splitting rule according to the number of users, the upper limit of the number of users, the total splitting level and the current splitting level;
in this embodiment, the number of users is the number of user identifiers carried by a message to be split, the upper limit of the number of users is the maximum number of user identifiers that can be carried by a final group sub-message, the total splitting level is the preset total number of layers for message splitting, and the current splitting level is the number of layers for currently executed message splitting. For example, when the group message is used as a message to be split to perform message splitting to generate a first split sub-message, the current splitting level is 1; if two first splitting sub-messages are generated, the two first splitting sub-messages are respectively used as messages to be split to perform message splitting to generate a plurality of second splitting sub-messages, and then the current splitting level is 2, namely the current splitting levels corresponding to the message splitting processes of the two first splitting sub-messages are both 2.
For example, the formula for the message splitting rule may be
Wherein N isSRepresenting a current number of splits to split the child message; n is a radical ofURepresenting the number of users; n is a radical ofmaxRepresents an upper limit of the number of users; l isSRepresenting a total level of splitting; l isNRepresenting the current split level. In this embodiment, the current splitting number of the split sub-message can be calculated by using the message splitting rule according to the number of users, the upper limit of the number of users, the total splitting hierarchy and the current splitting hierarchy.
Secondly, determining the current identification number of the user identification in the splitting identification group carried by each splitting sub-message according to the current splitting number and the user number;
in this embodiment, after the current splitting number of the split sub-messages is determined, the current identifier number of the user identifier in the split identifier group carried by each split sub-message is determined according to the current splitting number and the user number.
For example, if the number of users NUAn upper limit N of the number of users of 100maxTo 10, a total level L is splitSIs 2, the current split level LNAt 1, split the current number of splits N of the child messageSIs 100/(10X 2)2-1) Thus, the number of split sub-messages for the first split, i.e. the current split number, is 5. Due to the number of users NU100, therefore, the number of the user identifiers in the split identifier group (i.e. the current identifier number) carried by each split sub-message is 100/5-20. If the current identification number is determined, the current identification number cannot be equally dividedFor example, if the number of users is 102 and the number of current splits is 5, 20 user identifiers may be allocated to the split identifier groups carried by 3 split sub-messages, and 21 user identifiers may be allocated to the split identifier groups carried by the other two split sub-messages.
And thirdly, performing message splitting on the message to be split according to the current splitting number and the current identification number corresponding to each splitting sub-message to obtain the splitting sub-message carrying the splitting identification group.
In this embodiment, according to the number of users, the upper limit of the number of users, the total splitting hierarchy and the current splitting hierarchy, the current splitting number of the splitting sub-message and the current identifier number of the user identifier in the splitting identifier group carried by the splitting sub-message are calculated by using a message splitting rule, and according to the current splitting number and the current identifier number, the message splitting is performed on the message to be split, so as to obtain the splitting sub-message carrying the splitting identifier group. In the message splitting process, the specific message content is not changed, and all the user identifications carried by the message to be split are split, so that the obtained message contents of the plurality of split sub-messages are the same, and the user identifications contained in the split identification groups carried by each split sub-message are different.
S203, judging whether the current splitting level reaches a splitting total level; if yes, go to step S205; if not, executing step S204;
after the message to be split is split into a plurality of split sub-messages carrying split identifier groups, whether the current split level reaches the split total level needs to be judged so as to judge whether the message splitting is continued, and if the current split level reaches the split total level, the step S205 is executed; if the current split level does not reach the split total level, step S204 is performed.
S204, taking the current identification number of the user identifications in the splitting identification group as the user number, taking the splitting sub-message as the message to be split, and continuing to split the message to be split by using the message splitting rule;
if the current split level is judged not to reach the split levelAnd in the total splitting level, the current identification number of the user identification in the splitting identification group is used as the user number, the splitting sub-message is used as the message to be split, and the message splitting rule is continuously utilized to split the message of each splitting sub-message again. The message splitting method is the same as the above method, and is not described herein again. For example, if the number of users NUAn upper limit N of the number of users of 100maxTo 10, a total level L is splitSIs 2, the current split level LNWhen 1, split the current split number N of the sub-messageSIs 100/(10X 2)2-1) Thus, the number of split sub-messages for the first split, i.e. the current split number, is 5. Due to the number of users NU100, therefore, the number of the user identifiers in the split identifier group (i.e. the current identifier number) carried by each split sub-message is 100/5-20. At this time, if the current splitting level does not reach the splitting total level, the current identification number is used as the user number, each splitting sub-message is used as the message to be split to perform the second message splitting, namely the current splitting level LNWhen the number of splits is 2, the current split number of the split sub-message of the second time is 20/(10 × 2)2-2) Therefore, the number of the split sub-messages of the second time is 2, that is, each split sub-message of the first time can be split into 2 split sub-messages of the second time. The number of users is 20, that is, the number of user identifiers in the split identifier group carried by each second split sub-message is 10.
S205, the splitting sub-message carrying the splitting identification group is used as a group sub-message carrying the user identification group.
If the current splitting level reaches the splitting total level, the splitting sub-message is used as a group sub-message, and the splitting identification group carried by the splitting sub-message is used as a user identification group carried by the group sub-message. For example, the above pair takes the split sub-message as the message to be split, the current identifier number as the number of users, and after the message to be split is continuously split, the current splitting level is 2, the obtained current splitting number is 2, and the current identifier number in the split identifier group of the split sub-message is 10. And when the current splitting level reaches the splitting total level, the message splitting is not required, the split sub-messages are all used as group sub-messages, and the split identification groups carried by the split sub-messages are all used as user identification groups carried by the group sub-messages. When the current splitting level is 1, the obtained splitting sub-messages are 5, and when the current splitting level is 2, the 5 splitting sub-messages in the first splitting level are respectively split into 2, wherein each splitting sub-message carries 20 user identifiers, and each splitting sub-message is split into 2 again, so that at this time, a total of 10 splitting sub-messages are obtained, and each splitting sub-message carries 10 user identifiers. Therefore, the number of the obtained group sub-messages is also 10, and the user identification group carried by each group sub-message contains 10 user identifications.
The group message sending method of this embodiment receives a group message carrying all user identifiers in a group sent by a message sending end; performing message splitting on the group message according to the number of users in the group, a preset splitting total level and a user number upper limit to obtain at least two group sub-messages carrying user identification groups; and sending each group sub-message to a message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message. By adopting the technical scheme, the group message can be divided into a plurality of group sub-messages, and each group sub-message carries different user identification groups, so that the plurality of group sub-messages can simultaneously carry out message sending according to the corresponding user identification groups, and compared with the prior art in which the group message is sent to the user side corresponding to the user identification in sequence, the method can reduce the pressure of write diffusion and the message sending delay condition, and reduce the time consumption for message processing.
Further, before determining whether the current split level reaches the split total level, the method further includes:
firstly, judging whether the current identification number of user identifications in a splitting identification group carried by each splitting information is higher than the upper limit of the number of users;
in this embodiment, after obtaining a plurality of splitting sub-messages carrying the splitting identifier groups, the current identifier number of the user identifier in the splitting identifier group carried by each splitting sub-message needs to be compared with the preset upper limit of the number of users, and whether the current identifier number is higher than the upper limit of the number of users is determined, so as to determine whether message splitting needs to be performed on the splitting sub-message.
Secondly, if the number of the current identifications is not higher than the upper limit of the number of users, the splitting sub-message carrying the splitting identification group corresponding to the number of the current identifications is used as a group sub-message carrying the user identification group.
If the current identification number of the user identification in the splitting identification group carried by the splitting sub-message is judged to be not higher than the upper limit of the number of the users, the number of the user identification carried by the splitting sub-message is shown to be in accordance with the upper limit number of the message processing, so that the splitting sub-message does not need to continue the message splitting even if the current splitting level does not reach the splitting total level, the splitting sub-message is directly used as the group sub-message, and the splitting identification group carried by the splitting sub-message is used as the user identification group of the group sub-message. In this embodiment, each obtained splitting sub-message needs to be judged, and only the splitting sub-message whose current identification number is not higher than the upper limit of the number of users does not need to be split.
And if the current identification number of the user identification in the splitting identification group carried by the splitting sub-message is judged to be higher than the upper limit of the user number, continuing to execute the next step, and judging whether the current splitting level reaches the splitting total level.
The step of "determining whether the current identifier number of the user identifier in the splitting identifier group carried by each splitting sub-message is higher than the upper limit of the number of users" may also be performed after "determining that the current splitting level does not reach the splitting total level", that is, if it is determined that the current splitting level does not reach the splitting total level, it is determined whether the current identifier number of the user identifier in the splitting identifier group carried by each splitting sub-message is higher than the upper limit of the number of users, and if it is determined that the current identifier number of the user identifier in the splitting identifier group carried by the splitting sub-message is higher than the upper limit of the number of users, then the current identifier number of the user identifier in the splitting identifier group is used as the number of users, the splitting sub-message is used as the message to be split, and the message splitting is performed on the message to be split by using the message splitting rule.
For example, 8 users in the group, of which 1 is a message sending user, send group information to the remaining 7 users, so that the number of users is 1, the total splitting level is preset to be 2, and the upper limit of the number of users is 1. And when the first splitting level is reached, the current splitting number of the splitting sub-messages is calculated to be 4, the current identification numbers corresponding to the 4 splitting sub-messages are calculated to be 2, 2 and 1 respectively, the current splitting level does not reach the splitting total level, whether the current identification number corresponding to each splitting sub-message is higher than the upper limit of the number of users is judged, the current identification number corresponding to the fourth splitting sub-message is 1 and is not higher than the upper limit of the number of users, and therefore the fourth splitting sub-message does not need to be split. And at the second split level, only the first three split sub-messages need to be subjected to message splitting continuously. Therefore, the message splitting can be avoided from being carried out again on the sub-messages which do not need to carry out the message splitting, the time consumption of message processing can be reduced, and the message processing speed can be improved.
In order to be more comprehensive, the application also provides a group message sending device corresponding to the group message sending method provided by the embodiment of the invention.
Fig. 3 is a schematic structural diagram provided by an embodiment of the group message sending apparatus of the present invention, and as shown in fig. 3, the group message sending apparatus of the present embodiment includes: a receiving module 101, a message splitting module 102, and a sending module 103.
A receiving module 101, configured to receive a group message carrying all user identifiers in a group sent by a message sending end;
the message splitting module 102 is configured to split a group message according to the number of users in the group, a preset splitting total level and a preset upper limit of the number of users, so as to obtain at least two group sub-messages carrying a user identifier group;
the sending module 103 is configured to send each group sub-message to a message receiving end corresponding to a user identifier in a user identifier group carried by the group sub-message.
In the group message sending apparatus of this embodiment, the receiving module 101 receives a group message carrying all user identifiers in a group sent by a message sending end; the message splitting module 102 splits the group message according to the number of users in the group, a preset splitting total level and a user number upper limit to obtain at least two group sub-messages carrying the user identification group; the sending module 103 sends each group sub-message to a message receiving end corresponding to a user identifier in a user identifier group carried by the group sub-message. By adopting the technical scheme, the group message can be subjected to message splitting so as to be divided into a plurality of group sub-messages, and each group sub-message carries different user identification groups, so that the plurality of group sub-messages can be simultaneously subjected to message sending according to the corresponding user identification groups.
Further, in the group message sending apparatus of this embodiment, the message splitting module 102 includes: the device comprises a first determining unit, a splitting judging unit and a second determining unit;
the first determining unit is used for taking the group message as a message to be split;
the splitting unit is used for splitting the message to be split by using a message splitting rule according to the number of users, the upper limit of the number of users, the splitting total level and the current splitting level to obtain a splitting sub-message carrying a splitting identifier group;
the splitting judgment unit is used for judging whether the current splitting level reaches the splitting total level;
a second determining unit, configured to, if the current splitting level does not reach the splitting total level, use the current identifier number of the user identifiers in the splitting identifier group as the user number, use the splitting sub-message as a message to be split, and continue to perform message splitting on the message to be split by using the message splitting rule;
the second determining unit is further configured to, if the current splitting level reaches the splitting total level, use the splitting sub-message carrying the splitting identifier group as a group sub-message carrying the user identifier group.
Further, in the group message sending apparatus of this embodiment, the splitting unit includes: a quantity determining subunit and a message splitting subunit;
the number determining subunit is used for determining the current splitting number of the splitting sub-message by using a message splitting rule according to the number of the users, the upper limit of the number of the users, the splitting total level and the current splitting level; determining the current identification number of the user identification in the splitting identification group carried by each splitting sub-message according to the current splitting number and the user number;
and the message splitting subunit is used for splitting the message to be split according to the current splitting number and the current identification number corresponding to each splitting sub-message to obtain the splitting sub-message carrying the splitting identification group.
Further, in the group message sending apparatus of this embodiment, the message splitting module 102 further includes a quantity judgment unit and a third determination unit;
the quantity judging unit is used for judging whether the current identification quantity of the user identification in the splitting identification group carried by each splitting sub-message is higher than the upper limit of the number of users;
and the third determining unit is used for taking the split sub-message carrying the split identifier group corresponding to the current identifier number as the group sub-message carrying the user identifier group if the current identifier number is not higher than the upper limit of the number of users.
The group message sending device of this embodiment may set the upper limit of the number of users of the split group sub-message to limit the number of users sending each group sub-message, thereby reducing the pressure of write diffusion, improving the message processing speed, reducing the time consumption for message processing, improving the message sending rate, and reducing the message sending delay. The number judgment unit can also judge whether the current identification number of the user identification in the splitting identification group carried by each splitting sub-message is higher than the upper limit of the number of users, so that the sub-messages which do not need to be split are prevented from being split again, the time consumption of message processing can be reduced, and the message processing rate is improved.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
Fig. 4 is a schematic structural diagram provided in an embodiment of the group message sending system of the present invention, and as shown in fig. 4, the group message sending system of this embodiment includes a message sending end 21, a server 22, and a plurality of message receiving ends 23. The message sender 21 and the message receiver 23 are connected to the server 22, respectively.
A message sending end 21, configured to send a group message input by a message sending user to a server 22;
a server 22, configured to execute the group message sending method according to the foregoing embodiment;
the message receiving end 23 is configured to receive the group sub-message sent by the server 22, and display the group sub-message to the group user corresponding to the message receiving end 23.
The message sending end 21 and the message receiving end 23 in this embodiment may be devices such as a mobile phone and a computer.
In the group message sending system of this embodiment, a message sending user sends a group message by using the message sending end 21, the server 22 receives the group message, performs message splitting on the group message to obtain at least two group sub-messages carrying user identifier groups, and sends each group sub-message to the message receiving end 23 corresponding to the user identifier in the user identifier group carried by the group sub-message. Each message receiving user views the group sub-message through the message receiving end 23. By adopting the technical scheme, the group message can be subjected to message splitting so as to be divided into a plurality of group sub-messages, and each group sub-message carries different user identification groups, so that the plurality of group sub-messages can be simultaneously subjected to message sending according to the corresponding user identification groups.
It is understood that the same or similar parts in the above embodiments may be mutually referred to, and the same or similar parts in other embodiments may be referred to for the content which is not described in detail in some embodiments.
It should be noted that the terms "first," "second," and the like in the description of the present invention are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. Further, in the description of the present invention, the meaning of "a plurality" means at least two unless otherwise specified.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps of the process, and alternate implementations are included within the scope of the preferred embodiment of the present invention in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present invention.
It should be understood that portions of the present invention may be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, the various steps or methods may be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, any one or combination of the following techniques, which are known in the art, may be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application specific integrated circuit having an appropriate combinational logic gate circuit, a Programmable Gate Array (PGA), a Field Programmable Gate Array (FPGA), or the like.
It will be understood by those skilled in the art that all or part of the steps carried by the method for implementing the above embodiments may be implemented by hardware related to instructions of a program, which may be stored in a computer readable storage medium, and when the program is executed, the program includes one or a combination of the steps of the method embodiments.
In addition, functional units in the embodiments of the present invention may be integrated into one processing module, or each unit may exist alone physically, or two or more units are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may also be stored in a computer readable storage medium.
The storage medium mentioned above may be a read-only memory, a magnetic or optical disk, etc.
In the description herein, references to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the invention. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention, and that variations, modifications, substitutions and alterations can be made to the above embodiments by those of ordinary skill in the art within the scope of the present invention.
Claims (8)
1. A group message transmission method, comprising:
receiving a group message which is sent by a message sending end and carries all user identifications in a group;
performing message splitting on the group message according to the number of users in the group, a preset splitting total level and a preset user number upper limit to obtain at least two group sub-messages carrying user identification groups;
sending each group sub-message to a message receiving end corresponding to a user identifier in a user identifier group carried by the group sub-message;
the splitting the group message according to the number of users in the group, a preset splitting total level and a preset user number upper limit to obtain at least two group sub-messages carrying user identification groups, comprising:
taking the group message as a message to be split;
according to the number of the users, the upper limit of the number of the users, the total splitting level and the current splitting level, message splitting is carried out on the message to be split by using a message splitting rule to obtain a splitting sub-message carrying a splitting identification group;
determining whether the current split level reaches the split total level;
if the current splitting level does not reach the splitting total level, taking the current identification number of the user identification in the splitting identification group as the user number, taking the splitting sub-message as the message to be split, and continuing to perform message splitting on the message to be split by using a message splitting rule;
and if the current splitting level reaches the splitting total level, taking the splitting sub-message carrying the splitting identification group as a group sub-message carrying the user identification group.
2. The method for sending the group message according to claim 1, wherein the splitting the message to be split according to the number of the users, the upper limit of the number of the users, the total splitting hierarchy and the current splitting hierarchy by using a message splitting rule to obtain a split sub-message carrying a split identifier group, comprises:
determining the current splitting number of the splitting sub-message by using a message splitting rule according to the user number, the user number upper limit, the splitting total level and the current splitting level;
determining the current identifier number of the user identifiers in the splitting identifier group carried by each splitting information according to the current splitting number and the user number;
and splitting the message to be split according to the current splitting number and the current identification number corresponding to each splitting sub-message to obtain the splitting sub-message carrying the splitting identification group.
3. The method according to claim 2, wherein before determining whether the current splitting level reaches the splitting total level, the method further comprises:
judging whether the current identification number of the user identification in the splitting identification group carried by each splitting information is higher than the upper limit of the user number;
and if the current identification number is not higher than the upper limit of the number of users, taking the split sub-message carrying the split identification group corresponding to the current identification number as a group sub-message carrying the user identification group.
4. The method according to claim 1, wherein the user id group comprises at least one of the user ids.
5. A group messaging apparatus, comprising:
the receiving module is used for receiving the group message which is sent by the message sending end and carries all the user identifications in the group;
the message splitting module is used for splitting the group message according to the number of users in the group, a preset splitting total level and a user number upper limit to obtain at least two group sub-messages carrying the user identification group;
the sending module is used for sending each group sub-message to a message receiving end corresponding to the user identifier in the user identifier group carried by the group sub-message;
the message splitting module comprises: the device comprises a first determining unit, a splitting judging unit and a second determining unit;
the first determining unit is used for taking the group message as a message to be split;
the splitting unit is used for splitting the message to be split by using a message splitting rule according to the number of the users, the upper limit of the number of the users, the total splitting level and the current splitting level to obtain a splitting sub-message carrying a splitting identifier group;
the splitting judgment unit is used for judging whether the current splitting level reaches the splitting total level;
the second determining unit is configured to, if the current splitting level does not reach the splitting total level, use the current identifier number of the user identifier in the splitting identifier group as a user number, use the splitting sub-message as the message to be split, and continue to perform message splitting on the message to be split by using a message splitting rule;
the second determining unit is further configured to, if the current splitting level reaches the total splitting level, use the splitting sub-message carrying the splitting identifier group as a group sub-message carrying the user identifier group.
6. The group messaging device of claim 5, wherein the splitting unit comprises: a quantity determining subunit and a message splitting subunit;
the number determining subunit is configured to determine, according to the number of users, the upper limit of the number of users, the total splitting hierarchy, and the current splitting hierarchy, a current splitting number of the split sub-message by using a message splitting rule; determining the current identifier number of the user identifiers in the splitting identifier group carried by each splitting information according to the current splitting number and the user number;
and the message splitting subunit is configured to perform message splitting on the message to be split according to the current splitting number and the current identifier number corresponding to each splitting sub-message, so as to obtain the splitting sub-message carrying the splitting identifier group.
7. The group message transmission device as claimed in claim 5, wherein the message splitting module further comprises: a quantity judgment unit and a third determination unit;
the number judgment unit is configured to judge whether the current identifier number of the user identifier in the split identifier group carried by each split identifier message is higher than the upper limit of the number of users;
and the third determining unit is configured to, if the current identifier number is not higher than the upper limit of the number of users, use the split sub-message carrying the split identifier group corresponding to the current identifier number as a group sub-message carrying the user identifier group.
8. A group messaging system, comprising: the system comprises a message sending end, a server and a plurality of message receiving ends;
the message sending end and the message receiving end are respectively connected with the server;
the message sending terminal is used for sending the group message input by the message sending user to the server;
the server, configured to perform the group message sending method according to any one of claims 1 to 4;
and the message receiving end is used for receiving the group sub-message sent by the server and displaying the group sub-message to the group user corresponding to the message receiving end.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010451251.7A CN111628877B (en) | 2020-05-25 | 2020-05-25 | Group message sending method, device and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010451251.7A CN111628877B (en) | 2020-05-25 | 2020-05-25 | Group message sending method, device and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111628877A CN111628877A (en) | 2020-09-04 |
CN111628877B true CN111628877B (en) | 2022-07-01 |
Family
ID=72260736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010451251.7A Active CN111628877B (en) | 2020-05-25 | 2020-05-25 | Group message sending method, device and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111628877B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106972941A (en) * | 2017-04-28 | 2017-07-21 | 维沃移动通信有限公司 | A kind of group chat method and mobile terminal |
CN109347647A (en) * | 2018-12-21 | 2019-02-15 | 北京云中融信网络科技有限公司 | Group message distribution method and device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104660483B (en) * | 2013-11-21 | 2020-05-12 | 腾讯科技(上海)有限公司 | Group communication method, server and system |
-
2020
- 2020-05-25 CN CN202010451251.7A patent/CN111628877B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106972941A (en) * | 2017-04-28 | 2017-07-21 | 维沃移动通信有限公司 | A kind of group chat method and mobile terminal |
CN109347647A (en) * | 2018-12-21 | 2019-02-15 | 北京云中融信网络科技有限公司 | Group message distribution method and device |
Also Published As
Publication number | Publication date |
---|---|
CN111628877A (en) | 2020-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109378000A (en) | Voice awakening method, device, system, equipment, server and storage medium | |
CN107483320B (en) | Group creation method and server | |
US20120072507A1 (en) | System and method of posting messages to different messaging services | |
US20080172463A1 (en) | Method and System For Providing Group Chat Service | |
EP2283662B1 (en) | Call group management using the session initiation protocol | |
US20090210497A1 (en) | Selective instant messaging (im) notifications based on sender/receiver relationships | |
US20090313554A1 (en) | Email communications that include a thread status indicator | |
CN110851035B (en) | Session message display method and device, electronic equipment and storage medium | |
CN103632670A (en) | Voice and text message automatic conversion system and method | |
US9762518B2 (en) | Cooperative session-based filtering | |
CN108206742B (en) | Message sending method, device, server and system | |
WO2007099424A1 (en) | Method, mobile terminal, system and computer program product for real time content attributing | |
CN103906012A (en) | Information sending method and device | |
CN105262881A (en) | Communication control method and electronic equipment | |
CN106411713B (en) | State notification method and server | |
CN112860431B (en) | Connection method, system, equipment and storage medium of micro service node | |
CN111628877B (en) | Group message sending method, device and system | |
CN106657172A (en) | Method and device for realizing information push | |
CN109120743B (en) | Contact adding method and device, electronic equipment and storage medium | |
CN103905661A (en) | Message forwarding method and cloud server | |
CN106453639A (en) | Message synchronization method and message synchronization device | |
CN114710496B (en) | Multi-node load balancing method and device | |
CN103905483A (en) | Audio and video sharing method, equipment and system | |
CN107124353B (en) | Message processing method and device, computer device and storage medium | |
CN112968826A (en) | Voice interaction method and device and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |