CN106549988B - Group joining method, device and system - Google Patents
Group joining method, device and system Download PDFInfo
- Publication number
- CN106549988B CN106549988B CN201510595231.6A CN201510595231A CN106549988B CN 106549988 B CN106549988 B CN 106549988B CN 201510595231 A CN201510595231 A CN 201510595231A CN 106549988 B CN106549988 B CN 106549988B
- Authority
- CN
- China
- Prior art keywords
- group
- topic
- user account
- server
- information
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1059—Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
-
- 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]
- H04L51/046—Interoperability with other network applications or services
-
- 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/52—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
Abstract
The invention discloses a group joining method, a group joining device and a group joining system, and belongs to the technical field of communication. The invention receives the joining request initiated by the client through the corresponding user account; detecting whether each group in a group list corresponding to the topic ID is in a full member state; if all groups in the group list corresponding to the topic ID are in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID; adding the user account to the new group; the problem that when the number of group members reaches the maximum upper limit of a group, a new user account cannot join the group, so that the new user account cannot discuss topics in the group is solved; when the group is in a full state, the server automatically creates a new group for the same topic and adds the user account number to the new group, so that the number of the user account numbers participating in the discussion of the same topic is unlimited.
Description
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a method, an apparatus, and a system for joining a group.
Background
The Instant Messaging (IM) technology refers to a technology in which a plurality of user accounts are in a virtual group and multi-user real-time communication is realized through the internet, and in the technology, a virtual group needs to be created first.
In the prior art, a user account a initiates a request for creating a group from an IM client to a server, the server creates a group with a unique ID (Identification) in a local storage, the group member list includes the user account a, and there are two ways for the user account B to join the group: the method comprises the steps that in the first mode, the group ID is obtained, and the server is applied to join the group according to the group ID; in the second mode, the user account A of the member in the group invites the user account B to join the group to the server.
In the process of implementing the invention, the inventor finds that the prior art has at least the following problems:
because each group created by the server and having a unique ID has a certain limit on the number of group members, when the number of group members reaches the maximum upper limit that the group can bear, a new user account cannot join the group, so that the new user account cannot discuss topics in the group.
Disclosure of Invention
In order to solve the problem that when the number of group members reaches the maximum upper limit that a group can bear, a new user account cannot be added to the group, so that the new user account cannot perform topic discussion in the group, embodiments of the present invention provide a group adding method, device and system. The technical scheme is as follows:
according to a first aspect of the present invention, there is provided a method of joining a group, the method comprising:
receiving a joining request initiated by a client through a corresponding user account, wherein the joining request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID;
detecting whether each group in the group list corresponding to the topic ID is in a full member state;
if each group in the group list corresponding to the topic ID is in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID;
adding the user account to the new group.
According to a second aspect of the present invention, there is provided a group joining apparatus, the apparatus comprising:
a request receiving module; the system comprises a client, a server and a server, wherein the client is used for receiving a joining request initiated by a corresponding user account, and the joining request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID;
a state detection module, configured to detect whether each group in the group list corresponding to the topic ID is in a full member state;
a group creating module, configured to create a new group when each group in the group list corresponding to the topic ID is in a full state, generate a group ID of the new group, and add the group ID to the group list corresponding to the topic ID;
and the account adding module is used for adding the user account to the new group.
According to a third aspect of the present invention, there is provided a group joining system, the system comprising: a server and a client;
the server comprises a group joining device as described in the second aspect above;
the client is used for initiating a joining request of the user account to the server, and the client logs in at least one user account.
The technical scheme provided by the embodiment of the invention has the following beneficial effects:
receiving a joining request initiated by a client through a corresponding user account, wherein the joining request carries a topic identification ID; at least one group is corresponding to the group list corresponding to the topic ID; detecting whether each group in a group list corresponding to the topic ID is in a full member state; if all groups in the group list corresponding to the topic ID are in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID; adding the user account to the new group; the problem that when the number of group members reaches the maximum upper limit which can be borne by a group, a new user account cannot be added into the group, so that the new user account cannot carry out topic discussion in the group is solved; when the group is in a full state, the server can automatically create a new group for the same topic and add the user account number to the new group, so that the number of the user account numbers participating in the discussion of the same topic is unlimited.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a schematic diagram of an implementation environment provided by an embodiment of the invention;
FIG. 2 is a flowchart of a method for joining a group according to an embodiment of the present invention;
FIG. 3A is a flowchart of a method for joining a group according to another embodiment of the present invention;
FIG. 3B is a flowchart of a method for group merging according to an embodiment of the present invention;
FIG. 4A is a schematic diagram illustrating the variation of groups in the group list corresponding to topic A in one embodiment of the present invention;
FIG. 4B is a flowchart illustrating a method according to the sub-steps of step 311 in the embodiment of FIG. 3A;
FIG. 4C is a flowchart of a method for joining a group according to another embodiment of the present invention;
FIG. 5A is a flowchart of a method for joining a group according to another embodiment of the present invention;
FIG. 5B is a flowchart of a method for group merging according to another embodiment of the present invention;
FIG. 6A is a method flow diagram illustrating the substeps of step 523 in the embodiment of FIG. 5A of the present invention;
FIG. 6B is a flowchart of a method for joining a group according to another embodiment of the present invention;
fig. 7 is a block diagram illustrating a structure of a device joining a group according to an embodiment of the present invention;
fig. 8 is a block diagram of a group joining device according to another embodiment of the present invention;
fig. 9 is a block diagram of a group joining device according to another embodiment of the present invention;
fig. 10 is a block diagram of a group joining system according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
Referring to fig. 1, a schematic structural diagram of an implementation environment according to an embodiment of the invention is shown. The implementation environment includes: a terminal 120 and a server 140.
The terminal 120 may be a mobile phone, a tablet computer, an e-book reader, an MP3(Moving Picture experts Group Audio Layer III, mpeg compression standard Audio Layer 3) player, an MP4(Moving Picture experts Group Audio Layer IV, mpeg compression standard Audio Layer 4) player, a laptop computer, a desktop computer, and the like. The terminal 120 has a communication application installed therein, which may be an instant communication application, a social application, or a voice communication application. The communication application is an application that performs text or voice communication in a group. For example, the communication application is an instant messenger program QQ, a microblog, a WeChat, or the like.
The terminal 120 runs an application client 122 (not shown) in installation, and the client 122 logs in one user account or logs in a plurality of user accounts.
The terminal 120 and the server 140 establish a connection therebetween through a wireless network or a wired network. The information issued by the terminal 120 is processed by the server 140 and then sent to other clients corresponding to the user accounts in the corresponding group.
Server 140 is a backend server for communication class applications. The server 140 may be a server, a server cluster composed of a plurality of servers, or a cloud computing center.
The server 140 may include: a group logic server 141, a topic server 142, and a group data server 143.
The terminal 120 establishes a connection with the group logic server 141, and the group logic server 141 is configured to process a request and all service logics sent by the terminal 120, manage requests and reports of the topic server 142 and the group data server 143, and communicate with the topic server 142 and the group data server 143.
The topic server 142 establishes a connection with the group logic server 141, and the topic server 142 is used for storing topic information and a group list corresponding to each topic, and providing an increasing, deleting, modifying and checking protocol for each group in the group list.
The group data server 143 establishes connection with the group logic server 141, and the group data server 143 is used for storing group information and a group member list and providing an increasing, deleting, modifying and checking protocol for each group; and at the same time, to process group information sent by the terminal 120, query a local member list, and so on.
Optionally, the server 140 may further include a message server 144, which establishes a connection with the group data server 143, and is configured to send information in the group data server 143 to a user account in a target group, so as to implement diffusion of group information.
Referring to fig. 2, a flowchart of a method for joining a group according to an embodiment of the present invention is shown. The present embodiment is illustrated by applying the group joining method to the server 140 shown in fig. 1. The method comprises the following steps:
the method comprises the steps that a client side obtains a joining request of a user account to a certain topic, the client side sends the obtained joining request to a server, the server receives the joining request sent by the client side, the joining request carries the topic ID, and a group list corresponding to the topic ID at least comprises one group.
according to the received joining request, the server acquires a group list corresponding to the topic ID in the joining request, simultaneously acquires all group information in the group list, and detects the number of user accounts in all groups and whether all groups are in a full state.
if the server finds that at least one group with less than full members exists in the group list corresponding to the topic ID after detection, the server selects one account number distributed to the user initiating the join request from one or more groups with less than full members.
Step 204, if each group in the group list corresponding to the topic ID is in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID;
if the server finds that all the groups in the group list corresponding to the topic ID are in the full state after detection, the server creates a new group, generates a group ID corresponding to the new group, and simultaneously adds the group ID of the new group to the group list corresponding to the topic ID, namely, a new group is added to the group list corresponding to the topic ID.
Such as: assuming that a group 1 and a group 2 exist in a group list corresponding to the topic A, and the maximum value of the number of user accounts in the group 1 and the group 2 is 100; when the client initiates a request for joining the topic a to the server through the corresponding user account "zhang san", the server first finds the group 1 and the group 2 according to the topic a, and finds that 100 user accounts are already participating in the discussion in each of the group 1 and the group 2 according to the detection, the server creates a new group 3 for zhang san "and joins the group 3 to the group list of the topic a, that is, the group 1, the group 2, and the group 3 exist in the group list of the topic a at the same time.
After adding the created new group to the group list corresponding to the topic ID, the server allocates the new group to the user account initiating the join request, so that the user account joins the group in the group list corresponding to the topic ID and participates in the discussion of the topic.
In summary, in the group joining method provided in this embodiment, a joining request initiated by a client through a corresponding user account is received, where the joining request carries a topic identification ID; at least one group is corresponding to the group list corresponding to the topic ID; detecting whether each group in a group list corresponding to the topic ID is in a full member state; if all groups in the group list corresponding to the topic ID are in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID; adding the user account to the new group; the problem that when the number of group members reaches the maximum upper limit which can be borne by a group, a new user account cannot be added into the group, so that the new user account cannot carry out topic discussion in the group is solved; when the group is in a full state, the server can automatically create a new group for the same topic and add the user account number to the new group, so that the number of the user account numbers participating in the discussion of the same topic is unlimited.
Referring to fig. 3A, a flowchart of a method for joining a group according to another embodiment of the invention is shown. The embodiment is illustrated by applying the join group method to the implementation environment shown in fig. 1. The method comprises the following steps:
the server receives a topic creation request, wherein the topic creation request is initiated by the client through a corresponding user account or is configured by a background administrator.
The step comprises at least one of the following two substeps:
firstly, a user sets a topic according to own interests and hobbies, and the user initiates a request for creating the topic to a server through a client corresponding to the user account of the user;
second, the background manager sets a topic according to current trending news, trending entertainment bagua, or military politics, and initiates a request for creating the topic to the server through a background management device (not shown in fig. 1).
the server receives a topic creating request initiated by the client or the background management equipment, and generates a corresponding topic ID according to the topic creating request. The server creates a request according to different topics and generates a unique corresponding topic ID.
after generating the corresponding topic ID, the server will actively create an initial group for the topic, and generate a corresponding group ID for the initial group.
after generating the group ID of the initial group, the server adds the group ID of the initial group to the group list corresponding to the topic ID, and at this time, only the group ID of the initial group exists in the group list corresponding to the topic ID.
After the server adds the group ID of the initial group to the group list corresponding to the topic ID, a signal of successfully creating the topic and the group is fed back to the client or the background management device.
305, receiving a join request initiated by a client through a corresponding user account, wherein the join request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID;
the method comprises the steps that a client side obtains a joining request of a user account to a certain topic, the client side sends the obtained joining request to a server, the server receives the joining request sent by the client side, the joining request carries the topic ID, and a group list corresponding to the topic ID at least comprises one group.
according to the received joining request, the server acquires a group list corresponding to the topic ID in the joining request, simultaneously acquires all group information in the group list, and detects the number of user accounts in all groups and whether all groups are in a full state.
The full state means that the number of the user accounts in the group reaches the maximum value which can be borne by the group.
if the server finds that the group list corresponding to the topic ID has the group with less than full members after detection, the server selects one account number distributed to the user initiating the join request from one or more groups with less than full members.
Wherein selecting one from the one or more groups of not full members may comprise: randomly selecting one from the groups of the non-full members, selecting the group of the non-full members with the least number of the user accounts or selecting the group of the non-full members with the most number of the user accounts.
Step 308, if each group in the group list corresponding to the topic ID is in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID;
if the server finds that all the groups in the group list corresponding to the topic ID are in the full state after detection, the server creates a new group, generates a group ID corresponding to the new group, and simultaneously adds the group ID of the new group to the group list corresponding to the topic ID, namely, a new group is added to the group list corresponding to the topic ID.
Such as: assuming that a group 1 and a group 2 exist in a group list corresponding to the topic A, and the maximum value of the number of user accounts in the group 1 and the group 2 is 100; when the client initiates a request for joining the topic a to the server through the corresponding user account "zhang san", the server first finds the group 1 and the group 2 according to the topic a, and finds that 100 user accounts are already participating in the discussion in each of the group 1 and the group 2 according to the detection, the server creates a new group 3 for zhang san "and joins the group 3 to the group list of the topic a, that is, the group 1, the group 2, and the group 3 exist in the group list of the topic a at the same time.
Illustratively, topic a corresponds to a change of groups in the group list, as shown in fig. 4A.
The number of groups in the group list corresponding to the topic a is not specifically limited in this embodiment, and as long as the server receives the join request initiated by the client through the corresponding user account, the steps 306 to 308 are repeatedly executed, that is, the number of user accounts in the topic a is not limited in this embodiment.
After adding the created new group to the group list corresponding to the topic ID, the server allocates the new group to the user account initiating the join request, so that the user account joins the group in the group list corresponding to the topic ID and participates in the discussion of the topic.
when any client in any group in the group list corresponding to the topic ID sends an information publishing request to the server through the corresponding user account, the server receives information published by any client through the corresponding user account, the information at least carries a target group ID, and the target group ID refers to a group ID of the information needing to be published by the user account.
Wherein at least one group comprises: a group to which the user account belongs; or, the combination of the group to which the user account belongs and the group to which the user account does not belong; or one or more of the groups to which the user account does not belong.
That is, the target group ID includes: a group ID of at least one group in the group list to which the topic ID corresponds. The target group ID may be only the group ID to which the user account belongs, or the target group may be all group IDs in a group list corresponding to the topic ID, or the target group may be a part of group IDs specified by the user account in the group list.
311, sending the information to each user account in the group corresponding to the target group ID;
the server acquires the target group ID carried in the information after receiving the information issued by the client through the corresponding user account, and sends the information issued by the client through the corresponding user account to each user account in the corresponding group according to the target group ID. Such as other user accounts within the group to which the user account belongs; the server may also send information issued by the user account to each user account in multiple groups, for example, each user account in all groups in the group list corresponding to the topic ID where the user account is located.
It should be noted that, in steps 301 to 311, on the premise that the number of the user accounts in each group in the topic ID is not considered, in the process of discussing the topic, the user accounts in each group may leave for various reasons, which results in a case that the number of the user accounts in a part of the groups is relatively small, as shown in step 312 to step 316, the server merges the groups with relatively small number of the user accounts, as shown in fig. 3B.
the server needs to acquire the number of the user accounts in each group in the topic ID every preset time, and the number of the user accounts in each group is counted every preset time because the user accounts in each group leave for various reasons and new user accounts are added in the process of topic discussion. Such as: the predetermined time may be 10 minutes, 20 minutes, 30 minutes, or the like.
after acquiring the number of user accounts in each group, the server detects whether the acquired number of user accounts is less than a preset threshold, for example: the preset threshold is 50.
if the detected topic ID corresponds to all groups in the group list, the number of the user accounts in at least two groups is smaller than a preset threshold value, and the server combines the groups with the number of the user accounts smaller than the preset threshold value into one group.
If a group with the number of the user accounts smaller than the preset threshold value appears in the group list corresponding to the topic ID, the server can combine the user accounts in the groups into one group, and when the combined new group is in a full state, the rest user accounts are combined into another new group, and so on, so that the combination of all the user accounts in the group with the number of the user accounts smaller than the preset threshold value is completed.
In step 316, the group with the user account number of zero is deleted.
The server combines the groups with the user account number smaller than the preset threshold value, then a group with the user account number of zero is generated, the server deletes the group with the user account number of zero from the group list corresponding to the topic ID, or when the group with the user account number of zero in the topic ID is acquired at preset time intervals, the server directly deletes the group with the user account number of zero from the group list corresponding to the topic ID.
It should be noted that there is no specific sequence between steps 312 to 316 and steps 305 to 311, and when there are at least two groups in the group list corresponding to the topic ID, steps 312 to 316 can be executed.
In summary, in the group joining method provided in this embodiment, a joining request initiated by a client through a corresponding user account is received, where the joining request carries a topic identification ID; at least one group is corresponding to the group list corresponding to the topic ID; detecting whether each group in a group list corresponding to the topic ID is in a full member state; if all groups in the group list corresponding to the topic ID are in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID; adding the user account to the new group; the problem that when the number of group members reaches the maximum upper limit which can be borne by a group, a new user account cannot be added into the group, so that the new user account cannot carry out topic discussion in the group is solved; when the group is in a full state, the server can automatically create a new group for the same topic and add the user account number to the new group, so that the number of the user account numbers participating in the discussion of the same topic is unlimited.
The server can send the information issued by the client through the corresponding user account to each user account in the group to which the user account belongs, and can also send the information issued by the user account to each user account in at least one target group, so that the effect that the information issued by the user account can be transmitted in an isolated manner according to the group ID, and can also be transmitted in an intercommunicating manner through the topic ID is achieved;
the groups with the number of the user accounts smaller than the preset threshold value are combined at intervals of preset time, so that the effect that the number of the user accounts in the same group is flexible and can be matched is achieved;
and deleting the groups with zero user account number in the group list corresponding to the topic ID at intervals of preset time, thereby achieving the effects of dynamically deleting the groups and lightening the operation configuration.
Optionally, in the embodiment shown in fig. 3A, the information issued by the client through the corresponding user account further carries: a group ID to which the user account belongs;
in the embodiment shown in FIG. 3A, step 311 may include the following steps, as shown in FIG. 4B:
311a, detecting whether the user account has an information issue authority corresponding to the target group ID according to the group ID to which the user account belongs;
when the information issued by the client through the corresponding user account carries the group ID of the group to which the user account belongs, the server acquires the user account list in the group ID according to the group ID to which the user account belongs, detects whether the user account of the issued information exists in the user account list, and if the user account of the issued information exists in the user account list, the server confirms that the user account of the issued information has the authority of issuing information in the group ID.
when the server detects that the user account has the authority of information release, the server acquires each user account in the group ID according to the group ID to which the user account belongs, and the server sends the information released by the user account to each acquired user account.
when the server detects that the user account does not have the authority of information publishing, the server does not send the information published by the client through the corresponding user account.
Optionally, in the embodiment shown in fig. 3A, the information issued by the client through the corresponding user account at least carries a topic ID;
in the embodiment shown in fig. 3A, steps 310 to 311 may be replaced by the following steps, as shown in fig. 4C:
when the information issued by the client through the corresponding user account carries a topic ID, the server acquires a group list corresponding to the topic ID according to the topic ID; then, according to the group ID to which the user account belongs, whether the group ID to which the user account belongs to a group list corresponding to the topic ID is inquired; if the information belongs to the group list corresponding to the topic ID, the server acquires a user account list in the group ID of the group to which the information belongs, detects whether the user account of the issued information exists in the user account list, and if the user account of the issued information exists in the user account list, confirms that the user account of the issued information has the authority of issuing the information in the topic ID.
Optionally, the information issued by the client through the corresponding user account also carries a group ID to which the user account belongs;
when the information issued by the client through the corresponding user account carries the group ID to which the user account belongs, the server detects whether the group ID exists in a group list corresponding to the topic ID or not according to the group ID to which the user account belongs, and if the group ID exists in the group list corresponding to the topic ID, the server confirms that the user account issuing the information has the authority to issue the information in the topic ID.
when the server detects that the user account has the authority of information release, the server acquires a group list corresponding to the topic group ID according to the topic ID, acquires each user account in all groups in the group list, and sends the information released by the user account to each acquired user account.
when the server detects that the user account does not have the authority of information publishing, the server does not send the information published by the client through the corresponding user account.
The group joining method provided in the embodiment of fig. 2 and the embodiment of fig. 3A are both performed in one server, and the group joining method can also be performed in multiple servers, please refer to the following embodiments.
Referring to fig. 5A, a flowchart of a method for joining a group according to another embodiment of the invention is shown. The embodiment is illustrated by applying the join group method to the implementation environment shown in fig. 1. In this embodiment, a topic creation request is initiated by a user account for example. The method comprises the following steps:
step 501, a client A sends a topic creation request to a group logic server;
a user sets a topic according to own interests and hobbies, and sends a request for creating the topic to a group logic server through a client corresponding to the user account of the user;
correspondingly, the group logic server receives a topic creation request;
step 502, the group logic server sends the received topic creation request to a topic server;
after receiving a topic creating request initiated by a user account or a background manager, the group logic server forwards the topic creating request to the topic server.
Step 503, the topic server creates a topic according to the topic creating request, and generates a topic ID;
and the topic server receives the topic creating request forwarded by the group logic server and generates a corresponding topic ID according to the topic creating request. The topic server creates a request according to different topics and generates a unique corresponding topic ID.
Step 504, the topic server distributes the generated topic ID to the group logic server;
correspondingly, the group logic server receives the topic ID assigned by the topic server.
Step 505, the group logic server sends a group creation request to the group data server;
the group logic server, upon receiving the topic ID assigned by the topic server, transmits a group creation request to the group data server.
Correspondingly, the group data server receives the group creation request sent by the group logic server.
Step 506, the group data server creates an initial group and generates a group ID of the initial group;
the group data server creates an initial group according to the group creation request, and generates a group ID corresponding to the initial group.
Step 507, the group data server sends the generated group ID of the initial group to the group logic server;
after generating a group ID corresponding to the initial group, the group data server sends the group ID to the group logic server;
correspondingly, the group logic server receives the group ID sent by the group data server.
Step 508, the group logic server adds the group ID of the initial group to the group list corresponding to the topic ID, and sends the added group list to the topic server;
at this time, only the group ID of the initial group exists in the group list corresponding to the topic ID;
correspondingly, the topic server receives a group list corresponding to the topic ID sent by the group logic server.
Step 509, the group logic server sends a signal to the client a that the topic and group were created successfully;
correspondingly, the client receives the signal of successfully creating the topic and the group sent by the group logic server.
Step 510, the client B sends a join request to the group logic server, where the join request carries a topic ID; at least one group corresponds to the group list corresponding to the topic ID;
the client acquires a joining request of a user account to a certain topic, and sends the acquired joining request to the server;
correspondingly, the group logic server receives an adding request sent by the client, wherein the adding request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID;
step 511, the group logic server sends a request for inquiring a group list corresponding to the topic ID to the topic server according to the received join request;
and the group logic server acquires the topic ID carried in the joining request according to the received joining request, and sends a query to the topic server for the group in the group list corresponding to the topic ID according to the topic ID.
Correspondingly, the topic server receives the query request sent by the group logic server.
Step 512, the topic server detects whether each group in the group list corresponding to the topic ID is in a full member state according to the query request sent by the group logic server;
the topic server acquires a group list corresponding to the topic ID according to the topic ID, simultaneously acquires all group information in the group list, and detects the number of user accounts in all groups and whether all groups are in a full state.
The full state means that the number of the user accounts in the group reaches the maximum value which can be borne by the group.
Step 513, if at least one group with less than full members exists in the group list corresponding to the topic ID, the topic server allocates any group with less than full members to the group logic server;
if the topic server finds that the group list corresponding to the topic ID has the group with the incomplete members after detection, the topic server selects one group from one or more groups with the incomplete members to be allocated to the group logic server.
Wherein selecting one from the one or more groups of not full members may comprise: randomly selecting one from the groups of the non-full members, selecting the group of the non-full members with the least number of the user accounts or selecting the group of the non-full members with the most number of the user accounts.
Correspondingly, the group logic server receives a group of underfilled members assigned by the topic server.
Step 514, the group logic server adds the user account corresponding to the client B to the group of the not full members distributed by the topic server;
step 515, if each group in the group list corresponding to the topic ID is in a full state, the topic server sends a signal of no group allocation to the group logic server;
if the server finds that all groups in the group list corresponding to the topic ID are in a full state after detection, the topic server sends a signal that the groups are not distributed to the group logic server.
Correspondingly, the group logic server receives the signal of no group distribution sent by the topic server.
Step 516, the group logic server sends a request for creating a new group to the group data server;
after receiving the no-group distribution signal sent by the topic server, the group logic server sends a request for creating a new group to the group data server, and requests the group data server to create a new group for the topic ID, so that a new user account can participate in discussion conveniently.
Correspondingly, the group data server receives a request sent by the group logic server to create a new group.
517, the group data server creates a new group and generates a group ID of the new group;
the group data server creates a new group for the topic ID according to the request for creating the new group sent by the group logic server, and generates a corresponding group ID for the new group.
Step 518, the group data server sends the group ID of the new group to the group logic server;
correspondingly, the group logic server receives the group ID of the new group sent by the group data server.
Step 519, the group logic server adds the group ID of the new group to the group list corresponding to the topic ID, and adds the user account corresponding to the client B to the new group;
after adding the created new group to the group list corresponding to the topic ID, the group logic server allocates the new group to the client sending the join request, so that the user account corresponding to the client joins the group in the group list corresponding to the topic ID and participates in the discussion of the topic.
In this embodiment, the number of groups in the group list corresponding to the topic ID is not specifically limited.
Step 520, the group logic server sends the group ID of the new group added to the topic server;
and after the group logic server completes the addition of the group ID to the group list corresponding to the topic ID and the addition of the client to the new group, the group logic server sends the group ID which is added to the topic server.
Correspondingly, the topic server receives the group ID of the new group sent by the group logic server.
Such as: assuming that a group 1 and a group 2 exist in a group list corresponding to the topic A, and the maximum value of the number of user accounts in the group 1 and the group 2 is 100; when the user account "zhangsan" initiates a request to participate in the topic a to the group logic server, the group logic server first sends an inquiry request to the topic server, the topic server finds the group 1 and the group 2 according to the topic a, and according to detection, it is found that 100 user accounts in each of the group 1 and the group 2 are participating in discussion, the group logic server creates a new group 3 for zhangsan, and adds the group 3 to the group list of the topic a, that is, the group 1, the group 2, and the group 3 exist in the group list of the topic a at the same time.
Step 521, any client sends information issued by the user account to the group logic server, where the information at least carries a target group ID, and the target group ID includes: a group ID of at least one group in a group list corresponding to the topic ID;
when any user account in any group in the group list corresponding to the topic ID sends an information publishing request to the group logic server, the group logic server receives information published by the user account sent by any client, the information at least carries a target group ID, and the target group ID refers to a group ID of the information to be published by the user account.
Wherein at least one group comprises: a group to which the user account belongs; or, the combination of the group to which the user account belongs and the group to which the user account does not belong; or one or more of the groups to which the user account does not belong.
The target group ID includes: a group ID of at least one group in the group list to which the topic ID corresponds. The target group ID may be only the group ID to which the user account belongs, or the target group may be all group IDs in a group list corresponding to the topic ID, or the target group may be a part of group IDs specified by the user account in the group list.
Correspondingly, the group logic server receives information issued by the user account sent by any client, the information at least carries a target group ID, and the target group ID includes: a group ID of at least one group in a group list corresponding to the topic ID;
step 522, the cluster logic server sends the information to the cluster data server;
correspondingly, the group data server receives the information sent by the group logic server.
Step 523, the group data server sends the information to each user account in the target group;
after receiving the information sent by the group logic server, the group data server acquires a target group ID carried in the information, and according to the target group ID, the group data server sends the information to each user account in a group, such as other user accounts in the group to which the user account belongs; the group data server may also send information to each user account in multiple groups, for example, each user account in all groups in the group list corresponding to the topic ID of the user account.
It should be noted that, in steps 501 to 523, on the premise that the number of user accounts in each group in the topic ID is not considered, in the process of topic discussion, the user accounts in each group may leave for various reasons, resulting in a case that the number of user accounts in a part of the groups is relatively small, as shown in fig. 5B, steps 524 to 529 are a method flow for the group logic server to merge the groups with the relatively small number of user accounts.
Step 524, the topic server acquires the number of user accounts in each group in the topic ID every preset time;
the topic server acquires the number of the user accounts in each group in the topic ID every preset time, and the number of the user accounts in each group is counted every preset time because the user accounts in each group leave for various reasons and new user accounts are added in the topic discussion process. Such as: the predetermined time may be 10 minutes, 20 minutes, 30 minutes, or the like.
Step 525, the topic server sends the acquired number of the user accounts in each group to the group logic server;
correspondingly, the group logic server receives the number of the user accounts in each group sent by the topic server.
Step 526, the group logic server detects whether the number of the user accounts in each group is less than a preset threshold value;
after receiving the number of user accounts in each group, the group logic server detects whether the number of the received user accounts is less than a preset threshold, for example: the preset threshold is 50, etc.
Step 527, if the number of the user accounts in at least two groups is smaller than a preset threshold, merging the groups with the number of the user accounts smaller than the preset threshold by the group logic server;
if the detected number of the user accounts in at least two groups in all the groups in the group list corresponding to the topic ID is smaller than the preset threshold value, the group logic server combines the groups with the number of the user accounts smaller than the preset threshold value into one group.
If a group with the number of the user accounts smaller than the preset threshold value appears in the group list corresponding to the topic ID, the group logic server can combine the user accounts in the groups into one group, and when the combined new group is in a full state, combine the rest user accounts into another new group, and so on, thereby completing the combination of all the user accounts in the group with the number of the user accounts smaller than the preset threshold value.
Step 528, the group logic server sends the result of group merging to the topic server;
correspondingly, the topic server receives the result of the group combination sent by the group logic server.
And 529, the topic server deletes the groups with zero user account numbers.
After the group logic server merges the groups with the number of the user accounts smaller than the preset threshold value, a group with the number of the user accounts being zero is generated, the group with the number of the user accounts being zero is deleted from the group list corresponding to the topic ID by the topic server, or when the group with the number of the user accounts being zero in the topic ID acquired at preset time intervals, the group with the number of the user accounts being zero is directly deleted from the group list corresponding to the topic ID by the topic server.
It should be noted that there is no specific sequence between steps 524 to 529 and steps 510 to 523, and when there are at least two groups in the group list corresponding to the topic ID, steps 524 to 529 can be executed.
It should be noted that, in the embodiment of fig. 5A, step 501 and step 509 may be implemented separately as a group joining method on the client side; step 510, step 521 and step 523 can be implemented separately as a group joining method on the other client side; step 502, step 505, step 508 to step 509, and step 511, step 516, step 519 to step 522, and step 526 to step 528 may be implemented separately as a group joining method on the group logic server side; the steps 503 to 504, 512 to 515, 524 to 525 and 529 can be implemented separately as a method of joining a group on the topic server side; steps 506 to 507, 517 to 518, and 523 may be implemented separately as a group joining method on the group data server side.
In summary, in the group joining method provided in this embodiment, a group logic server receives a joining request initiated by a client through a corresponding user account, where the joining request carries a topic identification ID; at least one group is corresponding to the group list corresponding to the topic ID; the topic server detects whether each group in a group list corresponding to the topic ID is in a full member state; if each group in the group list corresponding to the topic ID is in a full state, the group data server creates a new group, generates a group ID of the new group, and the group logic server adds the group ID to the group list corresponding to the topic ID; the group logic server adds the user account to a new group; the problem that when the number of group members reaches the maximum upper limit which can be borne by a group, a new user account cannot be added into the group, so that the new user account cannot carry out topic discussion in the group is solved; when the group is in a full state, the group data server can automatically create a new group for the same topic, and the group logic server adds the user account number to the new group, so that the number of the user account numbers participating in the discussion of the same topic is unlimited.
The group data server can send the information issued by the client through the corresponding user account to each user account in the group to which the user account belongs, and can also send the information issued by the user account to each user account in at least one target group, so that the effects that the information issued by the user account can be sent in an isolated manner according to the group ID, and can also be sent in an intercommunicating manner through the topic ID are achieved;
the groups with the number of the user accounts smaller than the preset threshold value are combined at intervals of preset time, so that the effect that the number of the user accounts in the same group is flexible and can be matched is achieved;
and deleting the groups with zero user account number in the group list corresponding to the topic ID at intervals of preset time, thereby achieving the effects of dynamically deleting the groups and lightening the operation configuration.
Optionally, in the embodiment shown in fig. 5A, the information issued by the client through the corresponding user account also carries a group ID to which the user account belongs;
in the embodiment shown in FIG. 5A, step 523 may include the following steps, as shown in FIG. 6A:
523a, according to the group ID to which the user account belongs, the group data server detects whether the user account has an information issue right corresponding to the group ID;
when the information issued by the user account carries the group ID to which the user account belongs, the group data server acquires a user account list in the group ID according to the group ID to which the user account belongs, detects whether the user account of the issued information exists in the user account list, and if the user account of the issued information exists in the user account list, the group data server confirms that the user account of the issued information has the authority of issuing information in the group ID.
when the group data server detects that the user account has the information issuing right, the group data server acquires each user account in the group ID according to the group ID to which the user account belongs, and sends the information issued by the user account to each acquired user account.
when the group data server detects that the user account does not have the right of information release, the group data server does not send the information released by the client through the corresponding user account.
Optionally, in the embodiment shown in fig. 5A, the information issued by the client through the corresponding user account at least carries a topic ID;
in the embodiment shown in fig. 5A, steps 521 to 523 may be replaced by the following steps, as shown in fig. 6B:
step 530, the group logic server receives information issued by any client through a corresponding user account, and the information at least carries a topic ID.
Optionally, the information issued by the client through the corresponding user account also carries a group ID to which the user account belongs;
when the information issued by the client through the corresponding user account carries a topic ID and a group ID to which the user account belongs, the group logic server acquires a group list corresponding to the topic ID from the topic server according to the topic ID; then, according to the group ID to which the user account belongs, whether the group ID to which the user account belongs to a group list corresponding to the topic ID is inquired; if the information belongs to the group list corresponding to the topic ID, the group data server acquires a user account list in the group ID to which the information belongs, detects whether the user account of the issued information exists in the user account list, and if the user account of the issued information exists in the user account list, the group data server confirms that the user account of the issued information has the authority of issuing information in the target group ID.
when the group data server detects that the user account has the information issuing right, the group data server acquires all user accounts of all groups in a group list corresponding to the topic ID according to the topic ID, and sends the information issued by the client through the corresponding user account to the acquired user accounts.
when the group data server detects that the user account does not have the right of information release, the group data server does not send the information released by the client through the corresponding user account.
The following are embodiments of the apparatus of the present invention, details of which are not described in detail in the embodiments of the apparatus, and reference may be made to the above-mentioned one-to-one corresponding method embodiments.
Referring to fig. 7, a block diagram of a group joining device according to an embodiment of the present invention is shown. The group joining device provided by the embodiment can be implemented by software, hardware or a combination of the two to become all or part of the server. The device includes:
a request receiving module 710; the system comprises a client, a server and a server, wherein the client is used for receiving a joining request initiated by the client through a corresponding user account, and the joining request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID.
The state detection module 720 is configured to detect whether each group in the group list corresponding to the topic ID is in a full member state.
The group creating module 730 is configured to create a new group, generate a group ID of the new group, and add the group ID to the group list corresponding to the topic ID when each group in the group list corresponding to the topic ID is in a full state.
And an account adding module 740, configured to add the user account to the new group.
In summary, the group joining device provided in this embodiment receives a join request initiated by a client through a corresponding user account, where the join request carries a topic identification ID; at least one group is corresponding to the group list corresponding to the topic ID; detecting whether each group in a group list corresponding to the topic ID is in a full member state; if all groups in the group list corresponding to the topic ID are in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID; adding the user account to the new group; the problem that when the number of group members reaches the maximum upper limit which can be borne by a group, a new user account cannot be added into the group, so that the new user account cannot carry out topic discussion in the group is solved; when the group is in a full state, the server can automatically create a new group for the same topic and add the user account number to the new group, so that the number of the user account numbers participating in the discussion of the same topic is unlimited.
Referring to fig. 8, a block diagram of a group joining device according to another embodiment of the present invention is shown. The group joining device provided by the embodiment can be implemented by software, hardware or a combination of the two to become all or part of the server. The device includes:
a topic request module 810 to receive a topic creation request.
And a topic ID module 820 for creating a topic according to the topic creation request and generating a topic ID.
An initial group module 830, configured to create an initial group and generate a group ID of the initial group.
An ID adding module 840, configured to add the group ID of the initial group to the group list corresponding to the topic ID.
A request receiving module 850; the system comprises a client, a server and a server, wherein the client is used for receiving a joining request initiated by the client through a corresponding user account, and the joining request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID.
The state detection module 860 is configured to detect whether each group in the group list corresponding to the topic ID is in a full member state.
The group allocating module 870 is configured to, when a group that is full exists in the group list corresponding to the topic ID, allocate a group that is not full to the user account.
A group creating module 880, configured to create a new group when each group in the group list corresponding to the topic ID is in a full state, generate a group ID of the new group, and add the group ID to the group list corresponding to the topic ID.
An account adding module 890, configured to add the user account to the new group.
A first receiving module 900, configured to receive information issued by any client through a corresponding user account, where the information at least carries a target group ID, where the target group ID includes: a group ID of at least one group in the group list to which the topic ID corresponds.
A first sending module 910, configured to send information to each user account in the group corresponding to the target group ID.
Wherein at least one group comprises: a group to which the user account belongs; or, the combination of the group to which the user account belongs and the group to which the user account does not belong; or one or more of the groups to which the user account does not belong.
Optionally, the information issued by the client through the corresponding user account also carries a group ID to which the user account belongs;
the device also comprises:
the first detecting module 920 is configured to detect whether the user account has an information issue right corresponding to the target group ID according to the group ID to which the user account belongs.
A number obtaining module 930, configured to obtain the number of user accounts in each group in the topic ID at predetermined time intervals.
The number detection module 940 is configured to detect whether the number of the user accounts in each group is smaller than a preset threshold.
The group merging module 950 is configured to merge groups with the number of user accounts smaller than a preset threshold when the number of user accounts in at least two groups is smaller than the preset threshold.
The group deleting module 960 is configured to delete a group with zero user account number.
In summary, the group joining device provided in this embodiment receives a join request initiated by a client through a corresponding user account, where the join request carries a topic identification ID; at least one group is corresponding to the group list corresponding to the topic ID; detecting whether each group in a group list corresponding to the topic ID is in a full member state; if all groups in the group list corresponding to the topic ID are in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID; adding the user account to the new group; the problem that when the number of group members reaches the maximum upper limit which can be borne by a group, a new user account cannot be added into the group, so that the new user account cannot carry out topic discussion in the group is solved; when the group is in a full state, the server can automatically create a new group for the same topic and add the user account number to the new group, so that the number of the user account numbers participating in the discussion of the same topic is unlimited.
The server can send the information issued by the client through the corresponding user account to each user account in the group to which the user account belongs, and can also send the information issued by the user account to each user account in at least one target group, so that the effect that the information issued by the user account can be transmitted in an isolated manner according to the group ID, and can also be transmitted in an intercommunicating manner through the topic ID is achieved;
the groups with the number of the user accounts smaller than the preset threshold value are combined at intervals of preset time, so that the effect that the number of the user accounts in the same group is flexible and can be matched is achieved;
and deleting the groups with zero user account number in the group list corresponding to the topic ID at intervals of preset time, thereby achieving the effects of dynamically deleting the groups and lightening the operation configuration.
Optionally, the information issued by the client through the corresponding user account carries a topic ID; the first receiving module 900 to the first detecting module 920 in the embodiment shown in fig. 8 may be replaced with the following modules as shown in fig. 9.
A second receiving module 970, configured to receive information issued by any client through a corresponding user account, where the information at least carries the topic ID and/or a group ID to which the user account belongs;
a second sending module 980 is configured to send information to each user account in all groups in the group list corresponding to the topic ID.
Optionally, the information issued by the client through the corresponding user account also carries a group ID to which the user account belongs;
the device also comprises:
the second detecting module 990 is configured to detect whether the user account has an information issue authority corresponding to the topic ID according to the group ID to which the user account belongs.
Referring to fig. 10, a block diagram of a group joining system according to an embodiment of the present invention is shown, where the system includes: a server 1020 and a client 1040;
the server 1020 includes a joining group device as described in any of the embodiments shown in fig. 7, 8, or 9;
the client 1040 is configured to send a join request initiated by a user account to the server, where the client logs in at least one user account.
It should be noted that: in the group joining device provided in the above embodiment, only the division of the functional modules is illustrated, and in practical applications, the function distribution may be completed by different functional modules according to needs, that is, the internal structure of the server is divided into different functional modules to complete all or part of the functions described above. In addition, the embodiments of the group joining device and the group joining method provided in the above embodiments belong to the same concept, and specific implementation processes thereof are described in the embodiments of the methods and are not described herein again.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.
Claims (16)
1. A method for joining a group, the method comprising:
receiving a joining request initiated by a client through a corresponding user account, wherein the joining request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID, and each group in the at least one group has a group ID;
detecting whether each group in the group list corresponding to the topic ID is in a full member state;
if each group in the group list corresponding to the topic ID is in a full state, creating a new group, generating a group ID of the new group, and adding the group ID to the group list corresponding to the topic ID;
adding the user account to the new group;
acquiring the number of user accounts in each group in the topic ID at intervals of preset time;
detecting whether the number of the user accounts in each group is smaller than a preset threshold value;
if the number of the user accounts in at least two groups is smaller than the preset threshold value, combining the groups with the number of the user accounts smaller than the preset threshold value into one group, and combining the rest user accounts into another new group after the combined new group is in a full state;
and deleting the groups with the number of the user accounts being zero.
2. The method of claim 1, wherein before receiving the client-initiated join request, further comprising:
receiving a topic creation request;
creating a topic according to the topic creating request, and generating a topic ID;
creating an initial group and generating a group ID of the initial group;
adding the group ID of the initial group to the group list corresponding to the topic ID.
3. The method of claim 1, further comprising:
receiving information issued by any client through a corresponding user account, wherein the information at least carries a target group ID, and the target group ID comprises: a group ID of at least one group in a group list corresponding to the topic ID;
sending the information to each user account in the group corresponding to the target group ID;
wherein the at least one group comprises: the group to which the user account belongs; or, a combination of a group to which the user account belongs and a group to which the user account does not belong; or, one or more of the groups to which the user account does not belong.
4. The method of claim 3, wherein the information further carries a group ID to which the user account belongs;
before sending the information to each user account in the group corresponding to the target group ID, the method further includes:
and detecting whether the user account has the information issuing authority corresponding to the target group ID or not according to the group ID to which the user account belongs.
5. The method of claim 1, further comprising:
receiving information issued by any client through a corresponding user account, wherein the information at least carries the topic ID;
and sending the information to each user account in all groups in the group list corresponding to the topic ID.
6. The method of claim 5, wherein the information further carries a group ID to which the user account belongs;
before the sending the information to each user account in all groups in the group list corresponding to the topic ID, the method further includes:
and detecting whether the user account has the information issuing authority corresponding to the topic ID or not according to the group ID to which the user account belongs.
7. The method of claim 1, wherein after detecting whether each group in the group list corresponding to the topic ID is in a full state, further comprising:
and if the group which is not full exists in the group list corresponding to the topic ID, distributing the group which is not full to the user account.
8. A group joining apparatus, the apparatus comprising:
a request receiving module; the system comprises a client, a server and a server, wherein the client is used for receiving a joining request initiated by a corresponding user account, and the joining request carries a topic identification ID; at least one group corresponds to the group list corresponding to the topic ID, and each group in the at least one group has a group ID;
a state detection module, configured to detect whether each group in the group list corresponding to the topic ID is in a full member state;
a group creating module, configured to create a new group when each group in the group list corresponding to the topic ID is in a full state, generate a group ID of the new group, and add the group ID to the group list corresponding to the topic ID;
the account adding module is used for adding the user account to the new group;
the number acquisition module is used for acquiring the number of the user accounts in each group in the topic ID at intervals of preset time;
the number detection module is used for detecting whether the number of the user accounts in each group is smaller than a preset threshold value or not;
the group merging module is used for merging the groups with the user account numbers smaller than the preset threshold value into one group when the number of the user accounts in at least two groups is smaller than the preset threshold value, and merging the rest user accounts into another new group when the merged new group is in a full state;
and the group deleting module is used for deleting the groups with the number of the user accounts being zero.
9. The apparatus of claim 8, further comprising:
the topic request module is used for receiving a topic creation request;
the topic ID module is used for creating a topic according to the topic creating request and generating a topic ID;
an initial group module, configured to create an initial group and generate a group ID of the initial group;
an ID adding module, configured to add the group ID of the initial group to the group list corresponding to the topic ID.
10. The apparatus of claim 8, further comprising:
a first receiving module, configured to receive information issued by any client through a corresponding user account, where the information at least carries a target group ID, where the target group ID includes: a group ID of at least one group in a group list corresponding to the topic ID;
the first sending module is used for sending the information to each user account in the group corresponding to the target group ID;
wherein the at least one group comprises: the group to which the user account belongs; or, a combination of a group to which the user account belongs and a group to which the user account does not belong; or, one or more of the groups to which the user account does not belong.
11. The apparatus of claim 10, wherein the information further carries a group ID to which the user account belongs;
the device, still include:
and the first detection module is used for detecting whether the user account has the information issuing authority corresponding to the target group ID or not according to the group ID to which the user account belongs.
12. The apparatus of claim 8, further comprising:
the second receiving module is used for receiving information issued by any client through a corresponding user account, and the information at least carries the topic ID;
and the second sending module is used for sending the information to each user account in all groups in the group list corresponding to the topic ID.
13. The apparatus of claim 12, wherein the information further carries a group ID to which the user account belongs;
the device, still include:
and the second detection module is used for detecting whether the user account has the information issuing authority corresponding to the topic ID or not according to the group ID to which the user account belongs.
14. The apparatus of claim 8, further comprising:
and the group distribution module is used for distributing the groups of the not-full members to the user account when the groups of the not-full members exist in the group list corresponding to the topic ID.
15. A group joining system, the system comprising: a server and at least one client;
the server comprising the joining group device of any of claims 8 to 14;
the client is used for initiating a joining request of the user account to the server, and the client logs in at least one user account.
16. A computer storage medium having stored therein at least one instruction, at least one program, a set of codes, or a set of instructions, which is loaded and executed by a processor to implement the join group method as claimed in any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510595231.6A CN106549988B (en) | 2015-09-18 | 2015-09-18 | Group joining method, device and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510595231.6A CN106549988B (en) | 2015-09-18 | 2015-09-18 | Group joining method, device and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106549988A CN106549988A (en) | 2017-03-29 |
CN106549988B true CN106549988B (en) | 2020-06-30 |
Family
ID=58362848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510595231.6A Active CN106549988B (en) | 2015-09-18 | 2015-09-18 | Group joining method, device and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106549988B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259139A (en) * | 2021-05-27 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | Group creating method and device |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026917A (en) * | 2017-06-16 | 2017-08-08 | 智者四海(北京)技术有限公司 | The method and system pushed for message |
CN108076166A (en) * | 2017-08-04 | 2018-05-25 | 北京微应软件科技有限公司 | The method and apparatus of corpse powder is cleared up in wechat address list |
CN108566327B (en) * | 2018-01-09 | 2021-11-30 | 徐玉强 | Data processing method and device for chat application |
CN109347720A (en) * | 2018-09-26 | 2019-02-15 | 上海掌门科技有限公司 | It determines group member, send the method and apparatus that the request of group is added |
CN109245906A (en) * | 2018-10-24 | 2019-01-18 | 阿里巴巴集团控股有限公司 | The management method and device of instant messaging group |
CN110286854B (en) * | 2019-06-12 | 2021-10-29 | 北京达佳互联信息技术有限公司 | Method, device, equipment and storage medium for group member management and group message processing |
CN110913276B (en) * | 2019-11-01 | 2022-04-22 | 北京达佳互联信息技术有限公司 | Data processing method, device, server, terminal and storage medium |
CN111277637B (en) * | 2020-01-14 | 2021-08-24 | 腾讯科技(深圳)有限公司 | Method, device, terminal and storage medium for merging session groups |
CN111404702B (en) * | 2020-03-18 | 2022-04-29 | 腾讯科技(成都)有限公司 | Group entering method, group entering device, group management system, computer equipment and storage medium |
CN113706327B (en) * | 2021-09-08 | 2024-03-12 | 易儒网络科技有限公司 | Network group construction method and system with monopoly prevention function |
CN115022106B (en) * | 2021-12-27 | 2024-02-27 | 北京字跳网络技术有限公司 | Group information processing method, device, equipment and medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523179A (en) * | 2011-12-31 | 2012-06-27 | 重庆新媒农信科技有限公司 | Topic group service realization method based on instant messaging |
CN103297297A (en) * | 2013-06-03 | 2013-09-11 | 腾讯科技(深圳)有限公司 | Group processing method and group processing system |
CN103986643A (en) * | 2014-05-16 | 2014-08-13 | 北京奇虎科技有限公司 | Method and device for having access to groups corresponding to website based on browser |
CN104639426A (en) * | 2015-01-29 | 2015-05-20 | 小米科技有限责任公司 | Method and device for adding group members |
CN104660483A (en) * | 2013-11-21 | 2015-05-27 | 腾讯科技(上海)有限公司 | Method, service terminal and system for group communication |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7865553B1 (en) * | 2007-03-22 | 2011-01-04 | Google Inc. | Chat system without topic-specific rooms |
CN101345718A (en) * | 2007-07-13 | 2009-01-14 | 阿里巴巴集团控股有限公司 | Method, system and apparatus for supporting topic classification in group |
CN102075456B (en) * | 2011-02-25 | 2013-06-19 | 中国科学院计算技术研究所 | Group creating and member adding method in distributed domain management system |
US8539086B2 (en) * | 2011-03-23 | 2013-09-17 | Color Labs, Inc. | User device group formation |
CN104901816B (en) * | 2014-03-05 | 2019-09-17 | 腾讯科技(深圳)有限公司 | The method and system of more people's chats is provided |
CN105610682B (en) * | 2015-11-25 | 2018-10-09 | 浙江翼信科技有限公司 | A kind of method and apparatus that contact person is added to group in instant messaging application |
-
2015
- 2015-09-18 CN CN201510595231.6A patent/CN106549988B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102523179A (en) * | 2011-12-31 | 2012-06-27 | 重庆新媒农信科技有限公司 | Topic group service realization method based on instant messaging |
CN103297297A (en) * | 2013-06-03 | 2013-09-11 | 腾讯科技(深圳)有限公司 | Group processing method and group processing system |
CN104660483A (en) * | 2013-11-21 | 2015-05-27 | 腾讯科技(上海)有限公司 | Method, service terminal and system for group communication |
CN103986643A (en) * | 2014-05-16 | 2014-08-13 | 北京奇虎科技有限公司 | Method and device for having access to groups corresponding to website based on browser |
CN104639426A (en) * | 2015-01-29 | 2015-05-20 | 小米科技有限责任公司 | Method and device for adding group members |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259139A (en) * | 2021-05-27 | 2021-08-13 | 支付宝(杭州)信息技术有限公司 | Group creating method and device |
Also Published As
Publication number | Publication date |
---|---|
CN106549988A (en) | 2017-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106549988B (en) | Group joining method, device and system | |
US10375351B2 (en) | System and method for implementing video calls | |
US10771271B2 (en) | Methods and devices for adding new member to group through barcode scanning | |
US10367852B2 (en) | Multiplexed demand signaled distributed messaging | |
CN103718578B (en) | Method and device for notification messages and providing notification messages | |
CN109089168B (en) | Video sharing method, device and system and storage medium | |
EP2608449A1 (en) | Method and system for having a conference across im systems | |
CN108881354B (en) | Push information storage method and device, server and computer storage medium | |
CN105245577B (en) | Information-pushing method, apparatus and system | |
CN102984213B (en) | A kind of method of information sharing, Apparatus and system | |
CA2892650A1 (en) | Methods and devices for adding new member to group through barcode scanning | |
CN111355986B (en) | Message processing method and device in live broadcast room and storage medium | |
JP2019531527A (en) | Method, apparatus and system for performing notification | |
WO2016010921A1 (en) | Creating a user group | |
CN106559787B (en) | Network access method, device and system | |
CN105099894A (en) | Message pushing method, device and system | |
CN104168294B (en) | Instant communication method, system and device between across open platform user | |
WO2015096802A1 (en) | Method, device, and server for message transmission | |
CN106411713B (en) | State notification method and server | |
CN103428260A (en) | System and method for allocating server to terminal and efficiently delivering messages to the terminal | |
US9742776B2 (en) | Contact identification validation via social invitation | |
US10187866B2 (en) | Registering, deregistering and standby processing methods and systems for terminal peripheral | |
CN108668151B (en) | Audio and video interaction method and device | |
CN112910796B (en) | Traffic management method, apparatus, device, storage medium, and program product | |
KR101382177B1 (en) | System and method for dynamic message routing |
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 |