RTP data packet transmission method, medium, product and IPPBX based on IPPBX

By configuring the comfort noise payload hidden configuration identifier in IPPBX and modifying the static encoding of RTP packets, the problem of communication discontinuity and stability in network environments that do not support Comfort Noise Payload is solved, and communication in these environments is realized Continuity and stability.

CN119052216BActive Publication Date: 2024-12-31XIAMEN XINGZONG DIGITAL TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411514330.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-29
Publication Date
2024-12-31
Estimated Expiration
2044-10-29

AI Technical Summary

Technical Problem

In network environments that do not support Comfort Noise Payload, RTP packet transmission is at risk of degradation in communication quality or failure of connections. Especially in some operator networks, Comfort Noise Payload may be filtered or not recognized, resulting in discontinuity of communication Sex and stability issues.

Method used

Configure the comfort noise payload hidden configuration identifier in IPPBX and set its value to hide the comfort noise payload when communicating with the operator's relay router. Create a new RTP packet by modifying the static encoding to ensure that it does not Continuity and stability of communication in environments that support Comfort Noise Payload.

Benefits of technology

By hiding the comfortable noise payload of RTP packets, the continuity and stability of communication in network environments that do not support Comfort Noise Payload is ensured, and the limitations on data packets are avoided by the network environment and the communication quality is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119052216B_ABST
    Figure CN119052216B_ABST
Patent Text Reader

Abstract

The present invention provides an RTP data packet transmission method, medium, product and IPPBX based on IPPBX, wherein the IPPBX is not mapped to the public network of the operator, the IPPBX establishes a SIP link mapping with the operator through a relay router, and a comfort noise payload hiding configuration identifier is set on the IPPBX, and the identifier is used to identify whether to hide the comfort noise payload. The method includes: when the IPPBX is bound to the relay router, the value of the comfort noise payload hiding configuration identifier is set to hide the comfort noise payload; when the IPPBX is to send a first RTP data packet containing a comfort noise payload to the relay router, the static coding of the payload in the first RTP data packet is modified, and the modified static coding is used to assemble and generate a second RTP data packet, and the second RTP data packet is sent. Using the above technical solution, the continuity and stability of communication in a network environment that does not support the comfort noise payload can be ensured by hiding the comfort noise payload.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication using IPPBX, and in particular to an RTP data packet transmission method, medium, product and IPPBX based on IPPBX. Background Art

[0002] With the development of Internet communication technology, the Real-Time Transport Protocol (RTP) has become an indispensable part of audio and video communication. The RTP protocol transmits multimedia data through IP networks and is widely used in scenarios such as VoIP and video conferencing. However, the existence of Network Address Translation (NAT) devices poses challenges to point-to-point (P2P) communication. In order to maintain the active state of NAT mapping, it is usually adopted to send RTP packets with a comfort noise payload, namely Comfort Noise Payload (CNP). Although this method is effective, not all network environments support Comfort Noise Payload, especially in some operator networks, this payload may be filtered or not recognized, resulting in reduced communication quality or connection failure.

[0003] In addition, as cybersecurity awareness increases, some network environments may restrict non-standard or unexpected data packets to prevent potential network attacks or abuse. This further limits the versatility of Comfort Noise Payload in all network environments. Summary of the invention

[0004] The embodiments of the present invention provide an RTP data packet transmission method, medium, product and IPPBX based on IPPBX, so as to ensure the continuity and stability of communication in a network environment that does not support Comfort Noise Payload by hiding Comfort Noise Payload of RTP data packets.

[0005] In order to achieve the above-mentioned purpose, on the one hand, a RTP data packet transmission method based on IPPBX is provided, wherein the IPPBX is not mapped to the public network of the operator, the IPPBX is registered to the server of the operator through a relay router provided by the operator, and a SIP link mapping between the IPPBX and the server of the operator is established through the relay router, a comfort noise payload hiding configuration identifier is set on the IPPBX, and the value of the comfort noise payload hiding configuration identifier is used to identify whether to hide the comfort noise payload, and the RTP data packet transmission method includes:

[0006] When the IPPBX is bound to the relay router, the value of the comfort noise payload hiding configuration identifier is set to hide the comfort noise payload;

[0007] When the IPPBX is to send a first RTP data packet containing a comfort noise payload to the relay router, the static code corresponding to the comfort noise payload in the first RTP data packet is modified to a static code corresponding to the selected first payload type, a second RTP data packet is generated by assembling using the static code corresponding to the first payload type, and the second RTP data packet is sent to the relay router; wherein the first payload type is not a comfort noise payload type.

[0008] Preferably, modifying the static coding corresponding to the comfort noise payload in the first RTP data packet to a static coding corresponding to the selected first payload type comprises:

[0009] If the IPPBX has ever performed RTP interaction with the relay router, the payload type used in the most recent RTP interaction between the IPPBX and the relay router is selected as the first payload type;

[0010] If the IPPBX has not performed RTP interaction with the relay router, a matching audio and / or video encoding is selected from the audio and / or video encodings negotiated between the IPPBX and the relay router, and the payload type mapped by the selected matching audio and / or video encoding is used as the first payload type.

[0011] Preferably, in the RTP data packet transmission method based on IPPBX, the scenario in which the IPPBX is to send the first RTP data packet containing the comfort noise payload to the relay router includes one or more of the following:

[0012] The IPPBX needs to actively send packets to the relay router for hole punching; and / or,

[0013] The IPPBX needs to trigger a scenario in which the comfort noise payload keep-alive mechanism is used.

[0014] Preferably, the RTP data packet transmission method based on IPPBX, selecting a matching audio and / or video encoding from the audio and / or video encoding negotiated between the IPPBX and the relay router is:

[0015] Selecting the best audio and / or video encoding from the audio and / or video encodings negotiated between the IPPBX and the relay router;

[0016] The optimal audio and / or video encoding is: the first encoding included in the 200 OK replied by the IPPBX during the negotiation between the IPPBX and the relay router, which is the same as the encoding included in the call request received by the IPPBX from the relay router.

[0017] On the other hand, a computer-readable storage medium is provided, wherein at least one program is stored in the storage medium, and the at least one program is executed by a processor to implement any of the RTP data packet transmission methods based on IPPBX as described above.

[0018] On the other hand, a computer program product is provided, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements any of the above-described RTP data packet transmission methods based on IPPBX.

[0019] On the other hand, an IPPBX is provided, wherein the IPPBX uses any of the above-described RTP data packet transmission methods based on IPPBX implementation to perform RTP interaction with a relay router of an operator.

[0020] The above technical solution has the following technical effects:

[0021] The technical solution of the embodiment of the present invention realizes hiding of the comfort noise payload by configuring a comfort noise payload hiding configuration identifier for hiding the comfort noise payload of the RTP data packet in the IPPBX, and setting the value of the identifier to hide the comfort noise payload in the communication with the operator's relay router, thereby ensuring the continuity and stability of communication in a network environment that does not support the Comfort Noise Payload. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] Figure 1 A schematic diagram of a flow chart of an RTP data packet transmission method based on IPPBX according to an embodiment of the present invention;

[0023] Figure 2 The application flow diagram of the RTP data packet transmission method based on IPPBX according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0024] To further illustrate the various embodiments, the present invention provides drawings. These drawings are part of the disclosure of the present invention, which are mainly used to illustrate the embodiments and can be used in conjunction with the relevant descriptions in the specification to explain the operating principles of the embodiments. With reference to these contents, a person of ordinary skill in the art should be able to understand other possible implementations and advantages of the present invention. The components in the figures are not drawn to scale, and similar component symbols are generally used to represent similar components.

[0025] The present invention will now be further described with reference to the accompanying drawings and specific implementation methods.

[0026] Embodiment 1:

[0027] Figure 1 The present invention is a flowchart of an RTP data packet transmission method based on IPPBX according to an embodiment of the present invention. In this embodiment, the IPPBX is in an internal private network environment, which is not mapped to the public network of the operator, and its internal call service is not mapped to the public network; the IPPBX is registered with the operator's server through the relay router provided by the operator, and the relay router will automatically perform NAT mapping according to the packet sending; the IPPBX establishes a SIP link mapping with the operator's server through the relay router, and a comfort noise payload hiding configuration flag is set on the IPPBX, and the value of the comfort noise payload hiding configuration flag is used to identify whether to hide the comfort noise payload. The RTP data packet transmission method of this embodiment includes:

[0028] When the IPPBX is bound to the trunk router, the value of the comfort noise payload hiding configuration flag is set to hide the comfort noise payload;

[0029] When the IPPBX wants to send a first RTP data packet containing a comfort noise payload to a relay router, the static code corresponding to the comfort noise payload in the first RTP data packet is modified to a static code corresponding to the selected first payload type, a second RTP data packet is generated by assembling the static code corresponding to the first payload type, and the second RTP data packet is sent to the relay router; wherein the first payload type is not a comfort noise payload type.

[0030] Further, modifying the static code corresponding to the comfort noise payload in the first RTP data packet to a static code corresponding to the selected first payload type includes:

[0031] If the IPPBX has ever interacted with the relay router through RTP, the payload type used in the most recent RTP interaction between the IPPBX and the relay router is selected as the first payload type; if the IPPBX has never interacted with the relay router through RTP, a matching audio and / or video encoding is selected from the audio and / or video encodings negotiated between the IPPBX and the relay router, and the payload type mapped to the selected audio and / or video encoding is selected as the first payload type. The matching encoding is the encoding supported by both the IPPBX and the relay router.

[0032] Those skilled in the art will appreciate that the main concept of the present invention is to provide an IPPBX on which a comfort noise payload hiding configuration identifier for hiding a comfort noise payload is introduced; and when the comfort noise payload needs to be hidden, the comfort noise payload is hidden to ensure the continuity and stability of communication; in a specific implementation, there may be multiple ways to hide the comfort noise payload. In the RTP data packet, the payload type corresponding to the comfort noise payload is statically coded as 13, and this 13 may be changed to any selected static code corresponding to other payload types according to the specific scenario to assemble an RTP data packet sent to the relay router.

[0033] In a specific implementation, the scenario in which the IPPBX sends the first RTP data packet containing the comfort noise payload to the relay router includes one or more of the following:

[0034] The scenario where the IPPBX needs to actively send packets to the above-mentioned relay routers to punch holes; and / or,

[0035] Scenarios where the IPPBX needs to trigger a keep-alive mechanism using the comfort noise payload.

[0036] Among them, the scenarios where the IPPBX needs to actively send packets to the above-mentioned relay router to punch holes include: because the IPPBX is not mapped to the operator's public network, when the phone under the IPPBX communicates with the external client under the public network, the IPPBX can send RTP packets to the operator's relay router, but cannot receive the feedback sent by the external client through the operator.

[0037] Among them, the scenarios in which the IPPBX needs to trigger the keep-alive mechanism using the comfort noise payload include: for a call between an internal phone under the IPPBX as the caller and an external client under the public network as the called party, the call is connected, but the IPPBX does not receive the RTP packet sent by the caller.

[0038] The scenario in which the IPPBX needs to actively send packets to the relay router to punch holes can be any scenario in which the IPPBX needs to actively send packets to the relay router to punch holes known to those skilled in the art; the scenario in which the IPPBX needs to trigger a keep-alive mechanism using a comfort noise payload can be any scenario in which the IPPBX needs to trigger a keep-alive mechanism using a comfort noise payload known to those skilled in the art; the details will not be repeated here.

[0039] Embodiment 2:

[0040] This embodiment describes the process of establishing SIP link mapping between the IPPBX and the operator's server and the process of hiding the comfort noise payload when the IPPBX needs to trigger the RTP packet containing the comfort noise payload. Specifically, the following steps are included:

[0041] 1. The IPPBX initiates a registration request to the operator through the private network, such as by sending a registration packet (REGISTER). Since the IPPBX is not NAT mapped, the address in the contact field in the REGISTER is the private network address + port of the IPPBX.

[0042] 2. The registration packet (REGISTER) reaches the router through the IPPBX, and the router then forwards the registration packet to the operator.

[0043] 3. The operator receives the registration package, but the address resolved to the contact is a private network address. In this case, the operator does not record the address in the contact, but records the incoming address + port of the registration package REGISTER, that is, the public network address + port automatically mapped by the router.

[0044] 4. The operator performs authentication based on REGISTER. After authentication, it sends confirmation information to the router through the address of the incoming packet, such as sending a 200 OK message. Then, the router forwards the confirmation information packet to the IPPBX based on the previous mapping. At this point, the SIP link mapping is completed.

[0045] After the SIP link mapping is completed, the IPPBX end ensures that the SIP link remains effective on the router through the selected keepalive mechanism; in a specific implementation, the IPPBX end enables the quality function and continuously sends OPTIONS packets to the operator to keep the SIP link alive, that is, to ensure that the link remains effective on the router.

[0046] 5. At this time, the operator's server can receive external calls; specifically, when a phone under the IPPBX, such as an internal phone, wants to call a client, i.e., a terminal, under the public network, the phone sends a call request, i.e., INVITE, to the IPPBX. The IPPBX forwards the INVITE to the operator, i.e., the operator's server, through a relay router. After the operator sends the INVITE sent by the IPPBX to the above-mentioned terminal and receives the confirmation from the terminal, the operator forwards the INVITE sent by the above-mentioned terminal to the caller to the IPPBX through the relay router, so as to forward the data packet to the IPPBX through the above-mentioned SIP link.

[0047] 6. After receiving the INVITE sent by the relay router, the IPPBX negotiates the code carried in the INVITE with the code supported by itself. After the negotiation is successful, the INVITE is sent to the called party through the relay router.

[0048] 7. After the called party receives the INVITE sent by the IPPBX through the relay router, it answers the call and replies to the IPPBX with confirmation information, such as 200 OK. Then the IPPBX generates a confirmation message, such as 200 OK, to the operator, i.e. the operator's server. At this time, the calling and called parties should be able to communicate with each other through RTP, i.e., both parties can hear each other's voices. However, since the IPPBX is in a private network environment and is not mapped to the operator's public network, the connection address in the c line of the Session Description Protocol (SDP) in the confirmation message (such as 200 OK) that the IPPBX replies to the operator is a private network address + port. This c line corresponds to the connection data line that describes the session information. For the operator's server, this address is unreachable, so the operator's RTP packet cannot be sent to the IPPBX. At this time, if the called party does not actively send RTP, the IPPBX needs to actively send packets to punch holes in order to connect the calling and called parties. In a specific implementation, the IPPBX implements active packet punching to the called party by sending a CNG packet, ie, an RTP data packet with a comfort noise payload.

[0049] 8. According to RFC6263, RTP Packet with Comfort Noise Payload is recommended as an RTP keep-alive mechanism. In a specific implementation, after the caller and the called party are connected, if the IPPBX does not receive the RTP packet from the caller, the IPPBX will trigger the keep-alive mechanism of the RTP packet with Comfort Noise Payload. The host is a phone registered with the IPPBX.

[0050] However, some network environments may restrict non-standard or unexpected data packets to prevent potential network attacks or abuse; this further limits the versatility of Comfort Noise Payload in all network environments and will cause RTP Packet with Comfort Noise Payload to be discarded; according to RFC3350, RTP uses the payload type (PT), that is, the PT field in the RTP packet header to identify the type of RTP payload; specifically, RFC3389 defines the static encoding corresponding to RTP Packet with Comfort Noise Payload as 13, that is, the PT value corresponding to the comfort noise payload is 13.

[0051] 9. In view of the above problems, in an embodiment of the present invention, the IPPBX introduces a comfort noise payload hiding configuration flag for hiding the comfort noise payload (Comfort NoisePayload) for the designated relay in a specific implementation for the relay router provided by the operator to the IPPBX, for example, in the form of hide_cng. In other implementations, the flag may be represented in other ways; in the IPPBX, hide_cng = yes is configured to configure the flag value to hide the comfort noise payload, and then the relay router is bound. In this way, when the IPPBX performs RTP interaction with the relay router, the comfort noise payload will be hidden. Therefore, when the IPPBX needs to send an RTP data packet with a comfort noise payload to the relay router, for example, when the IPPBX needs to actively send a packet to punch a hole or when the IPPBX needs to use an RTP data packet with a comfort noise payload to implement keep-alive, the IPPBX can hide the comfort noise payload to avoid the restriction of the network environment that does not support the comfort noise payload on the data packet, thereby improving the continuity and stability of communication.

[0052] In a specific implementation, the specific hiding methods include:

[0053] When IPPBX is ready to send Comfort Noise Payload, it will determine whether IPPBX has previously interacted with the relay router via RTP. If so, the payload type mapped by the code used in the previous RTP interaction will be used to replace Comfort Noise Payload as the payload type (payloadtype) in the RTP packet. In the specific implementation, the PT static code 13 corresponding to Comfort Noise Payload in the RTP packet is changed to the static code corresponding to the payload type mapped by the code used in the previous RTP interaction. The static code is different from 13. The modified payload static code is used to assemble the RTP data packet to be sent. An example of this scenario is: the other end of the call (host or called end) is in the call holding state, that is, the other end holds the call. In this scenario, if the called end does not actively send packets to the calling end, and the calling end does not actively send packets to the called end, IPPBX needs to send CNG packets to punch holes to the called end. In one example, if the audio codec used by the calling and called parties before the call is held is not alaw-0 for transmission, and if the IPPBX has no RTP source to send to the operator's server due to the called party's hold call, then the payload type corresponding to the alaw codec, such as payload0, that is, static code 0, is still used to construct the reactivated RTP.

[0054] If the IPPBX and the relay router have not interacted with each other via RTP packets before, the IPPBX and the relay router will use a payload type mapped by one of the codes negotiated by both parties, such as a code that is successfully negotiated and supported by both parties, to replace the comfort noise payload type, and use the static code corresponding to the replaced comfort noise payload type to construct the RTP packet sent to the relay router. An example of this situation is: both the caller and the called party have enabled the RTP keep-alive mechanism, that is, the keep-alive or renewing mechanism through the CNG packet, but the caller and the called party will not send RTP data packets, for example, the phone under the IPPBX is not an internal phone but a phone registered to the IPPBX through the public network. Specifically, such as a scenario where both the caller and the called party need to make a hole.

[0055] Preferably, the payload type mapped by the optimal code in the codes negotiated by both parties is used to replace the comfort noise payload type. The optimal code, i.e., the optimal audio and / or video code, is: during the negotiation between the IPPBX and the relay router, the first code contained in the 200 OK replied by the IPPBX is the same as the code contained in the call request (INVITE) received by the IPPBX from the relay router; i.e., the first code contained in the 200 OK is the same as the code contained in the INVITE received by the IPPBX. In one example, the code contained in the INVITE sent by the operator is: alaw-0, g729-18; the code contained in the 200 OK replied by the PBX is g729-18, then the code g729 is the optimal code in the negotiation, and the static code of the payload corresponding to g729, i.e., the corresponding PT value is 18, i.e., payload18, i.e., the payload type with a PT type value of 18 is used to reconstruct the RTP packet.

[0056] Embodiment three:

[0057] Figure 2 The following is a schematic diagram showing the application flow of the RTP data packet transmission method based on IPPBX according to an embodiment of the present invention. Figure 2 The RTP data packet transmission method based on IPPBX of this embodiment includes the following steps:

[0058] The IPPBX receives the first INVITE request from the caller;

[0059] The IPPBX authenticates the caller, that is, determines whether the caller is an extension of the IPPBX and whether the authentication is successful. If the authentication fails, a 401 message is sent and the call establishment fails. If the authentication passes, the SDP in the first INVITE request is parsed for codec negotiation.

[0060] The IPPBX determines whether the parsed code used by the caller and the code supported locally by the IPPBX intersect; if not, the code negotiation fails and a 488 call establishment failure is replied; if yes, the intersection of the codes is taken and a second INVITE is sent to the operator's relay router to send the second INVITE to the called party;

[0061] Whether the IPPBX receives the confirmation message from the called party through the relay router, that is, whether it receives 200 OK; if not, the call establishment fails and an error code is sent; if yes, a 200 OK is sent to the caller;

[0062] IPPBX determines whether it has received the response, i.e., ACK, from the caller. If not, it triggers the retransmission mechanism of 200 OK. If yes, it obtains the optimal encoding negotiated with the relay router and sets the optimal encoding to the RTP instance. Some phone terminals will reply with multiple encodings in the 200 OK. The optimal encoding here refers to the first encoding in the 200 OK replied by IPPBX to the relay router and the same encoding in the third INVITE sent by the relay router to IPPBX. In other implementations, any encoding supported by both parties can also be selected as the optimal encoding.

[0063] Determine whether the relay router has RTP keepalive enabled. If not, both parties can perform RTP interaction normally. If yes, further determine whether the called party's RTP data packet is received within the predetermined time period. If yes, it means that the calling party and the called party can perform RTP interaction, and both parties can perform RTP interaction normally. If not, the IPPBX triggers the sending of CNG packets, i.e. RTP packets with a comfortable noise payload, to the relay router to perform hole punching for the called party.

[0064] IPPBX determines whether it has enabled hiding of the comfort noise payload, that is, whether the hiding configuration flag of the comfort noise payload is set to hide the comfort noise payload; if not, it directly sends an RTP data packet with a comfort noise payload to the relay router, that is, sends an RTP packet with paytype=13 and payload=7f (indicating that an empty frame is sent); if so, it further determines whether an RTP data packet has been sent to the relay router before? If an RTP data packet has been sent, the encoding used when the RTP packet was sent last time is obtained; if an RTP data packet has not been sent to the relay router before, it further determines whether there is an optimal encoding, which is the first encoding contained in the confirmation information of the third INVITE reply sent by the IPPBX to the relay router, such as 200 OK, which is the same as any encoding contained in the third INVITE; if it exists, the optimal encoding is obtained;

[0065] According to the current scenario, the encoding used in the last RTP packet sent or the type of payload mapped by the optimal encoding in the negotiation between the IPPBX and the relay router is obtained, and the RTP data packet is assembled using the mapped payload type, and the assembled RTP data packet is sent to the called party for hole punching.

[0066] Embodiment 4:

[0067] The present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the above method in the embodiment of the present invention are implemented.

[0068] If the module / unit integrated in the computer unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present invention implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps of the above-mentioned various method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may include: any entity or device that can carry the computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory) and software distribution medium. It should be noted that the content contained in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.

[0069] Embodiment five:

[0070] The present invention also provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the steps of the method described above are implemented.

[0071] Embodiment six:

[0072] The present invention also provides an IPPBX, on which a comfort noise payload hiding configuration identifier for hiding CNG packets, i.e., RTP data packets with comfort noise payloads, is set. The IPPBX uses the RTP data packet transmission method based on IPPBX as described above to perform RTP interaction with the operator's relay router.

[0073] Although the present invention has been specifically shown and described in conjunction with the preferred embodiments, it should be understood by those skilled in the art that various changes may be made to the present invention in form and details without departing from the spirit and scope of the present invention as defined by the appended claims, all of which are within the scope of protection of the present invention.

Claims

1. A RTP data packet transmission method based on IPPBX, characterized in that: The IPPBX is not mapped to the public network of the operator. The IPPBX is registered to the server of the operator through a relay router provided by the operator, and a SIP link mapping is established between the IPPBX and the server of the operator through the relay router. A comfort noise payload hiding configuration identifier is set on the IPPBX. The value of the comfort noise payload hiding configuration identifier is used to identify whether to hide the comfort noise payload. The RTP data packet transmission method includes: When the IPPBX is bound to the relay router, the value of the comfort noise payload hiding configuration identifier is set to hide the comfort noise payload; When the IPPBX is about to send a first RTP data packet containing a comfort noise payload to the relay router, modify the static code corresponding to the comfort noise payload in the first RTP data packet to a static code corresponding to the selected first payload type, assemble and generate a second RTP data packet using the static code corresponding to the first payload type, and send the second RTP data packet to the relay router; wherein the first payload type is not a comfort noise payload type; Among them, modifying the static code corresponding to the comfort noise payload in the first RTP data packet to a static code corresponding to the selected first payload type includes: If the IPPBX has ever performed RTP interaction with the relay router, the payload type used in the most recent RTP interaction between the IPPBX and the relay router is selected as the first payload type; If the IPPBX has not performed RTP interaction with the relay router, a matching audio and / or video encoding is selected from the audio and / or video encodings negotiated between the IPPBX and the relay router, and the payload type mapped by the selected matching audio and / or video encoding is used as the first payload type.

2. The RTP data packet transmission method based on IPPBX according to claim 1 is characterized in that: The scenario in which the IPPBX sends the first RTP data packet containing the comfort noise payload to the relay router includes one or more of the following: The IPPBX needs to actively send packets to the relay router for hole punching; and / or, The IPPBX needs to trigger a scenario in which a keep-alive mechanism using a comfort noise payload is used.

3. The RTP data packet transmission method based on IPPBX according to claim 1 is characterized in that: Selecting a matching audio and / or video codec from the audio and / or video codecs negotiated between the IPPBX and the relay router is: Selecting the best audio and / or video encoding from the audio and / or video encodings negotiated between the IPPBX and the relay router; The optimal audio and / or video encoding is: the first encoding included in the 200 OK replied by the IPPBX during the negotiation between the IPPBX and the relay router, which is the same as the encoding included in the call request received by the IPPBX from the relay router.

4. 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 a processor to implement the RTP data packet transmission method based on IPPBX as claimed in any one of claims 1 to 3.

5. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the RTP data packet transmission method based on IPPBX as claimed in any one of claims 1 to 3 is implemented.

6. An IPPBX, characterized in that: The IPPBX uses the RTP data packet transmission method based on IPPBX as described in any one of claims 1 to 3 to perform RTP interaction with the operator's relay router.

Citation Information

Patent Citations

  • WebRTC-based IPPBX call pressure test method and device, and medium

    CN117201376A

  • IPPBX network connection control method and device, and storage medium

    CN118368273A

  • Audio communications system using networking protocols

    US20100046504A1

  • Identifying media network flows that use dynamic codec identifications

    US9264288B1