Short message control method, system, device, storage medium and program product

By using the marker code and the preset number of digits in the SMS control system to determine the extension code and channel access number, and combining them into a custom SMS number, the problem of insufficient SMS number resources in the existing technology is solved, and the diversity of SMS numbers and the improvement of resource utilization are achieved.

CN115866536BActive Publication Date: 2025-09-30ALIBABA (CHINA) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211401071.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-09
Publication Date
2025-09-30
Estimated Expiration
2042-11-09

AI Technical Summary

Technical Problem

The existing SMS number resource management method cannot meet the growing user needs, and the existing solution cannot support customer-defined numbers, resulting in low SMS number resource utilization.

Method used

By receiving the user's identification code and the preset number of digits, the target extension code and channel access number corresponding to the user are determined, combined into a customized SMS number, and the number is carried when sending SMS messages, thereby achieving increased diversity and customization of SMS numbers.

Benefits of technology

It improves the customization and diversity of SMS numbers, improves the utilization rate of limited SMS number resources, and meets the diverse needs of users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115866536B_ABST
    Figure CN115866536B_ABST
Patent Text Reader

Abstract

The present application provides a text message control method, system, device, storage medium, and program product, wherein the method includes: receiving a downlink text message request sent by a user's first terminal, the downlink text message request carrying: downlink text message content, downlink recipient number, and user's tag code, the tag code being used to identify the user; determining the first target extension code and channel access number corresponding to the user based on the tag code and the number of digits of the preset number corresponding to the user; determining the channel access number, the first target extension code, and the tag code as the text message number of the downlink text message content, the number of digits of the text message number being equal to the preset number of digits; and sending a downlink text message to a second terminal pointed to by the downlink recipient number based on the text message number, the downlink text message carrying the text message number. The present application achieves an increased degree of customization of text message numbers and improves the utilization rate of limited text message number resources.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a text message control method, system, device, storage medium and program product. Background Art

[0002] Short Message Service (SMS) is a text or digital message sent or received directly by users via mobile phones or other telecommunications terminals. SMS is a telecommunications service that emerged with digital mobile communication systems. It transmits short text or digital messages via the mobile communication system's signaling channels and network. It is a non-real-time, non-voice data communication service. SMS messages can originate from mobile communication terminals (mobile phones), from mobile network operators' SMS platform servers, or from network service providers connected to mobile operators' SMS platforms.

[0003] Typically, the implementation of SMS services can include user-to-user methods, such as point-to-point SMS sending from a user terminal (such as a mobile phone used by a user) to other user terminals, and can also include methods from an SMS service platform to a user terminal, such as news media push SMS, marketing campaign notification information, or water, electricity, and gas payment SMS.

[0004] When SMS service platforms send messages to user terminals, they need to assign SMS numbers to the sending enterprise or individual users to distinguish the sender. SMS numbers, used to identify the source of SMS messages, typically include the operator's SMS channel number and a configurable number segment from the value-added telecommunications company. In practice, SMS service platforms typically use reserved one- to two-digit number segments to identify customers. This approach does not support customer-defined numbers, limits the number of customers that can be identified, and cannot meet the growing demand for SMS services. Another solution is to use a fixed, self-extending code length, but this approach imposes significant restrictions on customers and limits the degree of customer customization.

[0005] With the development of informatization, users have an increasing demand for SMS services. However, SMS number resources are limited, and the current SMS number resource management method can no longer meet the growing needs of users. Summary of the Invention

[0006] The main purpose of the embodiments of the present application is to provide a text message control method, system, device, storage medium and program product, which improve the customization level of text message numbers, increase the diversity of text message numbers, and improve the utilization rate of limited text message number resources.

[0007] In the first aspect, an embodiment of the present application provides a text message control method, including receiving a downlink text message request sent by a user's first terminal, the downlink text message request carrying: downlink text message content, downlink recipient number and the user's tag code, the tag code being used to identify the user; determining the first target extension code and channel access number corresponding to the user based on the tag code and the number of digits of the preset number corresponding to the user; determining the channel access number, the first target extension code and the tag code as the text message number of the downlink text message content, the number of digits of the text message number being equal to the number of digits of the preset number; sending the downlink text message to the second terminal pointed to by the downlink recipient number based on the text message number, the downlink text message carrying the text message number.

[0008] In one embodiment, determining the first target extension code and channel access number corresponding to the user based on the identification code and the preset number of digits corresponding to the user includes: selecting the first target extension code and channel access number corresponding to the user from a preset database based on the identification code and the preset number of digits corresponding to the user, the database including a plurality of extension code sets corresponding to the users.

[0009] In one embodiment, before selecting the first target extension code and channel access number corresponding to the user from a preset database based on the marking code and the preset number of digits corresponding to the user, the step further includes: determining whether the downlink SMS content is marked in a preset list; if the downlink SMS content is not marked in the preset list, executing the step of selecting the first target extension code and channel access number corresponding to the user from a preset database based on the marking code and the preset number of digits corresponding to the user.

[0010] In one embodiment, before determining the first target extension code and channel access number corresponding to the user based on the marking code and the preset number of digits corresponding to the user, it also includes: if the downlink SMS content is marked in the preset list, intercepting the downlink SMS request.

[0011] In one embodiment, before selecting the first target extension code and channel access number corresponding to the user from a preset database based on the tag code and the preset number of digits corresponding to the user, the method further includes: obtaining the preset number of digits and the number of tag code digits corresponding to multiple users; assigning at least one tag code to each user based on the number of digits of the tag code, wherein each tag code is bound to a signature of the user; determining the number of extension code digits corresponding to each user based on the preset number of digits and the number of digits of the tag code; and generating the extension code set corresponding to each user based on the number of digits of the extension code.

[0012] In one embodiment, generating the spreading code set corresponding to each user based on the number of spreading code bits includes: for a first user and a second user having different numbers of spreading code bits, when the corresponding number of spreading code bits is the same as the sum of the number of marker code bits, the spreading code of the first user and the spreading code of the second user have different numbers at the same position.

[0013] In one embodiment, in one of the spreading code sets, the channel access numbers corresponding to the spreading codes with the same number of bits have the same number of bits.

[0014] In one embodiment, after sending the downlink SMS to the second terminal pointed to by the downlink recipient number based on the SMS number, it also includes: receiving an uplink SMS request sent by the second terminal, the uplink SMS request carrying: uplink SMS content, and the SMS number of the uplink recipient; removing the channel access number corresponding to the uplink SMS from the SMS number to obtain a deleted number; searching for a target user matching the deleted number in a preset database, the database including a plurality of extension code sets corresponding to the users; and sending the uplink SMS content to the terminal corresponding to the target user.

[0015] In one embodiment, searching the preset database for a target user that matches the deleted number includes: comparing the deleted number with a set of extension codes in the database to determine a second target extension code that matches the deleted number; and determining a user corresponding to the second target extension code as the target user that matches the deleted number.

[0016] In one embodiment, comparing the pruned number with a set of spreading codes in the database to determine a second target spreading code that matches the pruned number includes: selecting a set of candidate spreading codes from the database based on the pruned number, wherein the sum of the number of bits of a candidate spreading code and the number of bits of a corresponding marker code in the set of candidate spreading codes is equal to the number of bits of the pruned number; and comparing the pruned number with the set of candidate spreading codes, and determining a candidate spreading code included in the pruned number as the second target spreading code.

[0017] In one embodiment, after finding the target user matching the deleted number in the preset database, it also includes: determining whether the uplink SMS content belongs to the preset type; if the uplink SMS content belongs to the preset type, marking the downlink SMS in the preset list.

[0018] In a second aspect, an embodiment of the present application provides a text message control device, comprising:

[0019] A first receiving module is configured to receive a downlink SMS request sent by a user's first terminal, wherein the downlink SMS request carries: downlink SMS content, downlink recipient number, and a marking code of the user, wherein the marking code is used to identify the user;

[0020] A selection module, configured to determine a first target extension code and a channel access number corresponding to the user according to the marking code and the number of digits of the preset number corresponding to the user;

[0021] a determination module, configured to determine the channel access number, the first target extension code, and the marker code as the SMS number of the downlink SMS content, wherein the number of digits of the SMS number is equal to the number of digits of the preset number;

[0022] The first sending module is configured to send the downlink SMS to the second terminal pointed to by the downlink recipient number based on the SMS number, wherein the downlink SMS carries the SMS number.

[0023] In one embodiment, the selection module is used to select the first target extension code and channel access number corresponding to the user from a preset database based on the identification code and the preset number of digits corresponding to the user, and the database includes multiple extension code sets corresponding to the users.

[0024] In one embodiment, it further includes: a first judgment module, which is used to judge whether the downlink SMS content is marked in a preset list before selecting the first target extension code and channel access number corresponding to the user from a preset database based on the marking code and the preset number of digits corresponding to the user; if the downlink SMS content is not marked in the preset list, executing the step of selecting the first target extension code and channel access number corresponding to the user from the preset database based on the marking code and the preset number of digits corresponding to the user.

[0025] In one embodiment, it also includes: an interception module, which is used to intercept the downlink SMS request if the downlink SMS content is marked in the preset list before determining the first target extension code and channel access number corresponding to the user based on the marking code and the preset number of digits corresponding to the user.

[0026] In one embodiment, the method further includes: an allocation module, configured to obtain the preset number of digits and the number of marker code digits corresponding to multiple users before selecting the first target extension code and channel access number corresponding to the user from a preset database based on the marker code and the preset number of digits corresponding to the user; the allocation module allocates at least one marker code to each user based on the number of digits of the marker code, wherein each marker code is bound to a signature of the user; determines the number of extension code digits corresponding to each user based on the preset number of digits and the marker code digits; and generates the extension code set corresponding to each user based on the number of digits of the extension code.

[0027] In one embodiment, the allocation module is further configured to: for a first user and a second user having different numbers of extension code bits, when the corresponding number of extension code bits is the same as the sum of the number of marker code bits, the extension code of the first user and the extension code of the second user have different numbers at the same position.

[0028] In one embodiment, in one of the spreading code sets, the channel access numbers corresponding to the spreading codes with the same number of bits have the same number of bits.

[0029] In one embodiment, it also includes: a second receiving module, which is used to receive an uplink SMS request sent by the second terminal after the downlink SMS is sent to the second terminal pointed to by the downlink recipient number based on the SMS number, and the uplink SMS request carries: uplink SMS content and the SMS number of the uplink recipient; a deletion module, which is used to remove the channel access number corresponding to the uplink SMS from the SMS number to obtain the deleted number; a search module, which is used to find a target user matching the deleted number in the preset database, and the database includes a plurality of extension code sets corresponding to the users; a second sending module, which is used to send the uplink SMS content to the terminal corresponding to the target user.

[0030] In one embodiment, the search module is configured to compare the deleted number with a set of extension codes in the database to determine a second target extension code that matches the deleted number; and determine a user corresponding to the second target extension code as a target user that matches the deleted number.

[0031] In one embodiment, the search module is configured to select a set of candidate extension codes from the database based on the pruned number, wherein the sum of the number of bits of a candidate extension code and the number of bits of the corresponding marker code in the set of candidate extension codes is the same as the number of bits of the pruned number; compare the pruned number with the set of candidate extension codes, and determine the candidate extension code included in the pruned number as the second target extension code.

[0032] In one embodiment, it also includes: a second judgment module, which is used to determine whether the uplink SMS content belongs to the preset type after finding the target user matching the deleted number in the preset database; if the uplink SMS content belongs to the preset type, the downlink SMS is marked in the preset list.

[0033] In a third aspect, an embodiment of the present application provides a text message control system, comprising: a server, a first terminal, and a second terminal, wherein: the first terminal is used to send a downlink text message request through the server; the server is used to execute the method described in any of the above aspects to send the downlink text message to the second terminal; the second terminal is used to receive the downlink text message sent by the server.

[0034] In a fourth aspect, an embodiment of the present application provides an electronic device, including:

[0035] at least one processor; and

[0036] a memory communicatively coupled to the at least one processor;

[0037] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the electronic device to execute the method described in any one of the above aspects.

[0038] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the method described in any one of the above aspects is implemented.

[0039] In a sixth aspect, an embodiment of the present application provides a computer program product, including a computer program, which implements the method described in any of the above aspects when executed by a processor.

[0040] The SMS control method, system, device, storage medium and program product provided in the embodiments of the present application, when a user sends a downlink SMS request, selects a suitable extension code and a matching channel access number based on the user's tag code and the agreed preset number of digits, combines the channel access number, extension code and tag code as the SMS number of the downlink SMS, and then sends the downlink SMS content to the recipient's second terminal carrying the SMS number. In this way, the SMS number not only has a tag code that can be customized by the user, but is also configured with an extension code for marking the user, which greatly improves the customization level of the SMS number, increases the diversity of the SMS number, and improves the utilization rate of limited SMS number resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] The accompanying drawings are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present application, and together with the specification, are used to explain the principles of the present application. Obviously, the drawings described below are some embodiments of the present invention, and it is clear that those skilled in the art can derive other drawings based on these drawings without inventive effort.

[0042] Figure 1 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0043] Figure 2A A schematic diagram of a text message control system provided in an embodiment of the present application;

[0044] Figure 2B A schematic diagram of an application scenario architecture of a text message control system provided in an embodiment of the present application;

[0045] Figure 2C A schematic diagram of information timing interaction in an application scenario of a short message control system provided by an embodiment of the present application;

[0046] Figure 3 A flowchart of a text message control method provided in an embodiment of the present application;

[0047] Figures 4A to 4B A schematic diagram of an extension code allocation scenario provided in an embodiment of the present application;

[0048] 5A to 5D A schematic diagram of the range and number of extension code allocations provided in an embodiment of the present application;

[0049] Figure 6 A flowchart of a text message control method provided in an embodiment of the present application;

[0050] Figure 7 A schematic structural diagram of a text message control device provided in an embodiment of the present application.

[0051] The above drawings illustrate specific embodiments of the present application, which will be described in more detail below. These drawings and the textual description are not intended to limit the scope of the present application in any way, but rather to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments. DETAILED DESCRIPTION

[0052] Exemplary embodiments are described in detail herein, with examples illustrated in the accompanying drawings. When the following description refers to the drawings, identical numerals in different drawings represent identical or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with this application.

[0053] The term "and / or" in this article is used to describe the association relationship of associated objects, specifically indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone.

[0054] In order to clearly describe the technical solutions of the embodiments of the present application, the following definitions are given first:

[0055] Short Message Service: Short Message Service, abbreviated as SMS, is a text or digital message sent or received directly by users through mobile phones or other telecommunications terminals. The number of characters that users can receive and send in a text message each time is 160 English or numeric characters, or 70 Chinese characters.

[0056] SMS unsubscription: Marketing SMS messages are generally sent by SMS platforms in bulk. In order to respect the wishes of users, you can choose to accept or reject such SMS messages. Unsubscribing means refusing to receive such SMS messages.

[0057] SMS channel: SMS channel is an SMS sending interface directly provided by the operator. An SMS channel generally corresponds to a communication address and port, and can be marked with a channel access number to achieve the purpose of batch SMS sending and customized SMS sending to user-specified numbers.

[0058] SMS code: Currently commonly used SMS code generally starts with 106, which can be divided into operator-owned code and cross-regional code. Cross-regional code is mainly issued by relevant departments to value-added telecommunications service companies, such as the number segments starting with 1069 and 1068.

[0059] like Figure 1 As shown, this embodiment provides an electronic device 1, including: at least one processor 11 and a memory 12, Figure 1 In the example, a processor 11 and a memory 12 are connected via a bus 10. Memory 12 stores instructions executable by processor 11. The instructions are executed by processor 11, enabling electronic device 1 to perform all or part of the method described in the following embodiments, thereby improving the customization of SMS numbers and improving the utilization of limited SMS number resources.

[0060] In one embodiment, the memory 12 can be independent or integrated with the processor 11 .

[0061] In one embodiment, the electronic device 1 may be a mobile phone, a tablet computer, a laptop computer, a desktop computer, or a large computing system composed of multiple computers.

[0062] The embodiments of the present application can be applied to any field that requires SMS control.

[0063] In SMS services, the SMS service platform relies on operator agreements for communication. When sending messages to user terminals, the SMS service platform needs to assign SMS numbers to the sending enterprise or individual users to distinguish the sender. SMS numbers, used to identify the source of the SMS, generally include the operator's SMS channel number and the configurable number segments of the value-added telecommunications service company. In practical scenarios, SMS service platforms typically use reserved one- to two-digit number segments to identify customers. This approach does not support customer-defined numbers, and the limited number of customers that can be identified cannot meet the growing demand for SMS services. Another solution is to use a fixed, self-extending code length, but this approach has more customer restrictions and limits the degree of customer customization.

[0064] With the development of informatization, users have an increasing demand for SMS services. However, SMS number resources are limited, and the current SMS number resource management method can no longer meet the growing needs of users.

[0065] Uplink SMS refers to SMS messages sent to telecommunications service providers to customize certain services, complete certain inquiries, or handle certain business operations.

[0066] During the uplink SMS process, text messages sent by user terminals first reach the SMS service platform, which then forwards them to a specific communications service provider. However, current uplink SMS messages typically only carry the sender's number, making it impossible for the SMS service platform to quickly determine which service provider the message is being forwarded to, often hindering the uplink SMS process.

[0067] In order to solve the above problems, an embodiment of the present application provides a text message control solution, in which the text message number not only has a user-customizable marking code, but is also configured with an extension code for marking the user, which greatly improves the customization level of the text message number, increases the diversity of the text message number, and improves the utilization rate of limited text message number resources.

[0068] Figure 2A Schematic diagram of a short message control system 200 provided in an embodiment of the present application. Figure 2A As shown, the system includes: a server, a first terminal 220 and a second terminal 230, wherein:

[0069] The server can be a data platform that provides SMS sending and receiving services, such as a cloud-based SMS platform. In actual scenarios, a SMS platform may have multiple servers. Figure 2A In the example, one server is used.

[0070] The first terminal 220 is used to send a downlink SMS request through the server. The first terminal 220 can be a terminal of a business service provider that sends downlink SMS messages through an SMS platform. For example, if a company wants to send event message notifications or verification code SMS messages to its employees or members, it can register on the SMS platform, log in to the SMS platform using the first terminal 220, and then trigger a downlink SMS request. The first terminal 220 can be a computer, mobile phone, tablet or other device used by the company to log in to the SMS platform. There can also be multiple first terminals 220. Figure 2A In the figure, a first terminal 220 is taken as an example for illustration.

[0071] The second terminal 230 is used to receive downlink text messages sent by the server. The second terminal 230 can be a terminal of a user who receives downlink text messages, for example, it can be a terminal of an employee or member of the above-mentioned enterprise. The second terminal 230 can be a computer, mobile phone, tablet or other device used by the employee or member to receive downlink text messages. There can also be multiple second terminals 230. Figure 2A In the figure, a second terminal 230 is used as an example for illustration.

[0072] The server is used to execute all or part of the process of the method in the following embodiment to send the downlink SMS to the second terminal 230, so as to improve the customization of the SMS number and improve the utilization rate of limited SMS number resources.

[0073] The first terminal 220, the second terminal 230 and the server can transmit information via the Internet, so that the first terminal 220 can access data on the server. The first terminal 220, the second terminal 230 and / or the server 210 can all be implemented by the electronic device 1.

[0074] like Figure 2B As shown, it is a schematic diagram of an application scenario of a short message control system 200 provided in an embodiment of the present application, which mainly includes: a first terminal 220, a customer gateway, a short message platform, an operator backbone network, and a second terminal 230. Figure 2C FIG. 1 is a schematic diagram of information timing interaction in an application scenario of a short message control system 200 provided by an embodiment of the present application, wherein:

[0075] The customer gateway can be the gateway through which the user transmits downlink SMS requests. Even if it is the gateway where the first terminal 220 is located, the downlink SMS request (i.e. SMS sending) triggered by the user through the first terminal 220 will be transmitted to the SMS control system 200 through the customer gateway.

[0076] The SMS platform can be an online SMS service platform implemented by the above-mentioned server. The SMS platform can specifically include: an access system, a gateway, an extension code system, an unsubscription system, and a receipt system. In actual scenarios, a downlink SMS request triggered by a customer through the first terminal 220 is transmitted to the access system through the customer gateway. The access system can detect the content of the downlink SMS in the unsubscription system. If interception processing is required, the unsubscription system intercepts the downlink SMS request. If interception is not required, the downlink SMS request is transmitted to the gateway of the SMS platform. The gateway matches the downlink SMS with a suitable extension code through the extension code system, selects a suitable SMS channel in the operator's backbone network, and sends the downlink SMS to the designated recipient's second terminal 230 through the SMS channel, thus completing the downlink SMS sending process.

[0077] On the other hand, the user of the second terminal 230 can also reply to the above-mentioned downlink SMS. Assuming that the user of the second terminal 230 triggers an uplink SMS request to reply to the downlink SMS or unsubscribe from the SMS, the uplink SMS request will be transmitted to the gateway of the SMS platform through the SMS channel of the operator's backbone network. The gateway will determine the target extension code corresponding to the uplink SMS through the extension code system, determine the target customer and signature to be replied based on the target extension code, and then send the uplink SMS to the target customer's terminal through the receipt system. The main gateway can also detect the content of the uplink SMS. Assuming that the content of the uplink SMS is to reject a downlink SMS, for example, user Q of the second terminal 230 receives a downlink SMS of a membership activity notification from user S. User Q is not interested in this and chooses to reply "unsubscribe" as an uplink SMS to user S. The downlink SMS of user S's membership activity notification may be a group message. In order to avoid user Q receiving the downlink SMS again next time, this downlink SMS can be marked in the preset list of the unsubscription system. The next time user Q sends the downlink SMS to user S again, the unsubscription system will directly intercept the downlink SMS and will not send it to user S again. This ensures the experience of user S and improves the control performance of the SMS platform.

[0078] The following detailed description of some embodiments of the present application is provided in conjunction with the accompanying drawings. The following embodiments and features thereof may be combined with one another unless they conflict with each other. Furthermore, the sequence of steps in the following method embodiments is provided for illustrative purposes only and is not intended to be a strict limitation.

[0079] Please see Figure 3 , which is a text message control method of an embodiment of the present application, the method can be Figure 1 The electronic device 1 shown is used to perform and can be applied to Figures 2A to 2CIn the application scenario of the SMS control system 200 shown, the method is to improve the customization of SMS numbers, improve the utilization of limited SMS number resources, and improve the control performance of the SMS platform. The method includes the following steps:

[0080] Step 301: Receive a downlink SMS request sent by the user's first terminal 220. The downlink SMS request carries: downlink SMS content, downlink recipient number and user identification code.

[0081] In this step, the first terminal 220 can be a terminal of a business service provider that sends downlink SMS messages through an SMS platform. For example, if a company wants to send activity message notifications or verification code SMS messages to its employees or members, then the company is the user S of the first terminal 220. User S can register on the SMS platform, log in to the SMS platform using the first terminal 220, and then trigger a downlink SMS request. The SMS platform can receive the downlink SMS request through implementation. The downlink SMS content refers to the specific information sent by user S, such as member activity notification content, verification code, etc. The downlink recipient number refers to the sending target of the downlink SMS. For example, if user S sends the downlink SMS to his member user Q, the downlink recipient number refers to the number of user Q, such as user Q's mobile phone number.

[0082] The tag code is used to identify the user. It can be a signature code that identifies the user's signature. The user's signature refers to the signature of user S of the first terminal 220. A user S can have multiple signatures, and the signature can be carried in a downlink SMS message to indicate the source of the downlink SMS message to user Q. For example, user S owns a tea shop named "Zhang San" and has applied for multiple signatures on the SMS platform, such as "Zhang San" and "Zhang San Tea." The signature code is used to identify the user's signature. Each signature code is bound to a signature and can be customized by the user S, for example, "1234." The customizable signature code can significantly enhance the user S's experience and improve the interactivity of the SMS platform.

[0083] Step 302: Determine the first target extension code and channel access number corresponding to the user according to the identification code and the number of digits of the preset number corresponding to the user.

[0084] In this step, the number of digits in the preset number corresponding to the user is the total length of the SMS number for the downlink SMS that the user of the first terminal 220 has agreed in advance with the SMS platform. The number of digits in the preset number must meet the basic requirements of SMS. For example, in actual scenarios, the SMS code can only have a maximum of 20 digits, so the number of digits in the preset number must be less than or equal to 20.

[0085] In one embodiment, step 302 may specifically include: selecting a first target extension code and a channel access number corresponding to the user from a preset database according to the identification code and the number of digits of the preset number corresponding to the user.

[0086] In this embodiment, the database is preconfigured with extension code sets corresponding to multiple users, with one extension code set corresponding to each user. This means that a user S can have one or more extension codes, which are used to identify user S. Assuming user S has five extension codes, all five extension codes are used to identify user S. The channel access number is used to identify the SMS channel, i.e., the SMS channel number required for SMS transmission through the carrier's backbone network. For example, using a signature code as the identification code for user S, an appropriate first target extension code and channel access number can be selected from the database based on the signature code sent by user S in step 301 and the preset number of digits agreed upon by user S.

[0087] In one embodiment, before step 302, a database preconfiguration process may be included. Specifically, the process may include obtaining the number of preset number digits and marker code digits corresponding to multiple users. Based on the number of marker code digits, at least one marker code is assigned to each user, with each marker code being associated with a signature of the user. Based on the number of preset number digits and marker code digits, the process may determine the number of extension code digits corresponding to each user. Based on the number of extension code digits, an extension code set corresponding to each user is generated.

[0088] In this embodiment, appropriate extension code sets are pre-assigned to different users based on their needs and stored in a database. Taking a signature code as a user identification code as an example, a preset number of digits is first agreed upon with each user, and the number of custom signature code digits required by each user is determined. The number of signature code digits can be determined based on the number of signatures actually required by the user, with the principle being to ensure that the number of signature code digits is sufficient to identify each user's signatures. Then, based on the determined number of signature code digits, a signature code is assigned to each signature of the user. Once the preset number of digits is agreed upon and the number of signature code digits is determined, the number of extension code digits corresponding to each user can be enumerated, thereby generating a set of available extension codes for the user. This pre-assigned set of available extension codes allows each user to select and use the code directly when sending text messages, which is convenient and fast, and supports user-defined signature codes.

[0089] In actual scenarios, for a single SMS channel, the number of digits C of the corresponding channel access number is a fixed value. For the first type of user S, the number of digits X of the signature code is a fixed value. When the number of digits L of the agreed preset number is determined, the number of digits A of the extension code corresponding to the user is also a fixed value. In this way, in actual application scenarios, the SMS channel will form a resource pool that satisfies the following formula: C+A+X=L. Therefore, the corresponding A+X of the signature code digit X extended by the customer in different value scenarios can be enumerated. The specific allocation scenarios are as follows: Figure 4A and Figure 4B As shown, assuming L = 20, in order to meet the number of marked users, the minimum value of A is 2, then Figure 4A As shown, the possible allocation scenarios are as follows:

[0090] For the scenario where customer self-extension X=2:

[0091] A+X=10+2=12, adaptation channel access number C=8.

[0092] A+X=9+2=11, adaptation channel access number C=9.

[0093] A+X=8+2=10, adaptation channel access number C=10.

[0094] A+X=7+2=9, adaptation channel access number C=11.

[0095] A+X=6+2=8, adaptation channel access number C=12.

[0096] If A+X=5+2=7, the wildcard channel access number C=13. If A+X=4+2=6, the adapted channel access number C=14. If A+X=3+2=5, the adapted channel access number C=15. If A+X=2+2=4, the wildcard channel access number C=16. For the scenario where X=3 is self-added by the customer: A+X=9+3=12, the adapted channel access number C=8. If A+X=8+3=11, the adapted channel access number C=9. If A+X=7+3=10, the adapted channel access number C=10. If A+X=6+3=9, the adapted channel access number C=11. If A+X=5+3=8, the adapted channel access number C=12. If A+X=4+3=7, the adapted channel access number C=13. If A+X=3+3=6, the adapted channel access number C=14. A+X=2+3=5, adaptation channel access number C=15. For the scenario where the customer self-expands X=4: A+X=8+4=13, adaptation channel access number C=8. A+X=7+4=11, adaptation channel access number C=9. A+X=6+4=10, adaptation channel access number C=10. A+X=5+4=9, adaptation channel access number C=11. A+X=4+4=8, adaptation channel access number C=12. A+X=3+4=7, adaptation channel access number C=13. A+X=2+4=6, adaptation channel access number C=14. Figure 4B As shown, the achievable allocation scenarios are as follows: For the scenario where the customer self-expands X=5: A+X=7+5=12, adaptation channel access number C=8. A+X=6+5=11, adaptation channel access number C=9. A+X=5+5=10, adaptation channel access number C=10. A+X=4+5=9, adaptation channel access number C=11. A+X=3+5=8, adaptation channel access number C=12. A+X=2+5=7, adaptation channel access number C=13. For the scenario where the customer self-expands X=6: A+X=6+6=12, adaptation channel access number C=8. A+X=5+6=11, adaptation channel access number C=9. A+X=4+6=10, adaptation channel access number C=10. A+X=3+6=9, adaptation channel access number C=11. A+X=2+6=8, adaptation channel access number C=12.

[0097] For the scenario where customer self-extension X=7:

[0098] A+X=5+7=12, adaptation channel access number C=8.

[0099] A+X=4+7=11, adaptation channel access number C=9.

[0100] A+X=3+7=10, adaptation channel access number C=10.

[0101] A+X=2+7=9, adaptation channel access number C=11.

[0102] For the scenario where customer self-extension X=8:

[0103] A+X=4+8=12, adaptation channel access number C=8.

[0104] A+X=3+8=11, adaptation channel access number C=9.

[0105] A+X=2+8=10, adaptation channel access number C=10.

[0106] For the scenario where customer self-extension X=9:

[0107] A+X=3+9=12, adaptation channel access number C=8.

[0108] A+X=2+9=11, adaptation channel access number C=9.

[0109] For the scenario where customer self-extension X=10:

[0110] A+X=2+10=12, adaptation channel access number C=8.

[0111] In one embodiment, a spreading code set corresponding to each user is generated based on the number of spreading code bits, including: for a first user and a second user with different spreading code bits, when the sum of the corresponding spreading code bits and the number of marker code bits is the same, the spreading code of the first user and the spreading code of the second user have different numbers at the same position.

[0112] In this embodiment, taking the signature code as the user identification code, when assigning extension codes to users, if the sum of the number of digits in the extension codes corresponding to two users is the same as the sum of the number of digits in the signature code, that is, if the number A+X of the two users is the same, in order to avoid duplication and indistinguishability of numbers, the extension codes of the two users need to be staggered so that the extension codes of the first user and the second user have different numbers in the same position. For example, assuming the SMS code number of the first user is:

[0113] 10699999 (channel access number) + 90 (extension code) + 1234567890 (customer-defined signature code)

[0114] Assume that the SMS code of the second user is:

[0115] 10699999 (channel access number) + 901 (extension code) + 234567890 (customer-defined signature code)

[0116] It can be seen that the two SMS numbers mentioned above do not appear to be different intuitively. The sum of the number of extension code digits and signature code digits of the first user and the second user is 12. However, the number of extension code digits of the first user is 2, and the number of extension code digits of the second user is 3. If the first user's extension code is assigned 90, then if the first two digits of the second user's extension code are also assigned 90, confusion will occur, and it will be impossible to distinguish the first user from the second user. Therefore, in this case, the first two digits of the second user's extension code should avoid 90, that is, they cannot be 90 anymore. This can avoid extension code confusion and improve the accuracy of SMS number identification in user identification.

[0117] Similarly, when the number of extension code bits is 4, 5, 6, 7, 8, 9, 10, 11, or 12, confusion also needs to be avoided, so the range of allocable extension codes will be stepped. If the sum of the number of extension code bits and signature code bits corresponding to two users is different, the correct code number can be directly determined based on the number of extension code bits and signature code bits.

[0118] In one embodiment, in a spreading code set, multiple spreading codes with the same number of bits correspond to channel access numbers with the same number of bits.

[0119] In this embodiment, taking the signature code as an example of a user identification code, the number of digits L in the preset number is pre-agreed, and the number of digits X in the signature code is customized by the user S of the first terminal 220. Therefore, when the channel access number of the SMS channel is determined, the number of digits in the corresponding extension code is also determined. In actual use, multiple extension codes with the same number of digits correspond to the same channel access number digits. In this way, when the channel access number has one more digit, the extension code can have one less digit, and when the channel access number has one less digit, the extension code can have one more digit. That is, the number of digits in the extension code can change with the number of digits in the access code, fully utilizing limited number resources and avoiding resource waste.

[0120] Assume that the number of digits of the preset number agreed by user S is L=20, and the minimum values ​​of the extension code digit A and the signature code digit are 2 respectively. Figures 5A-5D As shown in FIG, when A+X takes different values, the corresponding extended code allocation range and quantity diagram provided in the embodiment of the present application are shown. The following examples are given:

[0121] exist Figure 5A In the example, when the sum of the number of extended code bits A and the number of signature code bits X is 4 bits: A+X=2+2, the range of assignable extended codes is "80-99", and the number of assignable extended codes is 20.

[0122] When the sum of the number of extension code bits A and the number of signature code bits X is 5, if A+X=2+3, the range of allocable extension codes is "80-99", and the number of allocable extension codes is 20. If A+X=3+2, the range of allocable extension codes is "700-799", and the number of allocable extension codes is 100.

[0123] When the sum of the number of extension code bits A and the number of signature code bits X is 6, if A+X=2+4, the range of allocable extension codes is "80-99", and the number of allocable extension codes is 20. If A+X=3+3, the range of allocable extension codes is "700-799", and the number of allocable extension codes is 100. If A+X=4+2, the range of allocable extension codes is "6000-6999", and the number of allocable extension codes is 1000.

[0124] When the sum of the number of extension code bits A and the number of signature code bits X is 7: when A+X=2+5, the range of allocable extension codes is "51-64", and the number of allocable extension codes is 14; when the range of allocable extension codes is "80-94", the number of allocable extension codes is 15, of which 95 is reserved for bank use. When A+X=3+4, the range of allocable extension codes is "650-719", and the number of allocable extension codes is 70. When A+X=4+3, the range of allocable extension codes is "7200-7659", and the number of allocable extension codes is 460. When A+X=5+2, the range of allocable extension codes is "79000-79999", and the number of allocable extension codes is 1000.

[0125] When the sum of the number of extension code bits A and the number of signature code bits X is 8 bits: When A+X=2+6, the range of allocable extension codes is "80-99", of which 95 is reserved for use by specific enterprises, such as banks. In this case, the number of allocable extension codes is 19. When A+X=3+5, the range of allocable extension codes is "700-799", and 795 is reserved for use by specific enterprises. The number of allocable extension codes is 99, of which 7 are reserved for use by specific enterprises in the range of "(0-6)95". When A+X=4+4, the range of allocable extension codes is "6500-6999", and the number of allocable extension codes is 500. In the case of 695X, in order to avoid confusion, the portion (10) of the range of "(0-6)95" that can be allocated when A+X=3+5 is reserved. When A+X=5+3, the allocable spreading code range is "63000-64999", and the number of allocable spreading codes is 2000. When A+X=6+2, the allocable spreading code range is "620000-629999", and the number of allocable spreading codes is 10,000 (W is the unit of ten thousand).

[0126] like Figure 5B As shown, when the sum of the number of extension code bits A and the number of signature code bits X is 9, when A+X=2+7, the allocable extension code range is "80-99", of which 95 is reserved for use by a specific enterprise, such as a bank, and the number of allocable extension codes is 19. When A+X=3+6, the allocable extension code range is "700-799", and 795 is reserved for use by a specific enterprise, the number of allocable extension codes is 99, of which 7 in the allocable extension code range "(0-6)95" can be reserved for use by specific enterprises, and 123 are reserved for use by specific departments. When A+X=4+5, the allocable spreading code range is "6500-6999," and the number of allocable spreading codes is 500. For the case of 695X, to avoid confusion, 10 codes are reserved that are easily confused with the "(0-6)95" range of spreading codes that can be allocated when A+X=3+6. Furthermore, 5 codes within the "6(5-9)95" range are reserved for specific users. When A+X=5+4, the allocable spreading code range is "63000-64999," and the number of allocable spreading codes is 2000. When A+X=6+3, the allocable spreading code range is "620000-629999," and the number of allocable spreading codes is 10,000. When A+X=7+2, the allocable spreading code range is "6100000-6199999," and the number of allocable spreading codes is 100,000.

[0127] When the sum of the number of extension code bits A and the number of signature code bits X is 10, and A+X=2+8, the allocable extension code range is "80-99", of which 95 is reserved for use by specific enterprises, such as banks, and the number of allocable extension codes is 19. When A+X=3+7, the allocable extension code range is "700-799", and 795 is reserved for use by specific enterprises, the number of allocable extension codes is 99, of which 7 in the allocable extension code range "(0-6)95" can be reserved for use by specific enterprises, and 123 are reserved for use by specific departments. When A+X=4+6, the allocable extension code range is "6500-6999", and the number of allocable extension codes is 500. For the case of 695X, to avoid confusion, the portion of the allocable extension code range "(0-6)95" in the case of A+X=3+6 is reserved, that is, 10 are reserved to avoid confusion. In addition, for the allocable extension code range "6(5-9)95", 5 are reserved for specific users, and for the allocable extension code range "(1-6)123", 6 are reserved for specific users. When A+X=5+5, the allocable extension code range is "63000-64999", and the number of allocable extension codes is 2000. Among them, 10 are reserved for specific users in the 63X95 segment, and 10 are reserved for specific users in the 64X95 segment. When A+X=6+4, the allocable extension code range is "620000-629999", and the number of allocable extension codes is 10,000. When A+X=7+3, the allocable extension code range is "6110000-6199999", and the number of allocable extension codes is 90,000. Among them, the 1,000 extension codes in the 6123XXX number segment that are confused with the above-mentioned case of A+X=6+4 can be reserved. When A+X=8+2, the allocable extension code range is "61000000-61099999", and the number of allocable extension codes is 100,000.

[0128] like Figure 5CAs shown, when the sum of the number of extension code bits A and the number of signature code bits X is 11, when A+X=2+9, the allocable extension code range is "80-99", of which 95 is reserved for use by a specific enterprise, such as a bank, and the number of allocable extension codes is 19. When A+X=3+8, the allocable extension code range is "700-799", and 795 is reserved for use by a specific enterprise, the number of allocable extension codes is 99, of which 7 in the allocable extension code range "(0-6)95" can be reserved for use by specific enterprises, and 123 are reserved for use by specific departments. When A+X=4+7, the allocable extension code range is "6500-6999", and the number of allocable extension codes is 500. For the case of 695X, to avoid confusion, the part of the allocable extension code range "(0-6)95" in the case of A+X=3+8 is reserved, that is, 10 are reserved to avoid confusion. In addition, for the allocable extension code range "6(5-9)95", 5 can be reserved for specific users, and for the allocable extension code range "(0-6)123", 7 can be reserved for specific users. When A+X=5+6, the allocable extension code range is "63000-64999", and the number of allocable extension codes is 2000. Among them, 10 in the 63X95 segment are reserved for specific users, 10 in the 64X95 segment are reserved for specific users, 1 in the 63123 segment is reserved for specific users, and 1 in the 64123 segment is reserved for specific users. In addition, 6 extension codes in the "(0-5)3123" segment are reserved for specific users, and 6 in the "(0-5)4123" segment are reserved for specific users.

[0129] When A+X=6+5, the range of allocable extension codes is "620000-629999", and the number of allocable extension codes is 10,000, of which 100 are reserved for the "62(00-99)95" number segment. When A+X=7+4, the range of allocable extension codes is "6150000-6199999", and the number of allocable extension codes is 50,000. When A+X=8+3, the range of allocable extension codes is "61400000-61499999", and the number of allocable extension codes is 100,000. When A+X=9+2, the range of allocable extension codes is "613000000-613999999", and the number of allocable extension codes is 1,000,000.

[0130] like Figure 5DAs shown, when the sum of the number of extension code bits A and the number of signature code bits X is 12 bits: when A+X=2+10, the allocable extension code range is "80-99", of which 95 are reserved for use by specific enterprises, such as banks, and the number of allocable extension codes is 19. When A+X=3+9, the allocable extension code range is "700-799", and 795 is reserved for use by specific enterprises, the number of allocable extension codes is 99, of which 7 in the allocable extension code range "(0-6)95" can be reserved for use by specific enterprises, and 123 are reserved for use by specific departments. When A+X=4+8, the allocable extension code range is "6500-6999", and the number of allocable extension codes is 500. For the case of 695X, to avoid confusion, the part of the allocable extension code range "(0-6)95" in the case of A+X=3+8 is reserved, that is, 10 extension codes are reserved to avoid confusion. In addition, for the allocable extension code range "6(5-9)95", 5 extension codes can be reserved for specific users, for the allocable extension code range "(0-6)123", 7 extension codes can be reserved for specific users, and for the "5(0-9)95" number segment, 10 extension codes can be reserved for specific users. When A+X=5+7, the allocable extension code range is "63000-64999", and the number of allocable extension codes is 2000. Among them, 10 in the 63(0-9)95 segment are reserved for specific users, 10 in the 64(0-9)95 segment are reserved for specific users, 1 in the 63123 segment is reserved for specific users, and 1 in the 64123 segment is reserved for specific users. In addition, 6 in the "(0-5)3123" segment are reserved for specific users, and 6 in the "(0-5)4123" segment are reserved for specific users.

[0131] When A+X=6+6, the range of extension codes that can be allocated is "620000-629999", and the number of extension codes that can be allocated is 1W, of which 100 are reserved for the "62(00-99)95" number segment, 10 are reserved for the "62(0-9)123" number segment, 10 are reserved for the "61(0-9)123" number segment, and 10 are reserved for the "60(0-9)123" number segment. When A+X=7+5, the range of extension codes that can be allocated is "6150000-6199999", and the number of extension codes that can be allocated is 5W, of which 100 extension codes are reserved for the 615XX95 number segment, 100 extension codes are reserved for the 616XX95 number segment, 100 extension codes are reserved for the 617XX95 number segment, 100 extension codes are reserved for the 618XX95 number segment, and 100 extension codes are reserved for the 619XX95 number segment.

[0132] When A+X=8+4, the allocable spreading code range is "61400000-61499999", and the number of allocable spreading codes is 100,000. When A+X=9+3, the allocable spreading code range is "613400000-613999999", and the number of allocable spreading codes is 500,000. When A+X=10+2, the allocable spreading code range is "6130000000-6133999999", and the number of allocable spreading codes is 4 million.

[0133] In one embodiment, in step 302, the first target extension code and channel access number corresponding to the user can also be determined in real time based on the identification code and the preset number of digits corresponding to the user. In this case, interactive calculations with the database can be reduced, thereby improving calculation efficiency.

[0134] Step 303: The channel access number, the first target extension code and the mark code are determined as the SMS number of the downlink SMS content, and the number of digits of the SMS number is equal to the preset number of digits.

[0135] In this step, the channel access number, the first target extension code, and the identification code are combined to obtain the SMS number. For example, using the signature code as the user identification code, for example, user S has the channel access number 10659050, the custom signature code is 1234, the signature code is bound to the signature [Zhang San], and the first target extension code is 12345678, which is used to identify user S. The resulting SMS number for the downlink SMS is 10659050123456781234, [Signature] Zhang San. The number of digits in the combined SMS number matches the preset number agreed upon by user S.

[0136] Step 304: Send a downlink SMS to the second terminal 230 pointed to by the downlink recipient number based on the SMS number, and the downlink SMS carries the SMS number.

[0137] In this step, after the SMS number is determined, the SMS number and / or signature can be carried in the SMS content, and the downlink SMS is sent to the second terminal 230 specified by the recipient number, thus completing the process of the first terminal 220 sending the downlink SMS through the SMS platform.

[0138] In the above SMS control method, when a user sends a downlink SMS request, the method selects a suitable extension code and a matching SMS channel code access number based on the user's signature code and the agreed preset number of digits, and uses the SMS channel code access number, extension code and signature code as the SMS number of the downlink SMS. Then, the downlink SMS content is sent to the recipient's second terminal 230 carrying the SMS number. In this way, the SMS number not only has a signature code that can be customized by the user, but also is configured with an extension code for marking the user. The SMS number can be divided into at least four segments, which greatly improves the customization of the SMS number.

[0139] In addition, the extended code allocation method in the above-mentioned SMS control method can theoretically mark 1 billion customers, which can meet the business scenarios where customers need to freely allocate more signatures. In actual experiments, it has been successfully connected to 150,000 customers, eliminating the difficulty of customers accessing without extended codes and greatly improving the utilization rate of limited number resources.

[0140] Please see Figure 6 , which is a text message control method of an embodiment of the present application, the method can be Figure 1 The electronic device 1 shown is used to perform and can be applied to Figures 2A to 2C In the application scenario of the SMS control system 200 shown, the degree of customization of SMS numbers is improved, the utilization rate of limited SMS number resources is improved, and the control performance of the SMS platform is improved. Compared with the above embodiment, this embodiment also includes the control step of uplink SMS. Specifically, the method includes the following steps:

[0141] Step 601: Receive a downlink SMS request sent by the user's first terminal 220. The downlink SMS request carries: downlink SMS content, downlink recipient number, and user identification code. For details, refer to the description of step 301 in the above embodiment.

[0142] Step 602: Determine whether the downlink text message content is marked in the preset list. If so, proceed to step 610, otherwise proceed to step 603.

[0143] In this step, a preset list is used to record rejected downlink text messages, including the content of the rejected downlink text message and the downlink recipient number / or text message number. For example, if the downlink text message contains the content of a member activity notification, and the downlink recipient user is not interested in the content of the message and responds to unsubscribe from the downlink text message, the downlink text message will be recorded in the preset list. When a downlink text message request is received from the user of the first terminal 220, the unsubscribe system can first determine whether the downlink text message is on the preset list. If it is, it indicates that the downlink recipient user has refused to see the content of the message, and the process proceeds to step 610. Otherwise, the downlink text message can be sent normally, and the process proceeds to step 603.

[0144] Step 603: Based on the identification code and the number of digits in the preset number corresponding to the user, a first target extension code and channel access number corresponding to the user are selected from a preset database. The database includes extension code sets corresponding to multiple users, with one extension code set corresponding to each user. For details, please refer to the description of step 302 in the above embodiment.

[0145] Step 604: The channel access number, the first target extension code and the marker code are determined as the SMS number of the downlink SMS content, and the number of digits of the SMS number is equal to the preset number of digits. For details, please refer to the description of step 303 in the above embodiment.

[0146] Step 605: Send a downlink SMS message to the second terminal 230 pointed to by the downlink recipient number based on the SMS number. The downlink SMS message carries the SMS number. For details, please refer to the description of step 304 in the above embodiment.

[0147] Step 606: Receive the uplink SMS request sent by the second terminal 230. The uplink SMS request carries: uplink SMS content and SMS number of the uplink recipient.

[0148] In this step, the user of the second terminal 230 can also send an uplink SMS to the user of the first terminal 220. The uplink SMS request first arrives at the SMS platform, which transmits it to the designated user terminal. The uplink recipient here can be a company, a service provider, or an individual user.

[0149] In one embodiment, the uplink SMS request may be a reply message to the downlink SMS in step 605 , and the SMS number of the uplink recipient is the SMS number used in step 605 .

[0150] Step 607: Remove the channel access number corresponding to the uplink SMS from the SMS number to obtain a deleted number.

[0151] In this step, the SMS platform extracts the SMS number from the uplink SMS request. To determine the user to whom the SMS number refers, the SMS number can be parsed. Because the channel access number is not used to identify the user, the channel access number is first removed to save computational effort. For example, if the SMS number is 10659050123456781234, the access number 10659050 is first removed, resulting in the abridged number 123456781234.

[0152] Step 608: Find the target user that matches the deleted number in the preset database.

[0153] In this step, the deleted number 123456781234 can uniquely identify a user, and can be matched and searched in the database to find the corresponding target user.

[0154] In one embodiment, step 608 may specifically include: comparing the deleted number with a set of extension codes in a database to determine a second target extension code that matches the deleted number, and determining a user corresponding to the second target extension code as a target user that matches the deleted number.

[0155] In this embodiment, a user may have multiple extension codes configured in the database, that is, a user has an extension code set. The process for configuring an extension code set is described in the above embodiment. The abridged number 123456781234 can be compared with the extension codes in the database to find the second target extension code corresponding to the abridged number. Since one extension code corresponds to one user, the user corresponding to the second target extension code is the target user.

[0156] In one embodiment, comparing the pruned number with a set of spreading codes in a database to determine a second target spreading code that matches the pruned number may specifically include: selecting a set of candidate spreading codes from the database based on the pruned number, wherein the sum of the number of digits of a candidate spreading code and the number of digits of the corresponding marker code in the set of candidate spreading codes is equal to the number of digits in the pruned number; comparing the pruned number with the set of candidate spreading codes, and determining the candidate spreading code included in the pruned number as the second target spreading code.

[0157] In this embodiment, taking the signature code as the user's identification code as an example, during the search for the second target extension code, a set of candidate extension codes can be first selected from the database where the sum of the number of digits in the extension code and the corresponding signature code is equal to the number of digits in the pruned number. That is, a set of candidate extension codes where A+X equals the number of digits in the pruned number is selected. For example, for the pruned number 123456781234, the following operations can be performed:

[0158] Use 12 to match the extension code corresponding to A+X=2+10.

[0159] Use 123 to match the extension code corresponding to A+X=3+9.

[0160] Use 1234 to match the extension code corresponding to A+X=4+8.

[0161] Use 12345 to match the extension code corresponding to A+X=5+7.

[0162] Use 123456 to match the extension code corresponding to A+X=6+6.

[0163] Use 1234567 to match the extension code corresponding to A+X=7+5.

[0164] Use 12345678 to match the extension code corresponding to A+X=8+4.

[0165] Finally, the extended code 12345678 matching 8+4 is obtained, and the target user S is found.

[0166] Step 609: Send the uplink SMS content to the terminal corresponding to the target user.

[0167] In this step, taking the signature code as the user's identification code as an example, after determining the target user S, the target user S is the user corresponding to the SMS number of the uplink recipient. The corresponding [Signature] can be found based on the signature code 1234 of the user's sending record, and then the signature is carried in the uplink SMS and sent to the terminal corresponding to the target user.

[0168] In one embodiment, if the uplink text message is a reply to the downlink text message in step 605 , the terminal of the target user here is the first terminal 220 in step 601 .

[0169] In one embodiment, after the target user is determined in step 608, the process may further include: determining whether the content of the uplink text message belongs to a preset type. If the content of the uplink text message belongs to the preset type, the downlink text message is marked in a preset list.

[0170] In this embodiment, the preset type can be information cancellation, information rejection, etc., and the uplink SMS is detected. If the uplink SMS content belongs to the preset type, it means that the downlink SMS replied by the uplink SMS has been unsubscribed or rejected. The corresponding downlink SMS can be marked in the preset list so that when the downlink SMS request triggered by the user of the first terminal 220 is received again, it can be intercepted to realize the cancellation service.

[0171] Step 610: intercept the downlink SMS request.

[0172] In this step, if the downlink SMS content is marked in the preset list, indicating that the downlink recipient user of the downlink SMS refuses to see the SMS content, the downlink SMS is intercepted to prevent the downlink recipient user from seeing the unsubscribed content. After intercepting this downlink SMS request, other downlink SMS requests sent by the first terminal 220 can continue to be received.

[0173] The above SMS control method, through the management and splitting of extension code resources, not only supports more customers while avoiding the problem of code number duplication, but also ensures the uplink and unsubscription services in the SMS service through the extension code number.

[0174] The details of the above SMS control method can be found in the description of the corresponding method embodiment in the above embodiment. Its implementation principle and technical effect are similar, so this embodiment will not be repeated here.

[0175] Please see Figure 7, which is a short message control device 700 of an embodiment of the present application, which can be applied to Figure 1 The electronic device 1 shown can be applied to Figures 2A to 2C In the application scenario of the SMS control system 200 shown, the degree of customization of SMS numbers is improved, the utilization rate of limited SMS number resources is improved, and the control performance of the SMS platform is improved. The device includes: a first receiving module 701, a selection module 702, a determination module 703 and a first sending module 704. The principle relationship between these modules is as follows:

[0176] The first receiving module 701 is configured to receive a downlink SMS request sent by the user's first terminal 220. The downlink SMS request carries: downlink SMS content, downlink recipient number, and user identification code, where the identification code is used to identify the user.

[0177] The selection module 702 is configured to determine the first target extension code and channel access number corresponding to the user according to the identification code and the number of digits of the preset number corresponding to the user.

[0178] The determination module 703 is configured to determine the channel access number, the first target extension code and the mark code as the SMS number of the downlink SMS content, where the number of digits of the SMS number is equal to the preset number of digits.

[0179] The first sending module 704 is configured to send a downlink SMS message to the second terminal 230 pointed to by the downlink recipient number based on the SMS number, wherein the downlink SMS message carries the SMS number.

[0180] In one embodiment, the selection module 702 is configured to select a first target extension code and a channel access number corresponding to the user from a preset database according to the identification code and the number of digits of the preset number corresponding to the user, wherein the database includes extension code sets corresponding to multiple users.

[0181] In one embodiment, the system further includes a first determination module configured to determine whether the downlink text message content is marked in a preset list before selecting a first target extension code and a channel access number corresponding to the user from a preset database based on the identification code and the number of digits in the preset number corresponding to the user. If the downlink text message content is not marked in the preset list, the system executes the step of selecting the first target extension code and the channel access number corresponding to the user from the preset database based on the identification code and the number of digits in the preset number corresponding to the user.

[0182] In one embodiment, it further includes: an interception module, which is used to intercept the downlink SMS request if the downlink SMS content is marked in the preset list before determining the first target extension code and channel access number corresponding to the user based on the marking code and the preset number of digits corresponding to the user.

[0183] In one embodiment, the system further includes an allocation module configured to obtain the number of preset number digits and the number of marker code digits corresponding to multiple users before selecting the first target extension code and channel access number corresponding to each user from a preset database based on the marker code and the preset number of digits corresponding to the user. The allocation module allocates at least one marker code to each user based on the number of digits in the marker code, with each marker code being associated with a signature of the user. The number of extension code digits corresponding to each user is determined based on the preset number digits and the number of marker code digits. Based on the number of digits in the extension code, an extension code set corresponding to each user is generated.

[0184] In one embodiment, the allocation module is further configured to: for a first user and a second user with different extension code bits, when the sum of the corresponding extension code bits and the mark code bits is the same, the extension code of the first user and the extension code of the second user have different numbers at the same position.

[0185] In one embodiment, in a spreading code set, multiple spreading codes with the same number of bits correspond to channel access numbers with the same number of bits.

[0186] In one embodiment, the system further includes: a second receiving module for receiving an uplink SMS request from second terminal 230 after sending a downlink SMS message to the second terminal 230 designated by the downlink recipient number based on the SMS number; the uplink SMS request carries the uplink SMS content and the SMS number of the uplink recipient; a deletion module for removing the channel access number corresponding to the uplink SMS message from the SMS number to obtain a deleted number; a search module for searching a target user matching the deleted number in a preset database, the database including a set of extension codes corresponding to multiple users; and a second sending module for sending the uplink SMS content to the terminal corresponding to the target user.

[0187] In one embodiment, the search module is configured to compare the deleted number with a set of extension codes in a database to determine a second target extension code that matches the deleted number and to determine a user corresponding to the second target extension code as a target user that matches the deleted number.

[0188] In one embodiment, the search module is configured to select a set of candidate extension codes from a database based on the pruned number, wherein the sum of the number of digits of a candidate extension code and the number of digits of the corresponding marker code in the set of candidate extension codes is equal to the number of digits in the pruned number. The pruned number is compared with the set of candidate extension codes, and the candidate extension code included in the pruned number is determined as the second target extension code.

[0189] In one embodiment, the system further includes a second determination module configured to determine whether the uplink SMS message content belongs to a preset type after finding a target user matching the deleted number in a preset database, and if so, mark the downlink SMS message in a preset list.

[0190] For a detailed description of the above-mentioned SMS control device 700, please refer to the description of the relevant method steps in the above-mentioned embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.

[0191] An embodiment of the present application further provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the method of any of the aforementioned embodiments is implemented.

[0192] An embodiment of the present application also provides a computer program product, including a computer program, which implements the method of any of the aforementioned embodiments when executed by a processor.

[0193] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the module division is only a logical function division. In actual implementation, other division methods may be used. For example, multiple modules can be combined or integrated into another system, or some features can be ignored or not implemented.

[0194] The above-mentioned integrated module implemented in the form of a software functional module can be stored in a computer-readable storage medium. The above-mentioned software functional module is stored in a storage medium and includes a number of instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) or a processor to perform some steps of the methods of various embodiments of the present application.

[0195] It should be understood that the above-mentioned processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the application may be directly embodied as being executed by a hardware processor, or may be executed by a combination of hardware and software modules in the processor. The memory may include high-speed RAM memory, and may also include non-volatile storage NVM, such as at least one disk memory, and may also be a USB flash drive, a mobile hard disk, a read-only memory, a magnetic disk or an optical disk, etc.

[0196] The storage medium may be implemented by any type of volatile or non-volatile memory device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The storage medium may be any available medium that can be accessed by a general-purpose or special-purpose computer.

[0197] An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be an integral part of the processor. The processor and the storage medium can be located in an application specific integrated circuit (ASIC). Of course, the processor and the storage medium can also exist as discrete components in an electronic device or a main control device.

[0198] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.

[0199] The serial numbers of the above embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0200] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the 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 this understanding, the technical solution of the present application, 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 ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods of each embodiment of the present application.

[0201] In the technical solution of this application, the collection, storage, use, processing, transmission, provision and disclosure of user data and other information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0202] The above are only preferred embodiments of the present application and do not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.

Claims

1. A text message control method, characterized in that: include: Receiving a downlink SMS request sent by a user's first terminal, the downlink SMS request carrying: downlink SMS content, downlink recipient number and the user's identification code, the identification code being used to identify the user; selecting, based on the identification code and the number of digits of the preset number corresponding to the user, a first target extension code and a channel access number corresponding to the user from a preset database, the database including a plurality of extension code sets corresponding to the user; Determine the channel access number, the first target extension code, and the marker code as the SMS number of the downlink SMS content, where the number of digits of the SMS number is equal to the number of digits of the preset number; Sending the downlink SMS to the second terminal pointed to by the downlink recipient number based on the SMS number, wherein the downlink SMS carries the SMS number; Before selecting the first target extension code and channel access number corresponding to the user from a preset database according to the identification code and the preset number of digits corresponding to the user, the method further includes: Obtain the number of digits of preset numbers and mark codes corresponding to multiple users; At least one marking code is allocated to each user according to the number of the marking code bits, and one marking code is bound to one signature of the user; Determine the number of extended code digits corresponding to each user according to the preset number digits and the mark code digits; The spreading code set corresponding to each of the users is generated according to the spreading code bit number.

2. The method according to claim 1, characterized in that Before selecting the first target extension code and channel access number corresponding to the user from a preset database according to the identification code and the preset number of digits corresponding to the user, the method further includes: Determining whether the downlink SMS content is marked in a preset list; If the downlink SMS content is not marked in the preset list, the step of selecting the first target extension code and channel access number corresponding to the user from a preset database according to the marking code and the preset number of digits corresponding to the user is performed.

3. The method according to claim 1, characterized in that The method further comprises: If the downlink SMS content is marked in a preset list, the downlink SMS request is intercepted.

4. The method according to claim 1, wherein Generating the spreading code set corresponding to each user according to the number of spreading code bits includes: For a first user and a second user with different numbers of spreading code bits, when the corresponding sum of the spreading code bits and the marker code bits is the same, the spreading code of the first user and the spreading code of the second user have different numbers at the same position.

5. The method according to claim 1, wherein After sending the downlink SMS to the second terminal pointed to by the downlink recipient number based on the SMS number, the method further includes: receiving an uplink SMS request sent by the second terminal, wherein the uplink SMS request carries: uplink SMS content and an SMS number of an uplink recipient; Removing the channel access number corresponding to the uplink SMS from the SMS number to obtain a deleted number; Searching a target user matching the deleted number in a preset database, wherein the database includes a plurality of extension code sets corresponding to the users; The uplink SMS content is sent to the terminal corresponding to the target user.

6. The method according to claim 5, characterized in that The step of searching the preset database for a target user that matches the deleted number includes: Comparing the deleted number with the set of spreading codes in the database to determine a second target spreading code that matches the deleted number; The user corresponding to the second target extension code is determined as the target user matching the deleted number.

7. The method according to claim 6, characterized in that The comparing the deleted number with the set of extension codes in the database to determine a second target extension code that matches the deleted number includes: selecting a set of candidate extension codes from the database according to the deleted number, wherein the sum of the number of digits of a candidate extension code and the number of digits of the corresponding marker code in the set of candidate extension codes is the same as the number of digits of the deleted number; The truncated numbers are compared with the candidate extension code set, and the candidate extension code included in the truncated numbers is determined as the second target extension code.

8. The method according to claim 5, characterized in that After finding a target user matching the deleted number in the preset database, the method further includes: Determining whether the content of the uplink SMS message belongs to a preset type; If the content of the uplink text message belongs to the preset type, the downlink text message is marked in the preset list.

9. A short message control system, characterized in that: include: A server, a first terminal, and a second terminal, wherein: The first terminal is used to send a downlink SMS request through the server; The server is configured to execute the method according to any one of claims 1 to 8 to send the downlink text message to the second terminal; The second terminal is used to receive the downlink SMS sent by the server.

10. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively coupled to the at least one processor; The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the electronic device to perform the method according to any one of claims 1 to 8.

11. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, and when a processor executes the computer-executable instructions, the method according to any one of claims 1 to 8 is implemented.

12. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.

Citation Information

Patent Citations

  • Short message sending method, device and system, storage medium and electronic device

    CN112689249A