- Table of Contents
- Related Documents
-
Title | Size | Download |
---|---|---|
04-SIP commands | 201.06 KB |
display voice ip address trusted list
display voice sip register-status
ip address trusted authenticate
voice-class sip options-keepalive
voice-class sip session refresh
voice-class sip early-offer forced
SIP commands
The following compatibility matrix shows the support of hardware platforms for SIP:
Hardware |
SIP compatibility |
MSR810, MSR810-W, MSR810-W-DB, MSR810-LM, MSR810-W-LM, MSR810-10-PoE, MSR810-LM-HK, MSR810-W-LM-HK, MSR810-LMS-EA |
MSR810, MSR810-W, MSR810-W-DB, MSR810-LM, MSR810-W-LM, MSR810-10-PoE, MSR810-LM-HK, MSR810-W-LM-HK: Yes MSR810-LMS-EA: No |
MSR810-LMS, MSR810-LUS |
No |
MSR2600-6-X1 |
No |
MSR2600-10-X1 |
Yes |
MSR 2630 |
Yes |
MSR3600-28, MSR3600-51 |
Yes |
MSR3600-28-SI, MSR3600-51-SI |
No |
MSR3600-28-X1, MSR3600-28-X1-DP, MSR3600-51-X1, MSR3600-51-X1-DP |
No |
MSR3610-I-DP, MSR3610-IE-DP |
No |
MSR3610-X1, MSR3610-X1-DP, MSR3610-X1-DC, MSR3610-X1-DP-DC |
Yes |
MSR 3610, MSR 3620, MSR 3620-DP, MSR 3640, MSR 3660 |
Yes |
MSR3610-G, MSR3620-G |
No |
To support SIP, some device models require the Voice Software License. For more information, see license management in Fundamentals Configuration Guide.
address sip
Use address sip to configure a call destination IP address for a VoIP entity.
Use undo address sip to restore the default.
Syntax
address sip { dns domain-name port port-number | ip ip-address [ port port-number ] | proxy }
undo address sip { dns | ip | proxy }
Default
No call destination IP address exists.
Views
VoIP entity view
Predefined user roles
network-admin
Parameters
dns domain-name: Specifies a destination domain name, which consists of case-insensitive strings separated by a dot (for example, aabbcc.com). Each separated string contains no more than 63 characters. A domain name can include letters, digits, hyphens (-), and underscores (_), and has a maximum length of 253 characters.
port port-number: Specifies a destination port by its port number in the range of 1 to 65535. If the ip keyword is specified, the default port number is 5060 for TCP and UDP and 5061 for TLS. If the dns keyword is specified, the destination port number must be configured.
ip ip-address: Specifies a destination IP address.
proxy: Contacts the SIP proxy server to obtain the destination IP address.
Examples
# Configure the call destination IP address as 3.3.3.3 for VoIP entity 10.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 10 voip
[Sysname-voice-dial-entity10] address sip ip 3.3.3.3
asserted-id
Use asserted-id to add the P-Asserted-Identity or P-Preferred-Identity header field to outgoing SIP messages.
Use undo asserted-id to restore the default.
Syntax
asserted-id { pai | ppi }
undo asserted-id
Default
Outgoing SIP messages do not carry the P-Asserted-Identity or P-Preferred-Identity header field in outgoing SIP messages.
Views
SIP view
Predefined user roles
network-admin
Parameters
pai: Adds the P-Asserted-Identity header field to outgoing SIP messages.
ppi: Adds the P-Preferred-Identity header field to outgoing SIP messages.
Examples
# Add the P-Asserted-Identity header field to outgoing SIP messages.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] asserted-id pai
bind
Use bind to configure global source interface binding for outbound SIP messages or media packets.
Use undo bind to restore the default.
Syntax
bind { control | media } source-interface interface-type interface-number
undo bind { control | media }
Default
The egress interface is used as the source interface of outbound SIP messages or media packets.
Views
SIP view
Predefined user roles
network-admin
Parameters
control: Specifies outbound SIP messages.
media: Specifies outbound media packets.
source-interface interface-type interface-number: Uses the specified interface as the source interface of outbound SIP messages or media packets. The specified interface must be a Layer 3 Ethernet interface, VLAN interface, loopback interface, or dialer interface.
Usage guidelines
The following table describes how source interface binding works in different conditions:
Condition |
Result |
Configure a new source interface when ongoing calls exist. |
· The new source interface takes effect for new SIP media sessions but does not take effect for existing SIP media sessions. · The new source interface immediately takes effect for all SIP signaling sessions. |
The bound source interface is shut down. |
The source interface binding does not take effect, and the default setting is restored. |
The IP address of the bound source interface or the bound source interface is removed. |
The source interface binding does not take effect, and the default setting is restored. |
The physical or link layer state of the bound interface is down. |
The source interface binding does not take effect, and the default setting is restored. |
The bound source interface obtains a new IP address from the DHCP or PPPoE server. |
The new IP address is used as the source IP address. |
Configure a new source interface during SIP registration. |
The new source interface takes effect for new registrations. |
You can configure source interface binding both globally (by using the bind command in SIP view) and for a specific VoIP entity (by using the voice-class sip bind command in VoIP entity view). The configuration in VoIP entity view takes precedence over the global configuration. A VoIP entity uses the global configuration only when source interface binding is not configured in VoIP entity view.
If the specified source interface does not have an IP address or its IP address is invalid, the device uses the default configuration.
Examples
# Specify Dialer 0 as the source interface for outbound SIP messages.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] bind control source-interface dialer 0
Related commands
voice-class sip bind
crypto
Use crypto to configure an SSL client or server policy to be used by TLS.
Use undo crypto to delete the SSL client or server policy used by TLS.
Syntax
crypto { ssl-client-policy client-policy-name | ssl-server-policy server-policy-name }
undo crypto { server-policy | client-policy }
Default
No SSL client or server policy is configured for TLS.
Views
SIP view
Predefined user roles
network-admin
Parameters
ssl-client-policy client-policy-name: Specifies an SSL client policy by its name, a case-insensitive string of 1 to 31 characters.
ssl-server-policy server-policy-name: Specifies an SSL server policy by its name, a case-insensitive string of 1 to 31 characters.
Usage guidelines
To enable the device to receive TLS requests, specify the SSL client and server policies to be used by TLS and then enable the TLS listening port by using the transport command.
You must disable the TLS listening port before you can use a new SSL server policy or modify the configuration of the existing SSL server policy.
If you use a new SSL client policy or modify the configuration of the existing SSL client policy, the new policy applies only to new TLS connections. Existing TLS connections still use the original SSL client policy.
Examples
# Configure TLS to use the SSL server policy named Server1 and the SSL client policy named Server2.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] crypto ssl-server-policy Server1
[Sysname-voice-sip] crypto ssl-client-policy Server2
Related commands
transport
display voice ip address trusted list
Use display voice ip address trusted list to display the trusted node list.
Syntax
display voice ip address trusted list
Views
Any view
Predefined user roles
network-admin
network-operator
Usage guidelines
This command displays trusted nodes configured by using the ip command and call destination IP addresses configured by using the address sip command.
Examples
# Display the trusted node list.
<Sysname> display voice ip address trusted list
IP address trusted authentication: Enabled
VoIP entity IP addresses:
Entity tag State SIP IP address
---------- ----- --------------
20 Up 192.168.4.110
53232 Down 192.168.4.210
55555 Up 192.168.4.210
9613 Up 192.168.4.125
IP address trusted list:
192.168.4.0 255.255.255.0
192.168.5.120 255.255.255.255
Table 1 Command output
Field |
Description |
IP address trusted authentication |
Whether IP address trusted authentication is enabled: · Enabled. · Disabled. |
VoIP entity IP addresses |
Trusted IP addresses for VoIP entities. |
Entity tag |
Tag of a VoIP entity. |
State |
Status of a VoIP entity: · Up. · Down. |
SIP IP address |
Call destination IP address of a VoIP entity. |
IP address trusted list |
List of trusted nodes. |
Related commands
address sip
ip
ip address trusted authenticate
display voice sip call
Use display voice sip call to display information about SIP calls.
Syntax
display voice sip call
Views
Any view
Predefined user roles
network-admin
network-operator
Examples
# Display information about SIP calls.
<Sysname> display voice sip call
SIP UAC Call Information
Call 1
Call ID: [email protected]
Call status: Connected
Calling number: 77201
Called number: 30
Control block ID: 8
Local IP address: 200.1.1.36: 5060
Remote IP address: 200.1.1.30: 5060
Media stream
Media status: Send and receive
Negotiated codec: g729r8
Codec payload type: 18
Codec payload size: 30
Codec transparent: Disabled
Media mode: Flow-through
Negotiated DTMF-relay: Inband-voice
Local IP address: 200.1.1.36: 16316
Remote IP address: 200.1.1.30: 16642
Number of SIP UAC calls: 1
Table 2 Command output
Field |
Description |
Call status |
Call status: · Originating. · Answering. · Connected. · Releasing. |
Local IP address |
Source IP address and port number for SIP messages. |
Remote IP address |
Destination IP address and port number for SIP messages. |
Negotiated codec |
Negotiated codec: · g711alaw. · g711ulaw. · g723r53. · g723r63. · g726r16. · g726r24. · g726r32. · g726r40. · g729a. · g729br8. · g729r8. This field displays N/A if codec negotiation fails or no codec is used. |
Media status |
Media status: · Send and receive. · Send only. · Receive only. · Inactive. · None. |
Media mode |
Whether media flow around is enabled: · Flow-around—Enabled. · Flow-through—Disabled. |
Negotiated DTMF-relay |
Negotiated type of DTMF signaling: · Inband-voice—Inband DTMF signaling. · Outband-SIP—SIP mode for out-of-band DTMF signaling. · Outband-NTE—NTE mode for out-of-band DTMF signaling. |
Number of SIP UAC calls |
Number of SIP calls initiated by the device that acts as a UAC. |
Number of SIP UAS calls |
Number of SIP calls initiated by the device that acts as a UAS. |
display voice sip connection
Use display voice sip connection to display information about SIP connections.
Syntax
display voice sip connection { tcp | tls }
Views
Any view
Predefined user roles
network-admin
network-operator
Parameters
tcp: Specifies TCP connections.
tls: Specifies TLS connections.
Usage guidelines
This command displays information about established SIP connections and SIP connections that are being established.
Examples
# Display information about TCP connections.
<Sysname> display voice sip connection tcp
Conn-Id Local-IP Local-Port Remote-IP Remote-Port Conn-State
----------------------------------------------------------------------------------
569 100.1.1.84 1593 100.1.1.100 5060 Established
570 100.1.1.84 1594 100.1.1.101 5060 Established
571 100.1.1.84 1595 100.1.1.81 5060 Established
572 192.168.0.82 1596 192.168.0.81 5060 Established
# Display information about TLS connections.
<Sysname> display voice sip connection tls
Conn-Id Local-IP Local-Port Remote-IP Remote-Port Conn-State
----------------------------------------------------------------------------------
73 192.168.0.202 1086 192.168.0.132 5061 Established
Table 3 Command output
Field |
Description |
Conn-Id |
Connection ID. |
Conn-State |
Connection state: · Connecting. · Established. |
Related commands
reset voice sip connection
display voice sip map
Use display voice sip map to display mappings between PSTN causes and SIP status.
Syntax
display voice sip map { pstn-sip | sip-pstn }
Views
Any view
Predefined user roles
network-admin
network-operator
Parameters
pstn-sip: Displays PSTN cause-to-SIP status mappings.
sip-pstn: Displays SIP status-to-PSTN cause mappings.
Examples
# Display PSTN cause-to-SIP status mappings.
<Sysname> display voice sip map pstn-sip
The PSTN Cause to SIP Status code mapping table:
Index PSTN-Cause SIP-Status Default
---------------------------------------------------
1 1 400* 404
2 2 400* 404
3 3 404 404
4 16 --- ---
5 17 486 486
6 18 408 408
7 19 480 480
8 20 480 480
9 21 403 403
10 22 410 410
11 23 410 410
12 25 500 500
13 26 404 404
14 27 502 502
15 28 484 484
16 29 501 501
17 31 480 480
18 34 503 503
19 38 503 503
20 41 503 503
21 42 503 503
22 47 503 503
23 55 403 403
24 57 403 403
25 58 503 503
26 63 500 500
27 65 488 488
28 70 488 488
29 79 501 501
30 87 403 403
31 88 503 503
32 102 504 504
33 111 500 500
34 127 500 500
Table 4 Command output
Field |
Description |
PSTN-Cause |
PSTN cause code. |
SIP-Status |
SIP status code. If the configured SIP status code is different from the default, it is highlighted with an asterisk. |
Default |
Default SIP status code. |
# Display SIP status-to-PSTN cause mappings.
<Sysname> display voice sip map sip-pstn
The SIP Status code to PSTN Cause mapping table:
Index SIP-Status PSTN-Cause Default
---------------------------------------------------
1 400 41 41
2 401 21 21
3 402 21 21
4 403 21 21
5 404 1 1
6 405 63 63
7 406 79 79
8 407 21 21
9 408 102 102
10 410 22 22
11 413 127 127
12 414 127 127
13 415 79 79
14 416 127 127
15 420 127 127
16 421 127 127
17 423 127 127
18 480 18 18
19 481 41 41
20 482 25 25
21 483 25 25
22 484 28 28
23 485 1 1
24 486 17 17
25 487 127 127
26 488 127 127
27 500 41 41
28 501 79 79
29 502 38 38
30 503 41 41
31 504 102 102
32 505 127 127
33 513 127 127
34 600 17 17
35 603 21 21
36 604 1 1
37 606 58 58
Table 5 Command output
Field |
Description |
SIP-Status |
SIP status code. |
PSTN-Cause |
PSTN cause code. If the configured PSTN cause code is different from the default, it is highlighted with an asterisk. |
Default |
Default PSTN cause code. |
display voice sip register-status
Use display voice sip register-status to display SIP UA registration status information.
Syntax
display voice sip register-status
Views
Any view
Predefined user roles
network-admin
network-operator
Examples
# Display SIP UA registration status information.
<Sysname> display voice sip register-status
Number Entity Registrar Server Expires Status
--------------------------------------------------------------------------------
98 98 192.168.4.240:5060 N/A Offline
1000 0 192.168.4.240:5060 2877 Online
Table 6 Command output
Field |
Description |
Number |
Phone number. |
Entity |
Entity number. This field displays 0 if a SIP trunk account is configured by using the credentials command. |
Registrar Server |
Address of the registrar. |
Expires |
Aging time for the phone number, in seconds. This field displays N/A if the phone number is registering or fails to register. |
Status |
State of the phone number: · Offline. · Online. · Login. · Logout. · DNS-in—DNS query is being performed before the number is registered. · DNS-out—DNS query is being performed before the number is deregistered. |
early-media enable
Use early-media enable to enable early media negotiation.
Use undo early-media enable to disable early media negotiation.
Syntax
early-media enable
undo early-media enable
Default
Early media negotiation is enabled.
Views
SIP view
Predefined user roles
network-admin
Usage guidelines
If this feature is enabled, the terminating device sends a 183 session progress response with media information to the originating device after receiving the request to establish a call. If this feature is disabled, the device sends a 180 ringing response without media information to the originating device.
Examples
# Enable early media negotiation.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] early-media enable
ip
Use ip to specify a trusted node.
Use undo ip to delete trusted nodes.
Syntax
ip ipv4-address [ mask ]
undo ip ipv4-address [ mask ]
Default
No trusted nodes exist.
Views
Trusted node list view
Predefined user roles
network-admin
Parameters
ipv4-address: Specifies a trusted node by its IPv4 address.
mask: Specifies the mask of the IPv4 address. If you do not specify a mask, the 32-bit mask is used.
Examples
# Specify the devices on subnet 1.1.1.0/24 as trusted nodes.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip-server
[Sysname-voice-server] trusted-point ipv4 100.1.1.125
ip address trusted authenticate
Use ip address trusted authenticate to enable IP address trusted authentication.
Use undo ip address trusted authenticate to disable IP address trusted authentication.
Syntax
ip address trusted authenticate
undo ip address trusted authenticate
Default
IP address trusted authentication is disabled. All nodes are regarded as trusted, and the device accepts calls from any nodes.
View
SIP view
Predefined user roles
network-admin
Usage guidelines
After you enable this feature, the device accepts calls only from trusted nodes.
For calls to be successfully established, configure the proxy server, registrars, the DNS server, and the MWI server as trusted nodes.
Examples
# Enable IP address trusted authentication.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] ip address trusted authenticate
ip address trusted list
Use ip address trusted list to enter trusted node list view.
Use undo ip address trusted list to restore the default.
Syntax
ip address trusted list
undo ip address trusted list
Default
No trusted node list exists.
Views
SIP view
Predefined user roles
network-admin
Examples
# Enter trusted node list view
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] ip address trusted list
[Sysname-voice-sip-iptrust-list]
ip qos dscp
Use ip qos dscp to set the global DSCP value for IP packets carrying media streams or signaling.
Use undo ip qos dscp to restore the default.
Syntax
ip qos dscp { dscp-value | dscp-value-set } { media | signaling }
undo ip qos dscp { dscp-value | dscp-value-set } { media | signaling }
Default
The DSCP value for IP packets is ef (101110).
Views
SIP view
Predefined user roles
network-admin
Parameters
dscp-value: Specifies a DSCP value in the range of 0 to 63.
dscp-value-set: Specifies a DSCP value, which can be the keyword af11, af12, af13, af21, af22, af23, af31, af32, af33, af41, af42, af43, cs1, cs2, cs3, cs4, cs5, cs6, cs7, or ef.
media: Applies the DSCP value to IP packets carrying media streams.
signaling: Applies the DSCP value to IP packets carrying signaling.
Table 7 DSCP values
Keyword |
DSCP value in binary |
DSCP value in decimal |
af11 |
001010 |
10 |
af12 |
001100 |
12 |
af13 |
001110 |
14 |
af21 |
010010 |
18 |
af22 |
010100 |
20 |
af23 |
010110 |
22 |
af31 |
011010 |
26 |
af32 |
011100 |
28 |
af33 |
011110 |
30 |
af41 |
100010 |
34 |
af42 |
100100 |
36 |
af43 |
100110 |
38 |
cs1 |
001000 |
8 |
cs2 |
010000 |
16 |
cs3 |
011000 |
24 |
cs4 |
100000 |
32 |
cs5 |
101000 |
40 |
cs6 |
110000 |
48 |
cs7 |
111000 |
56 |
ef |
101110 |
46 |
Usage guidelines
You can configure the ip qos dscp command both globally (in SIP view) and for a specific POTS/VoIP entity (in POTS/VoIP entity view). The configuration in POTS/VoIP entity view takes precedence over the global configuration. A POTS/VoIP entity uses the global configuration only when the ip qos dscp command is not configured in POTS/VoIP entity view.
Examples
# Set the global DSCP value to af41 for IP packets carrying signaling.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] ip qos dscp af41 signaling
Related commands
ip qos dscp (VoIP/POTS entity view)
min-se
Use min-se to set the maximum and minimum session expiration timers.
Use undo min-se to restore the default.
Syntax
min-se time [ session-expires interval ]
undo min-se
Default
Both the maximum and minimum session expiration timers are 1800 seconds.
Views
SIP view
Predefined user roles
network-admin
Parameters
time: Specifies the minimum session expiration time in the range of 90 to 65535 seconds. The minimum session expiration time cannot be greater than the maximum session expiration time.
session-expires interval: Specifies the maximum session expiration time in the range of 90 to 65535 seconds. The default maximum session expiration time equals the minimum session expiration time.
Usage guidelines
You can use this command to set the values of the Min-SE and Session-Expires header fields on a UAC. If you execute this command on a UAS, only the Min-SE header field is set because the UAS copies the Session-Expires header field from the request to the response.
Examples
# Set the minimum session expiration time to 1000 seconds and the maximum session expiration time to 2000 seconds.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] min-se 1000 session-expires 2000
Related commands
session refresh
mki
Use mki to enable support for the Master Key Identifier (MKI) field and set the length of the MKI field.
Use undo mki to restore the default.
Syntax
mki mki-length
undo mki
Default
The MKI field is not supported.
Views
SIP view
Predefined user roles
network-admin
Parameters
mki-length: Specifies the length of the MKI field, in the range of 1 to 128 bytes.
Usage guidelines
This command enables the device to add the MKI field to outgoing SRTP and SRTCP packets and to identify the MKI field in incoming SRTP and SRTCP packets.
This command takes effect only when SRTP is the media stream protocol for SIP calls. To specify SRTP as the medial stream protocol for SIP calls, use the srtp command.
For SIP calls to be established, configure this command on both the originating and terminating devices.
Examples
# Enable support for the MKI field and set the length of the MKI field to 1 byte.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] srtp
[Sysname-voice-sip] mki 1
Related commands
srtp
options-ping
Use options-ping to globally enable in-dialog keepalive.
Use undo options-ping to globally disable in-dialog keepalive.
Syntax
options-ping seconds
undo options-ping
Default
In-dialog keepalive is disabled globally.
View
SIP view
Predefined use roles
network-admin
Parameters
seconds: Specifies the global interval for sending OPTIONS messages during a session, in the range of 60 to 1200 seconds.
Usage guidelines
This command enables the device to periodically send OPTIONS messages at the specified interval to monitor the status of the remote SIP UA during a session. It does not take effect when the session refresh negotiation succeeds before a call is established.
If you disable this feature, the device does not send OPTIONS messages after a call is established.
For a VoIP entity, the entity-specific in-dialog keepalive interval takes priority over the global in-dialog keepalive interval set in SIP view.
Example
# Globally enable in-dialog keepalive and set the interval to 60 seconds for sending OPTIONS messages during a session.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] options-ping 60
Related commands
voice-class sip options-ping
outband sip
Use outband sip to enable out-of-band DTMF signaling.
Use undo outband sip to restore the default.
Syntax
outband sip
undo outband
Default
Inband DTMF signaling is enabled.
Views
POTS entity view
VoIP entity view
Predefined user roles
network-admin
Usage guidelines
If you use out-of-band DTMF signaling, configure the outband sip command on both the calling and called devices.
Examples
# Enable out-of-band DTMF signaling for VoIP entity 10.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 10 pots
[Sysname-voice-dial-entity10] outband sip
privacy
Use privacy to add the Privacy header field to outgoing INVITE requests.
Use undo privacy to restore the default.
Syntax
privacy
undo privacy
Default
Outgoing INVITE requests do not include the Privacy header field.
Views
SIP view
Predefined user roles
network-admin
Examples
# Add the Privacy header field to outgoing INVITE requests.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] privacy
proxy
Use proxy to specify a proxy server.
Use undo proxy to restore the default.
Syntax
proxy { dns domain-name port port-number | ip ip-address [ port port-number ] }
undo proxy { dns | ip }
Default
No proxy servers are specified.
Views
SIP view
Predefined user roles
network-admin
Parameters
dns domain-name: Specifies the domain name of the proxy server, which consists of case-insensitive strings separated by a dot (for example, aabbcc.com). Each separated string contains no more than 63 characters. A domain name can include letters, digits, hyphens (-), and underscores (_), and has a maximum length of 253 characters.
ip ip-address: Specifies the IPv4 address of the proxy server.
port port-number: Specifies the port number of the proxy server, in the range of 1 to 65535. If the ip keyword is specified, the default port number is 5060. If the dns keyword is specified, the destination port number must be configured.
Examples
# Specify the proxy server with IP address 169.54.5.10 and port number 1120.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] proxy ipv4 169.54.5.10 port 1120
# Specify the proxy server with the domain name abc.com and port number 1100.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] proxy dns abc.com port 1100
register-number
Use register-number to configure a POTS entity to register the phone number with the registrar.
Use undo register-number to configure a POTS entity to deregister the phone number with the registrar.
Syntax
register-number
undo register-number
Default
After you complete the SIP registration configuration, a POTS entity registers the phone number with the registrar.
Views
POTS entity view
Predefined user roles
network-admin
Usage guidelines
A registrar cannot store multiple entries for one phone number. If multiple POTS entities on a device have the same phone number, only one POTS entity can register that number with the registrar.
Examples
# Configure POTS entity 10 to deregister the phone number with the registrar.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 10 pots
[Sysname-voice-dial-entity10] match-template 1000
[Sysname-voice-dial-entity10] line 2/1/1
[Sysname-voice-dial-entity10] undo register-number
Related commands
match-template
registrar
Use registrar to specify a registrar.
Use undo registrar to remove the configuration of a registrar and to notify the registrar to deregister the SIP UA.
Syntax
registrar registrar-index { dns domain-name port port-number | ip ip-address [ port port-number ] } [ expires seconds ] [ refresh-ratio ratio-percentage ] [ scheme { sip | sips } ] [ tcp [ tls ] ]
undo registrar registrar-index
Default
No registrars are specified.
Views
SIP view
Predefined user roles
network-admin
Parameters
registrar-index: Specifies the index for a registrar, in the range of 1 to 6.
dns domain-name: Specifies a registrar by its domain name, which consists of case-insensitive strings separated by dots (for example, aabbcc.com). Each separated string contains no more than 63 characters. A domain name can include letters, digits, hyphens (-), and underscores (_), and has a maximum length of 253 characters.
ip ip-address: Specifies a registrar by its IP address.
port port-number: Specifies the port number of a registrar, in the range of 1 to 65535. If the ip keyword is specified, the default port number is 5060 for TCP and UDP and 5061 for TLS. If the dns keyword is specified, the port number must be configured.
expires seconds: Specifies the registration expiration time in the range of 60 to 65535 seconds. The default registration expiration time is 3600 seconds.
refresh-ratio ratio-percentage: Specifies the refresh percentage in the range of 50 to 100. The default refresh percentage is 80%.
tcp: Uses TCP as the transport protocol. By default, UDP is used.
tls: Uses TLS as the transport protocol.
scheme: Specifies a URL scheme.
sip: Specifies SIP as the URL scheme. By default, SIP is used.
sips: Specifies SIPS as the URL scheme.
Usage guidelines
When the registration time reaches the registration expiration time multiplied by the refresh percentage, a voice entity or SIP trunk re-registers the number with the registrar to avoid expiration.
If you use TLS as the transport protocol for registration, the port number specified in this command must be the same as the one configured on the registrar.
Examples
# Configure a registrar with the IP address 169.54.5.10 and port number 1120, and set the registration expiration time to 120 seconds.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] registrar 1 ip 169.54.5.10 port 1120 expires 120
# Configure a registrar with domain name cc.news.com and port number 1100, and set the registration expiration time to 520 seconds.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] registrar 2 dns cc.news.com port 1100 expires 520
Related commands
credentials
display voice sip register-status
transport
rel1xx
Use rel1xx to configure reliable provisional responses.
Use undo rel1xx to restore the default.
Syntax
rel1xx { disable | require value | supported value }
undo rel1xx
Default
The UAC sends INVITE requests with the Supported: 100rel header field. The UAS sends 18x responses with the Require: 100rel header field.
Views
SIP view
Predefined user roles
network-admin
Parameters
disable: Disables reliable provisional responses.
require value: Enables reliable provisional responses by adding the Required: value header field to outgoing INVITE requests or outgoing 18x responses. The value argument is a case-sensitive string of 1 to 49 characters.
supported value: Enables reliable provisional responses by adding the Supported: value header field to outgoing INVITE requests or the Require: value header field to outgoing 18x responses. The value argument is a case-sensitive string of 1 to 49 characters.
Usage guidelines
To implement reliable provisional responses, enable this feature and configure the same value for the value argument on both the UAC and UAS.
Examples
# Enable the device to send INVITE requests with the Supported: 100rel header field or 18x responses with the Require: rel100 header field.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] rel1xx require 100rel
remote-party-id
Use remote-party-id to add the Remote-Party-ID header field to outgoing INVITE requests.
Use remote-party-id to not add the Remote-Party-ID header field to outgoing INVITE requests.
Syntax
remote-party-id
undo remote-party-id
Default
Outgoing INVITE requests include the Remote-Party-ID header field.
Views
SIP view
Predefined user roles
network-admin
Examples
# Add the Remote-Party-ID header field to outgoing INVITE requests.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] remote-party-id
reset voice sip connection
Use reset voice sip connection to disconnect a SIP connection.
Syntax
reset voice sip connection { tcp | tls } id conn-id
Views
User view
Predefined user roles
network-admin
Parameters
tcp: Specifies TCP connections.
tls: Specifies TLS connections.
id conn-id: Specifies a connection by its connection ID in the range of 0 to 2147483647. You can use the display voice sip connection command to determine connection IDs.
Usage guidelines
This command disconnects either an established SIP connection or a SIP connection that is being established.
Examples
# Disconnect the TCP connection with a connection ID of 1.
<Sysname> reset voice sip connection tcp id 1
Related commands
display voice sip connection
retry invite
Use retry invite to set the maximum number of INVITE request retries.
Use undo retry invite to restore the default.
Syntax
retry invite times
undo retry invite
Default
The maximum number of INVITE request retries is 6.
Views
SIP view
Predefined user roles
network-admin
Parameters
times: Specifies the maximum number of INVITE request retries, in the range of 1 to 10.
Usage guidelines
The originating device starts an INVITE retry timer when sending an INVITE request. If no 100 response arrives when the timer expires, the originating device retransmits the INVITE request. If no 100 response arrives when the maximum number of INVITE retries is reached, the originating device clears the call.
Examples
# Set the maximum number of INVITE request retries to 5.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] retry invite 5
Related commands
timers trying
session refresh
Use session refresh to enable SIP session refresh globally.
Use undo session refresh to disable SIP session refresh globally.
Syntax
session refresh
undo session refresh
Default
SIP session refresh is globally disabled if the device acts as a UAC, and is globally enabled if the device acts as a UAS.
Views
SIP view
Predefined user roles
network-admin
Usage guidelines
Use this command on a UAC.
Examples
# Globally enable SIP session refresh.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] session refresh
Related commands
min-se
session transport
Use session transport to specify a transport protocol for outgoing SIP calls.
Use undo session transport to restore the default.
Syntax
session transport { tcp [ tls ] | udp }
undo session transport
Default
The global transport protocol for outgoing SIP calls is UDP. The transport protocol for outgoing SIP calls on a VoIP entity is the same as the global default.
Views
SIP view
VoIP entity view
Predefined user roles
network-admin
Parameters
udp: Specifies UDP as the transport protocol.
tcp: Specifies TCP as the transport protocol.
tls: Specifies TLS as the transport protocol.
Usage guidelines
You can configure the transport protocol both globally (in SIP view) and for a specific VoIP entity (in VoIP entity view). The configuration in VoIP entity view takes precedence over the global configuration. A VoIP entity uses the global configuration only when no transport protocol is configured in VoIP entity view.
Configure the same transport protocol on the called and calling devices. For example, if you configure the session transport tcp command on the calling device, you must configure the transport tcp command on the called device.
You must configure the SSL client and server policies by using the crypto command before you can use TLS to initiate SIP calls.
Examples
# Specify TLS as the global transport protocol for outgoing SIP calls.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] session transport tcp tls
Related commands
crypto
transport
set pstn-cause
Use set pstn-cause to configure a PSTN cause-to-SIP status mapping.
Use undo set pstn-cause to restore the default.
Syntax
set pstn-cause pstn-cause sip-status sip-status
undo set pstn-cause pstn-cause
Default
Table 8 Default PSTN cause-to-SIP status mappings
PSTN cause code |
PSTN cause description |
SIP status code |
SIP status description |
1 |
Unallocated (unassigned) number! |
404 |
Not Found. |
2 |
No route to specified transit network! |
404 |
Not Found. |
3 |
No route to destination! |
404 |
Not Found. |
16 |
Normal clearing! |
N/A |
BYE or CANCEL. |
17 |
User busy! |
486 |
Busy here. |
18 |
No user responding! |
408 |
Request Timeout. |
19 |
No answer from user! |
480 |
Temporarily unavailable. |
20 |
Subscriber absent! |
480 |
Temporarily unavailable. |
21 |
Call rejected! |
403 |
Forbidden. |
22 |
Number changed! |
410 |
Gone. |
23 |
Redirection to new destination! |
410 |
Gone. |
25 |
Exchange routing error! |
500 |
Server internal error. |
26 |
Non-selected user clearing! |
404 |
Not Found. |
27 |
Destination out of order! |
502 |
Bad Gateway. |
28 |
Invalid number format (address incomplete)! |
484 |
Address incomplete. |
29 |
Facility rejected! |
501 |
Not implemented. |
31 |
Normal, unspecified! |
480 |
Temporarily unavailable. |
34 |
No circuit/channel available! |
503 |
Service unavailable. |
38 |
Network out of order! |
503 |
Service unavailable. |
41 |
Temporary failure! |
503 |
Service unavailable. |
42 |
Switching equipment congestion! |
503 |
Service unavailable. |
47 |
Resource unavailable, unspecified! |
503 |
Service unavailable. |
55 |
Incoming class barred within Closed User Group (CUG)! |
403 |
Forbidden. |
57 |
Bearer capability not authorized! |
403 |
Forbidden. |
58 |
Bearer capability not presently available! |
503 |
Service unavailable. |
63 |
Service or option not available, unspecified! |
500 |
Server internal error. |
65 |
Bearer capability not implemented! |
488 |
Not Acceptable Here. |
70 |
Only restricted digital information bearer capability is available! |
488 |
Not Acceptable Here. |
79 |
Service or option not implemented, unspecified! |
501 |
Not implemented. |
87 |
User not member of Closed User Group (CUG)! |
403 |
Forbidden. |
88 |
Incompatible destination! |
503 |
Service unavailable. |
102 |
Recovery on timer expiry! |
504 |
Gateway timeout. |
111 |
Protocol error, unspecified! |
500 |
Server internal error. |
127 |
Interworking, unspecified! |
500 |
Server internal error. |
Views
SIP view
Predefined user roles
network-admin
Parameters
pstn-code: Specifies a PSTN cause code in Table 8. The PSTN cause code 16 is invalid.
sip-code: Specifies a SIP status code in Table 8.
Examples
# Map the PSTN cause code 17 to the SIP status code 408.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] set pstn-cause 17 sip-status 408
set sip-status
Use set sip-status to configure a SIP status-to-PSTN cause mapping.
Use undo set sip-status to restore the default.
Syntax
set sip-status sip-status pstn-cause pstn-cause
undo set sip-status sip-status
Default
Table 9 Default SIP status-to-PSTN cause mappings
SIP status code |
SIP status description |
PSTN cause code |
PSTN cause description |
400 |
Bad Request. |
41 |
Temporary failure! |
401 |
Unauthorized. |
21 |
Call rejected! |
402 |
Payment required. |
21 |
Call rejected! |
403 |
Forbidden. |
21 |
Call rejected! |
404 |
Not found. |
1 |
Unallocated (unassigned) number! |
405 |
Method not allowed. |
63 |
Service or option not available, unspecified! |
406 |
Not acceptable. |
79 |
Service or option not implemented, unspecified! |
407 |
Proxy authentication required. |
21 |
Call rejected! |
408 |
Request timeout. |
102 |
Recovery on timer expiry! |
410 |
Gone. |
22 |
Number changed! |
413 |
Request Entity too long. |
127 |
Interworking, unspecified! |
414 |
Request-URI too long. |
127 |
Interworking, unspecified! |
415 |
Unsupported media type. |
79 |
Service or option not implemented, unspecified! |
416 |
Unsupported URI Scheme. |
127 |
Interworking, unspecified! |
420 |
Bad extension. |
127 |
Interworking, unspecified! |
421 |
Extension Required. |
127 |
Interworking, unspecified! |
423 |
Interval Too Brief. |
127 |
Interworking, unspecified! |
480 |
Temporarily unavailable. |
18 |
No user responding! |
481 |
Call/Transaction Does not Exist. |
41 |
Temporary failure! |
482 |
Loop Detected. |
25 |
Exchange routing error! |
483 |
Too many hops. |
25 |
Exchange routing error! |
484 |
Address incomplete. |
28 |
Invalid number format (address incomplete)! |
485 |
Ambiguous. |
1 |
Unallocated (unassigned) number! |
486 |
Busy here. |
17 |
User busy! |
487 |
Request Terminated. |
127 |
Interworking, unspecified! |
488 |
Not Acceptable here. |
127 |
Interworking, unspecified! |
500 |
Server internal error. |
41 |
Temporary failure! |
501 |
Not implemented. |
79 |
Service or option not implemented, unspecified! |
502 |
Bad gateway. |
38 |
Network out of order! |
503 |
Service unavailable. |
41 |
Temporary failure! |
504 |
Server time-out. |
102 |
Recovery on timer expiry! |
505 |
Version Not Supported. |
127 |
Interworking, unspecified! |
513 |
Message Too Large. |
127 |
Interworking, unspecified! |
600 |
Busy everywhere. |
17 |
User busy! |
603 |
Decline. |
21 |
Call rejected! |
604 |
Does not exist anywhere. |
1 |
Unallocated (unassigned) number! |
606 |
Not acceptable. |
58 |
Bearer capability not presently available! |
Views
SIP view
Predefined user roles
network-admin
Parameters
sip-code: Specifies a SIP status code in Table 9.
pstn-code: Specifies a PSTN cause code in Table 9.
Examples
# Map the SIP status code 486 to the PSTN cause code 18.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] set sip-status 486 pstn-cause 18
signaling forward rawmsg
Use signaling forward rawmsg to enable QSIG tunneling over SIP-T.
Use undo signaling forward rawmsg to disable QSIG tunneling over SIP-T.
Syntax
signaling forward rawmsg
undo signaling forward rawmsg
Default
QSIG tunneling over SIP-T is disabled.
Views
VoIP entity view
Predefined user roles
network-admin
Usage guidelines
This command enables sending QSIG signaling in SIP messages. In the SIP messages, the Content-type field is application/qsig, and the message body is the QSIG signaling received from the ISDN side.
The device does not support QSIG tunneling over SIP-T when the ISDN network uses overlap sending.
The SIP server might fail to interpret SIP messages carrying QSIG signaling. As a best practice, do not enable QSIG tunneling over SIP-T on a network where the device communicates with the SIP server.
Examples
# Enable QSIG tunneling over SIP-T.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 10 voip
[Sysname-voice-dial-entity10] signaling forward rawmsg
sip
Use sip to enter SIP view.
Use undo sip to remove the settings from SIP view.
Syntax
sip
undo sip
Views
Voice view
Predefined user roles
network-admin
Examples
# Enter SIP view.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip]
sip-compatible
Use sip-compatible to configure SIP compatibility with a third-party device.
Use undo sip-compatible to restore the default.
Syntax
sip-compatible { cause-code | early-media | t38 | x-param }
undo sip-compatible { cause-code | early-media | t38 | x-param }
Default
SIP compatibility is not configured.
Views
SIP view
Predefined user roles
network-admin
Parameters
cause-code: Configures SIP compatibility for SIP cause code interaction. With this keyword specified, the device uses Cause 27 instead of Cause 38 as the cause code for disconnecting a call.
early-media: Configures SIP compatibility for early media channels. With this keyword specified, the device does not disconnect the established early media channel upon receiving an 18x message without SDP from the terminating side.
t38: Configures SIP compatibility for standard T.38 fax. With this keyword specified, the device excludes :0 from the following SDP parameters in the originated re-INVITE messages:
· T38FaxTranscodingJBIG.
· T38FaxTranscodingMMR.
· T38FaxFillBitRemoval.
This keyword is required when the device interoperates with a third-party softswitch device to exchange T.38 fax messages.
x-param: Configures SIP compatibility for fax pass-through and modem pass-through. With this keyword specified, the device adds SDP description information for fax pass-through and modem pass-through to outgoing re-INVITE messages. This keyword is required when the device interoperates with a third-party softswitch device to perform fax pass-through and modem pass-through.
Usage guidelines
If SIP implementations of a third-party device are special, you can configure SIP compatibility for the device to interoperate with the third-party device.
You can execute this command multiple times to specify multiple parameters.
Examples
# Configure SIP compatibility for standard T.38 fax.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] sip-compatible t38
sip-domain
Use sip-domain to configure a SIP domain name for the device.
Use undo sip-domain to restore the default.
Syntax
sip-domain domain-name
undo sip-domain
Default
No SIP domain name is configured. The device inserts the IP address of the outgoing interface in the Contact header field of an outgoing SIP packet.
Views
SIP view
Predefined user roles
network-admin
Parameters
domain-name: Specifies the SIP domain name, a case-insensitive string of 1 to 31 characters. Valid characters are letters, digits, underscore (_), hyphen (-), and dot (.).
Usage guidelines
Use this command to enable the device to insert the SIP domain name in the Contact header field of outgoing SIP packets.
Examples
# Configure the SIP domain name as abc.com.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] sip-domain abc.com
srtp
Use srtp to configure SRTP as the media stream protocol for SIP calls.
Use undo srtp to restore the default.
Syntax
srtp [ fallback ]
undo srtp
Default
The global media stream protocol for SIP calls is RTP. The media stream protocol for SIP calls on a VoIP entity is the same as the global default.
Views
SIP view
VoIP entity view
Predefined user roles
network-admin
Parameters
fallback: Supports fallback to RTP if the peer does not support SRTP.
Usage guidelines
The differences between the srtp and srtp fallback commands are as follows:
· If the srtp command is configured, the following conditions exist:
¡ The device includes crypto and RTP/SAVP parameters in outgoing INVITE requests and disconnects the call after receiving a 488 response.
¡ The device can accept only calls using SRTP.
· If the srtp fallback command is configured, the following conditions exist:
¡ The device includes crypto and RTP/SAVP parameters in outgoing INVITE requests and retransmits INVITE requests with RTP/AVP parameters after receiving a 488 response.
¡ The device can accept calls using SRTP or RTP. SRTP is preferred for media stream protocol negotiation. If the negotiation fails, RTP is used.
You can configure the srtp command globally (in SIP view) and for a specific VoIP entity (in VoIP entity view). The configuration in VoIP entity view takes precedence over the global configuration. A VoIP entity uses the global configuration only when the srtp command is not configured in VoIP entity view.
Examples
# Configure SRTP as the media stream protocol for SIP calls.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] srtp
timers connection aging
Use timers connection aging to set the aging time for TCP or TLS connections.
Use undo timers connection aging to restore the default.
Syntax
timers connection aging { tcp tcp-age-time | tls tls-age-time }
undo timers connection aging { tcp | tls }
Default
The aging time for TCP connections is 5 minutes. The aging time for TLS connections is 30 minutes.
Views
SIP view
Predefined user roles
network-admin
Parameters
tcp tcp-age-time: Specifies the amount of idle time that elapses before a TCP connection is removed. The value range for the tcp-age-time argument is 5 to 30 minutes.
tls tls-age-time: Specifies the amount of idle time that elapses before a TLS connection is removed. The value range for the tls-age-time argument is 30 to 180 minutes.
Examples
# Set the aging time to 6 minutes for TCP connections and 60 minutes for TLS connections.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] timers connection aging tcp 6
[Sysname-voice-sip] timers connection aging tls 60
timers options
Use timers options to set the interval for sending out-of-dialog OPTIONS messages.
Use undo timers options to restore the default.
Syntax
timers options value
undo timers options
Default
The interval for sending out-of-dialog OPTIONS messages is 500 milliseconds.
Views
SIP view
Predefined user roles
network-admin
Parameters
value: Specifies the interval for sending out-of-dialog OPTIONS messages, in the range of 100 to 1000 milliseconds.
Usage guidelines
This command takes effect only when the out-of-dialog keepalive feature has been enabled by using the voice-class sip options-keepalive command. For more information about the interval, see the usage guidelines for the voice-class sip options-keepalive command.
Examples
# Set the interval to 600 milliseconds for sending out-of-dialog OPTIONS messages.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] timer registration expires 600
Related commands
voice-class sip options-keepalive
timers trying
Use timers trying to set the INVITE retry timer.
Use undo timers trying to restore the default.
Syntax
timers trying timer-length
undo timers trying
Default
The INVITE retry timer is 500 milliseconds.
Views
SIP view
Predefined user roles
network-admin
Parameters
timer-length: Specifies the INVITE retry timer value in the range of 100 to 1000 milliseconds.
Usage guidelines
The INVITE retry timer defines the amount of time to wait for a 100 response to an INVITE request. The originating device starts an INVITE retry timer when sending an INVITE request. If it does not receive a 100 response when the timer expires, it retransmits the INVITE request.
Examples
# Set the INVITE retry timer to 600 milliseconds.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] timers trying 600
Related commands
retry invite
transport
Use transport to enable the listening port for a transport protocol.
Use undo transport to disable the listening port for a transport protocol.
Syntax
transport { tcp [ tls ] | udp }
undo transport { tcp [ tls ] | udp }
Default
The UDP and TCP listening ports are enabled. The TLS listening port is disabled.
Views
SIP view
Predefined user roles
network-admin
Parameters
udp: Enables the UDP listening port (port 5060).
tcp: Enables the TCP listening port (port 5060).
tls: Enables the TLS listening port (port 5061).
Usage guidelines
You can use this command multiple times to enable multiple listening ports for different protocols. The protocols do not interfere with each other.
For the device to receive calls and initiate registrations or subscriptions, configure this command to enable the corresponding listening port.
You must configure the SSL client and server policies by using the crypto command before you can enable the TLS listening port.
The undo transport command removes established connections.
Examples
# Enable the TLS listening port.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] transport tcp tls
Related commands
crypto
mwi
registrar
url
Use url to configure a global URL scheme for outgoing SIP calls.
Use undo url to restore the default.
Syntax
url { sip | sips }
undo url
Default
The SIP scheme is used.
Views
SIP view
Predefined user roles
network-admin
Parameters
sip: Specifies the SIP scheme.
sips: Specifies the SIPS scheme.
Usage guidelines
You can configure the URL scheme both globally (by using the url command in SIP view) and for a specific VoIP entity (by using the voice-class sip url command in VoIP entity view). The configuration in VoIP entity view takes precedence over the global configuration. A VoIP entity uses the global configuration only when no URL scheme is configured in VoIP entity view.
Examples
# Specify SIPS as the global URL scheme.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] url sips
Related commands
voice-class sip url (in VoIP entity view)
user
Use user to configure SIP credentials.
Use undo user to delete SIP credentials.
Syntax
user username password { cipher | simple } string [ realm realm ]
undo user [ username password { cipher | simple } string [ realm realm ] ]
Default
No SIP credentials exist.
Views
SIP view
POTS entity view
Predefined user roles
network-admin
Parameters
username: Specifies a username, a case-sensitive string of 1 to 63 characters.
cipher: Specifies a password in encrypted form.
simple: Specifies a password in plaintext form. For security purposes, the password specified in plaintext form will be stored in encrypted form.
string: Specifies the password. Its plaintext form is a case-sensitive string of 1 to 16 characters. Its encrypted form is a case-sensitive string of 1 to 53 characters.
realm realm: Specifies a realm, a case-sensitive string of 1 to 50 characters. If you do not specify a realm, the credentials can be used to respond to any registrars.
Usage guidelines
A SIP UA can register with a maximum of six registrars, and it uses the domain name in the 401/407 response from a registrar to identify the credentials to be sent to the registrar.
You can configure only one username with the user command in SIP view or voice entity view. The username can contain 12 credentials bindings. A binding that does not include a domain name can be used to respond to a 401/407 response that does not match any domain name-included binding. The following example configures four credentials bindings:
[Sysname-voice-dial-entity100] user 1000 password simple 1000 realm server1
[Sysname-voice-dial-entity100] user 1000 password simple 1000 realm server2
[Sysname-voice-dial-entity100] user 1000 password simple 2000 realm server3
[Sysname-voice-dial-entity100] user 1000 password simple 3000
The first three bindings each contain a domain name, and the last binding contains no domain name. If the SIP UA receives a 401/407 response that includes a domain name server2, the SIP UA responds with the username 1000 and password 1000. If the SIP UA receives a 401/407 response that includes a domain name server4, the SIP UA responds with the username 1000 and password 3000 because no credentials binding contains the domain name server4.
Examples
# Configure global SIP credentials that include username abcd and plaintext password 1234.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] user abcd password simple 1234
# Configure SIP credentials that include username abcd, plaintext password 1234, and realm abc for POTS entity 100.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 100 pots
[Sysname-voice-dial-entity100] user abcd password simple 1234 realm abc
Related commands
registrar
voice-class sip bind
Use voice-class sip bind to configure source interface binding for a VoIP entity.
Use undo voice-class sip bind to restore the default.
Syntax
voice-class sip bind { control | media } source-interface interface-type interface-number
undo voice-class sip bind { control | media }
Default
The default global source interface is used.
Views
VoIP entity view
Predefined user roles
network-admin
Parameters
control: Specifies outbound SIP messages.
media: Specifies outbound media packets.
source-interface interface-type interface-number: Uses the specified interface as the source interface of outbound SIP messages or media packets. The specified interface must be a Layer 3 Ethernet interface or dialer interface.
Usage guidelines
This command uses the IP address of the specified interface as the source address for outgoing SIP or media packets.
For information about how source interface binding works in different conditions, see the usage guidelines for the bind command.
You can configure source interface binding both globally (by using the bind command in SIP view) and for a specific VoIP entity (by using the voice-class sip bind command in VoIP entity view). The configuration in VoIP entity view takes precedence over the global configuration. A VoIP entity uses the global configuration only when source interface binding is not configured in VoIP entity view.
Examples
# Specify Dialer 0 as the source interface for outbound SIP messages on VoIP entity 10.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 10 voip
[Sysname-voice-dial-entity10] voice-class sip bind control source-interface dialer 0
Related commands
bind
voice-class sip options-keepalive
Use voice-class sip options-keepalive to enable out-of-dialog keepalive for a VoIP entity and optionally set the out-of-dialog keepalive parameters.
Use undo voice-class sip options-keepalive to disable out-of-dialog keepalive for a VoIP entity.
Syntax
voice-class sip options-keepalive [ up-interval interval ] [ down-interval interval ] [ retry retries ]
undo voice-class sip options-keepalive
Default
Out-of-dialog keepalive is disabled for a VoIP entity.
Views
VoIP entity view
Predefined user roles
network-admin
Parameters
up-interval interval: Specifies the interval for sending out-of-dialog OPTIONS packets when the VoIP entity is available, in the range of 5 to 1200 seconds. The default value is 60 seconds.
down-interval interval: Specifies the interval for sending out-of-dialog OPTIONS packets when the VoIP entity is not available, in the range of 5 to 1200 seconds. The default value is 30 seconds.
retry retries: Specifies the number of retries to change the state for the VoIP entity.
Usage guidelines
After you enable the out-of-dialog keepalive feature for a VoIP entity, the UA sends OPTIONS packets at the up-interval. If the UA receives a response within the up-interval, it considers the VoIP entity to be available. If the UA receives no response within the up-interval, or receives an error response, it sends OPTIONS packets at the timers options interval. (Error responses include 408, 499, and 5XX responses except for 500, 501, 502, 503, 504, and 513 responses.) If the UA still receives no responses after the maximum number of retries is reached, it considers the VoIP entity to be unavailable.
Then, the UA sends OPTIONS packets at the down-interval. If the UA receives a response within the down-interval, it sends OPTIONS packets at the timers options interval. If the UA still can receive responses after the number of retries is reached, it considers the VoIP entity to be available.
The keepalive feature does not take effect for a VoIP entity that has been shut down by using the shutdown command.
Examples
# Enable out-of-dialog keepalive for VoIP entity 10, and set the up-interval to 50 seconds, the down-interval to 20 seconds, and the number of retries to 2.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 10 voip
[Sysname-voice-dial-entity10] voice-class sip options-keepalive up-interval 50 down-interval 20 retry 2
Related commands
timers options
voice-class sip options-ping
Use voice-class sip options-ping to enable in-dialog keepalive for a VoIP entity.
Use voice-class sip options-ping to disable in-dialog keepalive for a VoIP entity.
Syntax
voice-class sip options-ping { global | seconds }
undo voice-class sip options-ping
Default
A VoIP entity uses the global configuration for in-dialog keepalive.
Views
VoIP entity view
Predefined user roles
network-admin
Parameters
global: Applies the global configuration for in-dialog keepalive to the VoIP entity.
seconds: Specifies the interval for sending OPTIONS messages during a session, in the range of 60 to 1200 seconds.
Usage guidelines
For a VoIP entity, the entity-specific in-dialog keepalive configuration takes priority over the global in-dialog keepalive configuration set in SIP view.
Examples
# Enable in-dialog keepalive for VoIP entity 1 and set the interval to 60 seconds for sending OPTIONS messages during a session.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1 voip
[Sysname-voice-dial-entity1] voice-class sip options-ping 60
# Apply the global configuration for in-dialog keepalive to VoIP entity 1.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1 voip
[Sysname-voice-dial-entity1] voice-class sip options-ping global
Related commands
options-ping
voice-class sip session refresh
Use voice-class sip session refresh to enable SIP session refresh for a VoIP entity.
Use undo voice-class sip session refresh to disable SIP session refresh for a VoIP entity.
Syntax
voice-class sip session refresh [ global ]
undo voice-class sip session refresh
Default
A VoIP entity uses the global configuration for SIP session refresh.
Views
VoIP entity view
Predefined user roles
network-admin
Parameters
global: Applies the global configuration for SIP session refresh to the VoIP entity.
Usage guidelines
The configuration for SIP session refresh in VoIP entity view takes priority over that in SIP view.
Examples
# Enable SIP session refresh for VoIP entity 1.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1 voip
[Sysname-voice-dial-entity1] voice-class sip session refresh
# Apply the global configuration for SIP session refresh to VoIP entity 1.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1 voip
[Sysname-voice-dial-entity1] voice-class sip session refresh global
Related commands
min-se
session refresh
voice-class sip url
Use voice-class sip url to configure a URL scheme for outgoing SIP calls on a VoIP entity.
Use undo voice-class sip url to restore the default.
Syntax
voice-class sip url { sip | sips }
undo voice-class sip url
Default
The default global URL scheme (SIP scheme) is used.
Views
VoIP entity view
Predefined user roles
network-admin
Parameters
sip: Specifies the SIP scheme.
sips: Specifies the SIPS scheme.
Usage guidelines
You can configure the URL scheme both globally (by using the url command in SIP view) and for a specific VoIP entity (by using the voice-class sip url command in VoIP entity view). The configuration in VoIP entity view takes precedence over the global configuration. A VoIP entity uses the global configuration only when no URL scheme is configured in VoIP entity view.
Examples
# Specify the SIP scheme for outgoing SIP calls on VoIP entity 1000.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1000 voip
[Sysname-voice-dial-entity1000] voice-class sip url sips
Related commands
url
vpn-instance
Use vpn-instance to associate a VPN instance with SIP.
Use undo vpn-instance to remove the association.
Syntax
vpn-instance vpn-instance-name
undo vpn-instance
Default
No VPN instance is associated with SIP.
Views
SIP view
Predefined user roles
network-admin
Parameters
vpn-instance-name: Specifies an MPLS L3VPN instance by its name, a case-sensitive string of 1 to 31 characters.
Usage guidelines
The VPN instance to be associated with SIP must be already created.
You cannot associate a VPN instance or remove the association when a SIP service is being used.
Examples
# Associate VPN instance vpn-voice with SIP.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] vpn-instance vpn-voice
Related commands
ip binding vpn-instance (MPLS Command Reference)
ip vpn-instance (MPLS Command Reference)
SIP trunk commands
The following compatibility matrix shows the support of hardware platforms for SIP trunk:
Hardware |
SIP trunk compatibility |
MSR810, MSR810-W, MSR810-W-DB, MSR810-LM, MSR810-W-LM, MSR810-10-PoE, MSR810-LM-HK, MSR810-W-LM-HK, MSR810-LMS-EA |
MSR810, MSR810-W, MSR810-W-DB, MSR810-LM, MSR810-W-LM, MSR810-10-PoE, MSR810-LM-HK, MSR810-W-LM-HK: Yes MSR810-LMS-EA: No |
MSR810-LMS, MSR810-LUS |
No |
MSR2600-6-X1 |
No |
MSR2600-10-X1 |
Yes |
MSR 2630 |
Yes |
MSR3600-28, MSR3600-51 |
Yes |
MSR3600-28-SI, MSR3600-51-SI |
No |
MSR3600-28-X1, MSR3600-28-X1-DP, MSR3600-51-X1, MSR3600-51-X1-DP |
No |
MSR3610-I-DP, MSR3610-IE-DP |
No |
MSR3610-X1, MSR3610-X1-DP, MSR3610-X1-DC, MSR3610-X1-DP-DC |
Yes |
MSR 3610, MSR 3620, MSR 3620-DP, MSR 3640, MSR 3660 |
Yes |
MSR3610-G, MSR3620-G |
No |
To support SIP trunk, some device models require the Voice Software License. For more information, see license management in Fundamentals Configuration Guide.
allow-connections sip to sip
Use allow-connections sip to sip to enable SIP-to-SIP calling.
Use undo allow-connections sip to sip to disable SIP-to-SIP calling.
Syntax
allow-connections sip to sip
undo allow-connections sip to sip
Default
SIP-to-SIP calling is disabled.
Views
Voice view
Predefined user roles
network-admin
Usage guidelines
After you enable SIP-to-SIP calling, the device works as a SIP trunk device. As a best practice, do not use a SIP trunk device as a SIP UA.
Examples
# Enable SIP-to-SIP calling.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] allow-connections sip to sip
codec transparent
Use codec transparent to enable codec transparent transmission.
Use undo codec transparent to disable codec transparent transmission.
Syntax
codec transparent
undo codec transparent
Default
Codec transparent transmission is disabled. The SIP trunk device is involved in the media negotiation between the calling and called parties.
Views
VoIP entity view
Predefined user roles
network-admin
Usage guidelines
If the SIP trunk device does not support any codecs on the calling and called parties, you can enable codec transparent transmission. The SIP trunk device transparently forwards codec capability sets between the two parties without intervening codec negotiation.
Examples
# Enable codec transparent transmission for VoIP entity 1.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1 voip
[Sysname-voice-dial-entity1] codec transparent
credentials
Use credentials to create a SIP trunk account.
Use undo credentials to delete a SIP trunk account.
Syntax
credentials number number username username password { cipher | simple } string realm realm
undo credentials { number number | number number username username password { cipher | simple } password realm realm }
Default
No SIP trunk accounts exist.
Views
SIP view
Predefined user roles
network-admin
Parameters
number: Specifies a number for the SIP trunk account, a case-sensitive string of 4 to 31 characters.
username: Specifies a username, a case-sensitive string of 1 to 63 characters.
cipher: Specifies a password in encrypted form.
simple: Specifies a password in plaintext form. For security purposes, the password specified in plaintext form will be stored in encrypted form.
string: Specifies the password. Its plaintext form is a case-sensitive string of 1 to 16 characters. Its encrypted form is a case-sensitive string of 1 to 53 characters.
realm realm: Specifies a realm, a case-sensitive string of 1 to 50 characters.
Usage guidelines
A SIP trunk account contains a phone number, credentials, and realms assigned by the service provider. SIP can send a REGISTER request for the phone number to a maximum of six registrars specified by using the registrar command. SIP uses the realm value in 401/407 responses from the registrars to identify the matching credentials. You can configure a maximum of 12 realms for a phone number, and a maximum of 128 SIP trunk accounts on the device.
Examples
# Configure a SIP trunk account for phone number 1000 that uses the following:
· Username 1000 and password 1000 for realm server1.
· Username 2000 and password 2000 for realm server2.
· Username 3000 and password 3000 for realm server3.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] sip
[Sysname-voice-sip] credentials number 1000 username 1000 password simple 1000 realm server1
[Sysname-voice-sip] credentials number 1000 username 2000 password simple 2000 realm server2
[Sysname-voice-sip] credentials number 1000 username 3000 password simple 3000 realm server3
Related commands
registrar
media flow-around
Use media flow-around to enable media flow-around.
Use undo media flow-around to disable media flow-around.
Syntax
media flow-around
undo media flow-around
Default
Media flow-around is disabled. Media packets are relayed by the SIP trunk, and the SIP trunk device changes the media address of a media packet to its own address before forwarding the media packet.
Views
VoIP entity view
Predefined user roles
network-admin
Usage guidelines
This feature enables the SIP trunk device to directly forward media packets between SIP endpoints, without changing the media address for the media packets. Use this feature to improve forwarding performance.
Examples
# Enable media flow-around for VoIP entity 1.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1 voip
[Sysname-voice-dial-entity1] media flow-around
voice-class sip early-offer forced
Use voice-class sip early-offer forced to enable delayed offer to early offer (DO-EO) conversion.
Use undo voice-class sip early-offer forced to disable DO-EO conversion
Syntax
voice-class sip early-offer forced
undo voice-class sip early-offer forced
Default
DO-EO conversion is disabled.
Views
VoIP entity view
Predefined user roles
network-admin
Usage guidelines
An INVITE request with SDP Offer is an early offer, and an INVITE request without SDP Offer is a delayed offer. Some service providers mandate early offer calls for charge security. To meet this requirement, enable DO-EO conversion on the SIP trunk device.
This command does not take effect if codec transparent transmission or media flow-around is enabled.
Examples
# Enable DO-EO conversion on the SIP trunk device.
<Sysname> system-view
[Sysname] voice-setup
[Sysname-voice] dial-program
[Sysname-voice-dial] entity 1 voip
[Sysname-voice-dial-entity1] voice-class sip early-offer forced
Related commands
codec transparent
media flow-around