Message group sending method, storage medium and electronic device
By dynamically applying for multicast identification in the satellite navigation system, the terminal can send messages to any recipient group, solving the problem of low message transmission efficiency in the prior art and achieving efficient message delivery.
Patent Information
- Application Number
- CN202310830961.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-06
- Publication Date
- 2025-01-07
AI Technical Summary
In the existing satellite navigation system, the terminal cannot send messages to any recipients in multicast mode, resulting in low message sending efficiency.
By applying for a dynamically generated multicast identifier to the satellite, the terminal can send messages to any recipient group to improve the message sending efficiency.
The ability of the terminal to send messages to any recipients in a multicast manner in the satellite navigation system is realized, the message sending efficiency is improved, and the limitation of fixed multicast identification is avoided.
Smart Images

Figure CN119277328A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present disclosure relate to the field of communications, and in particular, to a group message sending method, a storage medium, and an electronic device. Background Art
[0002] The main task of the satellite navigation system is positioning and navigation, and the communication channel resources are relatively small. Therefore, the frequency of the terminal sending messages through the satellite navigation system is limited. For example, for the Beidou satellite navigation system, the Beidou message of general civilian terminals only supports sending one message per minute. When a user needs to send a Beidou message to multiple recipients, if the messages are sent one by one according to the above frequency, the message sending efficiency is very low. Summary of the invention
[0003] The embodiments of the present disclosure provide a method for group sending messages, a storage medium and an electronic device, so as to at least solve the problem that a terminal in an existing satellite navigation system cannot group send messages to any recipients in a multicast manner.
[0004] According to an embodiment of the present disclosure, a method for group sending a message is provided, which is applied to a terminal side, and the method includes: applying for a first multicast identifier from a satellite; and based on the applied first multicast identifier, group sending a first message to multiple recipients corresponding to the first multicast identifier.
[0005] According to another embodiment of the present disclosure, a method for group sending of messages is also provided, which is applied to the satellite side, and includes: allocating a first multicast identifier to a terminal; and based on the first multicast identifier, group sending a first message from the terminal to multiple recipients corresponding to the first multicast identifier.
[0006] According to another embodiment of the present disclosure, a computer-readable storage medium is provided, in which a computer program is stored. When the computer program is run, the method steps in the above embodiment are executed.
[0007] According to another embodiment of the present disclosure, an electronic device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor executes the computer program to implement the method steps in the above embodiment.
[0008] In the above-mentioned embodiment of the present disclosure, the terminal applies for a multicast identifier from the satellite, and can send messages to any group of recipients based on the applied multicast identifier, thereby solving the problem in the existing satellite navigation system that the terminal cannot send messages to any group of recipients in a multicast manner, thereby achieving the effect of improving the efficiency of message sending. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Figure 1It is a schematic diagram of a hardware structure block diagram of a terminal for executing the group message sending method according to an embodiment of the present disclosure;
[0010] Figure 2 is a flow chart of a method for group messaging based on a sending terminal according to an embodiment of the present disclosure;
[0011] Figure 3 is a flow chart of a method for group messaging based on a sending terminal according to another embodiment of the present disclosure;
[0012] Figure 4 is a flow chart of a method for group messaging based on a sending terminal according to yet another embodiment of the present disclosure;
[0013] Figure 5 is a flow chart of a method for group messaging based on a sending terminal according to another embodiment of the present disclosure;
[0014] Figure 6 is a flow chart of a method for group messaging based on a receiving terminal according to an embodiment of the present disclosure;
[0015] Figure 7 is a flowchart of a satellite-based group messaging method according to an embodiment of the present disclosure;
[0016] Figure 8 is a flow chart of a method for group messaging based on a receiving terminal according to another embodiment of the present disclosure;
[0017] Fig. 9 is a flow chart of a method for group messaging based on a receiving terminal according to yet another embodiment of the present disclosure;
[0018] Fig.10 is a flow chart of a method for group messaging based on a receiving terminal according to another embodiment of the present disclosure;
[0019] Fig.11 It is a schematic diagram of a structural block diagram of a group messaging device according to an embodiment of the present disclosure;
[0020] Fig.12 is a schematic structural block diagram of a device for sending messages to a group according to another embodiment of the present disclosure;
[0021] Fig.13 is a schematic structural block diagram of a group messaging device according to another embodiment of the present disclosure;
[0022] Fig.14 is a schematic diagram of a process of sending a group message according to an embodiment of the present disclosure;
[0023] Fig.15 It is a flowchart of receiving a group message according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0024] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings and in combination with the embodiments.
[0025] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
[0026] The method steps provided in the embodiments of the present disclosure can be executed in a mobile terminal, a computer terminal or a similar computing device. Taking running on a mobile terminal as an example, Figure 1 1 is a hardware structure block diagram of a mobile terminal for executing the group message sending method of an embodiment of the present disclosure. Figure 1 As shown, the mobile terminal may include at least one ( Figure 1 Only one is shown in the figure) a processor 102 (the processor 102 may include but is not limited to a microprocessor or a processing device such as a programmable logic device (Field Programmable Gate Array, FPGA)) and a memory 104 for storing data, wherein the mobile terminal may also include a transmission device 106 and an input / output device 108 for communication functions. It can be understood by those skilled in the art that Figure 1 The structure shown is only for illustration and does not limit the structure of the mobile terminal. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.
[0027] The memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the method for sending messages in the group in the embodiment of the present disclosure. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, to implement the above method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may include a memory remotely arranged relative to the processor 102, and these remote memories may be connected to the mobile terminal via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0028] The transmission device 106 is used to receive or send data via a network system. Examples of the above-mentioned network system may include a satellite navigation system. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, referred to as NIC), which can communicate with a satellite providing satellite navigation services through a ground station. In one example, the transmission device 106 can be a radio frequency (Radio Frequency, referred to as RF) module, which is used to communicate with a satellite navigation system wirelessly.
[0029] It should be noted that the method provided in the embodiment of the present disclosure may also be operated on a computer device on the satellite side, and the computer device is also configured with similar functional components capable of communicating with the above-mentioned mobile terminal.
[0030] In the satellite navigation system, a fixed multicast identifier (Identity, ID) will be written into the subscriber identity module (Subscriber Identity Module, SIM) card in advance, and group messages will be sent through multicast. For example, a fleet includes a command ship and a task ship. The entire fleet shares the same multicast identifier. The command ship can efficiently communicate messages with all subordinate task ships through multicast. However, in this way, the terminal can only send messages to a fixed group of people through a fixed multicast identifier, and cannot send messages to any recipient group through multicast, resulting in low message sending efficiency. In this regard, the present embodiment provides a method for sending messages to the above-mentioned mobile terminal. In this method, a multicast identifier can be applied for from the satellite. The multicast identifier is generated according to the needs of the terminal and is not fixed. Therefore, the multicast identifier can be used to send messages to any recipient group as needed.
[0031] Figure 2 is a flow chart of a method for group sending a message based on a sending terminal according to an embodiment of the present disclosure, such as Figure 2 As shown, the process may include the following steps:
[0032] Step S202, applying for a first multicast identifier from the satellite;
[0033] In this embodiment, when the terminal needs to send a message to multiple recipients through the satellite navigation system, the terminal can first dynamically apply for a multicast identifier, i.e., a first multicast identifier, from the satellite providing the message service, so as to send group messages to multiple recipients through the applied multicast identifier, thereby improving the efficiency of message sending.
[0034] Compared with the method in the related art where a fixed multicast identifier is written into the SIM card of the terminal in advance, the terminal in this embodiment can dynamically apply for a multicast identifier when it needs to use the multicast identifier. The dynamic application means that the terminal initiates an application to the satellite when necessary, and the satellite generates a multicast identifier based on the real-time request of the terminal. The multicast identifier generated in this way can be used to send messages to any recipient.
[0035] In an exemplary embodiment, the message is one or more types of data such as short message, audio, video, text, image, etc.
[0036] Before step S202 of this embodiment, Figure 3 As shown, the method may also include the following steps:
[0037] Step S2001, locally query whether there is a target multicast identifier corresponding to the multiple recipients in the second multicast identifier, if there is a target multicast identifier corresponding to the multiple recipients in the second multicast identifier, execute step S2002, otherwise execute step S2003.
[0038] In an exemplary embodiment, the second multicast identifier is a plurality of multicast identifiers that are pre-allocated locally to the terminal by the satellite navigation system through the air interface, and written into the SIM card of the terminal or the security area on the terminal. When the terminal needs to send a message to multiple recipients through the satellite navigation system, it first queries whether there are target multicast identifiers corresponding to the multiple recipients in the second multicast identifiers of the terminal.
[0039] In this embodiment, the satellite navigation system writes the second multicast identifier via the air interface and can write a non-fixed multicast identifier according to actual needs, thereby avoiding the problem in the related art that the multicast identifier cannot be changed after being written in advance on the card writer.
[0040] Step S2002: Set the recipient identifier in the first message to a target multicast identifier corresponding to the multiple recipients; encrypt the first message using a key of the target multicast identifier corresponding to the multiple recipients, and send the encrypted first message to the satellite, so as to multicast the first message to the multiple recipients via the satellite.
[0041] Step S2003: locally query whether there is an idle multicast identifier in the second multicast identifier; if there is an idle multicast identifier in the second multicast identifier, execute step S2004; otherwise, execute step S202.
[0042] Step S2004: set the recipient identifier in the first message to the idle multicast identifier, and insert the identification information of the multiple recipients into the message header of the first message; encrypt the first message using a key corresponding to the idle multicast identifier, and send the encrypted first message to the satellite, so as to multicast the first message to the multiple recipients via the satellite.
[0043] In this embodiment, after the idle multicast identifier is used to send the first message, the used idle multicast identifier will no longer belong to the idle multicast identifier, and its usage status is modified to the used status, that is, the used idle multicast identifier is equivalent to the above-mentioned target multicast identifier corresponding to multiple recipients.
[0044] In some exemplary embodiments, when there is neither a target multicast identifier corresponding to the multiple recipients nor an idle multicast identifier in the second multicast identifier, step S202 may be executed to apply for a first multicast identifier from the satellite.
[0045] In one embodiment, the terminal can dynamically apply for a multicast identifier from the satellite by sending a request message. However, considering that the terminal has a message sending frequency limit, if the terminal cannot find a multicast identifier corresponding to the recipient locally, the terminal can reuse the first message to be sent to the group to apply for a (first) multicast identifier from the satellite system. That is, the first message has two purposes, one is to send the message to the group, and the other is to apply for a (first) multicast identifier.
[0046] In some exemplary embodiments, the locally stored second multicast identifier is queried, and when neither the target multicast identifier corresponding to the plurality of recipients nor an idle multicast identifier exists in the second multicast identifier, the first multicast identifier is applied to the satellite, wherein the second multicast identifier is pre-allocated by the terminal receiving satellite and written into the user identity card of the terminal or the security area of the terminal, such as Figure 4 As shown, the process includes the following steps:
[0047] Step S2021, setting the recipient identifier in the first message as a universal multicast identifier to apply for the first multicast identifier from the satellite, wherein the universal multicast identifier is a specific identifier pre-set between the terminal and the satellite for applying for a multicast identifier from the satellite.
[0048] That is, when the recipient identifier in the first message is set as a universal multicast identifier, the first multicast identifier can be dynamically applied to the satellite providing the message service through the first message.
[0049] Step S2022: insert identification information of multiple recipients into the message header of the first message, encrypt the first message using a key corresponding to a universal multicast identifier, and send the encrypted first message to the satellite to apply for a first multicast identifier from the satellite.
[0050] In this embodiment, the function of the universal multicast identifier includes: applying for a new multicast identifier from the satellite. For example, the terminal and the satellite system pre-agreed to use 0xFFFFFF as the universal multicast identifier. Group members are multiple recipients corresponding to the same multicast identifier, and group member information includes a user identifier or a user mobile phone number of the satellite system.
[0051] In one embodiment, the terminal may use the applied multicast identifier to send the first message to multiple recipients corresponding to the multicast identifier via the satellite, thereby improving the sending efficiency of the first message.
[0052] Step S204: based on the applied first multicast identifier, send a first message to multiple recipients corresponding to the first multicast identifier.
[0053] like Figure 5 As shown, after step S204, the method may further include the following steps:
[0054] Step S2041, monitoring whether an instruction to update multicast information sent by the satellite is received; when an instruction to update multicast information sent by the satellite is received, writing the first multicast identifier carried in the instruction to update multicast information and the identifier information of the recipient corresponding to the first message into the user identity card of the terminal or the security area of the terminal.
[0055] That is, in order to further improve efficiency, if the satellite receives the first message carrying the universal multicast identifier, it allocates a new multicast identifier to the sender's terminal, and based on the new multicast identifier and the identification information of multiple recipients carried in the message header of the first message, sends the message to the multiple recipients. The satellite sends an instruction to update the multicast information to the sender's terminal and the multiple recipients corresponding to the first message, wherein the instruction to update the multicast information carries the new multicast identifier and the corresponding group member information.
[0056] Figure 6 is a flow chart of a method for group sending a message based on a receiving terminal according to an embodiment of the present disclosure. The method is run on a receiving terminal. In the method, the receiving terminal receives a message sent by a sending terminal via a satellite. Figure 6 The method shown may include the following steps:
[0057] Step S602, monitoring whether a second message sent by other terminals via satellite is received; if the second message is received, decrypting the second message.
[0058] Step S604: Display the decrypted content of the second message, the multicast identifier corresponding to the second message, and the identifier information of the recipient carried in the second message on the display interface of the terminal.
[0059] For example, the content of the received second message, the multicast identifier corresponding to the second message, and the identifier information of the recipient carried in the second message are displayed in the display interface of the terminal, so that the recipient can reply to the group message efficiently and conveniently.
[0060] In an exemplary embodiment, the identification information of the recipient may be an agreed user ID or mobile phone number.
[0061] In one embodiment, in a group chat mode, each member can query all member information in the group, such as user ID or mobile phone number.
[0062] Figure 7 is a flow chart of a method for group sending messages according to another embodiment of the present disclosure, which method can be run on a satellite device that provides a message service, such as Figure 7 As shown, the method may include the following steps:
[0063] Step S702: Allocate a first multicast identifier to the terminal.
[0064] In this embodiment, the satellite may dynamically allocate a multicast identifier to the terminal according to the request of the terminal, for example, Figure 8 As shown, in order to further improve the efficiency of sending messages, step S702 may include the following steps:
[0065] Step S7021, receiving a first message from a terminal;
[0066] Step S7022: When the recipient identifier of the first message is set as a universal multicast identifier, the satellite allocates the first multicast identifier to the terminal. At this time, the universal multicast identifier includes: applying for a new multicast identifier from the satellite, wherein the universal multicast identifier is a specific identifier pre-agreed between the satellite and the terminal, so as to indicate that the first message carrying the characteristic identifier is also used as a request message for applying for the first multicast identifier.
[0067] Step S7023: Send an instruction for updating multicast information to the terminal and multiple recipients corresponding to the first message, wherein the instruction for updating multicast information carries the first multicast identifier and the identifier information of the recipients corresponding to the first message.
[0068] Step S704: based on the first multicast identifier, the first message from the terminal is group-sent to multiple recipients corresponding to the first multicast identifier.
[0069] After the satellite allocates a new multicast identifier to the terminal, a message is sent to multiple recipient groups corresponding to the multicast identifier via the satellite.
[0070] like Fig. 9 As shown, before step S702, the method may further include:
[0071] Step S700: pre-allocate a second multicast identifier for the terminal, and write the second multicast identifier into a user identity card of the terminal or a security area of the terminal.
[0072] In an exemplary embodiment, the second multicast identifier is written into a user identity card of the terminal or a security area of the terminal by means of an air interface.
[0073] like Fig.10 As shown, after step S702, the method further includes:
[0074] Step S7041: When the recipient identifier in the first message is a multicast identifier that has been allocated to the terminal and corresponds to the multiple recipients, the satellite sends the first message to the recipients corresponding to the multicast identifier in a multicast manner.
[0075] Step S7042, when the recipient identifier in the first message is an idle multicast identifier allocated to the terminal, and the message header of the first message carries the identification information of the recipients to which the first message is sent, the satellite sends the first message in a multicast manner to the recipients carried in the message header of the first message.
[0076] In one embodiment, the satellite sends an instruction to update the multicast information to the terminal and multiple recipients corresponding to the message, wherein the instruction to update the multicast information carries the multicast identifier and corresponding group member information.
[0077] In one embodiment, the satellite can pre-allocate a multicast identifier for the terminal. Unlike the related art, in which a pre-allocated fixed multicast identifier is written into the SIM card of the terminal, in the embodiment of the present disclosure, the allocated multicast identifier is written into the user identity card of the terminal or the security area of the terminal through an air interface. Therefore, when the satellite receives a message from the terminal, the satellite can adopt different processing methods according to the state of the multicast identifier in the message. For example, when the recipient identifier in the message is a used multicast identifier that has been allocated to the terminal, the satellite sends the message in a multicast manner to the group members corresponding to the multicast identifier. When the recipient identifier in the message is an idle multicast identifier that has been allocated to the terminal, and the message header of the message carries the identification information of the group members (recipients) to whom the message is sent in a group, the satellite sends the message in a multicast manner to the group members (recipients) carried in the message header of the message.
[0078] In one embodiment, after allocating the first multicast identifier to the terminal, the method further includes: sending an instruction to update multicast information to the terminal and multiple recipients corresponding to the first message, wherein the instruction to update the multicast information carries the first multicast identifier and the recipient identification information corresponding to the first message.
[0079] In one embodiment, when the recipient identifier in the first message is a multicast identifier that has been allocated to the terminal and corresponds to the multiple recipients, the satellite sends the first message to the recipients corresponding to the multicast identifier in a multicast manner.
[0080] In one embodiment, when the recipient identifier in the first message is an idle multicast identifier allocated to the terminal, and the message header of the first message carries identification information of recipients to which the first message is sent, the satellite sends the first message in a multicast manner to the recipients carried in the message header of the first message.
[0081] In this embodiment, after the idle multicast identifier is used to send the first message, the used idle multicast identifier will no longer be an idle multicast identifier, and its use status is modified to a used status, that is, the used idle multicast identifier is equivalent to the multicast identifier corresponding to the multiple recipients. In one embodiment, before the satellite receives the first message from the terminal, it also includes: pre-allocating a second multicast identifier for the terminal, and writing the second multicast identifier into the user identity card of the terminal or the security area of the terminal through the air interface.
[0082] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present disclosure, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as a read-only memory / random access memory (ROM / RAM), a disk, or an optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present disclosure.
[0083] In this embodiment, a group messaging device is also provided, which is used to implement the above-mentioned embodiment and preferred implementation mode, respectively, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware is also possible and conceivable.
[0084] Fig.11 is a structural block diagram of a group message sending device according to an embodiment of the present disclosure, the device is located in a terminal, such as Fig.11 As shown, the terminal-side group messaging device 100 may include an application module 10 and a sending module 20 .
[0085] An application module 10, used for applying for a first multicast identifier from a satellite;
[0086] The first sending module 20 is configured to send a first message to multiple recipients corresponding to the first multicast identifier based on the applied first multicast identifier.
[0087] In this embodiment, when the terminal needs to send a message to multiple recipients through the satellite navigation system, the terminal can first dynamically apply for a (first) multicast identifier from the satellite providing the message service through the application module 10, and then send a group message to multiple recipients based on the applied (first) multicast identifier through the sending module 20, thereby improving the message sending efficiency.
[0088] In an exemplary implementation, the device also includes: a query module, used to locally query whether there is a multicast identifier corresponding to the multiple recipients in the second multicast identifier, wherein the second multicast identifier is pre-assigned by the satellite received by the terminal and written into the user identity card of the terminal or the security area of the terminal through the air interface; if there is no multicast identifier corresponding to the multiple recipients in the second multicast identifier, the terminal will dynamically apply for the first multicast identifier from the satellite through the application module 10.
[0089] In another embodiment, if there is no multicast identifier corresponding to multiple recipients in the second multicast identifier, the query module is also used to locally query whether there is an idle multicast identifier in the second multicast identifier. If there is no idle multicast identifier locally in the terminal, the terminal applies for a multicast identifier from the satellite providing message service through the application module 10.
[0090] In one embodiment, the application module 10 can dynamically apply for a multicast identifier from the satellite by sending an application message. However, considering that the terminal has a message sending frequency limit, if the terminal cannot find a multicast identifier corresponding to the recipient locally, the application module 10 can reuse the message to be sent to the group to apply for a multicast identifier from the satellite system. In other words, the message has two uses, one is to send the message to the group, and the other is to apply for a multicast identifier.
[0091] In one embodiment, when there is no multicast identifier corresponding to the multiple recipients in the second multicast identifier and there is no idle multicast identifier, the application module 10 is further used to set the recipient identifier in the first message to a universal multicast identifier to apply for the first multicast identifier from the satellite, wherein the universal multicast identifier is a specific identifier pre-set between the terminal and the satellite for applying for a multicast identifier from the satellite, and fill in the message header of the (first) message with group member information, wherein the universal multicast identifier is a specific identifier pre-set between the terminal and the satellite; encrypt the first message using a key corresponding to the universal multicast identifier, and send the encrypted first message to the satellite, so as to apply for the first multicast identifier from the satellite through the first message. In this embodiment, the universal multicast identifier includes: applying for a new multicast identifier from the satellite. For example, the terminal and the satellite system pre-agreed to use 0xFFFFFF as the universal multicast identifier. Among them, the group members are multiple recipients corresponding to the same multicast identifier, and the group member information includes the user identifier or user mobile phone number of the satellite system.
[0092] In an exemplary embodiment, the terminal on the message sending side further includes:
[0093] A first monitoring module, used for monitoring whether an instruction for updating multicast information sent by the satellite is received;
[0094] The updating module is used to write the first multicast identifier and the identification information of the recipient corresponding to the first message carried in the instruction for updating the multicast information into the user identity card of the terminal or the security area of the terminal when receiving the instruction for updating the multicast information sent by the satellite.
[0095] In an exemplary embodiment, the terminal on the message sending side further includes:
[0096] an encryption module, configured to, when a recipient identifier in the first message is set to a multicast identifier corresponding to the multiple recipients, encrypt the first message using a key of the multicast identifier corresponding to the multiple recipients, and send the encrypted first message to the satellite, so as to multicast the first message to the multiple recipients via the satellite.
[0097] In an exemplary embodiment, the encryption module is further used to, when there is an idle multicast identifier in the second multicast identifier, set the recipient identifier in the first message to the idle multicast identifier, and insert the identification information of the multiple recipients into the message header of the first message; encrypt the first message using a key corresponding to the idle multicast identifier, and send the encrypted first message to the satellite, so as to multicast the first message to the multiple recipients via the satellite.
[0098] In an exemplary embodiment, the terminal on the message receiving side, that is, the recipient in the above embodiment, includes:
[0099] The second monitoring module is used to monitor whether a second message sent by other terminals through the satellite is received; when the second message is received, the second message is decrypted and the decrypted second message is displayed in the terminal in a group chat manner.
[0100] In an exemplary embodiment, the terminal on the message receiving side further includes:
[0101] The display module is used to display the decrypted content of the second message, the multicast identifier corresponding to the second message, and the identifier information of the recipient carried in the second message on the display interface of the terminal.
[0102] Fig.12 is a structural block diagram of a message group sending device according to another embodiment of the present disclosure. The device is located on a satellite providing message services, such as Fig.12As shown, the satellite-side message group sending device 200 may include a distribution module 30 and a group sending module 40 .
[0103] The allocation module 30 is used to allocate a first multicast identifier to a terminal;
[0104] The group sending module 40 is used to group send the first message from the terminal to multiple recipients corresponding to the first multicast identifier based on the first multicast identifier, wherein the satellite on the satellite side is a satellite that can provide message services.
[0105] In an exemplary embodiment, when the recipient identifier of the first message is set to a universal multicast identifier, the first message segment also serves as a request message for the terminal to apply for the first multicast identifier.
[0106] In this embodiment, the allocation module 30 is also used to allocate a multicast identifier to the terminal according to the request of the terminal. For example, in order to further improve the efficiency of sending messages, in one embodiment, when the satellite receives a message from the terminal, when the recipient identifier in the first message is a universal multicast identifier, the allocation module 30 allocates the first multicast identifier to the terminal, wherein the universal multicast identifier is a specific identifier pre-set between the satellite and the terminal to indicate that the message carrying the specific identifier is also a request message for applying for a multicast identifier.
[0107] After the allocation module 30 allocates a new multicast identifier to the terminal, the group sending module 40 is further configured to send a message to multiple recipients corresponding to the multicast identifier.
[0108] In one embodiment, after allocating the multicast identifier to the terminal, the device 200 also includes a second sending module, which is used to send an instruction to update multicast information to the terminal and multiple recipients corresponding to the first message, wherein the instruction to update the multicast information carries the first multicast identifier and recipient identification information corresponding to the first multicast identifier.
[0109] In one embodiment, the satellite can pre-allocate a multicast identifier for the terminal. Unlike the related art, in which a pre-allocated fixed multicast identifier is written into the SIM card of the terminal, in the embodiment of the present disclosure, the allocated multicast identifier is written into the user identity card of the terminal or the security area of the terminal through an air interface. Therefore, when the satellite receives a message from the terminal, the device can adopt different processing methods according to the state of the multicast identifier in the message. For example, in the case where the recipient identifier in the message is a multicast identifier corresponding to the multiple recipients that has been allocated to the terminal, the message can be multicasted to the group members corresponding to the multicast identifier through the group sending module 40. In the case where the recipient identifier in the message is an idle multicast identifier that has been allocated to the terminal, and the message header of the message carries the group member information of the message group, the message can be multicasted to the group members carried in the message header of the message through the group sending module 40.
[0110] In one embodiment, the satellite-side message group sending device 200 also includes: a group sending module 40, which is also used to send the first message to the recipients with the multicast identifier in a multicast manner when the recipient identifier in the first message is a used multicast identifier assigned to the terminal.
[0111] In one embodiment, the receiving module is further used to receive the first message from the terminal; the group sending module 40 is further used to, when the recipient identifier in the first message is an idle multicast identifier allocated to the terminal and the message header of the first message carries the identification information of the recipients to which the first message is group sent, the satellite sends the first message in a multicast manner to the recipients carried in the message header of the first message.
[0112] In one embodiment, the allocation module 30 is also used to pre-allocate a second multicast identifier for the terminal before the satellite receives the first message from the terminal, and write the second multicast identifier into the user identity card of the terminal or the security area of the terminal, wherein the second multicast identifier includes the used multicast identifier allocated to the terminal and the idle multicast identifier allocated to the terminal.
[0113] In an exemplary embodiment, the second multicast identifier is written into a user identity card of the terminal or a security area of the terminal via an air interface.
[0114] It should be noted that the above modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.
[0115] To facilitate the understanding of the technical solutions provided by the present disclosure, embodiments of the present invention will be described in detail below in conjunction with specific scenarios.
[0116] The present disclosure provides a terminal device capable of implementing group messaging, such as Fig.13 As shown, the terminal device 600 includes: a query module 601, a message management module 602, a first sending module 20, a monitoring module 604, a multicast management module 605, and a display module 606. It should be noted that although the terminal device in this embodiment and the message group sending device in the foregoing text can both realize the group sending of messages, the terminal device in this embodiment and the message group sending device in the foregoing text are not completely the same in the division of functional modules. The functional modules of the terminal device in this embodiment will be described in detail below.
[0117] The query module 601 is used to query whether there is a corresponding multicast ID (multicast identifier) according to the identification information of the recipient.
[0118] The message management module 602 is used to manage the message. The first sending module 20 is used to send the message to the satellite providing the message service.
[0119] The monitoring module 604 includes a first monitoring module and a second monitoring module, which are used to monitor whether an instruction to update multicast information sent by the satellite is received, wherein the first monitoring module is set on the terminal device on the sending side, and the second monitoring module is set on the terminal device on the receiving side.
[0120] The multicast management module 605 is used to update the multicast ID and group member information locally.
[0121] In one embodiment, when an instruction to update multicast information is received from a satellite, the multicast management module 605 can update the multicast ID and group member information to the SIM card (as shown in Table 1-3) or the security area on the terminal according to, for example, the Beidou-3 Regional Short Message Communication User Terminal Interface Specification.
[0122] Table 1
[0123]
[0124] Table 2
[0125] Serial number name Length (byte) describe 1 Multicast ID 6 —— 2 Group password 8 ——
[0126] Table 3
[0127] Serial number name Length (byte) describe 1 Multicast ID 6 ——
[0128] Table 1 is the command message for updating the group ID value (UPDATA GROUP ID), which corresponds to the instruction for updating the multicast information in the above embodiment; Table 2 is the command message data for adding a new group ID, that is, when the P2 field in Table 1 is 00, the new group ID is executed, wherein the group member information can be filled in the group entry password field; Table 3 is the command message data for reclaiming the group ID.
[0129] The display module 606 is used to display the information of the current group message.
[0130] Fig.14 The method for sending group messages by the sender according to the embodiment of the present disclosure can be applied to the terminal device in the above embodiment. This embodiment is described with the sender as the execution subject. The process is as follows Fig.14 As shown, the following steps are included:
[0131] Step S1401: After the terminal captures a satellite providing a message service, the user clicks a send button to attempt to send a message to multiple recipients. The message is equivalent to the first message in the above embodiment.
[0132] Step S1402: Notify the query module 601 to query whether there is a corresponding multicast ID.
[0133] In an exemplary embodiment, the satellite navigation system can pre-allocate several (second) multicast identifiers to the terminal locally through the air interface and write them into the SIM card of the terminal or the security area on the terminal. Therefore, the query module 601 queries whether there is a corresponding multicast ID in the above-mentioned local storage area based on the identification information of the recipient filled in by the user.
[0134] Determination C1401: Determine whether there is a corresponding multicast ID. If yes, continue to execute step S1403; if no, execute step S1405.
[0135] In another embodiment, if no multicast identifiers corresponding to multiple recipients can be found in the above-mentioned local storage area, before dynamically applying for the (first) multicast identifier from the satellite, it is also possible to query whether there are any idle multicast identifiers in the local (second) multicast identifiers of the terminal. If there are no idle multicast identifiers in the (second) multicast identifiers, the terminal will apply for a (first) multicast identifier from the satellite providing the message service.
[0136] Step S1403: the notification message management module 602 fills in the recipient as the corresponding multicast ID, and uses the corresponding multicast key to encrypt the message content.
[0137] Step S1404: instruct the first sending module 20 to send a message to the satellite. Then, execute step S1409.
[0138] Considering that the sender has a transmission frequency limit, after step S1402, if the sender cannot find the corresponding multicast ID of the recipient locally, it will reuse the message in step S1404 to apply for a multicast ID from the satellite system. In other words, this message has two purposes, one is to send a group message, and the other is to apply for a multicast ID. That is, when the satellite receives a message filled in by the recipient as a universal multicast ID, it will allocate a new multicast ID to the sender's terminal.
[0139] Step S1405: the notification message management module 602 fills in the universal multicast ID as the recipient, fills in the group member information in the message header of the message, and encrypts the message content with the universal multicast key.
[0140] In this embodiment, the universal multicast ID is used to apply for a new multicast ID from the satellite.
[0141] For example, the terminal and the satellite system agree to use 0xFFFFFF as the universal multicast ID.
[0142] In this embodiment, the group member information may be user IDs or mobile phone numbers of multiple recipients.
[0143] Step S1406: instruct the first sending module 20 to send a message to the satellite.
[0144] In this embodiment, after receiving the message, the Beidou system allocates a multicast ID for the multicast, and sends instructions for updating the multicast information to the sender and the receiver respectively.
[0145] In the related art, the multicast ID is written into the SIM card in advance and is fixed. The consumer terminal cannot send messages to any group of recipients in a multicast manner. In this embodiment, the sender's terminal can dynamically apply for a multicast ID and send messages to any group of recipients in a multicast manner, thereby realizing the function of efficiently sending group messages.
[0146] Step S1407: instruct the monitoring module 604 to monitor whether an instruction to update the multicast information sent by the satellite is received.
[0147] Determination C1402: Determine whether an instruction to update multicast information is received.
[0148] If yes, continue to execute step S1408; if no, execute step S1407.
[0149] Step S1408: notify the multicast management module 605 to write the multicast ID and group members into the SIM card.
[0150] In one embodiment, for example, in the BeiDou-3 Regional Message Communication User Terminal Interface Specification issued by the BeiDou Office, the multicast information file in the SIM card is used to store multicast information, as shown in Table 4 (multicast information file) and Table 5 (multicast information file content).
[0151] Table 4
[0152]
[0153] Table 5
[0154]
[0155] In an exemplary embodiment, the multicast ID and the corresponding recipient (group member) information may be stored in a SIM card or in a secure area on a terminal, such as Android's TrustZone space, Qualcomm's Secure Processing Unit (SPU), etc.
[0156] For example, in this embodiment, after step S1408, the following multicast information is added:
[0157] Multicast ID: 05120001
[0158] Recipient identification information corresponding to the multicast ID: 15970513, 15970514
[0159] KeyID corresponding to the multicast ID: 1
[0160] Multicast ID status: 00
[0161] In the related art, the multicast ID is written into the SIM card in advance by a card writer and is fixed. In an embodiment, the terminal can dynamically write the multicast ID and group member information into the SIM card or a secure area on the terminal through an air interface.
[0162] Step S1409: This session ends.
[0163] In an exemplary embodiment, when the Beidou message service is just activated, the terminal will receive several multicast IDs assigned by the satellite system in advance and write them into the SIM card or the security area on the terminal. In this scenario, when the query module 601 cannot find the multicast ID corresponding to the recipient locally, the query module 601 first queries whether there is an idle (unused) multicast ID locally, and when there is an idle multicast ID, uses the multicast ID to send a group message, and fills in the group member information in the message header of the message (if there is no idle multicast ID, execute steps S1407 to S1409). If there is no idle multicast ID, execute steps S1407-S1409. After receiving the message, the satellite system sends an instruction to update the multicast information to the recipient, instructing the recipient to update the multicast ID and group member information, and changes the status of the multicast ID to "in use".
[0164] Fig.15 is a flow chart of a method for a receiver to receive a group message according to an embodiment of the present disclosure. The method can also be applied to the terminal device in the above embodiment. In this embodiment, the receiver is described as the execution subject. Fig.15 As shown, the method comprises the following steps:
[0165] Step S1501: notify the monitoring module 604 to monitor whether an instruction to update multicast information sent by the satellite is received.
[0166] Determination C1501: Determine whether an instruction to update multicast information is received.
[0167] If yes, continue to execute step S1502; if no, execute step S1501.
[0168] Step S1502: notify the multicast management module 605 to write the multicast ID and group members into the SIM card.
[0169] In the related art, the SIM card in the terminal can only store the multicast ID, and the group member information is only stored in the satellite or ground control station. In the embodiment, the satellite sends an instruction to update the multicast information to the terminal, and the terminal of the sender or the receiver can store the multicast ID and group member information in the SIM card or in a secure area on the terminal, thereby realizing the function of convenient group messaging.
[0170] Step S1503: notify the monitoring module 604 to monitor whether the group message sent by the satellite is received.
[0171] Determination C1502: Determine whether a group message is received. If yes, continue to step S1504; if no, proceed to step S1503.
[0172] Step S1504: the notification message management module 602 decrypts the content of the message.
[0173] Step S1505: Optionally, the notification query module 601 queries the identification information of the corresponding recipient according to the multicast ID of the message, so that the recipient can reply to the message efficiently and conveniently in a group chat manner.
[0174] Step S1506: the notification display module 606 displays the information of the message.
[0175] In one embodiment, the display module 606 is used to display the information of the group message, including: the content of the message, the multicast ID, and the identification information of the corresponding recipient.
[0176] In an exemplary embodiment, the display module 606 displays the above content in a group chat mode, so that the recipient can reply to the group message efficiently and conveniently. In the group chat mode, each member can query all member information in the group, such as user ID or mobile phone number.
[0177] Step S1507: This session ends.
[0178] The above embodiments of the present disclosure include but are not limited to: Beidou, Tiantong and other satellite communication systems and terminal equipment.
[0179] An embodiment of the present disclosure further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above method embodiments when running.
[0180] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0181] An embodiment of the present disclosure further provides an electronic device, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
[0182] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.
[0183] The examples in this embodiment can refer to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail here.
[0184] Obviously, those skilled in the art should understand that the above modules or steps of the present disclosure can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order than here, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. Thus, the present disclosure is not limited to any specific combination of hardware and software.
[0185] The above description is only a preferred embodiment of the present disclosure and is not intended to limit the present disclosure. For those skilled in the art, the present disclosure may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the principles of the present disclosure shall be included in the protection scope of the present disclosure.
Claims
1. A method for sending a message to a group, characterized in that: Applied to the terminal side, including: Apply for the first multicast identifier from the satellite; Based on the applied first multicast identifier, a first message is sent to multiple recipients corresponding to the first multicast identifier.
2. The method according to claim 1, characterized in that Before applying for the first multicast identifier from the satellite, the following steps are also included: locally querying whether there is a target multicast identifier corresponding to the multiple recipients in the second multicast identifier, wherein the second multicast identifier is pre-allocated by the satellite received by the terminal and written into the user identification card of the terminal or the security area of the terminal; When the second multicast identifiers do not contain target multicast identifiers corresponding to the multiple recipients, the first multicast identifier is requested from the satellite.
3. The method according to claim 2, characterized in that If there is no target multicast identifier corresponding to the plurality of recipients in the second multicast identifier, before applying for the first multicast identifier from the satellite, the method further includes: locally querying whether there is an idle multicast identifier in the second multicast identifier; In the case that the idle multicast identifier does not exist, applying for the first multicast identifier from the satellite.
4. The method according to claim 1, characterized in that: The method further comprises: Query the second multicast identifier stored locally, and if there is no target multicast identifier corresponding to the multiple recipients in the second multicast identifier and there is no idle multicast identifier, set the recipient identifier in the first message to a universal multicast identifier to apply for the first multicast identifier from the satellite, wherein the universal multicast identifier is a specific identifier pre-set between the terminal and the satellite for applying for a multicast identifier from the satellite; and the second multicast identifier is pre-allocated by the satellite and received by the terminal and written into a user identity card of the terminal or a security area of the terminal.
5. The method according to claim 4, characterized in that The step of setting the recipient identifier in the first message as a universal multicast identifier to apply for the first multicast identifier from the satellite includes: Inserting identification information of the multiple recipients into a message header of the first message; The first message is encrypted using a key corresponding to the universal multicast identifier, and the encrypted first message is sent to the satellite to apply for a first multicast identifier from the satellite.
6. The method according to claim 1, characterized in that After sending the first message to multiple recipients corresponding to the first multicast identifier, the method further includes: monitoring whether an instruction to update multicast information sent by the satellite is received; When receiving the instruction for updating multicast information sent by the satellite, the first multicast identifier and the identifier information of the recipient corresponding to the first message carried in the instruction for updating multicast information are written into the user identity card of the terminal or the security area of the terminal.
7. The method according to claim 2, characterized in that The method further comprises: When the second multicast identifier contains target multicast identifiers corresponding to the multiple recipients, setting the recipient identifiers in the first message to the target multicast identifiers corresponding to the multiple recipients; The first message is encrypted using a key of a target multicast identifier corresponding to the multiple recipients, and the encrypted first message is sent to the satellite, so as to multicast the first message to the multiple recipients via the satellite.
8. The method according to claim 3, characterized in that Also includes: In the case that the idle multicast identifier exists in the second multicast identifier, setting the recipient identifier in the first message to the idle multicast identifier, and inserting the identifier information of the multiple recipients into the message header of the first message; The first message is encrypted using a key corresponding to the idle multicast identifier, and the encrypted first message is sent to the satellite, so as to send the first message to the multiple recipients in a multicast manner through the satellite.
9. The method according to claim 1, characterized in that: Also includes: monitoring whether a second message sent by other terminals via the satellite group is received; When the second message is received, the second message is decrypted and the decrypted second message is displayed in the terminal in a group chat manner.
10. The method according to claim 9, characterized in that Displaying the decrypted second message in the terminal in a group chat manner includes: The decrypted content of the second message, the multicast identifier corresponding to the second message, and the identifier information of the recipient carried in the second message are displayed on the display interface of the terminal.
11. A method for sending a message to a group, characterized in that: Applied to the satellite side, including: Allocating a first multicast identifier to a terminal; The first message from the terminal is group-sent to multiple recipients corresponding to the first multicast identifier based on the first multicast identifier.
12. The method according to claim 11, characterized in that in, In the case that the recipient identifier of the first message is a universal multicast identifier, the first message also serves as a request message for the terminal to apply for the first multicast identifier.
13. The method according to claim 12, characterized in that In a case where the recipient identifier of the first message is a universal multicast identifier, allocating a first multicast identifier to a terminal includes: receiving the first message from the terminal; When the recipient identifier in the first message is a universal multicast identifier, the first multicast identifier is allocated to the terminal, wherein the universal multicast identifier is a specific identifier pre-set between the satellite and the terminal, so as to indicate that the first message carrying the characteristic identifier also serves as a request message for applying for the first multicast identifier.
14. The method according to claim 11, characterized in that After allocating the first multicast identifier to the terminal, the method further includes: An instruction for updating multicast information is sent to the terminal and multiple recipients corresponding to the first message, wherein the instruction for updating multicast information carries the first multicast identifier and identification information of recipients corresponding to the first message.
15. The method according to claim 11, characterized in that Before allocating the first multicast identifier to the terminal, the method further includes: In the case where the recipient identifier in the first message is a target multicast identifier that has been allocated to the terminal and corresponds to the multiple recipients, the satellite sends the first message to the recipients corresponding to the multicast identifier in a multicast manner.
16. The method according to claim 11, characterized in that Before allocating the first multicast identifier to the terminal, the method further includes: When the recipient identifier in the first message is an idle multicast identifier allocated to the terminal, and the message header of the first message carries identification information of recipients to which the first message is sent, the satellite sends the first message in a multicast manner to the recipients carried in the message header of the first message.
17. The method according to claim 15 or 16, characterized in that Before the satellite receives the first message from the terminal, the method further includes: A second multicast identifier is allocated to the terminal in advance, and the second multicast identifier is written into a user identity card of the terminal or a security area of the terminal.
18. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, the steps of the method described in any one of claims 1 to 10 are implemented, or the steps of the method described in any one of claims 11 to 17 are implemented.
19. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the processor implements the steps of the method described in any one of claims 1 to 10, or implements the steps of the method described in any one of claims 11 to 17.