Equipment communication method and electronic equipment
By dynamically switching communication methods and using D2D technology, the problem of communication between electronic devices in network-free environments has been solved, enabling the management of real-time intercom subgroups with and without network access, thus improving user experience and security.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-09-22
- Publication Date
- 2026-05-12
AI Technical Summary
Without a network connection, electronic devices cannot communicate with each other, causing inconvenience to users' lives and safety.
By dynamically switching communication methods, information transmission between electronic devices is achieved using server communication and end-to-end D2D communication technologies (such as Bluetooth, Starlink, multicast communication, etc.), creating real-time intercom subgroups with and without network access, and dynamically managing members and subgroup owners.
It enables reliable communication between electronic devices in network-free environments, improves user experience and security, and ensures the continuity and flexibility of information transmission.
Smart Images

Figure CN122028014A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of terminal technology, and in particular to a device communication method and electronic device. Background Technology
[0002] With the development of terminal technology, electronic devices can communicate with each other via a network when one is available. However, if one electronic device has a network connection while the other does not, or if both devices lack a network connection, they cannot communicate. In some scenarios, such as remote outdoor areas, international travel without roaming, or when base stations are damaged, the inability of electronic devices to communicate causes inconvenience to users' lives and safety. Summary of the Invention
[0003] This application provides a device communication method and an electronic device. In the first communication application, the electronic devices of contacts can dynamically switch communication modes based on the communication status. The communication modes may include communication through a server and communication through D2D communication technology, so as to enable communication between the electronic devices of contacts in the first communication application.
[0004] In a first aspect, this application provides a device communication method. The method is applied to a first electronic device, which has a first communication application installed thereon. The method includes: the first electronic device displaying a first user interface of the first communication application, the first user interface including information about communication between a first member and a second member in the communication application, the first electronic device being a device of the first member; the first electronic device receiving first information input by a user in the first user interface; if the first electronic device and a second electronic device can communicate via a server, the first electronic device sending the first information to the second electronic device via the server, the second electronic device being a device of the second member; if the first electronic device and the second electronic device cannot communicate via a server, the first electronic device sending the first information to the second electronic device via end-to-end D2D communication technology.
[0005] Optionally, if the first electronic device switches from a state where it can communicate with the second electronic device through the server to a state where it cannot communicate with the second electronic device through the server, then the first electronic device can switch to D2D communication technology to communicate with the second electronic device. If the first electronic device switches from a state where it cannot communicate with the second electronic device through the server to a state where it can communicate with the second electronic device through the server, then the first electronic device can switch to communicating with the second electronic device through the server. In other words, the first electronic device and the second electronic device can dynamically switch communication modes.
[0006] The first electronic device sends the first information to the second electronic device through a server, including: the first electronic device sends the first information to the second electronic device through a server based on any one of cellular network, local area network, or fixed network; the D2D communication technology includes any one or more of the following: point-to-point connection communication technology, multicast communication technology, and broadcast communication technology.
[0007] Point-to-point connection communication technologies include any one or more of the following: Bluetooth connection, Starlink connection; multicast communication technologies include any one or more of the following: Bluetooth multicast communication technology, Starlink multicast communication technology; broadcast communication technologies include any one or more of the following: Bluetooth broadcast communication technology, Starlink broadcast communication technology.
[0008] Optionally, the first electronic device sends the first information to the second electronic device through end-to-end D2D communication technology, or the first electronic device sends the first information to the second electronic device through other devices as relays based on end-to-end D2D communication technology.
[0009] By implementing this method, the electronic devices of contacts in the first communication application can dynamically switch communication modes based on the communication status. The communication modes may include communication through a server and communication through D2D communication technology, so as to enable communication between the electronic devices of contacts in the first communication application.
[0010] In conjunction with the first aspect, in one possible implementation, before the first electronic device displays the first user interface of the first communication application, the method further includes: the first electronic device displaying a second user interface of the first communication application, the second user interface including options for a second member; the first electronic device displaying the first user interface of the first communication application specifically includes: the first electronic device receiving and responding to a first operation for the options of the second member, and displaying the first user interface. The device communication method provided in this application can be applied to one-on-one chat scenarios in the first communication application, such as communication between two contacts in the first communication application who are not part of a chat group.
[0011] In conjunction with the first aspect, in one possible implementation, before the first electronic device displays the first user interface of the first communication application, the method further includes: the first electronic device displaying a third user interface of the first communication application, the third user interface including options for a first chat group, the first chat group including a first member and a second member; the first electronic device displaying the first user interface of the first communication application specifically includes: the first electronic device receiving and responding to a second operation for the options of the first chat group, and displaying the first user interface. The device communication method provided in this application can be applied to group chat scenarios in a first communication application, such as communication scenarios between members of a first chat group in a first communication application.
[0012] In conjunction with the first aspect, in one possible implementation, the first chat group also includes a third member; the method further includes: when the first electronic device and the third electronic device cannot communicate through the server, the first electronic device sends first information to the third electronic device, which is the device of the third member, via D2D communication technology. In this way, messages sent by the first electronic device in the first chat group can be sent to the devices of other members in the first chat group via D2D communication technology.
[0013] In conjunction with the first aspect, in one possible implementation, before the first electronic device displays the first user interface of the first communication application, the method further includes: the first electronic device displaying a third user interface of the first communication application, the third user interface including options for a first chat group, the first chat group including a first member and a second member; the first electronic device receiving and responding to a third operation, sending first subgroup management information to the second electronic device, the first subgroup management information being used to invite the second member to join the first real-time intercom subgroup; the first electronic device displaying the first user interface of the first communication application specifically includes: after the second member joins the first real-time intercom subgroup, the first electronic device displaying the first user interface of the first communication application.
[0014] By implementing this method, a first member can invite one or more members from a first chat group to establish a real-time object subgroup. Devices belonging to members of the first real-time intercom subgroup can communicate. Devices not belonging to members of the first real-time intercom subgroup cannot communicate with devices belonging to members of the first real-time intercom subgroup.
[0015] For example, the operation of creating the first real-time intercom subgroup can be referred to Figures 4A-4J The examples are described below.
[0016] In conjunction with the first aspect, in one possible implementation, the first electronic device sends the first subgroup management information to the second electronic device, specifically including: when the first electronic device and the second electronic device can communicate through a server, the first electronic device sends the first subgroup management information to the second electronic device through the server; or, when the first electronic device and the second electronic device cannot communicate through a server, the first electronic device sends the first subgroup management information to the second electronic device through D2D communication technology.
[0017] Implementing this method, when the first and second electronic devices can communicate via a server, the first electronic device can create a networked real-time intercom subgroup through the server, and the server can manage the members in the networked real-time intercom subgroup. When the first and second electronic devices cannot communicate via the server, the first electronic device can create a network-free real-time intercom subgroup, and the first electronic device can manage the members in the network-free real-time intercom subgroup, such as allowing members to join, leave, or change the subgroup leader. In other words, the first real-time intercom subgroup can include both networked and network-free real-time intercom subgroups.
[0018] For example, where the first electronic device and the second electronic device can communicate via a server, the first real-time intercom subgroup includes a networked real-time intercom subgroup, and the management information of the first subgroup can be... Figure 5A The subgroup management information shown is 1.
[0019] For example, when the first electronic device and the second electronic device cannot communicate through the server, the first real-time intercom subgroup includes a network-free real-time intercom subgroup, and the management information of the first subgroup can be... Figure 5C The subgroup management information shown is 2.
[0020] In conjunction with the first aspect, in one possible implementation, the first chat group further includes a third member; the method further includes: the first electronic device sending second subgroup management information to the third electronic device, the second subgroup management information being used to invite the third member to join the first real-time intercom subgroup; after the second member joins the first real-time intercom subgroup, the first electronic device displays a first user interface of the first communication application, specifically including: after the second member and the third member join the first real-time intercom subgroup, the first electronic device displays a first user interface of the first communication application.
[0021] Implementing this method, in response to the operation of creating a first real-time intercom subgroup, the electronic device can also send a second subgroup management message to a third electronic device. The second subgroup management message is used to invite a third member to join the first real-time intercom subgroup, and the third member can join the first real-time intercom subgroup.
[0022] In conjunction with the first aspect, in one possible implementation, the first electronic device sends the second subgroup management information to the third electronic device, specifically including: if the first electronic device and the third electronic device can communicate via a server, the first electronic device sends the second subgroup management information to the third electronic device via the server. Alternatively, if the first electronic device and the third electronic device cannot communicate via a server, the first electronic device sends the second subgroup management information to the third electronic device via D2D communication technology.
[0023] For example, in cases where the first electronic device and the second electronic device can communicate through a server, but the first electronic device and the third electronic device cannot communicate through a server, the first real-time intercom subgroup may include a network-connected real-time intercom subgroup and a network-free real-time intercom subgroup, and the second subgroup management information may be... Figure 5A The subgroup management information shown is 2.
[0024] For example, in cases where the first electronic device and the second electronic device can communicate with the server, or where the first electronic device and the third electronic device can communicate with the server, the first real-time intercom subgroup may include a networked real-time intercom subgroup.
[0025] For example, in cases where the first electronic device and the second electronic device cannot communicate through the server, or where the first electronic device and the third electronic device cannot communicate through the server, the first real-time intercom subgroup may include a network-free real-time intercom subgroup, and the management information of the second subgroup may be... Figure 5C The subgroup management information shown is 2.
[0026] In conjunction with the first aspect, in one possible implementation, if the first electronic device and the third electronic device can communicate through a server, the first electronic device sends the first information to the third electronic device through the server; if the first electronic device and the third electronic device cannot communicate through a server, the first electronic device sends the first information to the second electronic device through end-to-end D2D communication technology.
[0027] In conjunction with the first aspect, in one possible implementation, when the first electronic device and the second electronic device cannot communicate through the server, and the first electronic device and the third electronic device cannot communicate through the server, after the second member and the third member join the first real-time intercom subgroup, the method further includes: the first electronic device sending third subgroup management information to the devices of other members in the first chat group via D2D communication technology, the third subgroup management information including a list of members in the first group; the first electronic device receiving first subgroup member information sent by the second electronic device via D2D communication technology, the first subgroup member information including a first number of members in the first real-time intercom subgroup who have D2D communication capabilities with the second electronic device; and the first electronic device receiving second subgroup member information sent by the third electronic device via D2D communication technology, the second subgroup member information including a second number of members in the first real-time intercom subgroup who have D2D communication capabilities with the third electronic device.
[0028] After the first electronic device creates the first real-time intercom subgroup, if the first real-time intercom subgroup includes a network-free real-time intercom subgroup, the first member can be the subgroup leader of the network-free real-time intercom subgroup within the first real-time intercom subgroup, and the second and third members can be subgroup members of the network-free real-time intercom subgroup within the first real-time intercom subgroup. The first electronic device can send subgroup management information to the devices of members in the first chat group. The subgroup management information is used to display a prompt message to devices of members in the first chat group who have not joined the first real-time intercom subgroup, indicating whether they want to join the first real-time intercom subgroup. The subgroup management information is also used by devices of members in the first chat group who have joined the first real-time intercom subgroup to obtain the number of devices in the first real-time intercom subgroup that have D2D communication capabilities with the first electronic device and the members in the first real-time intercom subgroup. Devices of subgroup members in the network-free real-time intercom subgroup can send subgroup member information to the devices of other members in the network-free real-time intercom subgroup. The subgroup member information is used by the devices of other members in the first real-time intercom subgroup to obtain the number of devices in the first real-time intercom subgroup that have D2D communication capabilities with them.
[0029] For example, in cases where the first and second electronic devices cannot communicate via the server, or where the first and third electronic devices cannot communicate via the server, the first real-time intercom subgroup may include a network-free real-time intercom subgroup. The third subgroup management information may be... Figure 5D The subgroup management information shown is 4. The first subgroup member information can be... Figure 5D The subgroup member information shown is 3. The second subgroup member information can be... Figure 5D The subgroup member information shown is 2.
[0030] In conjunction with the first aspect, in one possible implementation, the first subgroup management information further includes any one or more of the following: the group ID of the first chat group, the number of the first real-time intercom subgroup, the location information of the first electronic device, the account ID of the first member, and the network identifier of the first electronic device; and / or, the first subgroup member information further includes any one or more of the following: the location information of the second electronic device and the network identifier of the second electronic device; and / or, the second subgroup member information further includes any one or more of the following: the location information of the third electronic device and the network identifier of the third electronic device.
[0031] In conjunction with the first aspect, in one possible implementation, the number of members in the first group member list is determined by the first electronic device based on the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup via D2D communication technology; and / or, the first number is determined by the second electronic device based on the first subgroup management information received by the second electronic device and the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup via D2D communication technology; and / or, the second number is determined by the third electronic device based on the first subgroup management information received by the third electronic device and the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup via D2D communication technology.
[0032] In conjunction with the first aspect, in one possible implementation, the first communication application further includes a fourth member; the method further includes: the first electronic device receiving a first join message sent by the fourth electronic device via D2D communication technology, the fourth electronic device being the fourth member's device, and in response to the first join message, if the first electronic device determines that the number of members in the first real-time intercom subgroup is less than a first preset number, the first electronic device adds the fourth member to the first real-time intercom subgroup.
[0033] The subgroup owner of the first real-time intercom subgroup can control the number of members in the subgroup. For example, the first real-time intercom subgroup may include a non-network real-time intercom subgroup. The first join message can be... Figure 7A The join message 1 shown is for reference. Figure 7A Description in the embodiments.
[0034] In conjunction with the first aspect, in one possible implementation, after the first electronic device receives the first subgroup member information sent by the second electronic device, the method further includes: if it is determined that the number of members in the first group member list is less than a first number, the first electronic device sends a first subgroup leader change message to the second electronic device via D2D communication technology, the first subgroup leader change message being used to instruct the second member to act as the subgroup leader of a real-time intercom subgroup; the first electronic device sends third subgroup member information to the second electronic device via D2D communication technology, the third subgroup member information including the number of members in the first real-time intercom subgroup who have D2D communication capabilities with the first electronic device; the first electronic device receives fourth subgroup management information sent by the second electronic device via D2D communication technology, the fourth subgroup management information including the second group member list.
[0035] Implementing this method will cause changes in the positions of members within the first real-time intercom subgroup. Some members' devices may communicate with each other, while others may not, leading to changes in the communication status of the devices within the first real-time intercom subgroup. Based on this, the member with the most D2D communication capabilities among the members of the first real-time intercom subgroup can be designated as the subgroup leader. In other words, the subgroup leader of the first real-time intercom subgroup can change dynamically, facilitating more accurate management of the number of members within the first real-time intercom subgroup.
[0036] In some embodiments, the first electronic device may actively switch the subgroup leader of the first real-time intercom subgroup. The second member becomes the new subgroup leader of the first real-time intercom subgroup, and the first member becomes a subgroup member of the first real-time intercom subgroup.
[0037] For example, the first real-time intercom subgroup may include a network-free real-time intercom subgroup. The first change subgroup master message may be... Figure 16 The change message 2 for the subgroup owner shown can contain information about the third subgroup members. Figure 16 The subgroup member information shown in 9, and the fourth subgroup management information can be... Figure 16 The subgroup management information shown in section 8 can be used as a reference. Figure 16 Description in the embodiments.
[0038] In conjunction with the first aspect, in one possible implementation, after the first electronic device receives the first subgroup member information sent by the second electronic device, the method further includes: the first electronic device receiving a second subgroup master change message sent by the second electronic device via D2D communication technology, the second subgroup master change message being used to request the second member to act as the subgroup master of a real-time intercom subgroup, the second subgroup master change message being sent after the second electronic device confirms that the number of members in the first group member list is less than a first number; if it is determined that the number of members in the first group member list is less than the first number, the first electronic device sending a first confirmation subgroup master change message to the second electronic device via D2D communication technology, the first confirmation subgroup master change message being used to instruct the second member to act as the subgroup master of a real-time intercom subgroup; the first electronic device sending third subgroup member information to the second electronic device via D2D communication technology, the third subgroup member information including the number of members in the first real-time intercom subgroup who have D2D communication capability with the first electronic device; the first electronic device receiving fourth subgroup management information sent by the second electronic device via D2D communication technology, the fourth subgroup management information including the second group member list, the fourth subgroup management information being sent after the second electronic device receives the first confirmation subgroup master change message.
[0039] In some embodiments, a second electronic device may actively request to become the subgroup leader of the first real-time intercom subgroup. The second member becomes the new subgroup leader of the first real-time intercom subgroup, and the first member becomes a subgroup member of the first real-time intercom subgroup.
[0040] For example, the first real-time intercom subgroup may include a network-free real-time intercom subgroup. The second subgroup change master message may be... Figure 15 The change message 1 for the subgroup leader shown can include information about the third subgroup members. Figure 15 The subgroup member information shown in 9, and the fourth subgroup management information can be... Figure 15 The subgroup management information shown in section 8 can be used as a reference. Figure 15 Description in the embodiments.
[0041] In conjunction with the first aspect, in one possible implementation, after the first electronic device sends the third subgroup member information to the devices of other members in the first chat group via D2D communication technology, the method further includes: if no fourth subgroup management information is received from the second electronic device after a first time period, and the number of members with D2D communication capability with the first electronic device in the first real-time intercom subgroup is the largest, the first electronic device sends a fifth subgroup management information to the devices of other members in the first chat group via D2D communication technology, the fifth subgroup management information including the third group member list.
[0042] Implementing this method, if no subgroup management information is received from the subgroup leader's device within the first real-time intercom subgroup after a first set of time, the devices of the subgroup members in the first real-time intercom subgroup can automatically determine a new subgroup leader. This facilitates accurate and timely management of the members within the first real-time intercom subgroup. The new subgroup leader can be the member with the largest number of members in the first real-time intercom subgroup who possess D2D communication capabilities. (See reference...) Figure 11E The description in the example.
[0043] In conjunction with the first aspect, in one possible implementation, the first real-time intercom subgroup includes a first cluster and a second cluster. The cluster master of the first cluster is a first electronic device, and the cluster master of the second cluster is a second electronic device. The first electronic device is used to send sixth subgroup management information to the devices of other members in the first cluster via D2D communication technology, and the second electronic device is used to send seventh subgroup management information to the devices of other members in the second cluster via D2D communication technology. The sixth subgroup management information includes a fourth group member list, and the seventh subgroup management information includes a fifth group member list.
[0044] By implementing this method, the first real-time intercom subgroup can be referred to as at least two clusters, each cluster having a cluster master who manages the number of members in the cluster.
[0045] In conjunction with the first aspect, in one possible implementation, the first communication application further includes a fifth member, and the method further includes: the first electronic device receiving a second join message sent by the fifth electronic device via D2D communication technology, the fifth electronic device being the fifth member's device; in response to the second join message, if the first electronic device determines that the number of members in the first cluster is less than a second preset number, the first electronic device adds the fifth member to the first cluster.
[0046] Optionally, if the fifth electronic device cannot communicate with the second electronic device through D2D communication technology, but can communicate with the first electronic device through D2D communication technology, then the fifth electronic device may request to join the first cluster where the first electronic device is located.
[0047] By implementing this method, if the number of members in the first cluster is less than the second preset number, the first electronic device can add the fifth member to the first cluster, thereby enabling the fifth electronic device and the devices of the members in the first cluster to communicate through D2D communication technology.
[0048] In conjunction with the first aspect, in one possible implementation, the method further includes: a first electronic device receiving seventh subgroup management information sent by a second electronic device via D2D communication technology; and, if a first condition is met, the first electronic device sending a third subgroup owner change request to the second electronic device via D2D communication technology, the third subgroup owner change request indicating that the second electronic device is a subgroup member of the second real-time intercom subgroup. The first electronic device also sends eighth subgroup management information, including a sixth group member list, to the devices of other members in the first chat group via D2D communication technology; and the first electronic device receiving fourth subgroup member information sent by the second electronic device via D2D communication technology, the fourth subgroup member information including the number of members in the second real-time intercom subgroup who have D2D communication capabilities with the second electronic device.
[0049] By implementing this method, at least two clusters can be merged into a real-time intercom subgroup, enabling members of at least two clusters to communicate via D2D communication capabilities.
[0050] In conjunction with the first aspect, in one possible implementation, the first condition includes any one or more of the following: the number of members in the fourth group member list is greater than the number of members in the fifth group member list; the time when the first electronic device sends the sixth subgroup management information is earlier than the time when the second electronic device sends the seventh subgroup management information; and the sum of the number of members in the fourth group member list and the number of members in the fifth group member list is less than a first preset number.
[0051] In conjunction with the first aspect, in one possible implementation, the first information includes any one of the following: voice message, text, image, file, link, GIF, or video.
[0052] In a second aspect, this application provides an electronic device comprising: one or more processors and one or more memories, wherein the one or more memories are coupled to the one or more processors, and the one or more memories are used to store a computer program. When the one or more processors execute the computer program, they execute a device communication method provided in any possible implementation of any of the above aspects.
[0053] Thirdly, this application provides a computer-readable storage medium including instructions that, when executed by a processor, implement a device communication method provided in any possible implementation of any of the above aspects.
[0054] Fourthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements a device communication method provided in any possible implementation of any of the above aspects.
[0055] Fifthly, this application provides a chip system including a processing circuit and an interface circuit. The interface circuit is used to receive code instructions and transmit them to the processing circuit. The processing circuit is used to execute the code instructions to perform a device communication method provided in any possible implementation of any of the above aspects.
[0056] For a description of the beneficial effects in aspects two through five, please refer to the description of the beneficial effects in aspect one; this application will not repeat them here. Attached Figure Description
[0057] Figure 1A and Figure 1B A schematic diagram of the cluster master and cluster members in a group of clusters is shown;
[0058] Figure 2A A schematic diagram of the hardware structure of an electronic device is shown;
[0059] Figure 2B A software architecture block diagram of an electronic device is shown;
[0060] Figure 3A and Figure 3B An exemplary diagram illustrates how a server of a first communication application synchronizes chat logs with the devices of members in a chat group.
[0061] Figures 4A-4J A set of UI diagrams for establishing the first real-time intercom subgroup is shown;
[0062] Figure 5AA flowchart illustrating a method for electronic device 100 to create a real-time intercom subgroup when electronic device 100 is in a network-connected state is shown.
[0063] Figure 5B A flowchart illustrating a method for an electronic device 100 to manage a real-time intercom subgroup created by the electronic device 100 is shown.
[0064] Figure 5C A flowchart illustrating a method for electronic device 100 to create a real-time intercom subgroup when electronic device 100 is in a network-free state is shown.
[0065] Figure 5D This diagram illustrates a method for another electronic device 100 to manage real-time intercom subgroups created by the electronic device 100.
[0066] Figures 6A-6D A UI diagram showing a fourth member in a first chat group actively requesting to join the first real-time intercom subgroup is shown.
[0067] Figure 7A A schematic diagram of a method for a fourth member to actively join the offline real-time intercom subgroup where electronic device 100 is in an offline state is shown.
[0068] Figure 7B A schematic diagram of a method for a fourth member to actively join the networked real-time intercom subgroup where the electronic device 100 is in a networked state is shown.
[0069] Figures 8A-8C A UI diagram showing a third member in a first chat group actively requesting to leave the offline real-time intercom subgroup where electronic device 100 is located is shown.
[0070] Figure 9A A flowchart illustrating a method for a third member to voluntarily leave a networked real-time intercom subgroup to which electronic device 100 is located is shown.
[0071] Figure 9B A flowchart illustrating a method for a third member to voluntarily leave a networked real-time intercom subgroup to which electronic device 100 is located is shown.
[0072] Figures 10A-10B The diagram shows a UI illustration of a third member in a first chat group switching from one offline real-time intercom subgroup to joining another offline real-time intercom subgroup.
[0073] Figure 11A A flowchart illustrating a method for a third member in a first chat group to switch from a network-enabled real-time intercom subgroup or a network-free real-time intercom subgroup to another network-free real-time intercom subgroup is shown.
[0074] Figure 11B A flowchart illustrating a method for a third member in a first chat group to switch from a real-time intercom subgroup with or without internet access to another real-time intercom subgroup with internet access.
[0075] Figure 11C This diagram illustrates a method for a fourth member to select to join either of two offline real-time intercom subgroups.
[0076] Figure 11D A flowchart illustrating a method for a fourth member to choose to join either of two network-enabled real-time intercom subgroups is provided.
[0077] Figure 11E A flowchart illustrating a method for determining a new subgroup leader from the members of a first real-time intercom subgroup is shown.
[0078] Figure 11F A flowchart illustrating a method for determining a new subgroup leader from the members of a first real-time intercom subgroup is shown.
[0079] Figure 12A A flowchart illustrating a method for an electronic device 100 to send voice messages to the devices of other members in a first real-time intercom subgroup when the electronic device 100 is in a network-connected state is shown.
[0080] Figure 12B A flowchart illustrating a method for electronic device 100 to send voice messages to devices of other members in a first real-time intercom subgroup when electronic device 100 is in a network-free state is shown.
[0081] Figure 13 This diagram illustrates the changes in communication status between devices of members in a first real-time intercom subgroup.
[0082] Figure 14 This diagram illustrates the changes in communication status between devices of members in another first real-time intercom subgroup.
[0083] Figure 15 A flowchart illustrating a method for changing the subgroup leader of a real-time intercom subgroup is shown.
[0084] Figure 16 This diagram illustrates another method for changing the subgroup leader of a real-time intercom subgroup.
[0085] Figure 17 This diagram illustrates another method for changing the subgroup leader of a real-time intercom subgroup.
[0086] Figure 18A and Figure 18B A schematic diagram is shown showing a first real-time intercom subgroup splitting into two clusters;
[0087] Figure 18C A schematic diagram is shown of a third member joining a cluster in the first real-time intercom subgroup;
[0088] Figure 19 This diagram illustrates a scenario where the fifth member in a first chat group receives subgroup management messages from two cluster masters.
[0089] Figure 20 A schematic diagram illustrating a scenario where the cluster master of a cluster is changed is shown;
[0090] Figure 21 A schematic diagram of a scenario in which two clusters are merged into a real-time intercom subgroup is shown;
[0091] Figure 22 This is a schematic flowchart of a device communication method provided in this application. Detailed Implementation
[0092] The technical solutions in the embodiments of this application will be clearly and thoroughly described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; the word "and / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.
[0093] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Therefore, features defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0094] The term "user interface (UI)" used in the following embodiments of this application refers to the medium interface through which an application or operating system interacts and exchanges information with a user. It realizes the conversion between the internal form of information and the form that the user can accept. The most common form of user interface is the graphical user interface (GUI), which refers to a user interface related to computer operation displayed in a graphical manner. It can be visual interface elements such as text, icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and widgets displayed on the screen of a wearable device.
[0095] First, the technical terms provided in this application will be explained.
[0096] 1. Chat group, group owner, group members, chat group members.
[0097] In the First Communication application, a local user can invite one or more contacts already added to the application to create a chat group. Before creating the chat group, the server needs to verify that the invited contact's account is a legitimate account (e.g., not a fake or deactivated account). Once the server verifies that the invited contact's account is legitimate, a chat group can be created based on the local user and the invited contact. Within this chat group, messages sent by any member can be viewed by other members.
[0098] The person who creates the chat group can be called the group owner, and all other members can be called group members. The group owner and group members can be collectively referred to as members of the chat group.
[0099] Optionally, a local user can create multiple chat groups, and the local user can be in multiple chat groups. The local user's contacts can also be in multiple chat groups.
[0100] 2. Real-time intercom subgroup, subgroup owner, subgroup members, and members of the real-time intercom subgroup.
[0101] Members of a chat group can invite one or more other members to create a live chat subgroup. A member in a live chat subgroup can send voice messages, which can then be received by the devices of other members within the subgroup.
[0102] The member who creates a real-time intercom subgroup can be called the subgroup owner, and all other members can be called subgroup members. The subgroup owner and subgroup members within a real-time intercom subgroup can be collectively referred to as the members of the real-time intercom subgroup.
[0103] In some embodiments, as the location of members of a real-time intercom subgroup changes, the subgroup owner and subgroup members can also change. For example, a subgroup member can become a subgroup owner, and a subgroup owner can become a subgroup member.
[0104] The subgroup owner's role is to manage the number of members in the real-time intercom subgroup. When a new member requests to join, the subgroup owner needs to determine if the current number of members in the subgroup is less than a first preset number. If the number of members is less than the preset number, the subgroup owner can add the new member. If the number is greater than or equal to the preset number, the subgroup owner can choose not to add the new member. The number of members in a real-time intercom subgroup is determined by the subgroup owner and the total number of subgroup members.
[0105] 3. Cluster, cluster master, cluster member.
[0106] In a real-time intercom subgroup, if one or more members' devices cannot communicate with other members' devices, these members can form a cluster. The other members in the real-time intercom subgroup besides these one or more members can form another cluster.
[0107] Optionally, not limited to forming a cluster when the devices of one or more members cannot communicate with the devices of other members, the one or more members can form a cluster according to other rules such as the location of the members, the number of communicable members, etc.
[0108] In a cluster, the member that can communicate with the most other members is the cluster master. All other members are called cluster members. The cluster master and cluster members are collectively referred to as the members of the cluster.
[0109] In some embodiments, the cluster master and cluster members can change as their locations change. For example, a cluster member can become a cluster master, and a cluster master can become a cluster member.
[0110] The cluster owner's role is to manage the number of members in the cluster. When a new member requests to join, the cluster owner needs to determine if the current number of members in the cluster is less than a second preset number. If the number of members is less than the second preset number, the cluster owner can add the new member to the cluster. If the number of members is greater than or equal to the second preset number, the cluster owner can choose not to add the new member. The number of members in the cluster is determined by the cluster owner and the number of cluster members.
[0111] like Figure 1AAs shown, the first real-time intercom subgroup includes member 1, member 2, member 3, and member 4. Devices of member 1 and member 2 can communicate. Devices of member 1 and member 3 can communicate. Devices of member 1 and member 4 can communicate.
[0112] After the first real-time intercom subgroup is created, the relative positions of members 1, 2, 3 and 4 can change, and the communication relationships between the members' devices will also change.
[0113] like Figure 1B As shown, devices in member 1 and member 2 can communicate, devices in member 1 and member 4 can communicate, devices in member 2 and member 4 cannot communicate, devices in member 4 and member 3 can communicate, and devices in member 1 and member 3 cannot communicate. Therefore, devices in member 1, member 2, and member 4 can form a cluster called cluster 1, and devices in member 3 can form a separate cluster called cluster 2.
[0114] In cluster 1, a device in member 1 can communicate with devices in two other members, while devices in member 2 and member 4 can only communicate with devices in one other member. Therefore, member 1 can be the cluster master of cluster 1, and members 2 and 4 can be cluster members of cluster 1.
[0115] In cluster 2, there is only one member, namely member 3, so member 3 can be the cluster master of cluster 2.
[0116] See below. Figure 2A The structure of the electronic device to which the method provided in the embodiments of this application is applicable will be described.
[0117] like Figure 2A As shown, the electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a USB interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a short-range communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a sensor module 180, a display screen 194, and a SIM card interface 195, etc.
[0118] The sensor module 180 may include a gyroscope sensor 180B, a magnetic sensor 180D, an accelerometer sensor 180E, a proximity sensor 180F, a touch sensor 180K, etc. The sensor module 180 may also include a temperature sensor, a pressure sensor, a proximity sensor, a fingerprint sensor, an ambient light sensor, a barometric pressure sensor, a bone conduction sensor, etc.
[0119] Understandable, Figure 2A The electronic device 100 shown is merely an example and does not constitute a limitation on the electronic device. The electronic device may have more or fewer components than those shown in the figure, may combine two or more components, or may have different component configurations. Figure 2A The various components shown can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application-specific integrated circuits.
[0120] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, memory, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). Different processing units may be independent devices or integrated into one or more processors. The controller may serve as the central nervous system and command center of the electronic device 100. The controller can generate operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution.
[0121] The processor 110 may also include a memory for storing instructions and data.
[0122] The execution of the display method provided in this application embodiment can be controlled by the processor 110 or by calling other components. For example, it can call the processing program of this application embodiment stored in the internal memory 121, or call the processing program of this application embodiment stored in a third-party device through the external memory interface 120 to control the short-range communication module 160 to perform data communication with other devices, thereby improving the intelligence and convenience of the electronic device 100 and enhancing the user experience. The processor 110 may include different devices. For example, when integrating a CPU and a GPU, the CPU and GPU can cooperate to execute the display method provided in this application embodiment. For example, some algorithms in the display method can be executed by the CPU, and other algorithms can be executed by the GPU to achieve faster processing efficiency.
[0123] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. Display screen 194 can be used to display information input by the user or information provided to the user, as well as various graphical user interfaces (GUIs). For example, display screen 194 can display various interfaces from the embodiments of this application.
[0124] In this embodiment of the application, the display screen 194 can be a single flexible display screen, or it can be a splicing display screen composed of two rigid screens and a flexible screen located between the two rigid screens.
[0125] The electronic device 100 may also include a camera (a front-facing camera or a rear-facing camera, or a camera that can function as both a front-facing and a rear-facing camera), which is used to capture still images or videos.
[0126] Internal memory 121 can be used to store computer executable program code, which includes instructions. Processor 110 executes various functional applications and data processing of electronic device 100 by running the instructions stored in internal memory 121.
[0127] The internal memory 121 may also store one or more computer programs corresponding to the algorithm of this application. The one or more computer programs are stored in the internal memory 121 and configured to be executed by one or more processors 110. The one or more computer programs include instructions that can be used to perform the various steps in the following embodiments.
[0128] Of course, the algorithm code of the embodiment of this application can also be stored in external memory. In this case, the processor 110 can run the algorithm code of the embodiment of this application stored in external memory through the external memory interface 120.
[0129] A touch sensor, also known as a "touch panel". The touch sensor can be set on the display screen 194, and the touch sensor and the display screen 194 together form a touch display screen, also known as a "touch screen".
[0130] The wireless communication function of electronic device 100 can be implemented through antenna 1, antenna 2, mobile communication module 150, short-range communication module 160, modem processor and baseband processor, etc.
[0131] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1.
[0132] The short-range communication module 160 can provide solutions for wireless communication applications on electronic devices 100, including wireless local area networks (WLAN) (such as wireless fidelity (WiFi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), and star flash.
[0133] In addition, the electronic device 100 can implement audio functions such as music playback and recording through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, and an application processor.
[0134] In some embodiments, the electronic device 100 may further include buttons, motors, indicators, etc. The electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of the electronic device 100. The electronic device 100 can utilize a motor to generate vibration alerts (such as vibration alerts for incoming calls). The indicators in the electronic device 100 may be indicator lights, used to indicate charging status, battery level changes, or to indicate messages, missed calls, notifications, etc.
[0135] The SIM card interface 195 in the electronic device 100 is used to connect a SIM card. The SIM card can be inserted into or removed from the electronic device 100 to achieve contact and separation with the electronic device 100.
[0136] It should be understood that, in practical applications, electronic device 100 may include more than Figure 2AThe number of more or fewer components shown is not limited in the embodiments of this application. The illustrated electronic device 100 is merely an example, and the electronic device 100 may have more or fewer components than shown in the figure, may combine two or more components, or may have different component configurations. The various components shown in the figure may be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application-specific integrated circuits.
[0137] Please refer to Figure 2B , Figure 2B An exemplary software structure block diagram of an electronic device 100 is shown.
[0138] like Figure 2B As shown, the electronic device 100 includes an application layer and an application framework layer.
[0139] The application layer includes a first communication application. This first communication application includes multiple members, chat groups, etc. Within the first communication application, two members can communicate with each other, and members can also communicate with other members in a chat group. One or more members in a chat group can create real-time intercom subgroups, and members in these subgroups can communicate with each other.
[0140] The application framework layer includes, but is not limited to: network management and communication modules, offline management and communication modules, network status management modules, unified discovery management modules, swarm intelligence modules, and real-time intercom sub-swarm intelligence modules.
[0141] The network status management module is used to detect whether the electronic device 100 is in a network-connected or network-free state. When the electronic device 100 is detected to be in a network-connected state, the network status management module can send messages to the devices of members in the first communication application through both the network-connected management and communication modules. When the electronic device 100 is detected to be in a network-free state, the network status management module can send messages to the devices of members in the first communication application through both the network-free management and communication modules.
[0142] Optionally, if the electronic device 100 is detected to be in a network-free state, the network status management module may display a D2D identifier, which indicates that the electronic device 100 is in a network-free state and can communicate with the devices of members in the first communication application through D2D communication technology.
[0143] The unified discovery management module is used to establish a communication connection with the server of the first communication application through the cellular communication protocol provided by the cellular communication protocol stack when the electronic device 100 is in a network-connected state, and to send messages to the devices of members in the first communication application through the server of the first communication application. The unified discovery management module is also used to establish a communication connection with the devices of members in the first communication application through the D2D communication technology protocol provided by the D2D communication technology protocol stack when the electronic device 100 is in a network-connected or network-free state.
[0144] The group intelligence module provides extended functionality for the primary chat group. These extended functions include, but are not limited to, group memory functionality, message receipt functionality within the chat group, intelligent chat content search functionality, generation of engaging content from the chat group, displaying the recent location of each member and the corresponding time, and the chat group's topology structure.
[0145] The real-time intercom subgroup intelligent module is used to provide extended functions for the real-time intercom subgroup. The extended functions of the real-time intercom subgroup are similar to those of the first chat group, and can be found in the description of the extended functions for the first chat group in the embodiments of this application.
[0146] The network management and communication modules include, but are not limited to: real-time intercom subgroup management module, cellular communication protocol stack, network group authentication module, etc.
[0147] The real-time intercom subgroup management module is used to manage the number of members in the real-time intercom subgroup. When the electronic device 100 is connected to the network, the server of the first communication application manages the number of members in the real-time intercom subgroup. When the electronic device 100 is offline, the electronic device 100 manages the number of members in the real-time intercom subgroup.
[0148] The cellular communication protocol stack is used to provide cellular communication protocols, enabling the electronic device 100 to establish a communication connection with the server of the first communication application through the cellular communication protocols provided by the cellular communication protocol stack when the electronic device 100 is in a network-connected state.
[0149] The online group authentication module is used when a member needs to join the first chat group while online. Before joining, the electronic device 100 sends the basic information of the member's corresponding account to the server of the first communication application. The server of the first communication application determines whether the member's account is a legitimate account (e.g., not a fake or canceled account). If the server determines that the member's account is not a legitimate account (e.g., not a fake or canceled account), then the server can determine that the member cannot join the first chat group. If the server determines that the member's account is a legitimate account (e.g., not a fake or canceled account), then the server can determine that the member can join the first chat group.
[0150] The offline management and communication modules include, but are not limited to: real-time intercom subgroup management module, real-time intercom subgroup topology management module, cluster management module, offline group authentication module, distributed data management module, security risk control management module, and D2D communication technology protocol stack.
[0151] The real-time intercom subgroup management module is used to create real-time intercom subgroups when the electronic device 100 is offline, invite members of the first chat group to join the real-time intercom subgroup, leave the real-time intercom subgroup, and change the subgroup owner of the real-time intercom subgroup.
[0152] The cluster management module is used to manage clusters when the electronic device 100 is offline, such as splitting real-time intercom subgroups into clusters, confirming and changing cluster owners, merging clusters, and adding members of the first chat group to the cluster.
[0153] The distributed data management module is used to provide the function of organizing chat content of real-time intercom subgroups. The function of organizing chat content of real-time intercom subgroups is similar to that of chat groups. It is used to organize the chat records of members in the real-time intercom subgroup in chronological order when there is a network connection, and then send the complete chat records or the filtered chat records to the devices of the members in the real-time intercom subgroup.
[0154] The topology management module for real-time intercom subgroups provides the subgroup topology structure for the real-time intercom subgroups. The subgroup topology structure is similar to that of a chat group, enabling devices within the real-time intercom subgroup to communicate via relay when direct D2D communication is not possible. Refer to the description of the chat group topology structure; this application will not repeat it here.
[0155] The offline group authentication module allows members to temporarily join the first chat group when their devices are offline. When the member's device is connected to the internet, the electronic device 100 sends the member's basic account information to the server of the first communication application. The server then verifies whether the member's account is a legitimate account (e.g., not a fake or deleted account). If the server determines that the member's account is not legitimate (e.g., not a fake or deleted account), the server can remove the member from the first chat group. Conversely, if the server determines that the member's account is legitimate (e.g., not a fake or deleted account), the server can allow the member to join the first chat group.
[0156] The security risk control management module is used to control the content of text, images, and videos when offline, to prevent the sending of non-compliant content.
[0157] The D2D communication technology protocol stack is used to provide the D2D communication technology protocol. When the electronic device 100 is in a network-free state, the electronic device 100 can communicate with the devices of the members in the first communication application through the D2D communication technology protocol.
[0158] In this embodiment of the application, the device is in a network-connected state, which means that the device is connected to a mobile network, a fixed network, or a local area network, and can communicate with the server through the mobile network, fixed network, or local area network.
[0159] A device being in a network-free state means that it cannot communicate with the server via mobile networks, fixed networks, or local area networks. Even when a device is in a network-free state, it can communicate with other devices using Device-to-Device (D2D) communication technology. For example, D2D communication technology can be implemented through, but is not limited to, any of unicast, multicast, or broadcast communication methods. In some embodiments, devices can also communicate through device relays. For instance, a first electronic device cannot communicate directly with a second electronic device via unicast, multicast, or broadcast, but it can communicate directly with a third electronic device via unicast, multicast, or broadcast. In this case, the first electronic device can send a message to the third electronic device via unicast, multicast, or broadcast, and the third electronic device can then send a message to the second electronic device via unicast, multicast, or broadcast, thus enabling communication between the first and second electronic devices through a relay device.
[0160] Optionally, unicast, multicast, or broadcast can be implemented using any of the communication protocols, including but not limited to Bluetooth and StarScan.
[0161] A fixed network is a communication network consisting of transmission media and network connection equipment. Transmission media include, but are not limited to, any one or more of the following: twisted pair, optical fiber, coaxial cable, microwave, etc.
[0162] The following explanations of the UI diagrams and method flowcharts will provide a detailed description of the device communication method provided in this application.
[0163] Scenario 1: One-to-one communication between devices with and without network access.
[0164] In some embodiments, when both devices are connected to the network, the two devices can communicate one-to-one through the server.
[0165] In some embodiments, when the current device is offline, the current device cannot communicate one-to-one with another device through the server, but the two devices can communicate one-to-one through D2D communication technology.
[0166] In some embodiments, when the current device switches from a network-connected state to a network-free state, the current device can continue to communicate with another device through D2D communication technology to ensure that the service between the two devices is not interrupted.
[0167] In some embodiments, when the current device switches from a network-free state to a network-enabled state, the current device can continue to communicate with another device through the server, ensuring that the service between the two devices is not interrupted.
[0168] Scenario 2: One-to-many communication between member devices in a chat group, with and without internet access.
[0169] Example 1: Devices without internet access temporarily join a chat group.
[0170] In some embodiments, the first communication application (e.g., the MeeTime application) includes a chat group A, where members A are members, but members B are not. If member B's device is offline and member B wants to join chat group A, in some embodiments, member B's device can join chat group A by scanning the QR code corresponding to chat group A, or member A can invite member B to join chat group A.
[0171] In response to member B's device scanning the QR code corresponding to chat group A, or member A inviting member B to join chat group A, member B's device can send the basic information of member B's account to other members in chat group A. After receiving the basic information of member B's account from member B's device, the other members' devices in chat group A can display the nickname and avatar of member B's account in chat group A, allowing member B to temporarily join chat group A. The basic information of member B's account includes, but is not limited to, any one or more of the following: member B's account ID, member B's account nickname, member B's account avatar, member B's device identifier, etc.
[0172] Even when member B's device is offline, member B's device can use D2D communication technology to send basic information about member B's account to other members in chat group A.
[0173] After obtaining the basic information of the account corresponding to member B, member A's device can display the nickname and avatar of the account corresponding to member B in chat group A, allowing member B to temporarily join chat group A.
[0174] Optionally, member B's identity status can also be marked in chat group A. For example, member B's identity status can be that they temporarily joined chat group A.
[0175] After member B temporarily joins chat group A, and member B's device is connected to the internet, member B's device can send the basic information of member B's account to the server of the first communication application. If the server of the first communication application determines that member B's account is a legitimate account (e.g., not a fake account or a canceled account), then the server of the first communication application can determine that member B can join chat group A. If the server of the first communication application determines that member B is not a legitimate account (e.g., a fake account or a canceled account), then the server of the first communication application can determine that member B cannot join chat group A and will remove member B from chat group A. In this case, the nickname and avatar of member B's account will no longer be displayed in chat group A for other members.
[0176] This method allows member B to temporarily join chat group A when their device is offline. Once member B's device is connected to the internet, the server of the first communication application verifies that member B's account is in normal use. This ensures that member B can join chat group A and communicate temporarily with other members even without internet access, while also guaranteeing that the accounts of members in chat group A are legitimate and secure, thus protecting the information of all members in chat group A.
[0177] Example 2: Members in a chat group can communicate with each other.
[0178] In some embodiments, when all devices of members in a chat group are connected to the internet, the devices of the members can communicate with each other through a server. For example, if member A's device can send a message in the chat group, the devices of other members in the chat group can receive the message sent by member A's device through the server.
[0179] In some embodiments, if member A's device is offline, member A's device cannot communicate with other members' devices in the chat area through the server. However, member A's device can communicate with other members' devices in the chat area through D2D communication technology.
[0180] In some embodiments, when member A's device switches from a network-connected state to a network-free state, member A's device can communicate with other members' devices in the chat area through D2D communication technology, ensuring that the services between the devices of members in the chat group are not interrupted.
[0181] In some embodiments, when member A's device switches from an offline state to an online state, member A's device can communicate with the devices of other members in this chat area through the server, ensuring that the services between the devices of the members in the chat group are not interrupted.
[0182] For chat groups, this application also provides the following features.
[0183] 1. Group memory function.
[0184] When an electronic device is connected to the internet, it can send messages sent in a chat group, along with the corresponding time, to the server of the first communication application.
[0185] Electronic devices can record messages sent in a chat group while offline, along with the corresponding timestamps. Once the electronic device is connected to the internet, it can transmit the messages sent in the chat group while offline, along with their corresponding timestamps, to the server of the primary communication application.
[0186] The server of the first communication application can obtain the messages sent by each member's device in the chat group and the corresponding time of the messages. Based on the messages sent by each member's device in the chat group in chronological order, it organizes them into a complete chat record and then sends the complete chat record to each member's device. Each member's device can save the complete chat record, making it convenient for users to view the complete chat record.
[0187] Optionally, the chat logs recovered by the server of the first communication application on different members' devices can be the same.
[0188] Optionally, the chat logs retrieved by the server of the first communication application can be different on different members' devices.
[0189] For example, the server of the first communication application can filter complete chat logs based on information such as members' behavioral habits, message types, and time, and then restore the filtered chat logs to the member's device. Different members may have different behavioral habits, so the chat logs restored on different members' devices may be different.
[0190] Optionally, the server of the first communication application can also send the complete chat log to the devices of different members. These different members' devices then filter the complete chat log based on information such as member behavior, message type, and time, and save the filtered chat log. In this way, messages sent by some members' devices while offline may not be received by other members' devices. This method allows chat logs that were not received offline to be recovered on the devices of members in the chat group, making it convenient for other members to view messages that were not received by a particular member's device.
[0191] Figure 3A and Figure 3B An exemplary diagram illustrates how a server of a first communication application synchronizes chat logs with the devices of members in a chat group.
[0192] S301A, Electronic Device 100, Electronic Device 200, and Electronic Device 300 belong to the devices of members in the first chat group.
[0193] S302A, Electronic device 100 sends message A to electronic device 200 based on unicast, multicast, or broadcast.
[0194] S303A, Electronic device 200 receives message A.
[0195] S304A, Electronic device 200 sends message B to electronic device 100 based on unicast, multicast, or broadcast.
[0196] S305A, electronic device 200 sends message B to electronic device 300 based on unicast, multicast or broadcast.
[0197] S306A, Electronic device 100 receives message B.
[0198] S307A, Electronic device 300 receives message B.
[0199] S308A, electronic device 300 sends message C to electronic device 200 based on unicast, multicast or broadcast.
[0200] S309A, Electronic device 200 receives message C.
[0201] like Figure 3A As shown, the first member, the second member, and the third member belong to multiple members in the first chat group. Electronic device 100 is the device of the first member, electronic device 200 is the device of the second member, and electronic device 300 is the device of the third member.
[0202] When electronic devices 100, 200, and 300 are all offline, electronic device 100 can send message A in the first chat group via unicast, multicast, or broadcast. If electronic devices 200 and 100 are D2D communicable, then electronic device 200 can receive message A sent by electronic device 100. Similarly, electronic device 200 can send message B to the devices of members in the first chat group via unicast, multicast, or broadcast. If electronic devices 100 and 200, and electronic devices 300 and 200 are D2D communicable, then electronic devices 100 and 300 can receive message B sent by electronic device 200 via unicast, multicast, or broadcast. Similarly, electronic device 300 can send message C to the devices of members in the first chat group via unicast, multicast, or broadcast. If electronic devices 200 and 300 are D2D communicable, then electronic device 200 can receive message C sent by electronic device 300.
[0203] Among them, D2D communication can include electronic device 100 communicating directly with electronic device 200 via unicast / multicast / broadcast, or electronic device 100 not being able to communicate directly with electronic device 200 via unicast / multicast / broadcast, but electronic device 100 communicating with other devices via unicast / multicast / broadcast, and other devices then communicating with electronic device 200 via unicast / multicast / broadcast, so as to realize that electronic device 100 communicates with electronic device 200 through other devices.
[0204] from Figure 3A It can be seen that when a member's device is offline, some members' devices may not be able to receive messages sent by other members' devices. For example, electronic device 300 cannot receive message A sent by electronic device 100, and electronic device 100 cannot receive message C sent by electronic device 300.
[0205] S301B, electronic device 100 sends message A and the sending time of message A to the server.
[0206] S302B and electronic device 200 send message B and the sending time of message B to the server.
[0207] S303B and electronic device 300 send message C and the sending time of message C to the server.
[0208] S304B: The server retrieves chat history D in chronological order based on the sending times of messages A, B, and C.
[0209] S305B, the server sends chat history D or chat history E obtained by filtering chat history D to electronic device 300.
[0210] S306B, The server sends chat history D or chat history F obtained by filtering chat history D to electronic device 200.
[0211] S307B, The server sends chat history D or chat history G filtered based on chat history D to electronic device 100.
[0212] After electronic devices 100, 200, and 300 are connected to the internet, they can synchronize messages sent offline to the server. The server can then organize the messages sent by each member's device in chronological order to obtain the complete chat history of the chat group.
[0213] like Figure 3B As shown, electronic device 100 can send message A and its sending time to the server, electronic device 200 can send message B and its sending time to the server, and electronic device 300 can send message C and its sending time to the server. The server can organize the complete chat history of the chat group in chronological order based on the sending times of message A, message B, and message C, for example, chat history D.
[0214] Then, the server can send chat history D or chat history E, filtered based on chat history D, to electronic device 300, which can save chat history D or chat history E. The server can then send chat history D or chat history F, filtered based on chat history D, to electronic device 200, which can save chat history D or chat history F. Finally, the server can send chat history D or chat history G, filtered based on chat history D, to electronic device 100, which can save chat history D or chat history G.
[0215] 2. The message receipt function in chat groups.
[0216] A receipt message is a specific type of message defined by the first communication application. In the absence of a network, when the peer device receives or receives and reads a receipt message sent by the local device, the peer device will send a message back to the local device confirming that it has received the receipt message.
[0217] Optionally, the peer device can also send its device identifier and other information to the local device. The local device can record the peer device's device identifier and other information, and can obtain information about which devices have received the acknowledgment messages sent by the local device.
[0218] Optionally, the peer device can also compress its device identifier and other information before sending it to the local device to reduce the amount of data sent.
[0219] For example, in a chat group without internet access, the group owner sends a receipt message, such as "Please reply if received." After other members' devices receive or have received and read this receipt message from the group owner, they can send a message to the group owner's device confirming that they have received the receipt message.
[0220] 3. Intelligent search function for chat content.
[0221] Chat groups can provide an intelligent search function for chat content.
[0222] For example, members in a chat group can enter keywords. Their devices can then search the chat history for messages related to those keywords and display them, making it convenient for members to view relevant content. For instance, if the keyword is "image," a member's device can retrieve and display one or more images from the chat history.
[0223] For example, a member in a chat group can input a description. The member's device can analyze the text, images, videos, and files in the chat history to find chat records related to that description. For instance, the description could be "find pictures related to kittens." Based on this description, the member's device can analyze the images in the chat history, obtain images containing kittens, and display those images for easy viewing by the user.
[0224] 4. Featured chat content generation function.
[0225] The server or members' devices of the first communication application can obtain the chat content in the chat group and generate interesting content based on the chat content in the chat group. Interesting content may include, but is not limited to: automatic image editing function (such as retouching images), clustering images and / or videos of the same person to generate interesting content, adding music to videos, adding camera movements to videos and / or text, etc.
[0226] 5. The function to display the most recent location of members in the chat group and the corresponding time.
[0227] When a member's electronic device is connected to the network, the device can periodically or irregularly obtain the member's recent location and the corresponding time, and send it to the server of the first communication application.
[0228] When a member's electronic device is offline, the device can record the member's most recent location and the corresponding time. Once the electronic device is connected to the network, it can send the member's most recent location and the corresponding time to the server of the first communication application.
[0229] The server of the first communication application can obtain the latest location and time of each member's device in the chat group, and then send the latest location and time of each member's device to each member's device in the chat group. Each member's device in the chat group can then display the latest location and time of each member's device in the chat group.
[0230] 6. The group topology of the chat group.
[0231] If member "Lucy's" device (e.g., electronic device 100) is offline, and electronic device 100 can communicate with other members' devices in the chat group via D2D technology, then electronic device 100 can send messages to other members' devices in the chat group via D2D communication technology. If electronic device 100 cannot communicate with other members' devices in the chat group via D2D technology, then electronic device 100 cannot send messages to other members' devices in the chat group via D2D communication technology.
[0232] For example, if member "Alice's" device (electronic device 200) and electronic device 100 are D2D communicable, then electronic device 100 can send messages to electronic device 200 via D2D communication technology. If member "Lisa's" device (e.g., electronic device 300) and electronic device 100 are D2D communicable, then electronic device 100 can also send messages to electronic device 300 via D2D communication technology. If member "Tom's" device (e.g., electronic device 400) and electronic device 100 are not D2D communicable, then electronic device 100 cannot send messages to electronic device 400 via D2D communication technology.
[0233] If electronic devices 200 and 400 can communicate, and electronic devices 100 and 400 can communicate through a relay method, for example, electronic device 100 can communicate with electronic device 400 through electronic device 200, the purpose of communication between electronic devices 100 and 400 can also be achieved.
[0234] Based on the above analysis, a group topology can be established, which enables direct communication between the devices of members in the chat group, or communication through a relay.
[0235] For example, a chat group includes members "Lucy", "Alice", "Lisa", and "Tom". When electronic device 200 and electronic device 100 are D2D communicable, electronic device 100 can communicate with electronic device 200 using D2D communication technology. When electronic devices 300 and 400 are not D2D communicable with electronic device 100, electronic device 100 cannot communicate with electronic devices 300 and 400 using D2D communication technology.
[0236] If electronic device 300 and electronic device 200 can communicate via D2D, then electronic device 200 can communicate with electronic device 300 using D2D communication technology. Since electronic device 100 can communicate with electronic device 200 using D2D communication technology, and electronic device 200 can communicate with electronic device 300 using D2D communication technology, electronic device 100 can communicate with electronic device 300 via electronic device 200 as an intermediary. That is, electronic device 100 can send messages to electronic device 200 using D2D communication technology, and electronic device 200 can then send messages to electronic device 300 using D2D communication technology.
[0237] In some embodiments, the devices of members in a chat group can determine the optimal relay node, and the devices in the chat group can forward messages to the devices of other members through the optimal relay node.
[0238] Optionally, the optimal relay node can satisfy any one or more of the following rules: the number of relays is less than the preset number, the number of devices that directly communicate with the devices of members in the chat group is greater than the preset number, and the battery power is greater than the preset remaining battery power.
[0239] The device communication method provided in this application can be applied to, but is not limited to, group travel communication scenarios, communication scenarios in areas where base stations are damaged, and outdoor tourism scenarios.
[0240] For example, in a group travel communication scenario, the devices of all or some members of the chat group may be in areas without network coverage. Another example is in an area where a base station is damaged, leaving all members of the chat group without network access. Yet another example is in a wilderness travel scenario, where the devices of some or all members of the chat group may be without network access. To facilitate communication among chat group members and ensure their safety, the devices of the chat group members can establish real-time intercom subgroups. Devices within these subgroups can send voice messages via network and / or D2D communication technology, and members within the subgroups can receive voice messages from other members via network and / or D2D communication technology. This enables communication between the devices of chat group members in both network-enabled and / or network-less environments.
[0241] Scenario 3: Members in a chat group can establish real-time intercom subgroups with and without internet access. Members in the real-time intercom subgroups can communicate with each other with and without internet access.
[0242] The real-time intercom subgroup scenario can include several scenarios such as the establishment of real-time intercom subgroups, the change of subgroup leaders of real-time intercom subgroups, the splitting of real-time intercom subgroups into multiple clusters, and the merging of multiple clusters into real-time intercom subgroups. These scenarios will be introduced in detail below.
[0243] Scenario A: Members' devices establish real-time intercom subgroups in both network-connected and network-free states.
[0244] Scenario a: The first member in the first chat group actively invites other members of the first chat group to establish a first real-time intercom subgroup. The first member can be the subgroup owner of the first real-time intercom subgroup. The first member's device can be either connected to the internet or offline.
[0245] Members in a chat group can invite one or more other members to create a first real-time intercom subgroup. Once created, members within the first real-time intercom subgroup can communicate with each other. Members not in the first real-time intercom subgroup cannot communicate with members already in it. This allows users to invite members to create first real-time intercom subgroups according to their needs, enabling communication among members within the subgroups.
[0246] Figures 4A-4J A set of UI diagrams for establishing the first real-time intercom subgroup is shown.
[0247] in, Figures 4A-4J This explanation uses the example of electronic device 100 being in a network-free state and electronic device 200 being in a network-connected state. In other embodiments, electronic device 100 and electronic device 200 may both be in a network-connected state, or electronic device 100 may be in a network-connected state and electronic device 200 may be in a network-free state, or both electronic device 100 and electronic device 200 may be in a network-free state.
[0248] like Figure 4A As shown, the electronic device 100 displays a user interface 303, which shows multiple dialog boxes, such as a dialog box 304 for a "hiking exchange group" and a dialog box for the contact "Alice". The electronic device 100 also displays a signal indicator 371, which is used to indicate that the electronic device 100 is in a no-network state.
[0249] like Figure 4A and Figure 4B As shown, the electronic device 100 can receive user input operations for the "Hiking Exchange Group" dialog box 304, such as a click operation. In response to the user's input operation, the electronic device 100 can display... Figure 4B The function bar shown includes options for photo selection, shooting, voice call, video call, and real-time intercom (305). Users can use real-time intercom (305) to invite one or more members from the "Hiking Exchange Group" to create a first real-time intercom subgroup.
[0250] like Figure 4B and Figure 4C As shown, the electronic device 100 can receive user input operations for the live intercom option 305, such as a click operation. In response to the user's input operation, the electronic device 100 can display... Figure 4C The selection interface 306 shown includes information about the members in the "Hiking Exchange Group," such as their avatars and nicknames. For example, selection interface 306 includes the avatar 307 of member "Lucy," the avatar and nickname of member "Alice," the avatar and nickname of member "Lisa," and the avatar and nickname of member "Tom." Option 308 is displayed in front of the avatar and nickname of member "Alice," option 309 is displayed in front of the avatar and nickname of member "Lisa," and option 310 is displayed in front of the avatar and nickname of member "Tom." Users can also select the corresponding members through options 308, 309, and 310 to create the first real-time intercom subgroup.
[0251] like Figure 4C and Figure 4D As shown, the electronic device 100 can receive user input for option 308, such as a click. In response to the user's input, the electronic device 100 can select option 308, and option 308 can be displayed as... Figure 4D The displayed status is to indicate to the user that the member "Alice" has been selected.
[0252] After selecting member "Alice", electronic device 100 can receive user input operations for the selected option in selection interface 306, such as a click operation. In response to the user's input operation, electronic device 100 can send subgroup management information to the devices of members in the "hiking exchange group" based on D2D communication technology. The subgroup management information is used to invite members in the "hiking exchange group" to join the first real-time intercom subgroup.
[0253] Optionally, the electronic device 100 may also directly receive the user's input operation for option 308 without inviting member "Alice", and invite one or more members in the "Hiking Exchange Group" to join the first real-time intercom subgroup.
[0254] Before members in the chat group join the first real-time intercom subgroup, electronic device 100 can display... Figure 4E The user interface shown is Figure 4E The user interface shown includes display area 314 and display area 315. Display area 314 displays options such as return 316, exit live intercom subgroup 318, member "Lucy's" avatar 317, more options 321, and intercom options 322. Display area 315 displays the location information of electronic device 100.
[0255] For example, if member "Alice's" device (electronic device 200) and electronic device 100 are in D2D communication mode, then electronic device 200 can receive subgroup management information 1 sent by electronic device 100 based on D2D communication technology.
[0256] In response to receiving subgroup management information 1 from electronic device 100, electronic device 200 can display... Figure 4F The prompt bar 323 shown includes the avatar 324 of member "Lucy" and the join option 325. The prompt bar 323 is used to prompt the user whether to join the first real-time intercom subgroup where member "Lucy" is located.
[0257] like Figure 4F As shown, when member "Alice" confirms joining the first real-time intercom subgroup where member "Lucy" is located, electronic device 200 can receive user input operations for the addition option 325 in the prompt bar 323, such as a click operation. In response to the user's input operation, electronic device 200 can send a message to electronic device 100 based on D2D communication technology. This message is used to indicate to electronic device 100 that the second member has confirmed joining the first real-time intercom subgroup.
[0258] For example, if member "Lisa's" device (electronic device 300) and electronic device 100 can communicate in D2D, then electronic device 300 can receive subgroup management information 1 sent by electronic device 100 based on D2D communication technology.
[0259] In response to receiving subgroup management information 1 sent by electronic device 100, electronic device 300 can also display... Figure 4G The prompt bar shown is 323.
[0260] like Figure 4G As shown, when member "Lisa" confirms joining the first real-time intercom subgroup where member "Lucy" is located, electronic device 300 can receive user input operations for the joining option 325 in the prompt bar 323, such as a click operation. In response to the user's input operation, electronic device 300 can send a message to electronic device 100 based on D2D communication technology. This message is used to indicate to electronic device 100 that the third member has confirmed joining the first real-time intercom subgroup.
[0261] After receiving confirmation messages from electronic devices 200 and 300 confirming joining the first real-time intercom subgroup, electronic device 100 can display... Figure 4H The user interface shown is Figure 4H The user interface shown is Figure 4E The user interface is similar. The difference lies in... Figure 4HIn the user interface shown, the avatars of member "Alice" (319) and member "Lisa" (380) are highlighted to indicate that members "Alice" and "Lisa" have joined the first real-time intercom subgroup. The user of electronic device 100 can access this information via return option 316. Figure 4H The user interface shown is the parent user interface of the user interface shown. The user of electronic device 100 can remove member "Lucy" from the first real-time intercom subgroup via exiting the real-time intercom subgroup option 318. The user of electronic device 100 can invite other members from the "Hiking Exchange Group" to join the first real-time intercom subgroup, or remove members from the first real-time intercom subgroup, via more options 321. When electronic device 100 is offline, it can send voice messages to the devices of other members in the first real-time intercom subgroup via intercom option 322 based on D2D communication technology.
[0262] Optionally, when the electronic device 100 is in a network-free state, the electronic device 100 can... Figure 4G The user interface shown displays a "D2D" identifier to indicate that the electronic device 100 can send messages to members in the first real-time intercom subgroup via D2D communication technology.
[0263] After confirming joining the first real-time intercom subgroup, electronic device 200 can also display... Figure 4I The user interface shown is Figure 4I The user interface shown includes display area 326 and display area 327. Display area 326 displays a return option 328, an exit live talk subgroup option 329, the avatars of member "Lucy" (330), "Alice" (331), and "Lisa" (390), more options 332, and talk options 333. Display area 327 displays the location information of the devices of the members in the first live talk subgroup, such as the location information of electronic device 100, electronic device 200, and electronic device 300. The avatars of member "Lucy" (330), member "Alice" (331), and member "Lisa" (390) displayed in display area 326 are highlighted to indicate to the user that member "Lucy," member "Alice," and member "Lisa" have joined the first live talk subgroup. The user of electronic device 200 can access the return option 328. Figure 4IThe user interface shown is the parent user interface of the user interface shown. The user of electronic device 200 can remove member "Alice" from the first real-time intercom subgroup via exiting the real-time intercom subgroup option 329. The user of electronic device 200 can invite other members from the "Hiking Exchange Group" to join the first real-time intercom subgroup, or remove members from the first real-time intercom subgroup, via more options 332. The user of electronic device 200 can send voice messages to the devices of other members in the first real-time intercom subgroup via intercom option 333 based on D2D communication technology and / or a network.
[0264] Similarly, after confirming joining the first real-time intercom subgroup, the electronic device 300 can also display... Figure 4J The user interface shown is Figure 4J The user interface shown is Figure 4I The user interface shown is similar and can be referenced. Figure 4I The user interface shown is described in detail here.
[0265] After the first real-time intercom subgroup is established, member "Lucy" can be the group owner of the first real-time intercom subgroup, and members "Alice" and "Lisa" can be group members of the first real-time intercom subgroup.
[0266] Since member "Lucy" is the group owner of the first real-time intercom subgroup, electronic device 100 can periodically / irregularly send subgroup management information 2 via D2D communication technology. Subgroup management information 2 can be used to display prompts to other members' devices in the first chat group who have not joined the first real-time intercom subgroup, indicating whether they have joined the first real-time intercom subgroup. Subgroup management information 2 can also be used by other members' devices in the first real-time intercom subgroup to obtain the number of devices that electronic device 100 can communicate with in the first real-time intercom subgroup.
[0267] Since member "Alice" is a subgroup member of the first real-time intercom subgroup, electronic device 200 can periodically / irregularly send subgroup member information 1 through D2D communication technology. Subgroup member information 1 can be used by other members' devices in the first real-time intercom subgroup to obtain the number of devices that electronic device 200 and other members' devices in the first real-time intercom subgroup can communicate with.
[0268] Similarly, since member "Lisa" is a subgroup member of the first real-time intercom subgroup, electronic device 300 can periodically / irregularly send subgroup member information 2 through D2D communication technology. Subgroup member information 2 can be used by other members' devices in the first real-time intercom subgroup to obtain the number of devices that electronic device 300 and other members' devices in the first real-time intercom subgroup can communicate with.
[0269] In some embodiments, due to changes in the relative positions of electronic devices 100, 200, and 300, if electronic device 200 and electronic device 100 are not in a D2D communication state, then electronic device 100 cannot receive subgroup member information 1 sent by electronic device 200, and electronic device 200 also cannot receive subgroup management information 2 sent by electronic device 100.
[0270] If electronic device 100 does not receive subgroup member information 1 from electronic device 200 for a first time period, electronic device 100 may gray out the avatar 319 of member "Alice" to notify the user that member "Lucy" cannot communicate with member "Alice". If electronic device 200 does not receive subgroup management information 2 from electronic device 100 for a first time period, electronic device 200 may gray out the avatar 330 of member "Lucy" to notify the user that member "Alice" cannot communicate with member "Lucy".
[0271] Similarly, if electronic device 100 does not receive subgroup member information 2 from electronic device 300 for a first time period, electronic device 100 can gray out the avatar 380 of member "Lisa" to notify the user that member "Lucy" cannot communicate with member "Lisa". If electronic device 300 does not receive subgroup management information 2 from electronic device 100 for a first time period, electronic device 300 can gray out the avatar 330 of member "Lucy" to notify the user that member "Lisa" cannot communicate with member "Lucy".
[0272] It should be noted that, Figures 4A-4J This explanation is based on the example of electronic device 100 creating a real-time intercom subgroup when it is in a network-connected state. In other embodiments, electronic device 100 can also receive user operations to create a real-time intercom subgroup when it is in a network-free state.
[0273] Figure 5A A flowchart illustrating a method for an electronic device 100 to create a real-time intercom subgroup when the electronic device 100 is in a network-connected state is shown.
[0274] S501A, electronic device 100, electronic device 200, and electronic device 300 are electronic devices belonging to multiple members in the first chat group of the first communication application.
[0275] Among them, electronic device 100 can be the electronic device used by the first member in the first chat group, electronic device 200 can be the electronic device used by the second member in the first chat group, and electronic device 300 can be the electronic device used by the third member in the first chat group.
[0276] For example, the first member could be "Lucy", the second member could be "Alice", and the third member could be "Lisa".
[0277] exist Figure 5A In this system, electronic device 100 can be in a network-connected state, electronic device 200 can be in a network-connected state, and electronic device 300 can be in a network-free state.
[0278] The S502A and electronic device 100 receive user operations for establishing a real-time intercom subgroup.
[0279] When the electronic device 100 is in a network-connected state, in response to a user operation to establish a real-time intercom subgroup, the electronic device 100 can create either a network-connected real-time intercom subgroup or a network-free real-time intercom subgroup. The first real-time intercom subgroup may include both a network-connected real-time intercom subgroup and a network-free real-time intercom subgroup.
[0280] For instructions on creating a network-connected real-time intercom subgroup, please refer to sections S503A-S508A. For instructions on creating a network-free real-time intercom subgroup, please refer to sections S509A-S512A.
[0281] Create a network-connected real-time intercom subgroup (S503A-S508A).
[0282] The S503A and electronic device 100 send instructions to the server to establish a networked real-time intercom subgroup.
[0283] S504A: The server sends subgroup management information 1, including a group member list 1, to electronic device 200.
[0284] When electronic device 100 is connected to the network, in response to a user operation to establish a real-time intercom subgroup, electronic device 100 can send a command to the server to establish a network-connected real-time intercom subgroup. After receiving the command from electronic device 100 to establish a network-connected real-time intercom subgroup, the server can send subgroup management information 1 to electronic device 200. Subgroup management information 1 is used by electronic device 200 to display a prompt message indicating whether to join the first real-time intercom subgroup.
[0285] Subgroup management information 1 may include, but is not limited to, any one or more of the following: group member list 1, location information of electronic device 100, group account ID of the first chat group, account ID of the first member, number of the first real-time intercom subgroup, location information of electronic device 100, group member list 1, network access identifier, etc.
[0286] The group member list 1 includes information about members who have joined the first real-time intercom subgroup. Member information may include, but is not limited to, member account ID, member nickname, and member avatar. The number of group members in group member list 1 can be 0, meaning no members have currently joined the first real-time intercom subgroup. The network connectivity indicator in subgroup management information 1 indicates that electronic device 100 is in a network-connected state.
[0287] It should be noted that the server can send subgroup management information 1 to the devices of other members in the first chat group, not only to electronic device 200. For example, it can also send subgroup management information 1 to electronic device 300. This application only uses electronic device 200 as an example for illustration.
[0288] The S505A and electronic device 200 display prompt message 1, which is used to prompt the second member whether to join the first real-time intercom subgroup.
[0289] S506A and electronic device 200 receive the operation of joining the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0290] S507A, electronic device 200 sends message 1 to the server, message 1 is used to indicate that the second member has joined the first real-time intercom subgroup.
[0291] S508A, the server sends message 1 to electronic device 100, message 1 is used to indicate that the second member has joined the first real-time intercom subgroup.
[0292] After receiving the subgroup management information 1 from the server, the electronic device 200 can display prompt information 1, which prompts whether to join the first real-time intercom subgroup. After displaying prompt information 1, the electronic device 200 receives the operation that it can join the first real-time intercom subgroup and joins the first real-time intercom subgroup.
[0293] After joining the first real-time intercom subgroup, electronic device 200 can send message 1 to the server, and the server then sends message 1 to electronic device 100. Message 1 is used to indicate to electronic device 100 that the second member has joined the first real-time intercom subgroup.
[0294] For example, prompt message 1 could be Figure 4F The prompt bar shown is 323.
[0295] Create a network-free real-time intercom subgroup (S509A-S512A).
[0296] S509A, electronic device 100 sends subgroup management information 2, including a group member list 2, to electronic device 300 via unicast, multicast, or broadcast.
[0297] The S510A and electronic device 200 display prompt message 2, which is used to prompt the third member whether to join the first real-time intercom subgroup.
[0298] The S511A and electronic device 200 receive the operation of joining the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0299] S512A and electronic device 300 send message 2 via unicast, multicast, or broadcast. Message 2 is used to indicate that a third member has joined the first real-time intercom subgroup.
[0300] When electronic device 100 is in a network-connected state and electronic device 300 is in a network-disconnected state, in response to the user operation of establishing a real-time intercom subgroup, electronic device 100 can also send subgroup management information 2 to electronic device 300 via unicast, multicast, or broadcast. Subgroup management information 2 is used by electronic device 300 to display a prompt message indicating whether to join the first real-time intercom subgroup.
[0301] Subgroup management information 2 may include, but is not limited to, any one or more of the following: location information of electronic device 100, group account ID of the first chat group, account ID of the first member, number of the first real-time intercom subgroup, group member list 2, network access identifier, etc.
[0302] Group member list 2 is similar to group member list 1; please refer to the description of group member list 1. The number of group members in group member list 2 can be 0, meaning that no member has joined the first real-time intercom subgroup. The network availability indicator in subgroup management information 2 is used to indicate that electronic device 100 is in a network-enabled state.
[0303] It should be noted that, in addition to sending subgroup management information 2 to electronic device 300, electronic device 100 can also send subgroup management information 2 to the offline devices of other members in the first chat group. This application only uses electronic device 300 as an example for illustration.
[0304] After receiving the subgroup management information 2 sent by the electronic device 100, the electronic device 300 can display prompt information 2, which prompts whether to join the first real-time intercom subgroup. After displaying prompt information 2, the electronic device 300 can receive the operation to join the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0305] After joining the first real-time intercom subgroup, electronic device 300 can send message 2 via unicast, multicast, or broadcast. Message 2 is used to indicate that the third member has joined the first real-time intercom subgroup.
[0306] For example, message 2 could be Figure 4G The prompt bar shown.
[0307] After receiving message 1 from the server and message 2 from the electronic device 300, the electronic device 100 can display interface 1, which includes information about the first member, the second member, and the third member. Interface 1 is used to indicate the members who have joined the first real-time intercom subgroup in the first chat group. The first real-time intercom subgroup may include a first real-time intercom subgroup and a first real-time intercom subgroup.
[0308] For example, interface 1 can be Figure 4H The user interface is shown. In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 300 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 300 via unicast / multicast / broadcast, electronic device 100 can send subgroup management information 2 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 2 to electronic device 300 via unicast / multicast / broadcast. Alternatively, electronic device 300 can send information 2 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send information 2 to electronic device 100 via unicast / multicast / broadcast.
[0309] Figure 5B A flowchart illustrating a method for an electronic device 100 to manage a real-time intercom subgroup created by the electronic device 100 is shown.
[0310] S501B, the server sends subgroup management information 3, including a group member list 3, to electronic device 100.
[0311] S502B, the server sends subgroup management information 3 to electronic device 200.
[0312] After receiving message 1 from the server, electronic device 100 confirms that the second member has joined the first real-time intercom subgroup, and the server can send subgroup management information 3 to electronic device 100 and electronic device 200.
[0313] Subgroup management information 3 may include, but is not limited to, any one or more of the following: location information of electronic device 100, group account ID of the first chat group, account ID of the first member, number of the first real-time intercom subgroup, group member list 3, network access identifier, etc. Subgroup management information 3 is used by electronic device 200 to obtain the number of members of the first real-time intercom subgroup who have server communication capabilities with electronic device 100.
[0314] The group member list 3 includes information about members who have joined the first real-time intercom subgroup. This information may include, but is not limited to, the member's account ID, nickname, and avatar. The number of group members in the group member list 3 can be 1, meaning there is currently one member in the first real-time intercom subgroup. The network connectivity indicator in the subgroup management information 3 indicates that the electronic device 100 is in a network-connected state.
[0315] It should be noted that the subgroup management information 3 is not limited to being sent to electronic device 200. When the devices of other members in the first chat group are connected to the network, the server can also send subgroup management information 3 to the devices of other members in the first chat group. This application only uses electronic device 200 as an example for illustration.
[0316] S503B, electronic device 200 sends subgroup member information 1 to the server, including the number of members in the first real-time intercom subgroup who have the ability to communicate with the server.
[0317] S504B, The server sends subgroup member information 1 to electronic device 100.
[0318] After joining the first real-time intercom subgroup, electronic device 200 can send subgroup member information 1 to the server, and the server then sends subgroup member information 1 to electronic device 100. Subgroup member information 1 is used by electronic device 100 to obtain the number of members in the first real-time intercom subgroup that have server communication capabilities with electronic device 200.
[0319] The subgroup member information 1 may include, but is not limited to, any one or more of the following: location information of electronic device 200, number of members in the first real-time intercom subgroup that have server communication capabilities with electronic device 200, and network access identifier. The network access identifier in the subgroup member information 1 is used to indicate that electronic device 200 is in a network-enabled state.
[0320] S505B, electronic device 100 sends subgroup management information 4, including a group member list 4, to electronic device 300 via unicast, multicast, or broadcast.
[0321] S506B, electronic device 300 sends subgroup member information 2 to electronic device 100 via unicast, multicast or broadcast, including the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300.
[0322] After receiving message 2 from electronic device 300, electronic device 100 confirms that the third member has joined the first real-time intercom subgroup. Electronic device 100 can send subgroup management information 4 to electronic device 100 via unicast, multicast, or broadcast.
[0323] Subgroup management information 4 may include, but is not limited to, any one or more of the following: location information of electronic device 100, group account ID of the first chat group, account ID of the first member, number of the first real-time intercom subgroup, location information of electronic device 100, group member list 4, network access identifier, etc. Subgroup management information 4 is used by electronic device 300 to obtain the number of members of the first real-time intercom subgroup who have D2D communication capability with electronic device 100.
[0324] The group member list 4 includes information about members who have joined the first real-time intercom subgroup. Member information may include, but is not limited to, the member's account ID, nickname, and avatar. The number of group members in the group member list 4 can be 1, meaning there is currently one member in the first real-time intercom subgroup. The network connectivity indicator in the subgroup management information 4 indicates that the electronic device 100 is in a network-connected state.
[0325] It should be noted that the subgroup management information 4 is not limited to being sent to electronic device 200 via unicast, multicast, or broadcast. When the devices of other members in the first chat group are offline and have joined the first real-time intercom subgroup, the server can also send the subgroup management information 4 to the devices of other members in the first chat group. This application only uses electronic device 300 as an example for illustration.
[0326] After joining the first real-time intercom subgroup, electronic device 300 can send subgroup member information 2 to electronic device 100 via unicast, multicast, or broadcast. Subgroup member information 2 is used by electronic device 100 to obtain the number of members in the first real-time intercom subgroup that have D2D communication capabilities with electronic device 300.
[0327] The subgroup member information 2 may include, but is not limited to, any one or more of the following: location information of the electronic device 300, the number of members in the first real-time intercom subgroup that have D2D communication capability with the electronic device 300, and a network-free identifier. The network-free identifier in the subgroup member information 2 is used to indicate that the electronic device 300 is in a network-free state.
[0328] The number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300 can refer to the number of members in the offline real-time intercom subgroup of the first real-time intercom subgroup that have D2D communication capability with electronic device 300. The number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300 can be determined by the number of subgroup management information 4 sent by electronic device 100 received by electronic device 300 and the number of subgroup member information sent by other members' devices in the first real-time intercom subgroup via unicast / multicast / broadcast.
[0329] For example, if electronic device 300 only receives subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast, then the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300 is 1.
[0330] For example, if electronic device 300 receives subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast, and also receives subgroup member information sent by electronic device 400 to electronic device 300 via unicast, multicast, or broadcast, then the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300 is 2.
[0331] It should be noted that, in addition to sending subgroup member information 2 to electronic device 100, electronic device 300 can also send subgroup member information 2 to the offline devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast. This application only uses electronic device 100 as an example for illustration.
[0332] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 300 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 300 via unicast / multicast / broadcast, electronic device 100 can send subgroup management information 4 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 4 to electronic device 300 via unicast / multicast / broadcast. Alternatively, electronic device 300 can send subgroup member information 2 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup member information 2 to electronic device 100 via unicast / multicast / broadcast.
[0333] Figure 5C A schematic diagram of a method for an electronic device 100 to create a real-time intercom subgroup when the electronic device 100 is in a network-free state is shown.
[0334] S501C, electronic device 100, electronic device 200, and electronic device 300 are electronic devices belonging to multiple members in the first chat group of the first communication application.
[0335] exist Figure 5C In this process, electronic device 100 can be in a state without network, electronic device 200 can be in a state with network or without network, and electronic device 300 can also be in a state with network or without network.
[0336] The S502C and electronic device 100 receive user operations for establishing the first real-time intercom subgroup.
[0337] For a description of S501C-S502C, please refer to the description of S501A-S502A. This application will not repeat it here.
[0338] When the electronic device 100 is in a network-free state, in response to receiving a user operation to establish a real-time intercom subgroup, the electronic device 100 can create a network-free real-time intercom subgroup. The first real-time intercom subgroup may include the network-free real-time intercom subgroup.
[0339] Create a network-free real-time intercom subgroup (S502C-S510C).
[0340] S503C and electronic device 100 send subgroup management information 2, including a group member list 2, to electronic device 200 via unicast, multicast, or broadcast.
[0341] The S504C and electronic device 200 display prompt message 3, which is used to prompt the second member whether to join the first real-time intercom subgroup.
[0342] The S505C and electronic device 200 receive the operation of joining the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0343] S506C and electronic device 200 send message 3 to electronic device 100 via unicast, multicast or broadcast. Message 3 is used to indicate that the second member has joined the first real-time intercom subgroup.
[0344] When electronic device 100 is in a network-free state, in response to the user operation of establishing a real-time intercom subgroup, electronic device 100 can also send subgroup management information 2 to electronic device 200 via unicast, multicast or broadcast. Subgroup management information 2 is used by electronic device 200 to display a prompt message indicating whether to join the first real-time intercom subgroup.
[0345] After receiving the subgroup management information 2 from the electronic device 100, the electronic device 200 can display a prompt message 3, which prompts whether to join the first real-time intercom subgroup. After displaying the prompt message 3, the electronic device 200 can receive the operation to join the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0346] After joining the first real-time intercom subgroup, electronic device 200 can send message 3 to electronic device 100 via unicast, multicast, or broadcast. Message 3 is used to indicate that the second member has joined the first real-time intercom subgroup.
[0347] S507C, electronic device 100 sends subgroup management information 2, including a group member list 2, to electronic device 300 via unicast, multicast, or broadcast.
[0348] The S508C and electronic device 300 display prompt message 4, which is used to prompt the third member whether to join the first real-time intercom subgroup.
[0349] The S509C and electronic device 300 receive the operation of joining the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0350] S510C and electronic device 300 send message 4 to electronic device 100 via unicast, multicast, or broadcast. Message 4 is used to indicate that the third member has joined the first real-time intercom subgroup.
[0351] Similarly, when electronic device 100 is in a network-free state, in response to the user operation of establishing a real-time intercom subgroup, electronic device 100 can also send subgroup management information 2 to electronic device 300 via unicast, multicast, or broadcast. Subgroup management information 2 is used by electronic device 300 to display a prompt message indicating whether to join the first real-time intercom subgroup.
[0352] After receiving the subgroup management information 2 sent by the electronic device 100, the electronic device 300 can display a prompt message 4, which prompts whether to join the first real-time intercom subgroup. After displaying the prompt message 4, the electronic device 300 can receive the operation to join the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0353] After joining the first real-time intercom subgroup, electronic device 300 can send message 4 via unicast, multicast, or broadcast. Message 4 is used to indicate that the third member has joined the first real-time intercom subgroup.
[0354] After receiving message 3 from electronic device 200 and message 4 from electronic device 300, electronic device 100 can display interface 2, which includes information about the first member, the second member, and the third member. Interface 2 is used to indicate the members who have joined the first real-time intercom subgroup in the first chat group. The first real-time intercom subgroup may include the first real-time intercom subgroup.
[0355] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic devices 300 and 200 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic devices 300 and 200 via unicast / multicast / broadcast, electronic device 100 can send subgroup management information 2 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 2 to electronic devices 300 and 200 via unicast / multicast / broadcast. Alternatively, electronic device 200 can send information 3 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send information 3 to electronic device 100 via unicast / multicast / broadcast. Alternatively, electronic device 300 can send information 4 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup member information 4 to electronic device 100 via unicast / multicast / broadcast.
[0356] It should be noted that electronic devices 200 and 300 can also communicate with electronic device 100 through different relay devices, and this application does not limit this.
[0357] Figure 5D A flowchart illustrating another method for managing real-time intercom subgroups created by electronic device 100 is shown.
[0358] S501D and electronic device 100 send subgroup management information 4, including a group member list 4, to electronic device 200 via unicast, multicast, or broadcast.
[0359] S502D, electronic device 200 sends subgroup member information 3 to electronic device 100 via unicast, multicast or broadcast, including the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200.
[0360] After receiving message 3 from electronic device 200, electronic device 100 confirms that the third member has joined the first real-time intercom subgroup. Electronic device 100 can send subgroup management information 4 via unicast, multicast, or broadcast. Subgroup management information 4 is used by electronic device 200 to obtain the number of members in the first real-time intercom subgroup who have D2D communication capabilities with electronic device 100.
[0361] After joining the first real-time intercom subgroup, electronic device 200 can send subgroup member information 3 to electronic device 100 via unicast, multicast, or broadcast. Subgroup member information 3 is used by electronic device 100 to obtain the number of members in the first real-time intercom subgroup that have D2D communication capabilities with electronic device 200.
[0362] The subgroup member information 3 may include, but is not limited to, any one or more of the following: the location information of the electronic device 200, the number of members in the first real-time intercom subgroup that have D2D communication capability with the electronic device 200, and a network-free or network-enabled identifier. The network-free identifier in the subgroup member information 2 is used to indicate whether the electronic device 200 is in a network-free or network-enabled state.
[0363] The number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200 can be determined by the subgroup management information received by electronic device 200 and the number of subgroup member information sent by other members' devices in the first real-time intercom subgroup via unicast / multicast / broadcast.
[0364] For example, if electronic device 200 only receives subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast, then the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200 is 1.
[0365] For example, if electronic device 200 receives subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast, and also receives subgroup member information 2 sent by electronic device 300 via unicast, multicast, or broadcast, then the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200 is 2.
[0366] It should be noted that, in addition to sending subgroup member information 3 to electronic device 100, electronic device 200 can also send subgroup member information 3 to the offline devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast. For example, it can send subgroup member information 3 to electronic device 300 via unicast, multicast, or broadcast. This application only uses electronic device 100 as an example for illustration.
[0367] S503D and electronic device 100 send subgroup management information 4, including a group member list 4, to electronic device 300 via unicast, multicast, or broadcast.
[0368] S504D, electronic device 300 sends subgroup member information 2 to electronic device 100 via unicast, multicast or broadcast, including the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300.
[0369] After receiving message 4 from electronic device 300, electronic device 100 confirms that the fourth member has joined the first real-time intercom subgroup. Electronic device 100 can send subgroup management information 4 via unicast, multicast, or broadcast. Subgroup management information 4 is used by electronic device 300 to obtain the number of members in the first real-time intercom subgroup who have D2D communication capabilities with electronic device 100.
[0370] After joining the first real-time intercom subgroup, electronic device 300 can send subgroup member information 2 to electronic device 100 via unicast, multicast, or broadcast. Subgroup member information 2 is used by electronic device 100 to obtain the number of members in the first real-time intercom subgroup that have D2D communication capabilities with electronic device 300.
[0371] It should be noted that, in addition to sending subgroup member information 2 to electronic device 100, electronic device 300 can also send subgroup member information 2 to the offline devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast. For example, it can send subgroup member information 2 to electronic device 200 via unicast, multicast, or broadcast. This application only uses electronic device 100 as an example for illustration.
[0372] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic devices 300 and 200 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic devices 300 and 200 via unicast / multicast / broadcast, electronic device 100 can send subgroup management information 4 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 4 to electronic devices 300 and 200 via unicast / multicast / broadcast. Alternatively, electronic device 200 can send subgroup member information 3 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup member information 3 to electronic device 100 via unicast / multicast / broadcast. Alternatively, electronic device 300 can send subgroup member information 2 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup member information 2 to electronic device 100 via unicast / multicast / broadcast.
[0373] It should be noted that electronic devices 200 and 300 can also communicate with electronic device 100 through different relay devices, and this application does not limit this.
[0374] Scenario b: The fourth member in the first chat group actively joins the offline real-time intercom subgroup where electronic device 100 is located.
[0375] based on Figure 5D As described in the embodiments, the electronic device 100 can periodically / irregularly send subgroup management information 4 to the devices of other members in the first chat group via unicast / multicast / broadcast. The subgroup management information 4 can be used to display prompts to offline devices of members in the first chat group who have not joined the first real-time intercom subgroup, indicating whether they wish to join the first real-time intercom subgroup.
[0376] For example, the first chat group also includes a fourth member. If the distance between electronic device 400 and electronic device 100 is within the D2D communication range, then electronic device 400 can receive subgroup management information 4. In response to subgroup management information 4, electronic device 400 can output prompt information 5, which prompts the user whether to join the first real-time intercom subgroup. The user of electronic device 400 can actively request to join the first real-time intercom subgroup.
[0377] Figures 6A-6D The diagram shows a UI illustration of a fourth member in a first chat group actively requesting to join a first real-time intercom subgroup.
[0378] For example, such as Figure 6AAs shown, the electronic device 400 displays a user interface 601, which shows multiple dialog boxes, such as the dialog box 602 for "Hiking Exchange Group".
[0379] In response to the received subgroup management information 4, the electronic device 400 can display... Figure 6B The prompt bar 603 is shown. The prompt bar 603 includes the avatar 604 of member "Alice", the avatar 605 of member "Lucy", the avatar 606 of member "Llisa", and the join option 607. The prompt bar 603 is used to prompt the user whether to join the first real-time intercom subgroup.
[0380] Optionally, the avatars of members in the first real-time intercom subgroup may not be displayed in the prompt bar 603.
[0381] like Figure 6B and Figure 6C As shown, when member "Tom" confirms joining the first real-time intercom subgroup, electronic device 400 can receive user input operations for the join option 607 in the prompt bar 603, such as a click operation, in response to the user's input operation. Electronic device 400 can send join message 1 to electronic device 100 via unicast / multicast / broadcast. After receiving join message 1, if it is determined that the number of members in the offline real-time intercom subgroup in the first real-time intercom subgroup is less than a first preset number, electronic device 100 can add member "Tom" to the first real-time intercom subgroup.
[0382] After adding member "Tom" to the first real-time intercom subgroup, electronic device 100 can display... Figure 6C The user interface shown is Figure 6C The user interface shown is Figure 4H The user interfaces shown are similar, the difference being that... Figure 6C The user interface shown also includes an avatar of member "Tom" and a location indicator for member "Tom".
[0383] After joining the first real-time intercom subgroup, the electronic device 400 can also display. Figure 6D The user interface shown is Figure 6D The user interface shown is Figure 6C The user interface shown is similar. Figure 6D The user interface shown includes avatars of members "Alice", "Lucy", "Llisa", and "Tom".
[0384] Figure 7A A schematic diagram of a method for a fourth member to actively join the offline real-time intercom subgroup to which the electronic device 100 is located when the electronic device 100 is in an offline state is shown.
[0385] S701A, Electronic Device 400 receives subgroup management information 4 sent by Electronic Device 100 via unicast, multicast, or broadcast.
[0386] The S702A and electronic device 400 output prompt message 5, which is used to prompt the fourth member whether to join the first real-time intercom subgroup.
[0387] When electronic device 100 is in a network-free state, electronic device 100 can create a network-free real-time intercom subgroup, and electronic device 100 can periodically / irregularly send subgroup management information 4 to members in the first chat group.
[0388] Electronic device 400 can be in a network-connected or network-free state. After receiving subgroup management information 4, electronic device 400 can output prompt information 5, which is used to prompt the fourth member whether to join the first real-time intercom subgroup.
[0389] For example, prompt message 5 could be Figure 6B The prompt bar shown is 603.
[0390] The S703A and 400 electronic devices receive the operation of joining the first real-time intercom subgroup.
[0391] S704A and electronic device 400 send a join message 1 to electronic device 100 via unicast, multicast, or broadcast, including the account ID of the fourth member.
[0392] After displaying prompt message 5, electronic device 400 can receive the operation to join the first real-time intercom subgroup. Before joining the first real-time intercom subgroup, electronic device 400 can send join message 1 to electronic device 100 via unicast, multicast, or broadcast. Join message 1 is used by electronic device 100 to confirm whether to allow the fourth member to join the first real-time intercom subgroup.
[0393] Among them, message 1 includes any one or more of the following: the group account ID of the first chat group, the number of the first real-time intercom subgroup, the account ID of the fourth member, etc.
[0394] S705A, electronic device 100 determines that the number of members in the first real-time intercom subgroup is less than the first preset number, and adds the fourth member to the first real-time intercom subgroup.
[0395] S706A, electronic device 100 sends acknowledgment message 1, including a group member list, via unicast, multicast, or broadcast.
[0396] After receiving the join message 1, the electronic device 100 can determine whether the number of members in the first real-time intercom subgroup is less than the first preset number.
[0397] If the number of members in the first real-time intercom subgroup is equal to the first preset number, the electronic device 100 can confirm that a fourth member is not allowed to join the first real-time intercom subgroup.
[0398] If the number of members in the first real-time intercom subgroup is less than the first preset number, the electronic device 100 can confirm that a fourth member is allowed to join the first real-time intercom subgroup.
[0399] If the number of members in the first real-time intercom subgroup is less than the first preset number, the electronic device 100 can send a confirmation message 1 via unicast, multicast, or broadcast. The confirmation message 1 is used to indicate that the electronic device 400 can join the first real-time intercom subgroup.
[0400] Confirmation message 1 includes any one or more of the following: the group account ID of the first chat group, the account ID of the first member, the number of the first real-time intercom subgroup, and the list of group members.
[0401] S707A, electronic device 400 sends subgroup member information 4 to electronic device 100 via unicast, multicast or broadcast, including the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 400.
[0402] After receiving confirmation message 1, electronic device 400 can confirm joining the first real-time intercom subgroup. Electronic device 400 can send subgroup member information 4, including the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 400, to electronic device 100 via unicast, multicast, or broadcast.
[0403] The subgroup member information 4 may include, but is not limited to, any one or more of the following: the location information of the electronic device 400, the number of members in the first real-time intercom subgroup that have D2D communication capability with the electronic device 400, and a network-free identifier or a network-enabled identifier. The network-free identifier in the subgroup member information 4 is used to indicate that the electronic device 400 is in a network-free state, and the network-enabled identifier in the subgroup member information 4 is used to indicate that the electronic device 400 is in a network-enabled state.
[0404] The number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 400 can be determined by the subgroup management information received by electronic device 400 and the number of subgroup member information sent by other members' devices in the first real-time intercom subgroup via unicast / multicast / broadcast.
[0405] For example, if electronic device 400 only receives subgroup management information 4 sent by electronic device 100 to electronic device 200 via unicast, multicast, or broadcast, then the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 400 is 1.
[0406] For example, if electronic device 400 receives subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast, and also receives subgroup member information 2 sent by electronic device 300 via unicast, multicast, or broadcast, and also receives subgroup member information 3 sent by electronic device 200 via unicast, multicast, or broadcast, then the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 400 is 3.
[0407] It should be noted that, in addition to sending subgroup member information 4 to electronic device 100, electronic device 400 can also send subgroup member information 4 to the offline devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast. For example, it can send subgroup member information 4 to electronic device 200 and / or electronic device 300 via unicast, multicast, or broadcast. This application only uses electronic device 100 as an example for illustration.
[0408] It should be noted that this also applies when electronic device 100 is in a network-connected state and electronic device 400 is in a network-free state. Figure 7A The method shown will not be described again in this application. When electronic device 100 is in a networked state and electronic device 400 is in a networkless state, the first real-time intercom subgroup in S705A includes a networked real-time intercom subgroup and a networkless real-time intercom subgroup. The number of members in the first real-time intercom subgroup in S705A can refer to the number of members in the networkless real-time intercom subgroup within the first real-time intercom subgroup.
[0409] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 400 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 400 via unicast / multicast / broadcast, electronic device 400 can send a join message 1 and subgroup member information 4 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send a join message 1 and subgroup member information 4 to electronic device 100 via unicast / multicast / broadcast. Alternatively, electronic device 100 can send an acknowledgment message 1 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send an acknowledgment message 1 to electronic device 400 via unicast / multicast / broadcast.
[0410] Scenario c: The third member in the first chat group actively joins the real-time intercom subgroup where electronic device 100 is located.
[0411] Figure 7B A schematic diagram of a method for a fourth member to actively join the networked real-time intercom subgroup where the electronic device 100 is connected to the network is shown.
[0412] S701B, Electronic Device 400 receives subgroup management information 3 sent by the server.
[0413] The S702B and electronic device 400 output prompt message 6, which is used to prompt the fourth member whether to join the first real-time intercom subgroup.
[0414] When electronic device 100 is connected to the network, it can create a real-time intercom subgroup through the server. When electronic device 400 is connected to the network, it can receive subgroup management information 3 sent by the server.
[0415] After receiving the subgroup management information 3, the electronic device 400 can output a prompt message 5, which prompts the user whether to join the first real-time intercom subgroup.
[0416] The S703B and Electronic Device 400 receive the operation of joining the first real-time intercom subgroup.
[0417] The S704B and electronic device 400 send a join message 2 to the server, including the account ID of the fourth member.
[0418] S705B, The server sends a join message 2 to electronic device 100.
[0419] After displaying prompt message 5, electronic device 400 can receive the operation to join the first real-time intercom subgroup. In response to the operation to join the first real-time intercom subgroup, electronic device 400 can send join message 2 to the server. Join message 2 is used to instruct the server that the fourth member requests to join the first real-time intercom subgroup.
[0420] Among them, message 2 includes any one or more of the following: the group account ID of the first chat group, the number of the first real-time intercom subgroup, the account ID of the fourth member, etc.
[0421] After receiving Join Message 2, the server can add the fourth member to the first real-time intercom subgroup. The server then sends Join Message 2 to electronic device 100, while Join Message 1 indicates to electronic device 100 that the fourth member has joined the first real-time intercom subgroup.
[0422] S706B, electronic device 400 sends subgroup member information 4 to the server, including the number of members in the first real-time intercom subgroup who have the ability to communicate with the server.
[0423] S707B, The server sends subgroup member information 4 to the electronic device 100, including the number of members in the first real-time intercom subgroup who have the ability to communicate with the electronic device 400 via the server.
[0424] After joining the first real-time intercom subgroup, electronic device 400 can send subgroup member information 4 to the server, and the server then sends subgroup member information 4 to electronic device 100. Subgroup member information 4 is used by electronic device 100 to obtain the number of members in the first real-time intercom subgroup that have server communication capabilities with electronic device 400.
[0425] The subgroup member information 4 may include, but is not limited to, any one or more of the following: location information of the electronic device 400, the number of members in the first real-time intercom subgroup that have server communication capabilities with the electronic device 400, and a network identifier. The network identifier in the subgroup member information 4 is used to indicate that the electronic device 400 is in a network-connected state.
[0426] pass Figures 7A-7B The method shown allows members of the first chat group to actively join the first real-time intercom subgroup when their electronic devices are connected to the internet.
[0427] Scenario d: The third member in the first chat group voluntarily leaves the offline real-time intercom subgroup where electronic device 100 is located.
[0428] Figures 8A-8C The diagram shows a UI illustration of a third member in a first chat group actively requesting to leave the offline real-time intercom subgroup where electronic device 100 is located.
[0429] For example, such as Figure 8A As shown, after electronic device 300 joins the first real-time intercom subgroup, electronic device 300 can display... Figure 8A The user interface shown.
[0430] like Figure 8A and Figure 8B As shown, electronic device 300 can receive user input regarding the option to leave the live intercom subgroup, allowing a third member to leave the first live intercom subgroup. After leaving the first live intercom subgroup, electronic device 300 can display... Figure 8B The user interface shown.
[0431] like Figure 8BAs shown, the electronic device 300 can display a prompt bar 323, which is used to prompt the user whether to join the first real-time intercom subgroup where members "Lucy" and "Alice" are located.
[0432] In response to receiving a user's action to leave the live talk subgroup, electronic device 200 can send a leave message 1 to electronic device 100 via D2D communication technology. After receiving leave message 1, electronic device 100 can remove the third member from the first live talk subgroup.
[0433] After removing the third member from the first real-time intercom subgroup, electronic device 100 can display... Figure 8C The user interface shown. Figure 8C The user interface shown does not include member "Lisa's" avatar, indicating that member "Lisa" has left the first live chat subgroup where members "Lucy" and "Alice" are located.
[0434] Figure 9A A schematic diagram of a method for a third member to voluntarily leave the networked real-time intercom subgroup to which the electronic device 100 is located is shown.
[0435] S901A and electronic device 300 receive the operation to leave the first real-time intercom subgroup and leave the first real-time intercom subgroup.
[0436] Among them, Figure 9A In this scenario, electronic device 300 is either in a network-connected or network-free state. Electronic device 100 creates a real-time intercom subgroup with and without network connectivity, and the third member resides within this subgroup. The first real-time intercom subgroup includes the network-free real-time intercom subgroup.
[0437] S902A and electronic device 300 send an exit message 1 to electronic device 100 via unicast, multicast, or broadcast, including the account ID of the third member and the identifier of the subgroup member.
[0438] If a third member confirms their withdrawal from the first real-time intercom subgroup, the electronic device 300 can receive the withdrawal operation from the first real-time intercom subgroup and confirm the withdrawal.
[0439] For example, leaving the first real-time intercom subgroup can be... Figure 8A The input action shown is for the option to exit the live talk subgroup.
[0440] In response to the operation of leaving the first real-time intercom subgroup, electronic device 300 can send exit message 1 to electronic device 100 via unicast, multicast or broadcast. Exit message 1 is used to indicate leaving the first real-time intercom subgroup.
[0441] The exit message 1 may include, but is not limited to, any one or more of the following information: the group account ID of the first chat group, the account ID of the first member, the number of the first real-time intercom subgroup, the account ID of the third member, and the identifier of the subgroup member. The identifier of the subgroup member is used to indicate that the third member is a subgroup member in the first real-time intercom subgroup.
[0442] S903A, in response to exit message 1, electronic device 100 removes the third member from the first real-time intercom subgroup.
[0443] Upon receiving Exit Message 1, in response to Exit Message 1, electronic device 100 can remove the third member from the first real-time intercom subgroup. After receiving Exit Message 1, electronic device 100 can stop displaying the third member's avatar on the interface to notify the first member that the third member has left the first real-time intercom subgroup.
[0444] For example, after a third member leaves the first real-time intercom subgroup, electronic device 300 can display... Figure 8B The user interface shown can be displayed by the electronic device 100. Figure 8C The user interface shown.
[0445] S904A, Electronic Device 300 stops sending subgroup member information.
[0446] After electronic device 300 leaves the first real-time intercom subgroup, electronic device 300 can stop sending subgroup member information.
[0447] It should be noted that this also applies when electronic device 100 is in a network-connected state and electronic device 300 is in a network-free state. Figure 9A The method shown will not be described in detail here.
[0448] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 300 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 300 via unicast / multicast / broadcast, electronic device 300 can send an exit message 1 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send an exit message to electronic device 100 via unicast / multicast / broadcast.
[0449] Scenario e: The third member in the first chat group voluntarily leaves the real-time intercom subgroup with internet access where electronic device 100 is located.
[0450] Figure 9BA schematic diagram of a method for a third member to voluntarily leave the networked real-time intercom subgroup to which the electronic device 100 is located is shown.
[0451] S901B and electronic device 300 receive the operation to leave the first real-time intercom subgroup and leave the first real-time intercom subgroup.
[0452] Among them, Figure 9A In this system, electronic device 300 is in a network-connected state. Electronic device 100 creates a network-connected real-time intercom subgroup through a server, and the third member resides within this subgroup. Electronic device 100 also creates a network-free real-time intercom subgroup, where other members' network-free devices can reside. The first real-time intercom subgroup includes both the network-connected and network-free real-time intercom subgroups.
[0453] S902B and electronic device 300 send an exit message 1 to the server, including the account ID of the third member and the identifier of the subgroup member.
[0454] S903B, in response to exit message 1, removes the third member from the first real-time intercom subgroup.
[0455] S904B, The server sends an exit message 1 to electronic device 100.
[0456] If a third member confirms their withdrawal from the first real-time intercom subgroup, the electronic device 300 can receive the withdrawal operation from the first real-time intercom subgroup and confirm the withdrawal.
[0457] In response to the operation of leaving the first real-time intercom subgroup, if the third member is in a networked real-time intercom subgroup created by the server, the electronic device 300 can send a leave message 1 to the server.
[0458] After receiving Exit Message 1, the server can remove the third member from the first real-time intercom subgroup. The server then sends Exit Message 1 to electronic device 100. After receiving Exit Message 1, electronic device 100 can stop displaying the third member's avatar on the interface to notify the first member that the third member has left the first real-time intercom subgroup.
[0459] S905B and Electronic Device 300 stop sending subgroup member information.
[0460] After electronic device 300 leaves the first real-time intercom subgroup, electronic device 300 can stop sending subgroup member information.
[0461] Exit message 1 is used to indicate exiting the first real-time intercom subgroup.
[0462] pass Figures 9A-9B The method shown allows members of the first chat group to actively leave the first real-time intercom subgroup, whether their electronic devices are in a network-connected or network-free state.
[0463] Scenario f: The third member in the first chat group switches from either a real-time intercom subgroup with or without internet access to another real-time intercom subgroup without internet access.
[0464] In some embodiments, a third member can be in multiple chat groups simultaneously. For example, a third member can be in both a first chat group and a second chat group. Members in the first chat group can create a first real-time intercom subgroup, and the third member in the first chat group can join the first real-time intercom subgroup. Members in the second chat group can create a second real-time intercom subgroup. After the third member in the first chat group joins the first real-time intercom subgroup, the third member's device can receive subgroup management information from the second real-time intercom subgroup. In response to the subgroup management information from the second real-time intercom subgroup, the third member's device can display a prompt message asking whether to join the second real-time intercom subgroup. After the third member confirms joining the second real-time intercom subgroup, the third member can leave the first real-time intercom subgroup and join the second real-time intercom subgroup.
[0465] Figures 10A-10B The diagram illustrates a UI representation of a third member in a first chat group switching from one offline real-time intercom subgroup to another offline real-time intercom subgroup.
[0466] For example, after a third member joins the first real-time intercom subgroup, the third member can receive subgroup management information from the second real-time intercom subgroup.
[0467] In response to subgroup management information from the second real-time intercom subgroup, the third member's device can display... Figure 10A The prompt bar 1001 shown includes avatars 1002 and 1003 of the members in the second real-time intercom subgroup, and a join option 1004. The prompt bar 1001 is used to prompt the user whether to join the second real-time intercom subgroup.
[0468] like Figure 10A and Figure 10B As shown, when a third member confirms joining the second real-time intercom subgroup, the electronic device 300 can receive input operations from the user for the joining option 1004 in the prompt bar 1001, such as a click operation. In response to the user's input operation, the electronic device 300 can leave the first real-time intercom subgroup and join the second real-time intercom subgroup.
[0469] After the third member joins the second real-time intercom subgroup, the electronic device 300 can display... Figure 10B The user interface shown is Figure 10BThe user interface shown includes avatars of members in the second real-time intercom subgroup.
[0470] Figure 11A The diagram illustrates a method for a third member in a first chat group to switch from a network-enabled real-time intercom subgroup or a network-free real-time intercom subgroup to another network-free real-time intercom subgroup.
[0471] S1101A and Electronic Equipment 500 are devices belonging to the subgroup leader in the second real-time intercom subgroup.
[0472] S1102A and Electronic Equipment 300 are devices belonging to the subgroup members in the first real-time intercom subgroup.
[0473] In this configuration, electronic device 500 is in a network-free state, and the second real-time intercom subgroup can be a network-free real-time intercom subgroup. The first real-time intercom subgroup can include both a network-enabled real-time intercom subgroup and a network-free real-time intercom subgroup, or include only a network-free real-time intercom subgroup. Electronic device 300 can be located in either the network-enabled or network-free real-time intercom subgroup.
[0474] In a scenario where the first real-time intercom subgroup can include both a network-connected real-time intercom subgroup and a network-free real-time intercom subgroup, if electronic device 300 is in a network-connected state, then electronic device 300 can be located in the network-connected real-time intercom subgroup. If electronic device 300 is in a network-free state, then electronic device 300 can be located in the network-free real-time intercom subgroup.
[0475] In the case where the first real-time intercom subgroup may include a network-free real-time intercom subgroup, the electronic device 300 may be in a network-enabled or network-free state, and the electronic device 300 may be located in the network-free real-time intercom subgroup.
[0476] S1103A, electronic device 300 receives subgroup management information 5, including a group member list 5, sent by electronic device 500 via unicast, multicast, or broadcast.
[0477] S1104A and electronic device 300 output prompt message 7, which is used to prompt the third member whether to join the second real-time intercom subgroup.
[0478] S1105A and electronic device 300 receive the operation of joining the second real-time intercom subgroup and leaving the first real-time intercom subgroup.
[0479] S1106A, electronic device 300 sends a join message 3 to electronic device 500 via unicast, multicast, or broadcast, including the account ID of the third member.
[0480] After the electronic device 500 creates the second real-time intercom subgroup (the second real-time intercom subgroup includes the offline real-time intercom subgroup), the electronic device 500 can periodically / irregularly send subgroup management information 5 to the members in the second real-time intercom subgroup. The subgroup management information 5 is used to display a prompt message to the members in the second chat group indicating whether they have joined the second real-time intercom subgroup.
[0481] Subgroup management information 5 may include, but is not limited to, any one or more of the following: location information of electronic device 500, group account ID of the second chat group, account ID of the fifth member, number of the second real-time intercom subgroup, group member list 5, no network identifier, etc.
[0482] Group member list 5 is similar to group member list 1; you can refer to the description of group member list 1.
[0483] After receiving the subgroup management information 5 from the electronic device 500, the electronic device 300 can output a prompt message 7, which prompts whether to join the second real-time intercom subgroup. After outputting the prompt message 7, the electronic device 300 can receive the operation to join the second real-time intercom subgroup and join the second real-time intercom subgroup.
[0484] After outputting prompt message 7, electronic device 300 can receive the operation to join the second real-time intercom subgroup. Before joining the second real-time intercom subgroup, electronic device 300 can send a join message 3 to electronic device 100 via unicast, multicast, or broadcast. Join message 3 is used by electronic device 500 to confirm whether a third member is allowed to join the second real-time intercom subgroup.
[0485] Among them, message 3 includes any one or more of the following: the group account ID of the second chat group, the number of the second real-time intercom subgroup, the account ID of the third member, etc.
[0486] For example, message 7 could be Figure 10A The prompt bar shown.
[0487] S1107A, Electronic device 500 determines that the number of members in the second real-time intercom subgroup is less than the first preset number, and adds the third member to the second real-time intercom subgroup.
[0488] S1108A, electronic device 500 sends acknowledgment message 2, including a group member list, to electronic device 300 via unicast, multicast, or broadcast.
[0489] S1109A, electronic device 300 sends subgroup member information 5 to electronic device 500 via unicast, multicast or broadcast, including the number of members in the second real-time intercom subgroup that have D2D communication capability with electronic device 300.
[0490] After receiving the join message 3 sent by the electronic device 300 via unicast, multicast, or broadcast, the electronic device 500 can determine whether the number of members in the second real-time intercom subgroup is less than the first preset number.
[0491] If the number of members in the second real-time intercom subgroup is equal to the first preset number, the electronic device 500 can confirm that a third member is not allowed to join the second real-time intercom subgroup.
[0492] If the number of members in the second real-time intercom subgroup is less than the first preset number, the electronic device 500 can confirm that a third member is allowed to join the second real-time intercom subgroup.
[0493] If the number of members in the second real-time intercom subgroup is less than the first preset number, the electronic device 500 can send a confirmation message 2 via unicast, multicast, or broadcast. The confirmation message 2 is used to indicate that the electronic device 300 can join the first real-time intercom subgroup.
[0494] Confirmation message 2 includes any one or more of the following: the group account ID of the second chat group, the account ID of the fifth member, the number of the second real-time intercom subgroup, and the list of group members.
[0495] After receiving confirmation message 2, electronic device 300 can confirm joining the second real-time intercom subgroup. Electronic device 300 can send subgroup member information 4 to electronic device 500 via unicast, multicast, or broadcast, including the number of members in the second real-time intercom subgroup that have D2D communication capabilities with electronic device 300.
[0496] The subgroup member information 5 may include, but is not limited to, any one or more of the following: the location information of the electronic device 300, the number of members in the second real-time intercom subgroup that have D2D communication capability with the electronic device 300, and a network-free identifier or a network-enabled identifier. The network-free identifier in the subgroup member information 5 is used to indicate that the electronic device 300 is in a network-free state, and the network-enabled identifier in the subgroup member information 5 is used to indicate that the electronic device 300 is in a network-enabled state.
[0497] The number of members in the second real-time intercom subgroup that have D2D communication capability with electronic device 300 can be determined by the subgroup management information 5 received by electronic device 300 and the number of subgroup member information sent by other members' devices in the second real-time intercom subgroup via unicast / multicast / broadcast.
[0498] It should be noted that, in addition to sending subgroup member information 4 to electronic device 500, electronic device 300 can also send subgroup member information 5 to the offline devices of other members in the second real-time intercom subgroup via unicast, multicast, or broadcast. This application only uses electronic device 500 as an example for illustration.
[0499] It should be noted that this also applies when electronic device 500 is in a network-connected state and electronic device 300 is in a network-disconnected state. Figure 11A The method shown will not be described again in this application. When electronic device 500 is in a networked state and electronic device 300 is in a networkless state, the second real-time intercom subgroup in S1107A includes a networked real-time intercom subgroup and a networkless real-time intercom subgroup. The number of members in the second real-time intercom subgroup in S1107A can refer to the number of members in the networkless real-time intercom subgroup within the second real-time intercom subgroup.
[0500] In some embodiments, if the second chat group also includes a seventh member's device (e.g., electronic device 700), and electronic device 500 cannot communicate directly with electronic device 300 via unicast / multicast / broadcast, but electronic device 500 can communicate directly with electronic device 700 via unicast / multicast / broadcast, and electronic device 700 can communicate directly with electronic device 300 via unicast / multicast / broadcast, electronic device 500 can send subgroup management information 5 or confirmation message 2 to electronic device 700 via unicast / multicast / broadcast, and electronic device 700 can then send subgroup management information 5 or confirmation message 2 to electronic device 300 via unicast / multicast / broadcast. Alternatively, electronic device 300 can send a join message 3 or subgroup member information 5 to electronic device 700 via unicast / multicast / broadcast, and electronic device 700 can then send a join message 3 or subgroup member information 5 to electronic device 500 via unicast / multicast / broadcast.
[0501] Scenario g: The third member in the first chat group switches from a real-time intercom subgroup with or without internet access to another real-time intercom subgroup with internet access.
[0502] Figure 11B The diagram illustrates a method for a third member in a first chat group to switch from a network-enabled real-time intercom subgroup or a network-free real-time intercom subgroup to another network-enabled real-time intercom subgroup.
[0503] S1101B and electronic device 300 are devices belonging to the subgroup members in the first real-time intercom subgroup.
[0504] If the first real-time intercom subgroup can include a networked real-time intercom subgroup, and the electronic device 300 is in a networked state, then the electronic device 300 can be located in the networked real-time intercom subgroup.
[0505] S1102B and electronic device 500 send subgroup management information 6 to the server, including a list of group members 6.
[0506] S1103B, electronic device 300 receives subgroup management information 6 sent by the server, including a group member list 6.
[0507] When electronic device 500 is connected to the network, it can create a networked real-time intercom subgroup through the server. Electronic device 500 can send subgroup management information 6 to the server, and the server then sends subgroup management information 6 to electronic device 300. Subgroup management information 6 is used by electronic device 300 to display a prompt message indicating whether to join the second real-time intercom subgroup.
[0508] The subgroup management information 6 may include, but is not limited to, any one or more of the following: location information of electronic device 500, group account ID of the second chat group, account ID of the fifth member, number of the second real-time intercom subgroup, group member list 6, network identification, etc.
[0509] The group member list 6 includes information about members who have joined the second real-time intercom subgroup. Member information may include, but is not limited to, member account ID, member nickname, and member avatar. The network connectivity indicator in the subgroup management information 6 indicates that the electronic device 500 is connected to the network.
[0510] It should be noted that the subgroup management information 6 is not limited to being sent to electronic device 300. When the devices of other members in the second chat group are connected to the network, the server can also send the subgroup management information 6 to the devices of other members in the second chat group. This application only uses electronic device 300 as an example for illustration.
[0511] S1104B and electronic device 300 output prompt message 8, which is used to prompt the third member whether to join the second real-time intercom subgroup.
[0512] S1105B and electronic device 300 receive the operation of joining the second real-time intercom subgroup and leaving the first real-time intercom subgroup.
[0513] S1106B, electronic device 300 sends a join message 4 to the server, including the account ID of the third member.
[0514] S1107B, in response to join message 4, the server adds the third member to the second real-time intercom subgroup.
[0515] S1108B, The server sends a join message 4 to electronic device 500.
[0516] After receiving the subgroup management information 6, the electronic device 300 can output a prompt message 8, which prompts the user whether to join the second real-time intercom subgroup.
[0517] After displaying prompt message 8, electronic device 300 can receive the operation to join the second real-time intercom subgroup. In response to the operation to join the second real-time intercom subgroup, electronic device 300 can send a join message 4 to the server. Join message 4 is used to instruct the server that a third member has requested to join the second real-time intercom subgroup.
[0518] Among them, message 4 includes any one or more of the following: the group account ID of the second chat group, the number of the second real-time intercom subgroup, the account ID of the third member, etc.
[0519] After receiving join message 4, the server can add the third member to the second real-time intercom subgroup. The server then sends join message 4 to electronic device 500, which indicates to electronic device 500 that the third member has joined the second real-time intercom subgroup.
[0520] S1109B, Electronic device 300 sends subgroup member information 6 to the server, including the number of members in the second real-time intercom subgroup who have the ability to communicate with the server.
[0521] S1110B, The server sends subgroup member information 6 to the electronic device 500, including the number of members in the second real-time intercom subgroup who have server communication capabilities with the electronic device 300.
[0522] After joining the second real-time intercom subgroup, electronic device 300 can send subgroup member information 6 to the server, and the server then sends subgroup member information 6 to electronic device 500. Subgroup member information 6 is used by electronic device 500 to obtain the number of members in the second real-time intercom subgroup that have server communication capabilities with electronic device 300.
[0523] The subgroup member information 6 may include, but is not limited to, any one or more of the following: location information of the electronic device 300, the number of members in the second real-time intercom subgroup that have server communication capabilities with the electronic device 300, and a network connectivity identifier. The network connectivity identifier in the subgroup member information 6 is used to indicate that the electronic device 300 is in a network-connected state.
[0524] pass Figures 11A-11B The method shown allows members in the first chat group to actively switch to the real-time intercom subgroup they have joined, whether their electronic devices are in a network-connected or network-free state.
[0525] In scenario h, the fourth member in the first chat group and the second chat group chooses to join either of the two offline real-time intercom subgroups.
[0526] In some embodiments, the fourth member can be located in both the first and second chat groups, which belong to different chat groups. If a member in the first chat group establishes a first real-time intercom subgroup, which includes a network-free real-time intercom subgroup, the subgroup leader of the first real-time intercom subgroup can send subgroup management information to other members in the first chat group via unicast, multicast, or broadcast. If a member in the second chat group establishes a second real-time intercom subgroup, which includes a network-free real-time intercom subgroup, the subgroup leader of the second real-time intercom subgroup can send subgroup management information to other members in the second chat group via unicast, multicast, or broadcast. The fourth member can be located in both the first and second chat groups. If the fourth member's device (electronic device 400) is within the D2D communication range of both the subgroup leader of the first and second real-time intercom subgroups, the electronic device 400 can simultaneously receive subgroup management information from both the first and second real-time intercom subgroups via unicast, multicast, or broadcast.
[0527] When the electronic device 400 receives subgroup management information of the first real-time intercom subgroup and the second real-time intercom subgroup simultaneously via unicast, multicast, or broadcast, the electronic device 400 can prompt the user to join which real-time intercom subgroup, and the electronic device 400 can also receive user operation to join one of the real-time intercom subgroups.
[0528] Figure 11C A flowchart illustrating a method for a fourth member to select to join either of two offline real-time intercom subgroups is shown.
[0529] S1101C and Electronic Equipment 100 are devices belonging to the subgroup leader in the first real-time intercom subgroup.
[0530] S1102C and Electronic Device 500 are devices belonging to the subgroup leader in the second real-time intercom subgroup.
[0531] If electronic device 100 is in a network-free state, the first real-time intercom subgroup includes a network-free real-time intercom subgroup, and the first member can be the device of the subgroup owner in the first real-time intercom subgroup. Electronic device 100 can periodically / irregularly send subgroup management information 4 to the devices of other members in the first chat group via unicast, multicast, or broadcast. Subgroup management information 4 is used by other members in the first chat group to display prompts indicating whether they have joined the first real-time intercom subgroup.
[0532] For an introduction to the subgroup management information 4, please refer to the description in the S506B embodiment.
[0533] If electronic device 500 is offline, the second real-time intercom subgroup includes the offline real-time intercom subgroup, and the fifth member can be the subgroup owner's device within the second real-time intercom subgroup. Electronic device 500 can periodically / irregularly send subgroup management information 5 to the devices of other members in the second chat group via unicast, multicast, or broadcast. Subgroup management information 5 is used by other members in the second chat group to display prompts indicating whether they have joined the second real-time intercom subgroup.
[0534] For a description of the subgroup management information 5, please refer to the description in the S1106A embodiment.
[0535] S1103C, Electronic device 400 receives subgroup management information 4, including a group member list 4, sent by electronic device 100 via unicast, multicast, or broadcast.
[0536] S1104C, electronic device 400 receives subgroup management information 5, including a group member list 5, sent by electronic device 500 via unicast, multicast, or broadcast.
[0537] If electronic device 400 and electronic device 100 are within the D2D communication range, then electronic device 400 can simultaneously receive subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast. Similarly, if electronic device 400 and electronic device 500 are within the D2D communication range, then electronic device 400 can simultaneously receive subgroup management information 5 sent by electronic device 500 via unicast, multicast, or broadcast.
[0538] S1105C, Electronic Device 400 outputs prompt message 9, which is used to prompt the fourth member to join the first real-time intercom subgroup or the second real-time intercom subgroup.
[0539] S1106C and electronic device 400 receive the operation of joining the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0540] S1107C, electronic device 400 sends a join message 5 to electronic device 100 via unicast, multicast, or broadcast, including the account ID of the fourth member.
[0541] After receiving subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast, and subgroup management information 5 sent by electronic device 500 via unicast, multicast, or broadcast, electronic device 400 can output prompt information 9, which is used to prompt the fourth member to join the first real-time intercom subgroup or the second real-time intercom subgroup.
[0542] After outputting prompt message 9, electronic device 400 can receive the operation to join the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0543] Before joining the first real-time intercom subgroup, electronic device 400 can send a join message 5 to electronic device 100 via unicast, multicast, or broadcast. Join message 5 is used by electronic device 100 to confirm whether to allow the fourth member to join the first real-time intercom subgroup.
[0544] Among them, message 5 includes any one or more of the following: the group account ID of the first chat group, the number of the first real-time intercom subgroup, the account ID of the fourth member, etc.
[0545] S1108C, electronic device 100 determines that the number of members in the first real-time intercom subgroup is less than the first preset number, and adds the fourth member to the first real-time intercom subgroup.
[0546] S1109C, electronic device 100 sends an acknowledgment message 3, including a group member list, to electronic device 400 via unicast, multicast, or broadcast.
[0547] After receiving the join message 5 sent by the electronic device 400 via unicast, multicast, or broadcast, the electronic device 100 can determine whether the number of members in the first real-time intercom subgroup is less than the first preset number.
[0548] If the number of members in the first real-time intercom subgroup is equal to the first preset number, the electronic device 100 can confirm that a fourth member is not allowed to join the first real-time intercom subgroup.
[0549] If the number of members in the first real-time intercom subgroup is less than the first preset number, the electronic device 100 can confirm that a fourth member is allowed to join the first real-time intercom subgroup.
[0550] If the number of members in the first real-time intercom subgroup is less than the first preset number, the electronic device 100 can send an acknowledgment message 3 to the electronic device 400 via unicast, multicast, or broadcast. The acknowledgment message 3 is used to indicate that the electronic device 400 can join the first real-time intercom subgroup.
[0551] The confirmation message 3 includes any one or more of the following: the group account ID of the first chat group, the account ID of the first member, the number of the first real-time intercom subgroup, and the list of group members.
[0552] S1110C, electronic device 400 sends subgroup member information 7 to electronic device 100 via unicast, multicast or broadcast, including the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 400.
[0553] After receiving confirmation message 3, electronic device 400 can confirm joining the first real-time intercom subgroup. Electronic device 400 can send subgroup member information 7 to electronic device 100 via unicast, multicast, or broadcast, including the number of members in the first real-time intercom subgroup that have D2D communication capabilities with electronic device 400.
[0554] For an introduction to subgroup member information 7, please refer to [link / reference]. Figure 7A The description of the subgroup member information in section 4 is not repeated here.
[0555] It should be noted that this also applies when electronic device 100 is in a network-connected state, electronic device 500 is in a network-connected state, and electronic device 400 is in a network-free state. Figure 11C The method shown will not be described again in this application. When electronic device 100 is in a networked state, electronic device 500 is in a networked state, and electronic device 400 is in a networkless state, the first real-time intercom subgroup in S1108C includes a networked real-time intercom subgroup and a networkless real-time intercom subgroup. The number of members in the first real-time intercom subgroup in S1108C can refer to the number of members in the networkless real-time intercom subgroup within the first real-time intercom subgroup.
[0556] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 400 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 400 via unicast / multicast / broadcast, electronic device 100 can send subgroup management information 4 or confirmation message 3 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 4 or confirmation message 3 to electronic device 400 via unicast / multicast / broadcast. Alternatively, electronic device 400 can send a join message 5 or subgroup member information 7 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send a join message 5 or subgroup member information 7 to electronic device 100 via unicast / multicast / broadcast.
[0557] In some embodiments, if the second chat group also includes a seventh member's device (e.g., electronic device 700), and electronic device 500 cannot communicate directly with electronic device 400 via unicast / multicast / broadcast, but electronic device 500 can communicate directly with electronic device 700 via unicast / multicast / broadcast, and electronic device 700 can communicate directly with electronic device 400 via unicast / multicast / broadcast, electronic device 500 can send subgroup management information 5 to electronic device 700 via unicast / multicast / broadcast, and electronic device 700 can then send subgroup management information 5 to electronic device 400 via unicast / multicast / broadcast.
[0558] In scenario i, the fourth member in the first chat group and the second chat group chooses to join either of the two real-time intercom subgroups with internet access.
[0559] Figure 11D A flowchart illustrating a method for a fourth member to choose to join either of two networked real-time intercom subgroups is provided.
[0560] S1101D and electronic device 100 send subgroup management information 3, including a list of group members 3, to the server.
[0561] S1102D: The server sends subgroup management information 3, including a group member list 3, to electronic device 400.
[0562] When electronic device 100 is connected to the network, it can create a networked real-time intercom subgroup through the server. Electronic device 100 can send subgroup management information 3 to the server, and the server then sends subgroup management information 3 to electronic device 400. Subgroup management information 3 is used by electronic device 400 to display a prompt message indicating whether to join the first real-time intercom subgroup.
[0563] For a description of subgroup management information 3, please refer to the description in S502B. This application will not repeat it here.
[0564] S1103D and electronic device 500 send subgroup management information 6 to the server, including a list of group members 6.
[0565] S1104D, The server sends subgroup management information 6, including a group member list 6, to electronic device 400.
[0566] Similarly, when electronic device 500 is connected to the network, it can create a networked real-time intercom subgroup through the server. Electronic device 500 can send subgroup management information 6 to the server, and the server then sends subgroup management information 6 to electronic device 400. Subgroup management information 6 is used by electronic device 400 to display a prompt message indicating whether to join the second real-time intercom subgroup.
[0567] For a description of the subgroup management information 6, please refer to the description in S1103B. This application will not repeat it here.
[0568] S1105D and electronic device 400 output prompt information 10, which is used to prompt the fourth member whether to join the first real-time intercom subgroup or the second real-time intercom subgroup.
[0569] S1106D and electronic device 400 receive the operation of joining the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0570] S1107D and electronic device 400 send a join message 6 to the server, including the account ID of the fourth member.
[0571] S1108D, the server adds the fourth member to the first real-time intercom subgroup.
[0572] S1109D, The server sends a join message 6 to electronic device 100, including the account ID of the fourth member.
[0573] After receiving subgroup management information 3 and subgroup management information 6 sent by the server, the electronic device 400 can display prompt information 10, which is used to prompt the fourth member to join the first real-time intercom subgroup or the second real-time intercom subgroup.
[0574] After displaying prompt message 10, electronic device 400 can receive the operation to join the first real-time intercom subgroup and join the first real-time intercom subgroup.
[0575] After joining the first real-time intercom subgroup, electronic device 400 can send a join message 6 to the server. Upon receiving join message 6, the server adds the fourth member to the first real-time intercom subgroup.
[0576] Among them, message 6 includes any one or more of the following: the group account ID of the first chat group, the number of the first real-time intercom subgroup, the account ID of the fourth member, etc.
[0577] After receiving Join Message 6, the server sends Join Message 6 to Electronic Device 100. Join Message 6 indicates to Electronic Device 100 that the fourth member has joined the first real-time intercom subgroup.
[0578] S1110D, electronic device 400 sends information 8 to the server subgroup members, including the number of members in the first real-time intercom subgroup who have server communication capabilities with electronic device 400.
[0579] S1111D, The server sends subgroup member information 8 to the electronic device 100, including the number of members in the first real-time intercom subgroup who have server communication capabilities with the electronic device 400.
[0580] After joining the first real-time intercom subgroup, electronic device 400 can send subgroup member information 8 to the server, and the server then sends subgroup member information 8 to electronic device 100. Subgroup member information 8 is used by electronic device 100 to obtain the number of members in the first real-time intercom subgroup that have server communication capabilities with electronic device 400.
[0581] The subgroup member information 8 may include, but is not limited to, any one or more of the following: location information of electronic device 400, number of members in the first real-time intercom subgroup that have server communication capabilities with electronic device 300, and network access identifier. The network access identifier in the subgroup member information 8 is used to indicate that electronic device 400 is in a network-enabled state.
[0582] pass Figures 11C-11D The method shown enables electronic devices of members in the first communication application to actively join any one of at least two real-time intercom subgroups, whether they are in a network-connected or network-free state.
[0583] Scenario j: If a member of the first real-time intercom subgroup does not receive subgroup management information from the subgroup leader of the first real-time intercom subgroup for more than a first time period, a new subgroup leader is determined by the members of the first real-time intercom subgroup.
[0584] Figure 11E A flowchart illustrating a method for determining a new subgroup leader from the members of a first real-time intercom subgroup is shown.
[0585] S1101E and Electronic Equipment 100 are devices belonging to the subgroup leader in the first real-time intercom subgroup.
[0586] S1102E and Electronic Device 200 are devices belonging to the subgroup members in the first real-time intercom subgroup.
[0587] When electronic device 100 is in a network-free state, electronic device 100 can create a network-free real-time intercom subgroup. The first real-time intercom subgroup includes the network-free real-time intercom subgroup. The first member belongs to the subgroup master of the first real-time intercom subgroup, and the second member belongs to the subgroup member of the first real-time intercom subgroup. Then, electronic device 100 belongs to the subgroup master of the first real-time intercom subgroup, and electronic device 200 belongs to the subgroup member of the first real-time intercom subgroup.
[0588] S1103E, Electronic device 200 has not received subgroup management information 4 sent by electronic device 100 via unicast, multicast or broadcast for more than the first time period.
[0589] S1104E, electronic device 200 determines that the number of members with D2D communication capability with electronic device 200 in the first real-time intercom subgroup is the largest, and determines the second member to become the subgroup leader in the first real-time intercom subgroup.
[0590] Electronic device 100 is the subgroup leader in the first real-time intercom subgroup. Electronic device 100 can periodically / irregularly send subgroup management information 4 to other member devices in the first real-time intercom subgroup via unicast, multicast, or broadcast. If electronic device 200 and electronic device 100 can communicate in D2D, then electronic device 200 can receive the subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast.
[0591] In some embodiments, the relative positions of the devices among the members in the first real-time intercom subgroup may change, or the electronic device 100 may be powered off due to low battery, or the first member may leave the first real-time intercom subgroup. If a member in the first real-time intercom subgroup does not receive the subgroup management information 4 sent by the electronic device 100 for a first duration, the member in the first real-time intercom subgroup may determine a new subgroup leader. The new subgroup leader may be the member with the most D2D communication capabilities among the members in the first real-time intercom subgroup.
[0592] For example, if electronic device 200 does not receive the subgroup management information 4 sent by electronic device 100 for more than a first time period, and electronic device 200 also receives subgroup member information sent by electronic device 300 via unicast, multicast, or broadcast, electronic device 200 can obtain the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300 from the subgroup member information sent by electronic device 300 via unicast, multicast, or broadcast. Electronic device 200 can also obtain the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200. If electronic device 200 determines that the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200 is greater than the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300, then electronic device 200 can determine the second member as the new subgroup leader of the first real-time intercom subgroup.
[0593] Similarly, if electronic device 300 does not receive the subgroup management information 4 sent by electronic device 100 within the first time period, but also receives subgroup member information sent by electronic device 200 via unicast, multicast, or broadcast, electronic device 300 can obtain the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200 from the subgroup member information sent by electronic device 200 via unicast, multicast, or broadcast. Electronic device 300 can also obtain the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300. If electronic device 300 determines that the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200 is greater than the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 300, then electronic device 300 can determine that the third member cannot become the new subgroup leader of the first real-time intercom subgroup.
[0594] S1105E, electronic device 200 sends subgroup management information 7, including a group member list 7, to electronic device 100 via unicast, multicast, or broadcast.
[0595] After the electronic device 200 determines the second member as the new subgroup leader of the first real-time intercom subgroup, the electronic device 200 can stop sending subgroup member information to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast, and start sending subgroup management information 7 to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast.
[0596] The subgroup management information 7 may include, but is not limited to, any one or more of the following: location information of electronic device 100, group account ID of the first chat group, account ID of the second member, number of the first real-time intercom subgroup, group member list 7, no network identifier, etc.
[0597] Group member list 7 is similar to group member list 1; you can refer to the description of group member list 1.
[0598] For example, electronic device 200 can send subgroup management information 7 to electronic device 100 via unicast, multicast, or broadcast.
[0599] pass Figure 11E The method shown allows the devices of the subgroup members in the first real-time intercom subgroup to determine a new subgroup leader if they do not receive subgroup management information from the subgroup leader's device within a first time period, thus facilitating accurate and timely management of the members in the first real-time intercom subgroup.
[0600] It should be noted that this also applies when electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state. Figure 11E The method shown will not be described again in this application. When electronic device 100 is in a networked state and electronic device 200 is in a network-free state, the first real-time intercom subgroup in S1104E includes a networked real-time intercom subgroup and a network-free real-time intercom subgroup. The number of members in the first real-time intercom subgroup in S1104E that have D2D communication capability with electronic device 200 can refer to the number of members in the network-free real-time intercom subgroup of the first real-time intercom subgroup that have D2D communication capability with electronic device 200.
[0601] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 200 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 200 via unicast / multicast / broadcast, electronic device 200 can send subgroup management information 7 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 7 to electronic device 100 via unicast / multicast / broadcast.
[0602] Scenario k: If a member of the first real-time intercom subgroup does not receive subgroup management information from the subgroup leader of the first real-time intercom subgroup for more than a first time period, the member of the first real-time intercom subgroup continues to be a member of the subgroup, and a new subgroup leader is not determined.
[0603] Figure 11F A flowchart illustrating a method for determining a new subgroup leader from the members of a first real-time intercom subgroup is shown.
[0604] S1101F and Electronic Equipment 100 are devices belonging to the subgroup leader in the first real-time intercom subgroup.
[0605] S1102F and Electronic Device 200 are devices belonging to the subgroup members in the first real-time intercom subgroup.
[0606] For a description of S1101F-S1102F, please refer to the descriptions in S1101E-S1102E. This application will not repeat them here.
[0607] S1103F If electronic device 200 does not receive subgroup management information 4 sent by electronic device 100 via unicast, multicast or broadcast for more than the first time period, it continues to be a subgroup member in the first real-time intercom subgroup.
[0608] If a member of the first real-time intercom subgroup does not receive the subgroup management information 4 sent by the electronic device 100 for more than a first time period, it is uncertain whether the member of the first real-time intercom subgroup will become a new subgroup leader or remain a subgroup member.
[0609] For example, if electronic device 200 does not receive subgroup management information 7 sent by electronic device 100 for more than a first time period, electronic device 200 will still be a subgroup member of the first real-time intercom subgroup.
[0610] It should be noted that this also applies when electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state. Figure 11F The method shown will not be described in detail here.
[0611] Scenario 1: When electronic device 100 is connected to the network, electronic device 100 sends voice messages to the devices of other members in the first real-time intercom subgroup.
[0612] Figure 12A A flowchart illustrating a method for an electronic device 100 to send voice messages to devices of other members in a first real-time intercom subgroup when the electronic device 100 is in a network-connected state is shown.
[0613] S1201A, electronic device 100 receives user operation and obtains the first voice message output by the first member.
[0614] S1202A, electronic device 100 sends the first voice message to the server.
[0615] S1203A, The server sends the first voice message to the electronic device 200.
[0616] S1204A, electronic device 100 sends a first voice message to electronic device 300 via unicast, multicast, or broadcast.
[0617] exist Figure 12A In the context of electronic device 100 being connected to the network, electronic device 100 can create offline real-time intercom subgroups, and electronic device 100 can create connected real-time intercom subgroups through a server.
[0618] When electronic device 200 is connected to the network, it can be located in a networked real-time intercom subgroup created by electronic device 100 through a server.
[0619] When electronic device 300 is in a network-free state, electronic device 300 can be located in the network-free real-time intercom subgroup created by electronic device 100.
[0620] Electronic device 100 can receive user operations to send a first voice message to the device of a member in the first real-time intercom subgroup.
[0621] After receiving the first voice message, electronic device 100 can send the first voice message to a server, which then sends the first voice message to the networked devices of members in the first real-time intercom subgroup. For example, the server can send the first voice message to electronic device 200, which can receive and play the first voice message. Electronic device 100 can also send the first voice message to the network-free devices of members in the first real-time intercom subgroup via unicast, multicast, or broadcast. For example, electronic device 100 can also send the first voice message to electronic device 300 via unicast, multicast, or broadcast, which can receive and play the first voice message.
[0622] pass Figure 12A The method shown enables devices of members in the first real-time intercom subgroup to send voice messages to network-connected devices and network-free devices of other members in the first real-time intercom subgroup when the devices are connected to the network.
[0623] Optionally, not limited to sending voice messages, electronic device 100 can also... Figure 12A The method shown sends text messages, pictures, videos, GIFs, links, etc. to subgroup members.
[0624] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 300 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 300 via unicast / multicast / broadcast, electronic device 100 can send a first voice message to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send a first voice message to electronic device 300 via unicast / multicast / broadcast.
[0625] Scenario m: When electronic device 100 is offline, electronic device 100 sends voice messages to the devices of other members in the first real-time intercom subgroup.
[0626] Figure 12B A flowchart illustrating a method for an electronic device 100 to send voice messages to devices of other members in a first real-time intercom subgroup when the electronic device 100 is in a network-free state is shown.
[0627] S1201B, electronic device 100 receives user operation and obtains the first voice message output by the first member.
[0628] S1202B, electronic device 100 sends a first voice message to electronic device 200 via unicast, multicast, or broadcast.
[0629] S1203B, electronic device 100 sends a first voice message to electronic device 300 via unicast, multicast, or broadcast.
[0630] exist Figure 12B In the case of electronic device 100 being in a network-free state, electronic device 100 can create a network-free real-time intercom subgroup.
[0631] Whether the electronic device 200 is in a network-connected or network-free state, the electronic device 200 can be located in the network-free real-time intercom subgroup created by the electronic device 100.
[0632] Whether the electronic device 300 is in a network-connected or network-free state, the electronic device 300 can also be located in the network-free real-time intercom subgroup created by the electronic device 100.
[0633] Electronic device 100 can receive user operations to send a first voice message to the device of a member in the first real-time intercom subgroup.
[0634] After acquiring the first voice message, electronic device 100 can send the first voice message to members in the first real-time intercom subgroup via unicast, multicast, or broadcast. For example, electronic device 100 can send the first voice message to electronic device 200 via unicast, multicast, or broadcast, and electronic device 200 can receive and play the first voice message. Electronic device 100 can also send the first voice message to electronic device 300 via unicast, multicast, or broadcast, and electronic device 300 can receive and play the first voice message.
[0635] pass Figure 12B The method shown enables devices in the first real-time intercom subgroup to send voice messages to devices in the subgroup members when they are offline.
[0636] Optionally, not limited to sending voice messages, electronic device 100 can also... Figure 12B The method shown sends text messages, pictures, videos, GIFs, links, etc. to subgroup members.
[0637] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic devices 300 and 200 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic devices 300 and 200 via unicast / multicast / broadcast, electronic device 100 can send a first voice message to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send the first voice message to electronic devices 300 and 200 via unicast / multicast / broadcast.
[0638] Optionally, electronic devices 200 and 300 may also communicate with electronic device 100 through different relay devices, which is not limited in this application.
[0639] Scenario B: Change of subgroup owner in real-time intercom subgroup.
[0640] Based on the above embodiments, the member creating the first real-time intercom subgroup can be the subgroup owner of the first real-time intercom subgroup, and the other members of the first real-time intercom subgroup can be subgroup members of the first real-time intercom subgroup. The subgroup owner of the first real-time intercom subgroup needs to manage the number of members in the first real-time intercom subgroup. Therefore, the subgroup owner of the first real-time intercom subgroup is the member who can communicate with the most other members in the first real-time intercom subgroup through D2D communication technology.
[0641] However, the positions of members in the first real-time intercom subgroup may change, and some members' devices may be able to communicate with each other while others' devices may not be able to communicate with each other, which will cause changes in the communication status of the devices of the members in the first real-time intercom subgroup.
[0642] Based on this, the member with the most D2D communication capabilities among the members of the first real-time intercom subgroup can be designated as the subgroup leader of the first real-time intercom subgroup. In other words, the subgroup leader of the first real-time intercom subgroup can change dynamically, facilitating more accurate management of the number of members in the first real-time intercom subgroup.
[0643] Figure 13 A schematic diagram illustrating the changes in communication status between devices of members in a first real-time intercom subgroup is shown.
[0644] like Figure 13As shown, the first real-time intercom subgroup includes a first member, a second member, and a third member. The first member is the creator of the first real-time intercom subgroup, and therefore the first member is the subgroup leader of the first real-time intercom subgroup. The second and third members are subgroup members of the first real-time intercom subgroup. Electronic device 100 can communicate with electronic device 200 via unicast, multicast, or broadcast. Electronic device 100 can also communicate with electronic device 300 via unicast, multicast, or broadcast. Electronic device 200 cannot communicate with electronic device 300 via unicast, multicast, or broadcast. The number of members in the first real-time intercom subgroup with D2D communication capability between the first member and other members is 2, the number of members in the first real-time intercom subgroup with D2D communication capability between the second member and other members of the first real-time intercom subgroup is 1, and the number of members in the first real-time intercom subgroup with D2D communication capability between the third member and other members of the first real-time intercom subgroup is also 1.
[0645] Figure 14 This diagram illustrates the changes in communication status between devices of members in another first real-time intercom subgroup.
[0646] Figure 14 and Figure 13 Similar, the difference lies in, in Figure 14 In the middle, the positions of the members in the first real-time intercom subgroup changed.
[0647] like Figure 14 As shown, electronic device 100 can communicate with electronic device 200 via unicast, multicast, or broadcast, but electronic device 100 cannot communicate with electronic device 300 via unicast, multicast, or broadcast. Electronic device 200 can communicate with electronic device 100 via unicast, multicast, or broadcast, and electronic device 200 can also communicate with electronic device 300 via unicast, multicast, or broadcast. The number of members in the first real-time intercom subgroup with D2D communication capability is 1 (first member, second member, and third member). Therefore, the second member can act as the subgroup leader of the first real-time intercom subgroup, and the first and third members can act as subgroup members of the first real-time intercom subgroup.
[0648] Figure 15 A flowchart illustrating a method for changing the subgroup leader of a real-time intercom subgroup is shown.
[0649] S1501, the first member and the second member are members of the first real-time intercom subgroup. The first member is the subgroup leader of the first real-time intercom subgroup, and the second member is a subgroup member of the first real-time intercom subgroup.
[0650] When electronic device 100 is in a network-free state, electronic device 100 creates a network-free real-time intercom subgroup. The first real-time intercom subgroup can be a network-free real-time intercom subgroup. The first member is the subgroup owner of the first real-time intercom subgroup, and the second member is a subgroup member of the first real-time intercom subgroup.
[0651] S1502, Electronic device 200 receives subgroup management information 4, including a group member list 4, sent by electronic device 100 via unicast, multicast, or broadcast.
[0652] S1503, Electronic device 200 obtains the first number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 100 based on subgroup management information 4.
[0653] S1504, Electronic device 200 obtains the second number of members in the first real-time intercom subgroup who have D2D communication capability with electronic device 200.
[0654] Electronic device 100 is the subgroup leader device in the first real-time intercom subgroup. Electronic device 100 can periodically / irregularly send subgroup management information 4 to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast. If electronic device 200 and electronic device 100 are D2D communicable, electronic device 200 can receive the subgroup management information 4 sent by electronic device 100 via unicast, multicast, or broadcast. Electronic device 200 can obtain the first number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 100 from the subgroup management information 4.
[0655] For example, subgroup management information 4 includes a group member list 4, and electronic device 200 can obtain the first number of members in the first real-time intercom subgroup who have D2D communication capability with electronic device 100 from the group member list 4 in the subgroup management information 4.
[0656] Electronic device 200 can also obtain a second number of members in the first real-time intercom subgroup who have D2D communication capabilities with electronic device 200. The second number can be determined by the number of subgroup management information 4 received by electronic device 200 and the number of subgroup member information sent by other members in the first real-time intercom subgroup.
[0657] S1505, Electronic device 200 determines that the second quantity is greater than the first quantity.
[0658] S1506, Electronic device 200 sends a subgroup owner change message 1 to electronic device 100 via unicast, multicast, or broadcast, including the group owner transfer number, the account ID of the second member, and the account ID of the first member.
[0659] If the second number is greater than the first number, it means that the electronic device 200 has the most members with D2D communication capability in the first real-time intercom subgroup. The electronic device 200 can send a change subgroup master message 1 to the electronic device 100 through unicast, multicast or broadcast to request to become the new subgroup master.
[0660] The "Subgroup Owner Message 1" includes, but is not limited to, any one or more of the following: the group ID of the first chat group, the number of the first real-time intercom subgroup, the group owner transfer number, the account ID of the second member, the account ID of the first member, and the identifier for requesting to become a subgroup owner. The group owner transfer number can be the number of the new subgroup owner in the first real-time intercom subgroup, and different subgroup owners will have different numbers.
[0661] S1507. In response to the change subgroup master message 1, the electronic device 100 determines that the number of members in the first real-time intercom subgroup who have D2D communication capability with the electronic device 200 is greater than the number of members in the first real-time intercom subgroup who have D2D communication capability with the electronic device 100.
[0662] S1508, Electronic device 100 sends a confirmation message 1 for changing subgroup leader to electronic device 200 via unicast, multicast, or broadcast.
[0663] After receiving the subgroup leader change message 1, electronic device 100 can further verify whether the second member can serve as the new subgroup leader. For example, electronic device 200 can determine whether the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 200 is greater than the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 100. If it is determined that the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 200 is greater than the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 100, then electronic device 100 can determine that the second member can serve as the new subgroup leader. If it is determined that the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 200 is less than or equal to the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 100, then electronic device 100 can determine that the second member cannot serve as the new subgroup leader.
[0664] The number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 200 can be obtained by electronic device 100 from the subgroup member information 3 sent by electronic device 200. The number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 100 can be determined by electronic device 100 based on the number of subgroup member information sent by other members in the first real-time intercom subgroup.
[0665] If the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 200 is greater than the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 100, electronic device 100 may send a confirmation message 1 confirming the change of subgroup leader to electronic device 200 via unicast, multicast, or broadcast. The confirmation message 1 indicates that electronic device 200 can act as the new subgroup leader.
[0666] S1509, Electronic device 100 sends subgroup member information 9 to electronic device 200 via unicast, multicast or broadcast, including the number of members in the first real-time intercom subgroup who have D2D communication capability with electronic device 100.
[0667] S1510, electronic device 200 sends subgroup management information 8, including a group member list 8, to electronic device 100 via unicast, multicast, or broadcast.
[0668] After determining that the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 200 is greater than the number of members in the first real-time intercom subgroup with D2D communication capability to electronic device 100, electronic device 100 determines the second member as a subgroup member that can be in the first real-time intercom subgroup. Electronic device 100 stops sending subgroup management information 4 and starts sending subgroup member information 9 to electronic device 200 via unicast, multicast or broadcast.
[0669] The subgroup member information 9 may include, but is not limited to, any one or more of the following: the location information of the electronic device 100, the number of members in the first real-time intercom subgroup who have D2D communication capability with the electronic device 100, etc.
[0670] Optionally, in addition to sending subgroup member information 9 to electronic device 200, electronic device 100 may also send subgroup member information 9 to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast.
[0671] After receiving the confirmation message 1 from electronic device 100 confirming the change of subgroup leader, electronic device 200 determines the second member as the subgroup leader of the first real-time intercom subgroup. Electronic device 100 stops sending subgroup member information 3 and starts sending subgroup management information 8 to electronic device 200 via unicast, multicast or broadcast.
[0672] Optionally, in addition to sending subgroup management information 8 to electronic device 100, electronic device 200 may also send subgroup management information 8 to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast.
[0673] The subgroup management information 8 may include, but is not limited to, any one or more of the following: location information of electronic device 200, group account ID of the first chat group, account ID of the second member, number of the first real-time intercom subgroup, group member list 8, no network identifier or network identifier, etc.
[0674] Group member list 8 is similar to group member list 1; you can refer to the description of group member list 1.
[0675] It should be noted that this also applies when electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state. Figure 15 The method shown is not described in detail here. When electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state, Figure 15 The first real-time intercom subgroup includes a network-connected real-time intercom subgroup and a network-free real-time intercom subgroup. The first number of members in the first real-time intercom subgroup with D2D communication capability with electronic device 100 in S1503 can refer to the first number of members in the network-free real-time intercom subgroup with D2D communication capability with electronic device 100. The second number of members in the first real-time intercom subgroup with D2D communication capability with electronic device 20 in S1504 can refer to the second number of members in the network-free real-time intercom subgroup with D2D communication capability with electronic device 200. The number of members in the first real-time intercom subgroup with D2D communication capability with electronic device 200 in S1507 can refer to the number of members in the offline real-time intercom subgroup with D2D communication capability with electronic device 200 in the first real-time intercom subgroup. The number of members in the first real-time intercom subgroup with D2D communication capability with electronic device 100 can refer to the number of members in the offline real-time intercom subgroup with D2D communication capability with electronic device 100 in the first real-time intercom subgroup.
[0676] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 200 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 200 via unicast / multicast / broadcast, electronic device 100 can send subgroup management information 4, or change subgroup master message 1, or subgroup member information 9 to electronic device 600 via unicast / multicast / broadcast. Electronic device 600 then sends subgroup management information 4 or confirms change subgroup master message 1 or subgroup member information 9 to electronic device 200 via unicast / multicast / broadcast. Alternatively, electronic device 200 can send change subgroup master message 1 or subgroup management information 8 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 then sends change subgroup master message 1 or subgroup management information 8 to electronic device 100 via unicast / multicast / broadcast.
[0677] Figure 16 A flowchart illustrating another method for changing the subgroup leader of a real-time intercom subgroup is shown.
[0678] S1601, the first member and the second member are members of the first real-time intercom subgroup. The first member is the subgroup leader of the first real-time intercom subgroup, and the second member is a subgroup member of the first real-time intercom subgroup.
[0679] For an introduction to S1601, please refer to the description in S1501; this application will not repeat it here.
[0680] S1602, Electronic device 100 receives subgroup member information 3 sent by electronic device 200 via unicast, multicast or broadcast, including the second number of members in the first real-time intercom subgroup who have D2D communication capability with electronic device 200.
[0681] S1603, Electronic device 100 obtains the first number of members in the first real-time intercom subgroup who have D2D communication capability with electronic device 100.
[0682] For a description of S1602 and S1603, please refer to the description in S1508.
[0683] S1604, Electronic device 100 determines that the second quantity is greater than the first quantity.
[0684] S1605, Electronic device 100 sends a subgroup owner change message 2 to electronic device 200 via unicast, multicast, or broadcast, including the group owner transfer number, the account ID of the second member, and the account ID of the first member.
[0685] After obtaining the second and first quantities, electronic device 100 can determine whether the second quantity is greater than the first quantity. If the second quantity is greater than the first quantity, it means that electronic device 200 has the largest number of members with D2D communication capability in the first real-time intercom subgroup. Electronic device 100 can send a change subgroup leader message 2 to electronic device 200 via unicast, multicast, or broadcast to confirm the second member as the new subgroup leader.
[0686] Among them, the subgroup owner change message 2 includes, but is not limited to, any one or more of the following: the group ID of the first chat group, the number of the first real-time intercom subgroup, the group owner transfer number, the account ID of the second member, the account ID of the first member, and the identifier of the active transfer of subgroup owner, etc.
[0687] S1606, Electronic device 100 sends subgroup member information 9 to electronic device 200 via unicast, multicast or broadcast, including the number of members in the first real-time intercom subgroup that have D2D communication capability with electronic device 100.
[0688] S1607, Electronic device 200 sends subgroup management information 8, including a group member list 8, to electronic device 100 via unicast, multicast, or broadcast.
[0689] After determining that the second number is greater than the first number, electronic device 100 determines the second member as a member of the first real-time intercom subgroup. Electronic device 100 stops sending subgroup management information 4 and starts sending subgroup member information 9 to electronic device 200 via unicast, multicast or broadcast.
[0690] After receiving the confirmation message 2 from electronic device 100 confirming the change of subgroup leader, electronic device 200 determines the second member as the subgroup leader of the first real-time intercom subgroup. Electronic device 100 stops sending subgroup member information 3 and starts sending subgroup management information 8 to electronic device 100 via unicast, multicast or broadcast.
[0691] For a description of S1606-S1607, please refer to the description in S1509-S1510; this application will not repeat it here.
[0692] It should be noted that this also applies when electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state. Figure 16 The method shown is not described in detail here. When electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state, Figure 16The first real-time intercom subgroup includes a network-connected real-time intercom subgroup and a network-free real-time intercom subgroup. The second number of members in the first real-time intercom subgroup with D2D communication capability with electronic device 200 in S1602 can refer to the second number of members in the network-free real-time intercom subgroup of the first real-time intercom subgroup with D2D communication capability with electronic device 200. The first number of members in the first real-time intercom subgroup with D2D communication capability with electronic device 100 in S1603 can refer to the first number of members in the network-free real-time intercom subgroup of the first real-time intercom subgroup with D2D communication capability with electronic device 100.
[0693] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 200 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 200 via unicast / multicast / broadcast, electronic device 100 can send a change subgroup owner message 2 or subgroup member information 9 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send the change subgroup owner message 2 or subgroup member information 9 to electronic device 200 via unicast / multicast / broadcast. Alternatively, electronic device 200 can send subgroup management information 8 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 8 to electronic device 100 via unicast / multicast / broadcast.
[0694] Figure 17 This diagram illustrates another method for changing the subgroup leader of a real-time intercom subgroup.
[0695] exist Figure 17 In the first real-time intercom subgroup, after the subgroup leader actively leaves the first real-time intercom subgroup, the subgroup members in the first real-time intercom subgroup can automatically determine a new subgroup leader.
[0696] S1701, Electronic device 100 receives the operation of exiting the first real-time intercom subgroup.
[0697] For example, the operation of leaving the first real-time intercom subgroup can be targeted at... Figure 4H The input action shown is for exiting the live talk subgroup option 318, such as a click action.
[0698] S1702, Electronic device 100 sends a message 3 to electronic device 200 via unicast, multicast, or broadcast to change the subgroup owner, including the group owner transfer number and the account ID of the first member.
[0699] In response to receiving the operation of leaving the first real-time intercom subgroup, electronic device 100 can send a change subgroup master message 3 to electronic device 200 via unicast, multicast or broadcast. The change subgroup master message 3 is used to indicate to the members in the first real-time intercom subgroup that the subgroup master of the first real-time intercom subgroup has left the first real-time intercom subgroup.
[0700] Among them, the subgroup owner change message 3 includes, but is not limited to, any one or more of the following: the group ID of the first chat group, the number of the first real-time intercom subgroup, the group owner transfer number, the account ID of the first member, and the identifier of the active transfer of subgroup owner, etc.
[0701] Optionally, in addition to sending the change subgroup master message 3 to electronic device 200, electronic device 100 can also send the change subgroup master message 3 to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast.
[0702] S1703, Electronic device 200 determines that the number of members with D2D communication capability with electronic device 200 in the first real-time intercom subgroup is the largest, and determines the second member to become the subgroup leader in the first real-time intercom subgroup.
[0703] After receiving the subgroup leader change message 3, the devices of other members in the first real-time intercom subgroup can determine the new subgroup leader. The new subgroup leader can be the member with the most D2D communication capabilities with the members in the first real-time intercom subgroup.
[0704] For example, after receiving the subgroup change message 3, if the electronic device 200 determines that the number of members with D2D communication capability in the first real-time intercom subgroup is the largest, then the electronic device 200 can determine the second member as the new subgroup leader of the first real-time intercom subgroup.
[0705] S1704. Electronic device 200 sends subgroup management information 9, including a group member list 9, to electronic device 100 via unicast, multicast, or broadcast.
[0706] After the electronic device 200 determines the second member as the new subgroup leader of the first real-time intercom subgroup, the electronic device 200 can stop sending subgroup member information to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast, and start sending subgroup management information 9 to the devices of other members in the first real-time intercom subgroup via unicast, multicast, or broadcast.
[0707] The subgroup management information 9 may include, but is not limited to, any one or more of the following: location information of electronic device 100, group account ID of the first chat group, account ID of the second member, number of the first real-time intercom subgroup, group member list 9, no network identifier, etc.
[0708] Group member list 9 is similar to group member list 1; you can refer to the description of group member list 1.
[0709] For example, electronic device 200 can send subgroup management information 9 to electronic device 100 via unicast, multicast, or broadcast.
[0710] S1705, Electronic device 100 exits the first real-time intercom subgroup and stops sending subgroup management information.
[0711] After receiving the operation to leave the first real-time intercom subgroup, the electronic device 100 can leave the first real-time intercom subgroup and stop sending subgroup management information.
[0712] It should be noted that this also applies when electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state. Figure 17 The method shown is not described in detail here. When electronic device 100 is in a network-connected state and electronic device 200 is in a network-free state, Figure 17 The first real-time intercom subgroup includes a network-connected real-time intercom subgroup and a network-free real-time intercom subgroup. The number of members in the first real-time intercom subgroup with D2D communication capability with electronic device 200 in S1703 can refer to the number of members in the network-free real-time intercom subgroup within the first real-time intercom subgroup with D2D communication capability. The electronic device 100 leaving the first real-time intercom subgroup in S1705 can refer to the electronic device 100 leaving the network-free real-time intercom subgroup within the first real-time intercom subgroup.
[0713] In some embodiments, if the first chat group also includes a sixth member's device (e.g., electronic device 600), and electronic device 100 cannot communicate directly with electronic device 200 via unicast / multicast / broadcast, but electronic device 100 can communicate directly with electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can communicate directly with electronic device 200 via unicast / multicast / broadcast, electronic device 100 can send a change subgroup owner message 3 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send a change subgroup owner message 3 to electronic device 200 via unicast / multicast / broadcast. Alternatively, electronic device 200 can send subgroup management information 9 to electronic device 600 via unicast / multicast / broadcast, and electronic device 600 can then send subgroup management information 9 to electronic device 100 via unicast / multicast / broadcast.
[0714] Scenario C: The real-time intercom subgroup is split into multiple clusters, each of which includes one or more members.
[0715] After the first real-time intercom subgroup is created, the positions of its members will change, causing some members to lose communication with other members. In this case, members unable to communicate with other members can split into a new cluster, and the remaining members of the first real-time intercom subgroup can split into another cluster. The first real-time intercom subgroup consists of multiple clusters, each with different members. Each cluster has a cluster master, which is the member with the most D2D communication capabilities within that cluster. The cluster master manages the number of members in the cluster. When a new member needs to join the cluster, the cluster master needs to determine if the number of members in the cluster is less than a second preset number. If the number of members in the cluster is less than the second preset number, the cluster master allows the new member to join.
[0716] Figure 18A and Figure 18B A schematic diagram is shown showing a first real-time intercom subgroup splitting into two clusters.
[0717] like Figure 18A As shown, the first real-time intercom subgroup includes a first member, a second member, a third member, and a fourth member. The first member is the creator of the first real-time intercom subgroup, and therefore the first member is the subgroup master of the first real-time intercom subgroup. The second and third members are subgroup members of the first real-time intercom subgroup. Electronic device 100 can communicate with electronic device 200, electronic device 300, and electronic device 400 through unicast, multicast, or broadcast.
[0718] The positions of members within the first real-time intercom subgroup can change. For example... Figure 18B As shown, electronic device 100 can communicate with electronic device 200 via unicast, multicast, or broadcast. Electronic device 100 cannot communicate with electronic devices 300 and 400 via unicast, multicast, or broadcast. Electronic device 200 cannot communicate with electronic devices 300 and 400 via unicast, multicast, or broadcast. Electronic device 300 can communicate with electronic device 400 via unicast, multicast, or broadcast. In this case, the third and fourth members can split into one cluster, and the first and second members can split into another cluster.
[0719] For example, the cluster containing the third and fourth members can be called cluster 1, and the cluster containing the first and second members can be called cluster 2.
[0720] Before the members in the first real-time intercom subgroup split into clusters, the members in the first real-time intercom subgroup can obtain the number of times each member has D2D communication capability with other members in the first real-time intercom subgroup.
[0721] After the members in the first real-time intercom subgroup are split into clusters, the members in the cluster can determine the cluster master and cluster members based on the number of times each member in the cluster has D2D communication capability with other members in the first real-time intercom subgroup.
[0722] A cluster master can refer to the member in the cluster with the largest number of members capable of D2D communication. If at least two members in a cluster have the same number of members capable of D2D communication as the number of members in the cluster, then a unique cluster master can be determined by, but not limited to, any one or more of the following methods.
[0723] Method 1: The member's device has the most remaining battery power. Method 2: The member is the subgroup leader of the real-time intercom subgroup.
[0724] For example, in Figure 18B In this example, cluster 1 includes a first member and a second member. The number of members in cluster 1 with D2D communication capability, including the first member and the second member, is 1. However, the first member was previously the subgroup leader of a real-time intercom subgroup. Following the above method, the first member can be determined as the cluster leader of cluster 1, and the third member as a cluster member of cluster 1. Similarly, following the above method, the third member can be determined as the cluster leader of cluster 2, and the fourth member as a cluster member of cluster 2.
[0725] The cluster master needs to send subgroup management information periodically / irregularly. The devices of the members in the first chat group can receive the subgroup management information sent by the cluster master through unicast, multicast or broadcast. The function of the subgroup management information sent by the cluster master is similar to that of the subgroup management information sent by the subgroup master of the first real-time intercom subgroup.
[0726] Cluster members need to periodically / irregularly send subgroup member information. The devices of members in the first chat group can receive the subgroup member information sent by the cluster members via unicast, multicast, or broadcast. The function of the subgroup member information sent by the cluster members is similar to that of the subgroup member information sent by the subgroup members of the first real-time intercom subgroup.
[0727] Scenario D: The fifth member in the first chat group joins cluster 2.
[0728] Devices belonging to members in the first chat group can receive subgroup management information sent by the cluster leader via unicast, multicast, or broadcast. In response to the subgroup management information sent by the cluster leader, devices belonging to members in the first chat group can display a prompt indicating whether they wish to join the first real-time intercom subgroup. If a member in the first chat group confirms joining the first real-time intercom subgroup, that member can join cluster 1.
[0729] For example, such as Figure 18C As shown, the third member is the cluster master of cluster 2. Electronic device 300 can send subgroup management information to the devices of members in the first chat group via unicast, multicast, or broadcast. The device of the fourth member in the first chat group can receive the subgroup management information sent by electronic device 300. After receiving the subgroup management information sent by electronic device 300, electronic device 500 can display a prompt message asking whether to join cluster 2. If the fifth member confirms joining cluster 2, electronic device 300 can check whether the number of members in cluster 2 is less than a second preset number. If it is confirmed that the number of members in cluster 2 is less than the second preset number, electronic device 300 allows the fifth member to join the first real-time intercom subgroup, that is, the fifth member can join cluster 2. After the fifth member can join cluster 2, the fifth member, as a cluster member of cluster 2, begins to send subgroup member information.
[0730] By implementing this method, when electronic device 500 cannot receive subgroup management information sent by electronic device 100, but can receive subgroup management information sent by electronic device 300, electronic device 500 can join cluster 2 where electronic device 300 is located, and communicate with members in cluster 2 through unicast, multicast, or broadcast.
[0731] In some embodiments, before the fifth member joins the first real-time intercom subgroup, if the electronic device 500 simultaneously receives subgroup management information sent by the cluster master of cluster 1 and the cluster master of cluster 2, the electronic device 500 can display two prompt messages, both of which are used to prompt the user whether to join cluster 1 or cluster 2. The fifth member can choose to join either cluster 1 or cluster 2. Specifically, and Figure 11C The implementation examples are similar and can be referred to. Figure 11C The descriptions in the embodiments are not repeated here.
[0732] In scenario E, cluster members in cluster 1 receive subgroup management information corresponding to the two cluster masters.
[0733] In scenario D above, after the fifth member in the first chat group joins cluster 1, the position of the fifth member can change.
[0734] like Figure 19As shown, if electronic device 500 can receive subgroup management information sent by both electronic device 100 and electronic device 300, electronic device 500 can determine whether to continue joining cluster 2 through one or more of the following methods, but not limited to: In other words, members of the first chat group can be in two clusters simultaneously, and members of the first chat group can determine whether to continue joining one of the clusters through one or more of the following methods, such as choosing to join cluster 2.
[0735] Method 1: If the number of members in cluster 2 is greater than the number of members in cluster 1, then electronic device 500 can continue to join cluster 2.
[0736] Method 2: If the number of members in cluster 2 is the same as the number of members in cluster 1, electronic device 100 can continue to join the cluster 2 it previously belonged to.
[0737] Method 3: The fifth member's device can prompt the user to join cluster 1 or cluster 2. The specific implementation of Method 3, and... Figure 11A The implementation examples are similar and can be referred to. Figure 11A The descriptions in the embodiments are not repeated here.
[0738] Optionally, scenario E can also be applied to a member in the first chat group who has not joined the first real-time intercom subgroup who receives subgroup management information sent by two cluster masters via unicast, multicast, or broadcast. In this case, the member can choose to join either cluster.
[0739] Scenario F: Change of cluster master.
[0740] In some embodiments, the positions of members in a cluster may change. Some members' devices may communicate with each other via unicast, multicast, or broadcast, while some members' devices may not be able to communicate with each other via unicast, multicast, or broadcast. This can cause changes in the number of members in the cluster whose devices have D2D communication capabilities with the cluster master, as well as the number of members in the cluster whose devices have D2D communication capabilities with other cluster members.
[0741] Based on this, the cluster member with the most D2D communication capabilities among all cluster members can be designated as the cluster master. In other words, the cluster master can change dynamically, facilitating more accurate management of the number of members within the cluster.
[0742] A cluster can also be understood as a subgroup of real-time intercom messages. The principle of changing the cluster leader is similar to that of changing the subgroup leader within the first real-time intercom subgroup; please refer to [the relevant documentation / reference]. Figure 15 and Figure 16 The descriptions in the embodiments are not repeated here.
[0743] For example, in Figure 20 In this cluster, cluster 2 includes a third member, a fourth member, and a fifth member. Electronic device 500 can communicate with electronic device 300 via unicast, multicast, or broadcast. Electronic device 500 can also communicate with electronic device 400 via unicast, multicast, or broadcast. Electronic device 300 cannot communicate with electronic device 400 via unicast, multicast, or broadcast. The number of devices in cluster 2 with D2D communication capability to the fifth member is 2, the number with D2D communication capability to the third member is 1, and the number with D2D communication capability to the fourth member is 1. Therefore, the fifth member can be determined as the cluster master of cluster 2, and the third and fourth members are cluster members of cluster 2.
[0744] Scene G, Cluster 1, and Cluster 2 are merged into the third real-time intercom subgroup.
[0745] In some embodiments, the positions of members within a cluster may change. If the cluster master of one cluster receives subgroup management information sent by another cluster master via unicast, multicast, or broadcast, the two clusters may be merged into a real-time intercom subgroup (e.g., a third real-time intercom subgroup).
[0746] For example, if the cluster master of cluster 1 receives subgroup management information sent by the cluster master of cluster 2 via unicast, multicast, or broadcast, the cluster master of cluster 1 can determine a new subgroup master from among the cluster masters of cluster 1 and cluster masters of cluster 2 in response to the subgroup management information sent by the cluster master of cluster 2.
[0747] Optionally, the cluster master of cluster 1 may determine a new subgroup master from among the cluster masters of cluster 1 and cluster masters of cluster 2 through one or more of the following methods.
[0748] Method 1: If the number of members in cluster 1 is greater than the number of members in cluster 2, then the cluster master of cluster 1 can become the new subgroup master, and the cluster master of cluster 2 can become a subgroup member.
[0749] Method 2: If the number of members in cluster 1 is the same as the number of members in cluster 2, but the cluster master of cluster 1 was established earlier than the cluster master of cluster 2, then the cluster master of cluster 1 can be the new subgroup master, and the cluster master of cluster 2 can be a subgroup member.
[0750] For example, such as Figure 21As shown, if the cluster master of cluster 1 receives subgroup management information sent by the cluster master of cluster 2 via unicast, multicast, or broadcast, in response to the subgroup management information sent by the cluster master of cluster 2, the cluster master of cluster 1 can determine, in the manner described above, that the cluster master of cluster 1 is the subgroup master of the third real-time intercom subgroup, the cluster master of cluster 2 is a sub-member of the third real-time intercom subgroup, and the cluster members in cluster 1 (e.g., the second member) are also sub-members of the third real-time intercom subgroup, as are the cluster members in cluster 2 (e.g., the fourth member).
[0751] Optionally, before merging cluster 1 and cluster 2 into a third real-time intercom subgroup, if the cluster master of cluster 1 is the subgroup master of the third real-time intercom subgroup, the cluster master of cluster 1 also needs to determine whether the total number of members in cluster 1 and the total number of members in cluster 2 is less than a first preset number.
[0752] If the total number of members in cluster 1 and cluster 2 is less than the first preset number, then cluster 1 and cluster 2 can be merged into a third real-time intercom subgroup.
[0753] If the total number of members in cluster 1 and cluster 2 exceeds the first preset number, then cluster 1 and cluster 2 can be merged to obtain a third real-time intercom subgroup through any one or more of the following methods.
[0754] Method 1: All members in cluster 1 are in the third real-time intercom subgroup. Then, some members in cluster 2 are added to the third real-time intercom subgroup. The other members in cluster 2 are still in cluster 2, and the cluster master of cluster 2 continues to manage the other members in cluster 2.
[0755] Method 2: All members in cluster 2 are in the third real-time intercom subgroup. Then, some members in cluster 1 are added to the third real-time intercom subgroup. The other members in cluster 1 are located in cluster 1, and the cluster master of cluster 1 manages the other members in cluster 1.
[0756] Figure 22 This is a schematic flowchart of a device communication method provided in this application.
[0757] S2201. A first electronic device displays a first user interface of a first communication application. The first user interface includes information about communication between a first member and a second member in a communication application. The first electronic device is a device of the first member.
[0758] S2202, The first electronic device receives the first information entered by the user in the first user interface.
[0759] S2203. When the first electronic device and the second electronic device can communicate through the server, the first electronic device sends first information to the second electronic device through the server, and the second electronic device is a device of the second member.
[0760] S2204. In the case that the first electronic device and the second electronic device cannot communicate through the server, the first electronic device sends the first information to the second electronic device through end-to-end D2D communication technology.
[0761] Optionally, if the first electronic device switches from a state where it can communicate with the second electronic device through the server to a state where it cannot communicate with the second electronic device through the server, then the first electronic device can switch to D2D communication technology to communicate with the second electronic device. If the first electronic device switches from a state where it cannot communicate with the second electronic device through the server to a state where it can communicate with the second electronic device through the server, then the first electronic device can switch to communicating with the second electronic device through the server. In other words, the first electronic device and the second electronic device can dynamically switch communication modes.
[0762] The first electronic device sends the first information to the second electronic device through a server, including: the first electronic device sends the first information to the second electronic device through a server based on any one of cellular network, local area network, or fixed network; the D2D communication technology includes any one or more of the following: point-to-point connection communication technology, multicast communication technology, and broadcast communication technology.
[0763] Point-to-point connection communication technologies include any one or more of the following: Bluetooth connection, Starlink connection; multicast communication technologies include any one or more of the following: Bluetooth multicast communication technology, Starlink multicast communication technology; broadcast communication technologies include any one or more of the following: Bluetooth broadcast communication technology, Starlink broadcast communication technology.
[0764] Optionally, the first electronic device sends the first information to the second electronic device through end-to-end D2D communication technology, or the first electronic device sends the first information to the second electronic device through other devices as relays based on end-to-end D2D communication technology.
[0765] By implementing this method, the electronic devices of contacts in the first communication application can dynamically switch communication modes based on the communication status. The communication modes may include communication through a server and communication through D2D communication technology, so as to enable communication between the electronic devices of contacts in the first communication application.
[0766] In one possible implementation, before the first electronic device displays the first user interface of the first communication application, the method further includes: the first electronic device displaying a second user interface of the first communication application, the second user interface including options for a second member; the first electronic device displaying the first user interface of the first communication application specifically includes: the first electronic device receiving and responding to a first operation for the options of the second member, and displaying the first user interface. The device communication method provided in this application can be applied to one-on-one chat scenarios in the first communication application, such as communication between two contacts in the first communication application who are not part of a chat group.
[0767] In one possible implementation, before the first electronic device displays the first user interface of the first communication application, the method further includes: the first electronic device displaying a third user interface of the first communication application, the third user interface including options for a first chat group, the first chat group including a first member and a second member; the first electronic device displaying the first user interface of the first communication application specifically includes: the first electronic device receiving and responding to a second operation for the options of the first chat group, and displaying the first user interface. The device communication method provided in this application can be applied to group chat scenarios in a first communication application, such as communication scenarios between members of a first chat group in a first communication application.
[0768] In one possible implementation, the first chat group also includes a third member; the method further includes: when the first electronic device and the third electronic device cannot communicate through the server, the first electronic device sends first information to the third electronic device, which is the device of the third member, via D2D communication technology. In this way, messages sent by the first electronic device in the first chat group can be sent to the devices of other members in the first chat group via D2D communication technology.
[0769] In one possible implementation, before the first electronic device displays the first user interface of the first communication application, the method further includes: the first electronic device displaying a third user interface of the first communication application, the third user interface including options for a first chat group, the first chat group including a first member and a second member; the first electronic device receiving and responding to a third operation, sending first subgroup management information to the second electronic device, the first subgroup management information being used to invite the second member to join the first real-time intercom subgroup; the first electronic device displaying the first user interface of the first communication application specifically includes: after the second member joins the first real-time intercom subgroup, the first electronic device displaying the first user interface of the first communication application.
[0770] By implementing this method, a first member can invite one or more members from a first chat group to establish a real-time object subgroup. Devices belonging to members of the first real-time intercom subgroup can communicate. Devices not belonging to members of the first real-time intercom subgroup cannot communicate with devices belonging to members of the first real-time intercom subgroup.
[0771] For example, the operation of creating the first real-time intercom subgroup can be referred to Figures 4A-4J The examples are described below.
[0772] In one possible implementation, the first electronic device sends first subgroup management information to the second electronic device, specifically including: when the first electronic device and the second electronic device can communicate through a server, the first electronic device sends the first subgroup management information to the second electronic device through the server; or, when the first electronic device and the second electronic device cannot communicate through the server, the first electronic device sends the first subgroup management information to the second electronic device through D2D communication technology.
[0773] Implementing this method, when the first and second electronic devices can communicate via a server, the first electronic device can create a networked real-time intercom subgroup through the server, and the server can manage the members in the networked real-time intercom subgroup. When the first and second electronic devices cannot communicate via the server, the first electronic device can create a network-free real-time intercom subgroup, and the first electronic device can manage the members in the network-free real-time intercom subgroup, such as allowing members to join, leave, or change the subgroup leader. In other words, the first real-time intercom subgroup can include both networked and network-free real-time intercom subgroups.
[0774] For example, where the first electronic device and the second electronic device can communicate via a server, the first real-time intercom subgroup includes a networked real-time intercom subgroup, and the management information of the first subgroup can be... Figure 5A The subgroup management information shown is 1.
[0775] For example, when the first electronic device and the second electronic device cannot communicate through the server, the first real-time intercom subgroup includes a network-free real-time intercom subgroup, and the management information of the first subgroup can be... Figure 5C The subgroup management information shown is 2.
[0776] In one possible implementation, the first chat group also includes a third member; the method further includes: the first electronic device sending second subgroup management information to the third electronic device, the second subgroup management information being used to invite the third member to join the first real-time intercom subgroup; after the second member joins the first real-time intercom subgroup, the first electronic device displays a first user interface of the first communication application, specifically including: after the second member and the third member join the first real-time intercom subgroup, the first electronic device displays a first user interface of the first communication application.
[0777] Implementing this method, in response to the operation of creating a first real-time intercom subgroup, the electronic device can also send a second subgroup management message to a third electronic device. The second subgroup management message is used to invite a third member to join the first real-time intercom subgroup, and the third member can join the first real-time intercom subgroup.
[0778] In one possible implementation, the first electronic device sends second subgroup management information to the third electronic device, specifically including: if the first electronic device and the third electronic device can communicate via a server, the first electronic device sends the second subgroup management information to the third electronic device via the server. Alternatively, if the first electronic device and the third electronic device cannot communicate via a server, the first electronic device sends the second subgroup management information to the third electronic device via D2D communication technology.
[0779] For example, in cases where the first electronic device and the second electronic device can communicate through a server, but the first electronic device and the third electronic device cannot communicate through a server, the first real-time intercom subgroup may include a network-connected real-time intercom subgroup and a network-free real-time intercom subgroup, and the second subgroup management information may be... Figure 5A The subgroup management information shown is 2.
[0780] For example, in cases where the first electronic device and the second electronic device can communicate with the server, or where the first electronic device and the third electronic device can communicate with the server, the first real-time intercom subgroup may include a networked real-time intercom subgroup.
[0781] For example, in cases where the first electronic device and the second electronic device cannot communicate through the server, or where the first electronic device and the third electronic device cannot communicate through the server, the first real-time intercom subgroup may include a network-free real-time intercom subgroup, and the management information of the second subgroup may be... Figure 5C The subgroup management information shown is 2.
[0782] In one possible implementation, if the first electronic device and the third electronic device can communicate through a server, the first electronic device sends the first information to the third electronic device through the server; if the first electronic device and the third electronic device cannot communicate through a server, the first electronic device sends the first information to the second electronic device through end-to-end D2D communication technology.
[0783] In one possible implementation, when the first electronic device and the second electronic device cannot communicate with the server, and the first electronic device and the third electronic device cannot communicate with the server, after the second member and the third member join the first real-time intercom subgroup, the method further includes: the first electronic device sending third subgroup management information to the devices of other members in the first chat group via D2D communication technology, the third subgroup management information including a list of members in the first group; the first electronic device receiving first subgroup member information sent by the second electronic device via D2D communication technology, the first subgroup member information including a first number of members in the first real-time intercom subgroup who have D2D communication capabilities with the second electronic device; and the first electronic device receiving second subgroup member information sent by the third electronic device via D2D communication technology, the second subgroup member information including a second number of members in the first real-time intercom subgroup who have D2D communication capabilities with the third electronic device.
[0784] After the first electronic device creates the first real-time intercom subgroup, if the first real-time intercom subgroup includes a network-free real-time intercom subgroup, the first member can be the subgroup leader of the network-free real-time intercom subgroup within the first real-time intercom subgroup, and the second and third members can be subgroup members of the network-free real-time intercom subgroup within the first real-time intercom subgroup. The first electronic device can send subgroup management information to the devices of members in the first chat group. The subgroup management information is used to display a prompt message to devices of members in the first chat group who have not joined the first real-time intercom subgroup, indicating whether they want to join the first real-time intercom subgroup. The subgroup management information is also used by devices of members in the first chat group who have joined the first real-time intercom subgroup to obtain the number of devices in the first real-time intercom subgroup that have D2D communication capabilities with the first electronic device and the members in the first real-time intercom subgroup. Devices of subgroup members in the network-free real-time intercom subgroup can send subgroup member information to the devices of other members in the network-free real-time intercom subgroup. The subgroup member information is used by the devices of other members in the first real-time intercom subgroup to obtain the number of devices in the first real-time intercom subgroup that have D2D communication capabilities with them.
[0785] For example, in cases where the first and second electronic devices cannot communicate via the server, or where the first and third electronic devices cannot communicate via the server, the first real-time intercom subgroup may include a network-free real-time intercom subgroup. The third subgroup management information may be... Figure 5D The subgroup management information shown is 4. The first subgroup member information can be... Figure 5DThe subgroup member information shown is 3. The second subgroup member information can be... Figure 5D The subgroup member information shown is 2.
[0786] In one possible implementation, the first subgroup management information may further include any one or more of the following: the group ID of the first chat group, the number of the first real-time intercom subgroup, the location information of the first electronic device, the account ID of the first member, and the network identifier of the first electronic device; and / or, the first subgroup member information may further include any one or more of the following: the location information of the second electronic device and the network identifier of the second electronic device; and / or, the second subgroup member information may further include any one or more of the following: the location information of the third electronic device and the network identifier of the third electronic device.
[0787] In one possible implementation, the number of members in the first group member list is determined by the first electronic device based on the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup via D2D communication technology; and / or, the first number is determined by the second electronic device based on the first subgroup management information received by the second electronic device and the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup via D2D communication technology; and / or, the second number is determined by the third electronic device based on the first subgroup management information received by the third electronic device and the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup via D2D communication technology.
[0788] In one possible implementation, the first communication application further includes a fourth member; the method further includes: the first electronic device receiving a first join message sent by the fourth electronic device via D2D communication technology, the fourth electronic device being the fourth member's device, and in response to the first join message, if the first electronic device determines that the number of members in the first real-time intercom subgroup is less than a first preset number, the first electronic device adds the fourth member to the first real-time intercom subgroup.
[0789] The subgroup owner of the first real-time intercom subgroup can control the number of members in the subgroup. For example, the first real-time intercom subgroup may include a non-network real-time intercom subgroup. The first join message can be... Figure 7A The join message 1 shown is for reference. Figure 7A Description in the embodiments.
[0790] In one possible implementation, after the first electronic device receives the first subgroup member information sent by the second electronic device, the method further includes: if it is determined that the number of members in the first group member list is less than a first number, the first electronic device sends a first subgroup leader change message to the second electronic device via D2D communication technology, the first subgroup leader change message being used to indicate that the second member is the subgroup leader of a real-time intercom subgroup; the first electronic device sends third subgroup member information to the second electronic device via D2D communication technology, the third subgroup member information including the number of members in the first real-time intercom subgroup who have D2D communication capability with the first electronic device; the first electronic device receives fourth subgroup management information sent by the second electronic device via D2D communication technology, the fourth subgroup management information including the second group member list.
[0791] Implementing this method will cause changes in the positions of members within the first real-time intercom subgroup. Some members' devices may communicate with each other, while others may not, leading to changes in the communication status of the devices within the first real-time intercom subgroup. Based on this, the member with the most D2D communication capabilities among the members of the first real-time intercom subgroup can be designated as the subgroup leader. In other words, the subgroup leader of the first real-time intercom subgroup can change dynamically, facilitating more accurate management of the number of members within the first real-time intercom subgroup.
[0792] In some embodiments, the first electronic device may actively switch the subgroup leader of the first real-time intercom subgroup. The second member becomes the new subgroup leader of the first real-time intercom subgroup, and the first member becomes a subgroup member of the first real-time intercom subgroup.
[0793] For example, the first real-time intercom subgroup may include a network-free real-time intercom subgroup. The first change subgroup master message may be... Figure 16 The change message 2 for the subgroup owner shown can contain information about the third subgroup members. Figure 16 The subgroup member information shown in 9, and the fourth subgroup management information can be... Figure 16 The subgroup management information shown in section 8 can be used as a reference. Figure 16 Description in the embodiments.
[0794] In one possible implementation, after the first electronic device receives the first subgroup member information sent by the second electronic device, the method further includes: the first electronic device receiving a second subgroup leader change message sent by the second electronic device via D2D communication technology, the second subgroup leader change message being used to request the second member to act as the subgroup leader of a real-time intercom subgroup, the second subgroup leader change message being sent after the second electronic device confirms that the number of members in the first group member list is less than a first number; if it is determined that the number of members in the first group member list is less than the first number, the first electronic device sending a first confirmation subgroup leader change message to the second electronic device via D2D communication technology, the first confirmation subgroup leader change message being used to instruct the second member to act as the subgroup leader of a real-time intercom subgroup; the first electronic device sending third subgroup member information to the second electronic device via D2D communication technology, the third subgroup member information including the number of members in the first real-time intercom subgroup who have D2D communication capability with the first electronic device; the first electronic device receiving fourth subgroup management information sent by the second electronic device via D2D communication technology, the fourth subgroup management information including the second group member list, the fourth subgroup management information being sent after the second electronic device receives the first confirmation subgroup leader change message.
[0795] In some embodiments, a second electronic device may actively request to become the subgroup leader of the first real-time intercom subgroup. The second member becomes the new subgroup leader of the first real-time intercom subgroup, and the first member becomes a subgroup member of the first real-time intercom subgroup.
[0796] For example, the first real-time intercom subgroup may include a network-free real-time intercom subgroup. The second subgroup change master message may be... Figure 15 The change message 1 for the subgroup leader shown can include information about the third subgroup members. Figure 15 The subgroup member information shown in 9, and the fourth subgroup management information can be... Figure 15 The subgroup management information shown in section 8 can be used as a reference. Figure 15 Description in the embodiments.
[0797] In one possible implementation, after the first electronic device sends the third subgroup member information to the devices of other members in the first chat group via D2D communication technology, the method further includes: if no fourth subgroup management information is received from the second electronic device after a first time period, and the number of members with D2D communication capability with the first electronic device in the first real-time intercom subgroup is the largest, the first electronic device sends a fifth subgroup management information to the devices of other members in the first chat group via D2D communication technology, the fifth subgroup management information including the third group member list.
[0798] Implementing this method, if no subgroup management information is received from the subgroup leader's device within the first real-time intercom subgroup after a first set of time, the devices of the subgroup members in the first real-time intercom subgroup can automatically determine a new subgroup leader. This facilitates accurate and timely management of the members within the first real-time intercom subgroup. The new subgroup leader can be the member with the largest number of members in the first real-time intercom subgroup who possess D2D communication capabilities. (See reference...) Figure 11E The description in the example.
[0799] In one possible implementation, the first real-time intercom subgroup includes a first cluster and a second cluster. The cluster master of the first cluster is a first electronic device, and the cluster master of the second cluster is a second electronic device. The first electronic device is used to send a sixth subgroup management information to the devices of other members in the first cluster via D2D communication technology, and the second electronic device is used to send a seventh subgroup management information to the devices of other members in the second cluster via D2D communication technology. The sixth subgroup management information includes a list of members of the fourth group, and the seventh subgroup management information includes a list of members of the fifth group.
[0800] By implementing this method, the first real-time intercom subgroup can be referred to as at least two clusters, each cluster having a cluster master who manages the number of members in the cluster.
[0801] In one possible implementation, the first communication application further includes a fifth member, and the method further includes: the first electronic device receiving a second join message sent by the fifth electronic device via D2D communication technology, the fifth electronic device being the fifth member's device; in response to the second join message, if the first electronic device determines that the number of members in the first cluster is less than a second preset number, the first electronic device adds the fifth member to the first cluster.
[0802] Optionally, if the fifth electronic device cannot communicate with the second electronic device through D2D communication technology, but can communicate with the first electronic device through D2D communication technology, then the fifth electronic device may request to join the first cluster where the first electronic device is located.
[0803] By implementing this method, if the number of members in the first cluster is less than the second preset number, the first electronic device can add the fifth member to the first cluster, thereby enabling the fifth electronic device and the devices of the members in the first cluster to communicate through D2D communication technology.
[0804] In one possible implementation, the method further includes: a first electronic device receiving seventh subgroup management information sent by a second electronic device via D2D communication technology; and, if a first condition is met, the first electronic device sending a third subgroup owner change request to the second electronic device via D2D communication technology, the third subgroup owner change request indicating that the second electronic device is a subgroup member of the second real-time intercom subgroup. The first electronic device then sends eighth subgroup management information, including a sixth group member list, to the devices of other members in the first chat group via D2D communication technology; and the first electronic device receiving fourth subgroup member information sent by the second electronic device via D2D communication technology, the fourth subgroup member information including the number of members in the second real-time intercom subgroup who have D2D communication capabilities with the second electronic device.
[0805] By implementing this method, at least two clusters can be merged into a real-time intercom subgroup, enabling members of at least two clusters to communicate via D2D communication capabilities.
[0806] In one possible implementation, the first condition includes any one or more of the following: the number of members in the fourth group member list is greater than the number of members in the fifth group member list; the time when the first electronic device sends the sixth subgroup management information is earlier than the time when the second electronic device sends the seventh subgroup management information; and the sum of the number of members in the fourth group member list and the number of members in the fifth group member list is less than a first preset number.
[0807] In conjunction with the first aspect, in one possible implementation, the first information includes any one of the following: voice message, text, image, file, link, GIF, or video.
[0808] This application provides an electronic device, which includes: one or more processors and one or more memories, wherein the one or more memories are coupled to one or more processors, and the one or more memories are used to store a computer program. When the one or more processors execute the computer program, they perform the steps in the various method embodiments described above.
[0809] This application also provides a computer-readable storage medium including instructions that, when executed by a processor, can implement the steps in the various method embodiments described above.
[0810] This application also provides a computer program product, including a computing program, which, when executed by a processor, can implement the steps in the various method embodiments described above.
[0811] This application also provides a chip system, which includes a processing circuit interface circuit. The interface circuit receives code instructions and transmits them to the processing circuit. The processing circuit executes the code instructions to enable the chip system to implement the steps of any method embodiment of this application. The chip system can be a single chip or a chip module composed of multiple chips.
[0812] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A device communication method, the method being applied to a first electronic device, characterized in that, The first electronic device has a first communication application installed, and the method includes: The first electronic device displays a first user interface of the first communication application, the first user interface including information on communication between a first member and a second member in the communication application, and the first electronic device is a device of the first member; The first electronic device receives first information input by the user in the first user interface; In the case where the first electronic device and the second electronic device can communicate through the server, the first electronic device sends the first information to the second electronic device through the server, and the second electronic device is the device of the second member; In the event that the first electronic device and the second electronic device cannot communicate through the server, the first electronic device sends the first information to the second electronic device through end-to-end D2D communication technology.
2. The method according to claim 1, characterized in that, The first electronic device sends the first information to the second electronic device through the server, including: the first electronic device sending the first information to the second electronic device through the server based on any one of cellular network, local area network, and fixed network; The D2D communication technology includes any one or more of the following: point-to-point connection communication technology, multicast communication technology, and broadcast communication technology.
3. The method according to claim 2, characterized in that, The point-to-point connection communication technology includes any one or more of the following: Bluetooth connection, Starlink connection; The multicast communication technology includes any one or more of the following: Bluetooth multicast communication technology, StarSpeed multicast communication technology; The broadcast communication technology includes any one or more of the following: Bluetooth broadcast communication technology and Starlight broadcast communication technology.
4. The method according to any one of claims 1-3, characterized in that, Before the first electronic device displays the first user interface of the first communication application, the method further includes: The first electronic device displays a second user interface of the first communication application, the second user interface including options for the second member; The first electronic device displays a first user interface of the first communication application, specifically including: The first electronic device receives and responds to a first operation for the option of the second member, and displays the first user interface.
5. The method according to any one of claims 1-3, characterized in that, Before the first electronic device displays the first user interface of the first communication application, the method further includes: The first electronic device displays a third user interface of the first communication application, the third user interface including options for the first chat group, the first chat group including the first member and the second member; The first electronic device displays a first user interface of the first communication application, specifically including: The first electronic device receives and responds to a second operation for the options in the first chat group, and displays the first user interface.
6. The method according to claim 5, characterized in that, The first chat group also includes a third member; the method further includes: In the event that the first electronic device and the third electronic device cannot communicate through the server, the first electronic device sends the first information to the third electronic device through the D2D communication technology, wherein the third electronic device is the device of the third member.
7. The method according to any one of claims 1-3, characterized in that, Before the first electronic device displays the first user interface of the first communication application, the method further includes: The first electronic device displays a third user interface of the first communication application, the third user interface including options for the first chat group, the first chat group including the first member and the second member; The first electronic device receives and responds to the third operation by sending first subgroup management information to the second electronic device. The first subgroup management information is used to invite the second member to join the first real-time intercom subgroup. The first electronic device displays the first user interface of the first communication application, specifically including: After the second member joins the first real-time intercom subgroup, the first electronic device displays the first user interface of the first communication application.
8. The method according to claim 7, characterized in that, The first electronic device sends first subgroup management information to the second electronic device, specifically including: When the first electronic device and the second electronic device can communicate through the server, the first electronic device sends the first subgroup management information to the second electronic device through the server. or, In the event that the first electronic device and the second electronic device cannot communicate through the server, the first electronic device sends the first subgroup management information to the second electronic device through the D2D communication technology.
9. The method according to claim 8, characterized in that, The first chat group also includes a third member; the method further includes: The first electronic device sends a second subgroup management message to the third electronic device. The second subgroup management message is used to invite the third member to join the first real-time intercom subgroup. After the second member joins the first real-time intercom subgroup, the first electronic device displays the first user interface of the first communication application, specifically including: After the second member and the third member join the first real-time intercom subgroup, the first electronic device displays the first user interface of the first communication application.
10. The method according to claim 9, characterized in that, The first electronic device sends second subgroup management information to the third electronic device, specifically including: When the first electronic device and the third electronic device can communicate through the server, the first electronic device sends the second subgroup management information to the third electronic device through the server; or, In the event that the first electronic device and the third electronic device cannot communicate through the server, the first electronic device sends the second subgroup management information to the third electronic device through the D2D communication technology.
11. The method according to claim 9 or 10, characterized in that, The method further includes: When the first electronic device and the third electronic device can communicate through the server, the first electronic device sends the first information to the third electronic device through the server; In the event that the first electronic device and the third electronic device cannot communicate through the server, the first electronic device sends the first information to the second electronic device through end-to-end D2D communication technology.
12. The method according to claim 9 or 10, characterized in that, In the event that the first electronic device and the second electronic device cannot communicate through the server, and the first electronic device and the third electronic device cannot communicate through the server, after the second member and the third member join the first real-time intercom subgroup, the method further includes: The first electronic device sends the third subgroup management information to the devices of other members in the first chat group through the D2D communication technology. The third subgroup management information includes the list of members of the first group. The first electronic device receives first subgroup member information sent by the second electronic device through the D2D communication technology. The first subgroup member information includes the first number of members in the first real-time intercom subgroup who have D2D communication capability with the second electronic device. The first electronic device receives second subgroup member information sent by the third electronic device through the D2D communication technology. The second subgroup member information includes the second number of members in the first real-time intercom subgroup who have D2D communication capability with the third electronic device.
13. The method according to claim 12, characterized in that, The first subgroup management information also includes any one or more of the following: the group ID of the first chat group, the number of the first real-time intercom subgroup, the location information of the first electronic device, the account ID of the first member, and the network identifier of the first electronic device. And / or, The first subgroup member information also includes any one or more of the following: the location information of the second electronic device, and the network identifier of the second electronic device; And / or, The second subgroup member information also includes any one or more of the following: the location information of the third electronic device, and the network identifier of the third electronic device.
14. The method according to claim 12 or 13, characterized in that, The number of members in the first group member list is determined by the first electronic device based on the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup through the D2D communication technology. And / or, The first quantity is determined by the second electronic device based on the first subgroup management information received by the second electronic device and the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup through the D2D communication technology; And / or, The second quantity is determined by the third electronic device based on the first subgroup management information received by the third electronic device and the number of subgroup member information sent by the devices of other members in the first real-time intercom subgroup through the D2D communication technology.
15. The method according to any one of claims 7-14, characterized in that, The first communication application further includes a fourth member; the method further includes: The first electronic device receives a first join message sent by the fourth electronic device, which is the device of the fourth member, via the D2D communication technology. In response to the first join message, if the first electronic device determines that the number of members in the first real-time intercom subgroup is less than a first preset number, the first electronic device adds the fourth member to the first real-time intercom subgroup.
16. The method according to any one of claims 12-14, characterized in that, After the first electronic device receives the first subgroup member information sent by the second electronic device, the method further includes: If it is determined that the number of members in the first group member list is less than the first number, the first electronic device sends a first change subgroup owner message to the second electronic device through the D2D communication technology. The first change subgroup owner message is used to instruct the second member to act as the subgroup owner of the real-time intercom subgroup. The first electronic device sends third subgroup member information to the second electronic device through the D2D communication technology. The third subgroup member information includes the number of members in the first real-time intercom subgroup who have D2D communication capability with the first electronic device. The first electronic device receives the fourth subgroup management information sent by the second electronic device through the D2D communication technology. The fourth subgroup management information includes a list of members of the second group.
17. The method according to any one of claims 12-14, characterized in that, After the first electronic device receives the first subgroup member information sent by the second electronic device, the method further includes: The first electronic device receives a second subgroup leader change message sent by the second electronic device through the D2D communication technology. The second subgroup leader change message is used to request the second member to act as the subgroup leader of the real-time intercom subgroup. The second subgroup leader change message is sent after the second electronic device confirms that the number of members in the first group member list is less than the first number. If it is determined that the number of members in the first group member list is less than the first number, the first electronic device sends a first confirmation message for changing the subgroup owner to the second electronic device through the D2D communication technology. The first confirmation message for changing the subgroup owner is used to indicate that the second member is the subgroup owner of the real-time intercom subgroup. The first electronic device sends third subgroup member information to the second electronic device through the D2D communication technology. The third subgroup member information includes the number of members in the first real-time intercom subgroup who have D2D communication capability with the first electronic device. The first electronic device receives the fourth subgroup management information sent by the second electronic device through the D2D communication technology. The fourth subgroup management information includes a list of members of the second group. The fourth subgroup management information is sent after the second electronic device receives the first confirmation message to change the subgroup master.
18. The method according to claim 16 or 17, characterized in that, After the first electronic device sends third subgroup member information to the devices of other members in the first chat group via the D2D communication technology, the method further includes: If the fourth subgroup management information is not received from the second electronic device for more than a first time period, and the number of members with D2D communication capability with the first electronic device is the largest in the first real-time intercom subgroup, the first electronic device sends a fifth subgroup management information to the devices of other members in the first chat group through the D2D communication technology. The fifth subgroup management information includes the third group member list.
19. The method according to any one of claims 12-18, characterized in that, The first real-time intercom subgroup includes a first cluster and a second cluster. The cluster master of the first cluster is the first electronic device, and the cluster master of the second cluster is the second electronic device. The first electronic device is used to send a sixth subgroup management information to the devices of other members in the first cluster through the D2D communication technology, and the second electronic device is used to send a seventh subgroup management information to the devices of other members in the second cluster through the D2D communication technology. The sixth subgroup management information includes the fourth group member list, and the seventh subgroup management information includes the fifth group member list.
20. The method according to claim 19, characterized in that, The first communication application also includes a fifth member, and the method further includes: The first electronic device receives a second join message sent by the fifth electronic device via the D2D communication technology, wherein the fifth electronic device is the device of the fifth member. In response to the second join message, if the first electronic device determines that the number of members in the first cluster is less than a second preset number, the first electronic device adds the fifth member to the first cluster.
21. The method according to claim 19 or 20, characterized in that, The method further includes: The first electronic device receives the seventh subgroup management information sent by the second electronic device via the D2D communication technology; If the first condition is met, the first electronic device sends a third change subgroup leader request to the second electronic device through the D2D communication technology. The third change subgroup leader request is used to instruct the second electronic device to be a subgroup member of the second real-time intercom subgroup. The first electronic device sends eighth subgroup management information to the devices of other members in the first chat group through the D2D communication technology. The eighth subgroup management information includes the list of members of the sixth group. The first electronic device receives the fourth subgroup member information sent by the second electronic device through the D2D communication technology. The fourth subgroup member information includes the number of members in the second real-time intercom subgroup who have D2D communication capability with the second electronic device.
22. The method according to claim 21, characterized in that, The first condition includes any one or more of the following: The number of members in the fourth group member list is greater than the number of members in the fifth group member list; the time when the first electronic device sends the sixth subgroup management information is earlier than the time when the second electronic device sends the seventh subgroup management information; and the sum of the number of members in the fourth group member list and the number of members in the fifth group member list is less than a first preset number.
23. The method according to any one of claims 1-22, characterized in that, The first information includes any of the following: voice message, text, image, file, link, GIF, or video.
24. An electronic device, specifically a first electronic device, characterized in that: The first electronic device includes: one or more processors and one or more memories, wherein the one or more memories are coupled to the one or more processors, and the one or more memories are used to store a computer program, which, when the one or more processors execute the computer program, performs the device communication method as described in any one of claims 1-23.
25. A computer-readable storage medium, characterized in that, Includes instructions that, when executed by a processor, implement the device communication method as described in any one of claims 1-23.
26. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the device communication method as described in any one of claims 1-23.
27. A chip system, characterized in that, It includes a processing circuit and an interface circuit, wherein the interface circuit is used to receive code instructions and transmit them to the processing circuit, and the processing circuit is used to execute the code instructions to perform the device communication method as described in any one of claims 1-23.