ZDK
|
SIP specific account configuration. More...
#include <ISIPConfig.h>
Public Member Functions | |
virtual ZDK::Shared::String | Domain () const =0 |
Gets the user domain. More... | |
virtual void | Domain (ZDK::Shared::String value)=0 |
Sets the user domain. More... | |
virtual bool | UseOutboundProxy () const =0 |
Gets the use of SIP Outbound as described in RFC 5626. More... | |
virtual void | UseOutboundProxy (bool value)=0 |
Configures the use of SIP Outbound as described in RFC 5626. More... | |
virtual ZDK::Shared::String | OutboundProxy () const =0 |
Gets the configured SIP Outbound Proxy to be used. More... | |
virtual void | OutboundProxy (ZDK::Shared::String value)=0 |
Sets the SIP Outbound Proxy to be used. More... | |
virtual ZDK::Shared::String | SipInstance () const =0 |
Gets the configured RFC2141 URN for SIP registrations. More... | |
virtual void | SipInstance (ZDK::Shared::String value)=0 |
Configures RFC2141 URN for SIP registrations. More... | |
virtual ZDK::TransportType | Transport () const =0 |
Gets the selected SIP transport. More... | |
virtual void | Transport (ZDK::TransportType value)=0 |
Selects the SIP transport to be used. More... | |
virtual ZDK::Shared::String | AuthUsername () const =0 |
Gets the user name used for SIP authentication. More... | |
virtual void | AuthUsername (ZDK::Shared::String value)=0 |
Changes the user name used for SIP authentication. More... | |
virtual ZDK::Shared::String | CallerID () const =0 |
Gets the Caller ID used as display name part in the address of record. More... | |
virtual void | CallerID (ZDK::Shared::String value)=0 |
Configures the Caller ID used as display name part in the address of record. More... | |
virtual ZDK::RPortType | RPort () const =0 |
Gets the use of rport for SIP users. More... | |
virtual void | RPort (ZDK::RPortType value)=0 |
Sets the use of rport for SIP users. More... | |
virtual bool | EnableSRTP () const =0 |
Gets the use of user's SRTP. More... | |
virtual void | EnableSRTP (bool value)=0 |
Sets the use of user's SRTP. More... | |
virtual ZDK::DTMFTypeSIP | DTMF () const =0 |
Gets the selected DTMF band for the user. More... | |
virtual void | DTMF (ZDK::DTMFTypeSIP value)=0 |
Selects the DTMF band for the user. More... | |
virtual bool | EnablePushNotifications () const =0 |
Gets the use of push notifications. More... | |
virtual void | EnablePushNotifications (bool value)=0 |
Sets the use of push notifications. More... | |
virtual bool | EnablePushRtpMediaProxy () const =0 |
Gets the use of the push notifications proxy also acting as media proxy. More... | |
virtual void | EnablePushRtpMediaProxy (bool value)=0 |
Sets the use of the push notifications proxy also acting as media proxy. More... | |
virtual ZDK::TransportType | PushTransport () const =0 |
Gets the selected transport being used to reach the push proxy. More... | |
virtual void | PushTransport (ZDK::TransportType value)=0 |
Selects the transport to be used to reach the push proxy. More... | |
virtual bool | EnablePreconditions () const =0 |
Gets the use of call's preconditions framework as described in RFC 3312. More... | |
virtual void | EnablePreconditions (bool value)=0 |
Sets the use of call's preconditions framework as described in RFC 3312. More... | |
virtual bool | EnableVideoFMTP () const =0 |
Gets video FMTP support. More... | |
virtual void | EnableVideoFMTP (bool value)=0 |
Sets video FMTP support. More... | |
virtual ZDK::RTCPFeedbackType | RTCPFeedback () const =0 |
Gets the RTCP Feedback support. More... | |
virtual void | RTCPFeedback (ZDK::RTCPFeedbackType value)=0 |
Sets the RTCP Feedback support. More... | |
virtual ZDK::Shared::StunConfig | Stun ()=0 |
Gets the STUN configuration. More... | |
virtual void | Stun (ZDK::Shared::StunConfig value)=0 |
Sets the STUN configuration. More... | |
virtual ZDK::Shared::MSRPConfig | MSRP ()=0 |
Gets the MSRP configuration. More... | |
virtual void | MSRP (ZDK::Shared::MSRPConfig value)=0 |
Sets the MSRP configuration. More... | |
virtual ZDK::Shared::ZRTPConfig | ZRTP ()=0 |
Gets the ZRTP configuration. More... | |
virtual void | ZRTP (ZDK::Shared::ZRTPConfig value)=0 |
Sets the ZRTP configuration. More... | |
virtual bool | EnablePrivacy () const =0 |
Gets the use of Privacy mechanism as described in RFC 3323. More... | |
virtual void | EnablePrivacy (bool value)=0 |
Sets the use of Privacy mechanism as described in RFC 3323. More... | |
virtual int | KeepAlive () const =0 |
Gets the keepalive interval for SIP accounts. More... | |
virtual void | KeepAlive (int value)=0 |
Sets the keepalive interval for SIP accounts. More... | |
virtual bool | IsEqual (ZDK::Shared::SIPConfig comp)=0 |
Compares the current configuration with the given one. More... | |
![]() | |
virtual ZDK::ZDKHandle | Handle () const =0 |
virtual | operator ZDK::ZDKHandle () const =0 |
virtual void | Initialize ()=0 |
virtual void | ReleaseReference ()=0 |
SIP specific account configuration.
|
pure virtual |
Gets the user name used for SIP authentication.
The user name to be used when responding to a SIP authentication challenge.
The SIP user might be challenged on any SIP transaction (registration, call creation, etc). All authentication is handled automatically.
|
pure virtual |
Changes the user name used for SIP authentication.
Changes the user name to be used when responding to a SIP authentication challenge.
The SIP user might be challenged on any SIP transaction (registration, call creation, etc). All authentication is handled automatically.
[in] | value | The new user name to use for authentication |
|
pure virtual |
Gets the Caller ID used as display name part in the address of record.
|
pure virtual |
Configures the Caller ID used as display name part in the address of record.
[in] | value | The CallerID to be used |
|
pure virtual |
Gets the user domain.
This is the domain part of the address of record. It is a mandatory parameter and is used to construct the account's AoR and also used by the SIP stack to detect server settings (DNS SRV).
|
pure virtual |
Sets the user domain.
This is the domain part of the address of record. It is a mandatory parameter and is used to construct the account's AoR and also used by the SIP stack to detect server settings (DNS SRV).
[in] | value | The user's SIP Domain to be used |
|
pure virtual |
Gets the selected DTMF band for the user.
|
pure virtual |
Selects the DTMF band for the user.
[in] | value | The DTMF band to select |
|
pure virtual |
Gets the use of call's preconditions framework as described in RFC 3312.
The preconditions are used to negotiate network resources needed for a call before it starts ringing. The negotiation is internal to the library without the need of special handling by the API user.
|
pure virtual |
Sets the use of call's preconditions framework as described in RFC 3312.
The preconditions are used to negotiate network resources needed for a call before it starts ringing. The negotiation is internal to the library without the need of special handling by the API user.
[in] | value |
|
|
pure virtual |
Gets the use of Privacy mechanism as described in RFC 3323.
Whether the user's identity is revealed in the SIP URIs or anonymous one is used.
|
pure virtual |
Sets the use of Privacy mechanism as described in RFC 3323.
Set whether the user's identity to be revealed in the SIP URIs or anonymous one to be used.
[in] | value |
|
|
pure virtual |
Gets the use of push notifications.
Mobile platforms only (Android and iOS)!
|
pure virtual |
Sets the use of push notifications.
Mobile platforms only (Android and iOS)!
[in] | value |
|
|
pure virtual |
Gets the use of the push notifications proxy also acting as media proxy.
Mobile platforms only (Android and iOS)!
|
pure virtual |
Sets the use of the push notifications proxy also acting as media proxy.
Mobile platforms only (Android and iOS)!
[in] | value |
|
|
pure virtual |
Gets the use of user's SRTP.
|
pure virtual |
Sets the use of user's SRTP.
[in] | value |
|
|
pure virtual |
Gets video FMTP support.
|
pure virtual |
Sets video FMTP support.
This will take effect in calls created/received after the setting has changed. Current calls will not be affected.
Turned off by default.
[in] | value |
|
|
pure virtual |
Compares the current configuration with the given one.
[in] | comp | SIP configuration to be compared |
|
pure virtual |
Gets the keepalive interval for SIP accounts.
The keepalive is a SIP packet sent over the signaling socket containing only a new line (CRLF). It is automatically enabled for UDP sockets to keep alive any possible NAT mappings. It has the same effect as enabling STUN for this socket but unlike STUN it will always keep the connection alive.
|
pure virtual |
Sets the keepalive interval for SIP accounts.
The keepalive is a SIP packet sent over the signaling socket containing only a new line (CRLF). It is automatically enabled for UDP sockets to keep alive any possible NAT mappings. It has the same effect as enabling STUN for this socket but unlike STUN it will always keep the connection alive.
Defaults (for -1) are 30 seconds for UDP and 180 seconds for TCP and TLS. This setting will be applied to all subsequent SIP requests. For best effects set this before registering.
[in] | value | Keepalive setting in seconds
|
|
pure virtual |
|
pure virtual |
|
pure virtual |
Gets the configured SIP Outbound Proxy to be used.
The outbound proxy is a normal SIP proxy. You configure your client, the phone or software, to use the proxy for all SIP sessions, just like when you configure your Web browser to use a Web proxy for all Web transactions. In some cases, the outbound proxy is placed alongside the firewall and is the only way to let SIP traffic pass from the internal network to the Internet.
|
pure virtual |
Sets the SIP Outbound Proxy to be used.
The outbound proxy is a normal SIP proxy. You configure your client, the phone or software, to use the proxy for all SIP sessions, just like when you configure your Web browser to use a Web proxy for all Web transactions. In some cases, the outbound proxy is placed alongside the firewall and is the only way to let SIP traffic pass from the internal network to the Internet.
[in] | value | The SIP Outbound Proxy to be used |
|
pure virtual |
Gets the selected transport being used to reach the push proxy.
Mobile platforms only (Android and iOS)!
|
pure virtual |
Selects the transport to be used to reach the push proxy.
Mobile platforms only (Android and iOS)!
[in] | value | The transport to be used |
|
pure virtual |
Gets the use of rport for SIP users.
Used to discover the public address and port in case there is a NAT between the user and the server. It also helps for normal unfirewalled TCP and TLS connections (highly recommended for these two protocols).
If rport is enabled for UDP connects along with STUN, STUN will be preferred.
The default is to have rport disabled for UDP. A registration must be done to do a full discovery before making any calls if they are to benefit from rport.
|
pure virtual |
Sets the use of rport for SIP users.
Used to discover the public address and port in case there is a NAT between the user and the server. It also helps for normal unfirewalled TCP and TLS connections (highly recommended for these two protocols).
If rport is enabled for UDP connects along with STUN, STUN will be preferred.
The default is to have rport disabled for UDP. A registration must be done to do a full discovery before making any calls if they are to benefit from rport.
[in] | value |
|
|
pure virtual |
Gets the RTCP Feedback support.
The purpose of RTCP Feedback is to provide quick inbound status reporting for media streams, error correction and resilience against packet losses.
Currently only handling of packet loss is implemented (recovery from lost video configuration frames, resulting into "black" time) - Full Intra Request (FIR) and Picture Loss Indication (PLI).
|
pure virtual |
Sets the RTCP Feedback support.
The purpose of RTCP Feedback is to provide quick inbound status reporting for media streams, error correction and resilience against packet losses.
Currently only handling of packet loss is implemented (recovery from lost video configuration frames, resulting into "black" time) - Full Intra Request (FIR) and Picture Loss Indication (PLI).
[in] | value |
|
|
pure virtual |
Gets the configured RFC2141 URN for SIP registrations.
Gets the configures the SIP instance URN used for SIP outbound (RFC 5626). It MUST be a valid RFC 2141 URN and it SHOULD be a valid RFC 4122 UUID URN in the format "urn:uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" where 'x' is a hexadecimal number. It can be optionally in angle brackets.
Other URN schemes can be used. The recommended one is urn:uuid but most servers will treat the string as a sequence of bytes and will not care if the scheme is different.
Use UserSipInstance() to create a random UUID. It will include the scheme prefix (urn:uuid:) and can be used directly in this function. Other ways of generating/obtaining a URN/UUID are allowed but the URN prefix is REQUIRED by the standard.
Global URN IS applied for all SIP accounts. SIP Outbound MUST still be enabled individually for each account.
The URN SHOULD be stored locally and re-used after restarts. The API user has the responsibility of using the same URN between restarts.
|
pure virtual |
Configures RFC2141 URN for SIP registrations.
Configures the SIP instance URN used for SIP outbound (RFC 5626). It MUST be a valid RFC 2141 URN and it SHOULD be a valid RFC 4122 UUID URN in the format "urn:uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" where 'x' is a hexadecimal number. It can be optionally in angle brackets.
Other URN schemes can be used. The recommended one is urn:uuid but most servers will treat the string as a sequence of bytes and will not care if the scheme is different.
Use UserSipInstance() to create a random UUID. It will include the scheme prefix (urn:uuid:) and can be used directly in this function. Other ways of generating/obtaining a URN/UUID are allowed but the URN prefix is REQUIRED by the standard.
Global URN IS applied for all SIP accounts. SIP Outbound MUST still be enabled individually for each account.
The URN SHOULD be stored locally and re-used after restarts. The API user has the responsibility of using the same URN between restarts.
[in] | value | The RFC 2141 URN to be used in RFC 5626 (SIP outbound) |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Gets the selected SIP transport.
|
pure virtual |
Selects the SIP transport to be used.
[in] | value | The signalling protocol to select (UDP, TCP, TLS) |
|
pure virtual |
Gets the use of SIP Outbound as described in RFC 5626.
Enables or disables RFC 5626 for SIP users. The default setting for new SIP user account is "disabled".
The user MUST also have a configured Outbound Proxy.
|
pure virtual |
Configures the use of SIP Outbound as described in RFC 5626.
Enables or disables RFC 5626 for SIP users. The default setting for new SIP user account is "disabled".
The user MUST also have a configured Outbound Proxy.
[in] | value |
|
|
pure virtual |
|
pure virtual |