Reference13r2:Gateway/Interfaces/SIP

From innovaphone wiki
Jump to navigation Jump to search
There are also other versions of this article available: Reference | Reference7 | Reference9 | Reference10 | Reference11r1 | Reference12r1 | Reference12r2 | Reference13r2 (this version)

SIP Registration section

The entry fields for a SIP registration are:

Name Descriptive name for this registration.
Disable A switch to temporarily disable this interface without deleting the configuration.
Type
  • Provider: Creates a registration at a remote SIP server (of a SIP provider)
  • Open Federation: SIP/TLS interface without registration used to send and receive calls to federation partners.
  • Closed Federation: Like 'Open Federation' but even more restricted to pre-configured set of federation partners. In the 'Closed Federation' mode, the DNS queries for resolving the domain name of the federation partner are made without the Recursion Desired (RD) Flag. This means only DNS entries configured on the local DNS server are resolved, so the list of the partners for 'Closed Federation' must be maintained on the local DNS server.
Transport
  • UDP: SIP signaling using UDP as transport protocol (RFC 3261).
  • TCP: SIP signaling using TCP as transport protocol (RFC 3261).
  • TLS: SIP signaling using TLS as transport protocol (RFC 3261). Howto:Security works with innovaphone
  • Without registration: By default sip trunks are using with registration. Can be disabled here.
AOR Address of Record: SIP-URI used to register. Enter the registration ID followed by the SIP provider domain name (for example 8111111e0@sipgate.de or 8111111e0@x.x.x.x:5080 if you need to use the IP-address and a different Port number).
Local Hostname The Local Domain for SIP Federation enables to select the TLS Certificate according to the Domain Name. On the incoming SIP calls the host part of the URI is removed if equals with the Local Domain configured here, and the user part is used as Name (H323-ID) or Number (E164).
Local Port The local source port for SIP signalling can be configured here. If its empty a random port will be used. Dont use the same static port on multiple SIP Accounts!
Proxy DNS name or IP address of the SIP proxy where SIP messages (REGISTER,INVITE,etc) are to be sent to. Proxy can be omitted if domain part of AOR can be used as remote signaling destination. (append ":<port>" if you need a different destination Port)
STUN Server The STUN servers to use. See STUN for details regarding the format.

Authorization

Username and password for authorization. Username can be omitted if equal to userpart of AOR.

Media Properties

The configuration of the media properties is evaluated for calls from/to this interface to/from a physical (ISDN, analog, TEST, ...) only. If media relay is active for a call using this interface an 'exclusive' coder config is used to prohibit the use of any other coder. This 'exclusive code media-relay' config can be used to solve interop problems with other equipment which does not support media renegotiation, because with this config no media renegotiation will be performed.

For more information see Media Properties and Howto:Security works with innovaphone

SIP Interop Tweaks

Proposed Registration Interval Set in seconds, default is 120 seconds
Accept INVITE's from Anywhere If disabled, registered interfaces will reject INVITE's not coming from the SIP server with "305 Use Proxy".
Enforce Sending Complete Affects handling of "484 Address Incomplete" responses. If enabled and "484 Address Incomplete" is received, the call is cleared. If not enabled and "484 Address Incomplete" is received, the call is retained and re-initiated in case of new dialing digits.
No Video Removes Video Capabilities from outgoing media offer.
To Header when Sending INVITE Affects only outgoing diverted calls .
  • Called Party: If set we write CDPN into To header of outgoing INVITE (and DGPN into History-Info header).
  • Original Called Party: If set we write the DGPN into To header of outgoing INVITE (and CDPN into Request-URI).
From Header when Sending INVITE Controls the local URI (From header) of outgoing calls. Applys to registered interfaces only.
  • Fixed AOR: Fixed AOR is used as From-URI regardless of the actual calling party number.
  • AOR with CGPN as Display: Fixed AOR is used as From-URI and calling party number is added as display string.
  • CGPN in user part of URI: Variable From-URI with actual calling party number.
Identity Header when Sending INVITE Controls the identity header (P-Preferred-Identity, P-Asserted-Identity and Remote-Party-Id) sent on outgoing calls
  • CGPN in user part of URI: Variable Identity-URI with actual calling party number
  • Fixed AOR: Fixed AOR is used as Identity-URI regardless of the actual calling party number
  • UUI: the relayed call must include user-to-user-info (UUI). This UUI is used as Identity-URI. In the UUI, the string {initiator} is replaced by the the call's diversion-info (a.k.a. leg-2-info) if available or the calling party number otherwise
Reliability of Provisional Responses Controls the support of PRACK (RFC-3262).
  • Supported: Supported as optional extension.
  • Required: Required as mandatory extension.
  • Disabled: Hide support for PRACK extension.
Advanced Allows the configuration of additional, not further documented, interop tweaks(e.g. /pai on). The same tweaks can be configured also globally(i.e. not for this SIP-Interface) at the SIP(or TSIP/SIPS)-module. Any tweaks configured at the SIP-Interface will overwrite globally configured tweaks.


More frequently used Advanced Parameters

There are some options which influence the stack behaviour to handle ambiguities in the SIP standard:

/pai on
send identity URI in P-Asserted-Identity header. By default, it is sent in the P-Asserted-Identity header for calls from the PBX to the endpoint, in the P-Preferred-Identity header otherwise
/ppi on
send identity URI in P-Preferred-Identity header

Other options are available which instruct the stack to use non-standard or deprecated behaviour. Note that this should only be used in rare cases. Better have the vendor of your 3rd party SIP equipment fix its stack implementation:

/send-deprecated-diversion-header on
send call history information in the deprecated Diversion header in addition to the History-Info header
/single-audio-description
don't send SAVP+AVP, but SAVP or AVP media description in SDP
/no-authentication-info
don't send Authentication-Info header in REGISTER response
/send-no-historyinfo
don't send call history information (i.e. call forward) in outgoing Invite
/contact-addr [option]
adjust the Contact header to a fixed value necessary in scenarios of SIP Provider trunk without registration using TCP/TLS and uses Contact Header for Authentication. Example /contact-addr x.x.x.x:5061;user=phone;transport=TLS
/options-interval n
Send SIP options every "n" seconds to the configured remote SIP Address configured on the Interface.
/get-cdpn-from-to-uri
get CDPN of incoming provider-calls from To-URI instead of Request-URI
/no-diverting-name
don't add display name to diverting party URI

Extra Options

3rd party input
this is 3rd party content not provided by innovaphone, see history for authors.

Disable Interworking of Hold Notifications to SIP Provider

During the tests we concluded that when interworking the hold-notify message to SIP and sending to the SIP Provider two consecutive Re-Invites with "send-only" attributes, the IMS platform replies to the second re-invite with "inactive". By doing so this call is put on hold without any Music on Hold - just silence. To avoid this behaviour we need to disable the interworking of the hold-notify message by this setting:

!config add SIP /no-hr-notify  (Alternative: TSIP / SIPS)
!config write
!config activate

SIP Options Interval (Optional)

Some Provider uses SIP Options to monitor the SIP Trunks, so it's mandatory that Innovaphone replies to incoming SIP Options received. This is done by default. Additionally we can also send SIP Options to the SIP Proxy and have similar mechanism for redundancy. If the remote Proxy doesn't reply to outgoing SIP Options, the Innovaphone Gateway will send the call to the next interface. To enable sending of Options - messages, the following setting must be done:

!config add SIP /options-interval 30  (Alternative: TSIP / SIPS)
!config write
!config activate

This option will only take effect on connections "without registration". In connections with a registration there already exist a keep alive.

Remove Comfort Noise (CN) Capability from SDP

During the tests we found out that some specific 3rd party devices connected to the IMS network support only a single coder/payload in the offer. When doing the coder negotiation, this devices repeat the coder negotiation until they have only 1 coder in the offer or until they reach a specific number of retries. Since Innovaphone by default always include the payload 13 (Comfort Noise) in addition to the used voice coder/payload, this would make the remote device to do multiple re-invites to try to reach the single coder/payload in the offer. To avoid unnecessary signalling, we should disable the sending of Comfort Noise capability.

!config add SIP /rem-cn-capability  (Alternative: TSIP / SIPS)
!config write
!config activate

Setting of P-Asserted ID instead of P-Preferred ID

When using the feature of ReRouting the call (SIP 302 Move Temporary) to the SIP Trunk, the IMS platform checks the P-Asserted ID setting. By default we send as P-Preferred ID instead, so that will not work. As a result, we need to configure the following setting:

!config add SIP /pai  (Alternative: TSIP / SIPS)
!config write
!config activate