A communication method, system and storage medium of one-to-many terminal service

By setting up a penetration server and establishing a penetration tunnel on the Internet, the problem of external SIP terminals being unable to implement one number for multiple terminals was solved, realizing unified communication between the enterprise's internal and external networks, and improving server resource utilization and security.

CN116915741BActive Publication Date: 2026-02-13XIAMEN XINGZONG DIGITAL TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310858292.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-13
Publication Date
2026-02-13
Estimated Expiration
2043-07-13

AI Technical Summary

Technical Problem

SIP terminals outside the enterprise cannot continue to provide one number for multiple terminals after leaving the enterprise's intranet.

Method used

A penetration server is set up on the Internet, and a penetration tunnel is established between the company's IP-PBX and the penetration server. The external SIP terminal can register with the IP-PBX through the penetration server.

Benefits of technology

It enables SIP terminals to use the company's internal extension number whether the terminal is on the company's intranet or outside, providing high server resource utilization, availability, ease of use and security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116915741B_ABST
    Figure CN116915741B_ABST
Patent Text Reader

Abstract

The application provides a communication method, system and storage medium for realizing one-number multi-terminal service, wherein a penetrating server is arranged on the Internet, the method comprises the following steps: an IP-PBX of a company establishes a penetrating tunnel with the penetrating server; an external SIP terminal sends a registration packet to the penetrating server, and completes registration and interaction with the IP-PBX of the company by using the penetrating tunnel. By using the above technical scheme, the external SIP terminal located outside the internal network of an enterprise can also realize one-number multi-terminal service by using the number in the internal network of the enterprise.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication technology, and in particular to a communication method, system and storage medium for a one-number-multiple-terminal service. Background Technology

[0002] Currently, the "One Number, Multiple Devices" service allows multiple smart devices, such as smartphones, smartwatches, and smart glasses, to share a single phone number and data plan. Simply put, when a call comes in to this number, multiple devices with the "One Number, Multiple Devices" service activated will ring simultaneously, and any of these devices can use the number to make a call, maintaining connectivity without needing to carry a mobile phone. The "One Number, Multiple Devices" service enables users to make and receive calls using the same number on any device with the service activated, making communication easier in outdoor, sports, and meeting scenarios.

[0003] In enterprises or organizations, internal telephone systems such as corporate intranets typically create an employee identity for each employee. This identity can be used as a phone number, such as an extension number. Different employees have different extension numbers. Within the corporate intranet, this extension number can be used on desktop phones, softphones implemented via software on computers, and softphones implemented via software on mobile phones, thus enabling one number for multiple devices within the corporate intranet. However, once the device leaves the corporate or organizational intranet, this phone number assigned to the employee can no longer enable one number for multiple devices. Summary of the Invention

[0004] To address the problems of the prior art, embodiments of the present invention provide a communication method, apparatus, and storage medium for a single number for multiple terminals, enabling external SIP terminals located outside the enterprise's internal network to utilize the enterprise's internal numbers to implement the single number for multiple terminals service.

[0005] To achieve the above objectives, a communication method for implementing a single-number, multi-terminal service is provided, characterized by setting up a penetration server on the Internet. The communication method includes:

[0006] S1, the company's IP-PBX establishes a tunnel with the penetration server;

[0007] S2, the external SIP terminal sends a SIP registration packet to the penetration server and completes the registration of the external SIP terminal with the IP-PBX through the penetration tunnel.

[0008] Preferably, in the communication method, the penetration server includes a SIP proxy module, wherein...

[0009] Step S1 includes:

[0010] S21, determining a mapping relationship between a local UDP port created by the IP-PBX and a port used by the SIP proxy module in the penetration server, a mapping relationship between a penetration port allocated by the penetration server for the IP-PBX and a port used by the SIP proxy module, and a domain name allocated by the penetration server for the IP-PBX, wherein the domain name is bound to an external IP address of the penetration server;

[0011] The step S2 comprises:

[0012] S22, after an external SIP terminal registers an extension through the domain name and sends an SIP registration packet to the penetration server at an IP address pointed by the domain name, the penetration server determines that a port used by a SIP proxy module allocated for the external SIP terminal is a first port, and sends a first penetration packet to the IP-PBX through the penetration tunnel, wherein the first penetration packet comprises the SIP registration packet and the first port;

[0013] S23, the IP-PBX parses the first penetration packet, acquires the first port, determines a local UDP port corresponding to the first port, and sends a second penetration packet to the penetration server, wherein the second penetration packet comprises a reply SIP packet in reply to the SIP registration packet and the local UDP port corresponding to the first port;

[0014] S24, the penetration server parses the second penetration packet, acquires the local UDP port corresponding to the first port, determines that a port used by a SIP proxy module corresponding to the acquired local UDP port is the first port, and sends the reply SIP packet to the external SIP terminal through the first port.

[0015] Preferably, the communication method, wherein the IP-PBX comprises a SIP server and a penetration client module, the penetration server further comprises a penetration server module, a port allocation module, a domain name allocation module and a turn module, and the step S1 specifically comprises:

[0016] The penetration client module creates a local UDP port according to a number of supported penetration registration terminals;

[0017] The penetration client module sends a penetration establishment request to the penetration server module, wherein the request comprises an authentication code of the penetration server module and the local UDP port;

[0018] The penetration server module receives the penetration establishment request, applies for a penetration port from the port allocation module, and the penetration port is only used for communication and interaction between the penetration server module and the SIP proxy module.

[0019] The penetration server module applies to the domain name allocation module for allocating a domain name to the IP-PBX, and binds the domain name with the external IP address of the penetration server, and the domain name is used by the external SIP terminal when registering an extension;

[0020] The penetration server module applies to the turn module for a turn account, and the turn account is used by the SIP server for voice RTP penetration negotiation of ICE;

[0021] The penetration server module informs the SIP proxy module to update the mapping relationship between the domain name and the penetration port;

[0022] The penetration server module updates the mapping relationship between the port used by the SIP proxy module internally and the local UDP port of the penetration client;

[0023] The penetration server module returns the mapping relationship between the port used by the SIP proxy module internally and the local UDP port of the penetration client and the turn configuration information to the penetration client module;

[0024] The penetration is successfully established.

[0025] Preferably, the communication method, wherein the step S22 comprises:

[0026] The external SIP terminal registers an extension through the domain name, and sends an SIP registration packet to the SIP proxy module of the penetration server of the IP address pointed by the domain name, wherein the SIP registration packet comprises the IP address, port and requested extension number of the external SIP terminal;

[0027] The SIP proxy module queries a registration session according to the information in the SIP registration packet, determines whether there is a registration session for the external SIP terminal, and if there is, acquires the port used by the SIP proxy module internally for the external SIP terminal, and binds the current session with the port used by the SIP proxy module internally for the SIP terminal;

[0028] The SIP proxy module queries the mapping relationship between the domain name and the penetration port, and determines the penetration port corresponding to the domain name;

[0029] The SIP proxy module reorganizes the SIP registration packet according to the IP address, port and requested extension number of the external SIP terminal, and sends the reorganized SIP packet to the determined penetration port through the acquired port used by the SIP proxy module internally;

[0030] The penetrating server module encapsulates the SIP package reorganized by the SIP proxy module into a first penetrating package, and sends the first penetrating package to the penetrating client module through the penetrating tunnel, wherein the encapsulation header information of the first penetrating package comprises the acquired internal-use port of the SIP proxy module.

[0031] Preferably, the communication method, wherein, in the step of querying the registered session by the SIP proxy module, if there is no registered session for the external SIP terminal, the SIP proxy module allocates a new internal-use port for the external SIP terminal, and binds the current session of the external SIP terminal and the newly allocated internal-use port.

[0032] Preferably, the communication method, wherein,

[0033] The step S23 comprises:

[0034] The penetrating client module parses the first penetrating package, acquires the first port, queries the mapping relationship between the internal-use port of the SIP proxy module and the local UDP port of the penetrating client, and determines the local UDP port corresponding to the first port;

[0035] The penetrating client module forwards the SIP package reorganized according to the IP address, port and requested extension number of the external SIP terminal to the SIP server through the determined local UDP port;

[0036] The SIP server replies a response SIP package to the penetrating client module;

[0037] The penetrating client module encapsulates the replied response SIP package into the second penetrating package, and sends the second penetrating package to the penetrating server module through the penetrating tunnel, wherein the encapsulation header information of the second penetrating package comprises the determined local UDP port;

[0038] The step S24 comprises:

[0039] The penetrating server parses the second penetrating package, acquires the local UDP port, queries the mapping relationship between the internal-use port of the SIP proxy module and the local UDP port of the penetrating client, and determines that the internal-use port of the SIP proxy module is a first port;

[0040] The penetrating server module replies a response SIP package to the SIP proxy module through the determined first port;

[0041] The SIP proxy module queries the session identifier in the reply SIP packet replied by the penetration server module, and obtains the IP address and port of the external SIP terminal.

[0042] The SIP proxy module forwards the reply SIP packet replied by the penetration server module to the external SIP terminal.

[0043] In another aspect, a communication system for implementing one-number multi-terminal service is provided, which comprises an IP-PBX located at a company side and a penetration server assumed on the Internet, the IP-PBX comprises a first memory and a first processor, the penetration server comprises a second memory and a second processor, the first memory and the second memory store at least one program, and the at least one program is executed by the first processor and the second processor respectively to implement the communication method for implementing one-number multi-terminal service according to any one of claims 1 to 6.

[0044] In yet another aspect, an IP-PBX included in the communication system for implementing one-number multi-terminal service is provided.

[0045] In yet another aspect, a penetration server included in the communication system for implementing one-number multi-terminal service is provided.

[0046] In yet another aspect, a computer readable storage medium is provided, wherein the storage medium stores at least one program, and the at least one program is executed by a processor to implement the communication method for implementing one-number multi-terminal service.

[0047] The above technical solutions have the following technical effects:

[0048] The communication method of the embodiment of the application establishes a penetration tunnel between the IP-PBX at the company side and the penetration server by setting up a penetration server on the Internet, so that different SIP terminals outside the company can register the same extension number to the IP-PBX at the company side through the penetration server to realize answering or dialing a call, thereby realizing one-number multi-terminal service by using the extension number in the company or the number used inside the company regardless of whether the SIP terminal is in the intranet of the company / organization / enterprise or outside the intranet.

[0049] When the technical solution of the embodiment of the application is used to implement one-number multi-terminal service, the following advantages are achieved:

[0050] High server resource utilization: Each network's SIP server only needs to occupy one port of the tunneling server; High availability: Regardless of whether the tunneling tunneler's SIP relay service, the tunneling relay server, or the SIP server or tunneling relay client inside the PBX restarts, the relay can be restored immediately; Ease of use: Provides a registration domain name for tunneling, making it convenient for different external SIP terminals to register; High security: SIP terminals can only register through a domain name, and hackers cannot attempt to crack it without knowing the tunneling domain name. Attached Figure Description

[0051] Figure 1 This is a schematic diagram illustrating the principle of a communication method for implementing a single number for multiple terminals according to an embodiment of the present invention.

[0052] Figure 2 This is a schematic diagram of a penetration tunnel established in a method for implementing one number for multiple terminals according to an embodiment of the present invention.

[0053] Figure 3 The diagram illustrates the interaction between devices in a communication method for implementing a single number for multiple terminals according to an embodiment of the present invention. Detailed Implementation

[0054] To further illustrate the various embodiments, the present invention provides accompanying drawings. These drawings are part of the disclosure of the present invention, primarily used to illustrate the embodiments and to explain the operating principles of the embodiments in conjunction with the relevant descriptions in the specification. With reference to these drawings, those skilled in the art should be able to understand other possible implementations and the advantages of the present invention. Components in the drawings are not drawn to scale, and similar component symbols are generally used to represent similar components.

[0055] The present invention will now be further described in conjunction with the accompanying drawings and specific embodiments.

[0056] Figure 1 A schematic diagram illustrating the principle of a communication method for implementing a single-number, multi-terminal service according to an embodiment of the present invention is shown. Figure 1 The method of this invention establishes a penetration server on the Internet and a penetration tunnel between the company's IP-PBX and the penetration server. External SIP terminals send SIP registration packets to the penetration server and complete the registration with the company's IP-PBX through the penetration tunnel. This allows different SIP terminals outside the company to register the same extension number with the company's IP-PBX through the penetration server to answer or make calls.

[0057] like Figure 1 Different companies (such as) Figure 1After establishing a tunnel between the SIP server and the tunneling server in the IP-PBX of Companies A and B, employees of these companies can register the same extension number using either an intranet SIP phone or an external SIP phone. Each SIP phone can freely make and receive calls. The company-side IP-PBX supports simultaneous registration of one number by multiple terminals, and multiple terminals can ring simultaneously when a call comes in, allowing multiple terminals to make calls at the same time. For example, if an employee is assigned extension number 1000 within the company, the technical solution of this invention allows that employee to make and receive calls using extension number 1000 from outside the company, such as at home, using their mobile phone's phone software, a SIP phone, or a software-enabled softphone on their computer.

[0058] Figure 2 This illustration demonstrates a method for implementing a single-number, multi-terminal service according to an embodiment of the present invention, showing the establishment of a penetration tunnel and how, after the penetration tunnel is successfully established, different external (i.e., external network SIP phone terminals) register with the same extension of their respective companies through the penetration server. Specifically, each external phone terminal of Company A... Figure 2 Path 1 in the middle communicates with the company's intranet IP-PBX; each external telephone terminal of Company B communicates through... Figure 2 Path 2 in the document communicates with the company's intranet IP-PBX.

[0059] like Figure 2 As shown, each company's corporate-side IP-PBX includes a SIP server and a tunneling client module. SIP terminals located within the company's intranet can register a multi-terminal service with the corporate-side SIP server; this implementation is existing technology and will not be elaborated upon here. The tunneling server includes a tunneling server module, a SIP proxy module, a port allocation module, a domain name allocation module, and a TURN module. Each module can implement its corresponding function through programs stored in memory.

[0060] Generally, the communication method of this invention includes the following steps:

[0061] The company's IP-PBX establishes a tunnel with the penetration server, including: determining the mapping relationship between the local UDP port created by the IP-PBX and the port used internally by the SIP proxy module in the penetration server, the mapping relationship between the penetration port allocated to the IP-PBX in the penetration server and the port used internally by the SIP proxy module, and the domain name allocated to the IP-PBX by the penetration server, wherein the domain name is bound to the external IP address of the penetration server.

[0062] After the external SIP terminal registers the extension through the domain name and sends the SIP registration packet to the penetrating server at the IP address pointed by the domain name, the penetrating server determines that the SIP proxy module allocated to the external SIP terminal uses a first port internally and sends the first penetrating packet to the IP-PBX through the penetrating tunnel, the first penetrating packet containing the SIP registration packet and the first port;

[0063] The IP-PBX parses the first penetrating packet, obtains the first port, determines the local UDP port corresponding to the first port, and sends the second penetrating packet to the penetrating server, the second penetrating packet including the reply SIP packet in reply to the SIP registration packet and the local UDP port corresponding to the first port;

[0064] The penetrating server parses the second penetrating packet, obtains the local UDP port corresponding to the first port, determines that the SIP proxy module corresponding to the obtained local UDP port uses the first port internally, and sends the reply SIP packet to the external SIP terminal through the first port.

[0065] As shown in Figure 2 , it can be seen that in the penetrating tunnel path of each company, the corresponding relationship between the ports used includes the port for the SIP terminal to register with the SIP server, such as port 5060; the local UDP port allocated by the IP-PBX, such as ports 4070, 4071 and 4072, the port number being pre-specified; the port on the penetrating client for connecting with the penetrating server, such as port 7777, which can be randomly generated; the port 10000 provided by the penetrating server to the penetrating client; the penetrating port allocated to the IP-PBX, such as penetrating ports 11000 and 11001, generally one IP-PBX is allocated one penetrating port, and different IP-PBXs are allocated different penetrating ports; the ports 4070, 4071 and 4072 used internally between the penetrating server module and the SIP proxy module; and the port 5060 for the SIP proxy module to register the extension by the external SIP terminal. In this example, the local UDP port allocated by the IP-PBX and the port used internally by the SIP proxy module in the penetrating server one-to-one correspond, and even the port numbers can be the same.

[0066] Specifically, Figure 3 The communication method for implementing the one-number multi-terminal service in an embodiment of the application is shown in the communication interaction diagram between the modules of the IP-PBX on the company side, the modules in the penetrating server located on the internet, and the external SIP terminal outside the intranet of the company or enterprise, as shown in Figure 2 .

[0067] As shown in Figure 3The communication method of the embodiment comprises the following steps:

[0068] Step 1: The penetration client module creates a local UDP (User Datagram Protocol) port according to the number of terminals supported by the penetration registration. Figure 2 For example, three SIP terminals are taken as an example in the embodiment, i.e., the ports 4070, 4071 and 4072 are created to distinguish the three SIP terminals registered by one extension; those skilled in the art can set the number of terminals supported by the penetration registration according to actual needs, i.e., the number of UDP ports corresponding to one extension number; the port numbers herein are only exemplary, and other port numbers can be used.

[0069] Step 2: The penetration client module requests to establish penetration, and the request parameters at least include the authentication code of the penetration server and the local UDP port of the penetration client.

[0070] Step 3: The penetration server module authenticates the request according to the authentication code in the request parameters, and if the authentication is successful, the next step 4 is continued, and if the authentication is not successful, the process is ended.

[0071] Step 4: The penetration server module applies for an unused penetration port to the port allocation module, such as Figure 2 In the embodiment, the penetration port allocated by the port allocation module for the IP-PBX of the A company is 11000; the penetration port is used for the communication interaction between the SIP proxy and the penetration server module; the penetration port is only used for internal communication, and it only needs to listen to the local loopback address 127.0.0.1, so as to guarantee the security of penetration.

[0072] Step 5: The penetration server module applies for a domain name to the domain name allocation module for the current IP-PBX and binds the domain name and the external IP address of the current server; the domain name is used for the extension registration by external SIP terminals; generally, one IP-PBX has one domain name, and one penetration server has only one external IP address.

[0073] Step 6: The penetration server module applies for a turn account to the turn module; the turn account is used for the voice RTP penetration negotiation of the SIP server of the IP-PBX by ICE.

[0074] Step 7: The penetration server module notifies the SIP proxy module to update the mapping relationship between the domain name and the penetration port; the domain name is the domain name applied in step 5, and the penetration port is the penetration port applied in step 4; generally, the update is performed when the penetration server is configured for the first time.

[0075] Step 8: The penetration server module updates the mapping relationship between the port in the SIP proxy and the local UDP port of the penetration client. Generally, it is updated when it is used for the first time. If a fixed port is used, it will not be changed generally after the configuration; but if a port conflict occurs, the port can be changed and the mapping relationship between the ports is updated.

[0076] Step 9: The penetration server module returns the mapping relationship between the port used in the SIP proxy and the local UDP port of the penetration client to the penetration client module and the turn configuration information.

[0077] Step 10: The penetration is established successfully.

[0078] Step 11: The external SIP terminal located in the external network registers the extension through the domain name applied in step 5. The SIP registration packet is sent to the SIP proxy module in the penetration server at the IP address pointed by the domain name. The SIP registration packet includes the IP address, port and requested extension number of the external SIP terminal.

[0079] Step 12: The SIP proxy module queries the registration session according to the information in the SIP registration packet, determines whether there is a registration session for the external SIP terminal, obtains the SIP proxy port used in the SIP proxy for the external SIP terminal if there is an existing registration session for the external SIP terminal, and binds the current session and the SIP proxy port used in the SIP proxy for the external SIP terminal; if there is no registration session for the external SIP terminal, a new SIP proxy port used in the SIP proxy is allocated to the external SIP terminal, and the current session and the allocated new SIP proxy port are bound.

[0080] Step 13: The SIP proxy module queries the mapping relationship between the domain name and the penetration port in advance, finds the penetration port corresponding to the domain name requested by the external SIP terminal, and the mapping relationship is the updated mapping relationship in step 8.

[0081] Step 14: The SIP proxy module sends the SIP packet obtained by reorganizing the SIP registration packet according to the IP address, port and requested extension number of the external SIP terminal to the penetration port found in step 13 through the SIP proxy port used in the SIP proxy obtained in step 12.

[0082] Step 15: The penetration server module encapsulates the SIP packet reorganized by the SIP proxy into a penetration packet, and sends the penetration packet to the penetration client module through the penetration tunnel; wherein the SIP proxy port used in the SIP proxy needs to be carried in the encapsulation header information of the penetration packet.

[0083] Step 16: The penetration client module parses the penetration packet sent by the penetration server module, obtains the port used by the SIP proxy module for internal use from the penetration packet, and then queries the mapping relationship between the SIP proxy module for internal use and the local UDP port of the penetration client, to find the local UDP port corresponding to the SIP proxy module in the penetration packet.

[0084] Step 17: The penetration client module forwards the recombined SIP packet obtained by recombining the SIP registration packet according to the IP address, port of the external SIP terminal and the requested extension number to the SIP server through the found local UDP port.

[0085] Step 18: The SIP server replies to the penetration client module with a response SIP packet.

[0086] Step 19: The penetration client module encapsulates the response SIP packet replied by the SIP server into a penetration packet, and forwards the penetration packet to the penetration server through the penetration tunnel, wherein the local UDP port needs to be carried in the encapsulation header information of the penetration packet.

[0087] Step 20: The penetration server module parses the penetration packet, obtains the local UDP port, and then queries the mapping relationship between the SIP proxy module for internal use and the local UDP port of the penetration client, to find the port used by the SIP proxy module for internal use corresponding to the carried local UDP port.

[0088] Step 21: The penetration server replies to the response SIP packet, and sends the response SIP packet to the SIP proxy module through the port used by the SIP proxy module for internal use found above.

[0089] Step 22: The SIP proxy module queries the session identifier in the response SIP packet, and obtains the IP of the external SIP terminal initiating the extension registration request and the port thereof.

[0090] Step 23: The SIP proxy module forwards the replied response SIP packet to the external SIP terminal, and the extension registration communication interaction of the external SIP terminal is completed.

[0091] Figure 3 The illustrated diagram is a simplified flowchart illustrating the inventive concept; wherein the part of the reply process in the specific implementation of the communication interaction process known by those skilled in the art is omitted.

[0092] The embodiment of the present application also provides a communication system for implementing the one-terminal multi-terminal service, comprising an IP-PBX located at a company side and a penetration server assumed on the Internet, the IP-PBX comprising a first memory and a first processor, the penetration server comprising a second memory and a second processor, the first memory and the second memory storing at least one program, and the at least one program being executed by the first processor and the second processor respectively to implement the communication method for implementing the one-terminal multi-terminal service as described above, and especially to implement the functions of the modules as described above. The modules can comprise a SIP server and / or a penetration client module in the IP-PBX, a penetration server module, a port allocation module, a domain name allocation module, a turn module and / or a SIP proxy module in the penetration server.

[0093] The IP-PBX and the penetration server included in the communication system for implementing the one-terminal multi-terminal service according to the embodiment of the present application can comprise one or more than one processing core, and the memory is connected to the processing core through a bus, the memory is used for storing program instructions, and the processor implements the steps in the above method embodiments of the embodiment of the present application when executing the computer program.

[0094] Further, as an executable scheme, the IP-PBX and the penetration server can be a computer unit, which can be a desktop computer, a notebook computer, a palm computer, a cloud server and the like. The computer unit can comprise, but is not limited to, a processor and a memory. Those skilled in the art can understand that the above-mentioned constituent structure of the computer unit is only an example of the computer unit, and does not constitute a limitation on the computer unit, and can comprise more or less components than the above-mentioned, or combine certain components, or different components. For example, the computer unit can also comprise an input / output device, a network access device, a bus and the like, and the embodiment of the present application does not limit this.

[0095] Further, as an executable scheme, the processor can be a central processing unit (CPU), and can also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor and the like. The processor is the control center of the computer unit, and connects all parts of the computer unit through various interfaces and lines.

[0096] The memory can be used to store computer programs and / or modules, and the processor realizes various functions of the computer unit by running or executing the computer programs and / or modules stored in the memory, and calling data stored in the memory. The memory can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system and at least one application program required by a function; and the data storage area can store data created according to the use of the mobile phone and the like. In addition, the memory can include a high-speed random access memory, and can also include a non-volatile memory, such as a hard disk, a memory, a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.

[0097] The application further provides a computer readable storage medium, which stores a computer program. The computer program is executed by a processor to realize the steps of the method of the above-mentioned embodiments of the application. The above-mentioned computer readable storage medium is a computer readable storage medium for executing the IP-PBX function and / or the penetration server function. The modules / cells integrated by the computer unit are stored in one computer readable storage medium if they are realized in the form of software function units and sold or used as independent products. Based on such understanding, the application realizes all or part of the processes in the above-mentioned embodiment methods, and can also be completed by instructing related hardware through a computer program. The computer program can be stored in a computer readable storage medium. The computer program is executed by the processor to realize the steps of the above-mentioned various method embodiments. The computer program includes computer program code, which can be in the form of source code, object code, an executable file or some intermediate form, etc. The computer readable medium can include any entity or device capable of carrying the computer program code, a recording medium, a U disk, a mobile hard disk, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM) and a software distribution medium, etc. It should be noted that the content included in the computer readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.

[0098] Although the application is specifically shown and described in connection with the preferred embodiments, those skilled in the art should understand that various changes can be made in form and details without departing from the spirit and scope of the application as defined by the appended claims.

Claims

1. A communication method for implementing a one-number multi-terminal service, characterized by, The communication method comprises the following steps of: S1, establishing a penetration tunnel between an IP-PBX and a penetration server; S2, sending an SIP registration packet to the penetration server by an external SIP terminal, and completing the registration of the external SIP terminal to the IP-PBX through the penetration tunnel; The penetration server comprises an SIP proxy module, wherein, The step S1 comprises: S21, determining the mapping relationship between a local UDP port created by the IP-PBX and a port used by the SIP proxy module, the mapping relationship between a penetration port allocated by the penetration server for the IP-PBX and a port used by the SIP proxy module, and a domain name allocated by the penetration server for the IP-PBX, wherein the domain name is bound with an external IP address of the penetration server; The step S2 comprises: S22, after the external SIP terminal registers an extension through the domain name and sends an SIP registration packet to the penetration server at the IP address pointed by the domain name, the penetration server determines that a port used by the SIP proxy module for the external SIP terminal is a first port, and sends a first penetration packet to the IP-PBX through the penetration tunnel, wherein the first penetration packet comprises the SIP registration packet and the first port; S23, the IP-PBX analyzes the first penetration packet, acquires the first port, determines a local UDP port corresponding to the first port, and sends a second penetration packet to the penetration server, wherein the second penetration packet comprises a reply SIP packet in response to the SIP registration packet and the local UDP port corresponding to the first port; S24, the penetration server analyzes the second penetration packet, acquires the local UDP port corresponding to the first port, determines that a port used by the SIP proxy module for the first port is the first port, and sends the reply SIP packet to the external SIP terminal through the first port.

2. The communication method according to claim 1, characterized by, The IP-PBX comprises an SIP server and a penetration client module, the penetration server further comprises a penetration server module, a port allocation module, a domain name allocation module and a turn module, and the step S1 specifically comprises: The penetration client module creates a local UDP port according to the number of supported penetration registration terminals; The penetration client module sends a penetration establishment request to the penetration server module, wherein the request comprises an authentication code of the penetration server module and the local UDP port; The penetration server module receives the penetration establishment request, applies for a penetration port from the port allocation module, and the penetration port is only used for communication and interaction between the penetration server module and the SIP proxy module; The penetration server module applies for a domain name allocated to the IP-PBX from the domain name allocation module, and binds the domain name with an external IP address of the penetration server, wherein the domain name is used by an external SIP terminal when registering an extension. The penetration service end module applies for a turn account number from the turn module, and the turn account number is used by the SIP server for voice RTP penetration negotiation of ICE; The penetration service end module informs the SIP proxy module to update the mapping relationship between the domain name and the penetration port; The penetration service end module updates the mapping relationship between the port used by the SIP proxy module and the local UDP port of the penetration client; The penetration service end module returns the mapping relationship between the port used by the SIP proxy module and the local UDP port of the penetration client and the turn configuration information to the penetration client module; The penetration is successfully established.

3. The communication method according to claim 2, wherein, The step S22 comprises: The external SIP terminal registers an extension through the domain name and sends a SIP registration packet to the SIP proxy module of the penetration server at the IP address pointed by the domain name, wherein the SIP registration packet comprises the IP address, port and requested extension number of the external SIP terminal; The SIP proxy module queries a registration session according to the information in the SIP registration packet, determines whether there is a registration session for the external SIP terminal, and if there is, acquires the port used by the SIP proxy module for the external SIP terminal and binds the current session with the port; The SIP proxy module queries the mapping relationship between the domain name and the penetration port, and determines the penetration port corresponding to the domain name; The SIP proxy module reorganizes the SIP registration packet according to the IP address, port and requested extension number of the external SIP terminal, and sends the reorganized SIP packet to the determined penetration port through the acquired port used by the SIP proxy module; The penetration service end module encapsulates the SIP packet reorganized by the SIP proxy module into a first penetration packet, and sends the first penetration packet to the penetration client module through the penetration tunnel, wherein the encapsulation header information of the first penetration packet comprises the acquired port used by the SIP proxy module.

4. The communication method according to claim 3, characterized by, In the step of querying a registration session, if there is no registration session for the external SIP terminal, the SIP proxy module allocates a new port used by the SIP proxy module for the external SIP terminal, and binds the current session of the external SIP terminal with the newly allocated port.

5. The communication method according to claim 4, wherein The step S23 comprises: The penetration client module parses the first penetration packet, acquires the first port, queries the mapping relationship between the port used by the SIP proxy module and the local UDP port of the penetration client, and determines the local UDP port corresponding to the first port; The penetration client module forwards the SIP packet reorganized according to the IP address, port and requested extension number of the external SIP terminal to the SIP server through the determined local UDP port. The SIP server replies a response SIP packet to the penetration client module; The penetration client module encapsulates the replied response SIP packet into the second penetration packet, and sends the second penetration packet to the penetration server module through the penetration tunnel, wherein the determined local UDP port is included in the encapsulation header information of the second penetration packet; The step S24 comprises: The penetration server module parses the second penetration packet to obtain the local UDP port, queries the mapping relationship between the port used by the SIP proxy module internally and the local UDP port of the penetration client, and determines the port used by the SIP proxy module internally as a first port; The penetration server module replies a response SIP packet to the SIP proxy module through the determined first port; The SIP proxy module queries the session identifier in the response SIP packet replied by the penetration server module, and obtains the IP address and port of the external SIP terminal; The SIP proxy module forwards the response SIP packet replied by the penetration server module to the external SIP terminal.

6. A communication system for implementing a one-number multi-terminal service, characterized by The IP-PBX comprises a first memory and a first processor, and the penetration server comprises a second memory and a second processor. The first memory and the second memory store at least one program, and the at least one program is executed by the first processor and the second processor respectively to implement the communication method for realizing one-number multi-terminal service according to any one of claims 1 to 5.

7. An IP-PBX included in the communication system for realizing one-number multi-terminal service according to claim 6.

8. A penetration server included in the communication system for realizing one-number multi-terminal service according to claim 6.

9. A computer-readable storage medium, characterized in that, The storage medium stores at least one program, and the at least one program is executed by the processor to implement the communication method for realizing one-number multi-terminal service according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Method for modifying media literacy in SIP session and SIP truck gateway

    CN102387124A

  • Calling method of telephone traffic system and telephone traffic system

    CN114401252A