zdk.objc
Instance Methods | Properties | List of all members
<ZDKMSRPConfig> Protocol Reference

MSRP (Message Session Relay Protocol) specific account configuration. More...

#import <ZDKMSRPConfig.h>

Inheritance diagram for <ZDKMSRPConfig>:
<ZDKZHandle>

Instance Methods

(BOOL) - isEqual:
 Compares the current configuration with the given one. More...
 
(NSString *) - handlesDescription
 
- Instance Methods inherited from <ZDKZHandle>
(long int) - handle
 
(void) - initialize
 
(void) - releaseReference
 
(NSString *) - handlesDescription
 

Properties

BOOL enableMSRP
 Sets the use of MSRP functionality as described in RFC 4975. More...
 
BOOL enableMSRPChat
 Configures the use of MSRP chat functionality for the user. More...
 
BOOL enableMSRPFileTransfer
 Configures file transfer feature for the user. More...
 
BOOL useMSRPRelay
 Configures the use of MSRP relay functionality as described in RFC 4976. More...
 
NSString *_Nullable msrpRelayURL
 Configures the MSRP relay URI. More...
 
NSString *_Nullable msrpRelayUserName
 Configures MSRP relay authentication username for the user. More...
 
NSString *_Nullable msrpRelayPassword
 Configures MSRP relay password for the user. More...
 
int msrpTcpPort
 Configures the main MSRP TCP port. More...
 

Detailed Description

MSRP (Message Session Relay Protocol) specific account configuration.

Method Documentation

◆ handlesDescription

- (NSString *) handlesDescription

Reimplemented from <ZDKZHandle>.

◆ isEqual:

- (BOOL) isEqual: (id< ZDKMSRPConfig >)  comp

Compares the current configuration with the given one.

Parameters
[in]compSIP configuration to be compared
Returns
  • 0 - not equal
  • 1 - equal

Property Documentation

◆ enableMSRP

- (BOOL) enableMSRP
readwritenonatomicassign

Sets the use of MSRP functionality as described in RFC 4975.

Parameters
[in]value
  • 0 - disabled
  • 1 - enabled

◆ enableMSRPChat

- (BOOL) enableMSRPChat
readwritenonatomicassign

Configures the use of MSRP chat functionality for the user.

MSRP chat is done through the messaging class and API - ZDKMessage and sendMessage()

All messages are sent over SIP SIMPLE while an MSRP session is not active. The ZDK will attempt to establish the session automatically but will also use a graylist in case the remote end does not support MSRP.

Parameters
[in]value
  • 0 - disabled
  • 1 - enabled
See also
ZDKMessage, sendMessage()

◆ enableMSRPFileTransfer

- (BOOL) enableMSRPFileTransfer
readwritenonatomicassign

Configures file transfer feature for the user.

The default is "disabled".

If the file transfer functionality is not enabled for a user all incoming file transfer will be automatically rejected. initiateTransfer() will return -1 (L_FAIL) immediately and onFileTransferRequest() will never arrive.

Parameters
[in]value
  • 0 - disabled
  • 1 - enabled
See also
onFileTransferRequest(), initiateTransfer()

◆ msrpRelayPassword

- (NSString* _Nullable) msrpRelayPassword
readwritenonatomicassign

Configures MSRP relay password for the user.

Configures the password to be used when authenticating to a MSRP relay.

Unlike the MSRP authentication username the password has NO fallback. Its default is the empty string (a valid password for the authentication algorithm).

The password is treated as nul-terminated string, disregarding encoding. It does not appear verbatim anywhere and is used as a binary string during hash calculation.

Parameters
[in]valueThe MSRP relay password
See also
msrpRelayURL(), msrpRelayUserName()

◆ msrpRelayURL

- (NSString* _Nullable) msrpRelayURL
readwritenonatomicassign

Configures the MSRP relay URI.

The use of MSRP relay must be enabled through useMSRPRelay().

Configures the MSRP relay URI to use for MSRP sessions done with the same user and on behalf of contacts linked to the same user.

The URI can be partial (just a hostname or an IP address), can contain a port (host:port or ip:port) and can be a full msrp or msrps URI (msrps:

Certain other configuration parameters may override the URI parameters.

Parameters
[in]valueMSRP relay URI
See also
useMSRPRelay(), msrpRelayUserName(), msrpRelayPassword()

◆ msrpRelayUserName

- (NSString* _Nullable) msrpRelayUserName
readwritenonatomicassign

Configures MSRP relay authentication username for the user.

Configures the authentication username to be used when authenticating to a MSRP relay. It overrides the default which is to use the SIP authentication username if available, or the SIP username itself as a last resort.

The username is treated as nul-terminated string, UTF-8 (due to the fact that it is sent in the MSRP header).

Parameters
[in]valueThe MSRP relay authentication username
See also
msrpRelayURL(), msrpRelayPassword()

◆ msrpTcpPort

- (int) msrpTcpPort
readwritenonatomicassign

Configures the main MSRP TCP port.

Configures the main TCP port for MSRP. This port is used to listen on all local interfaces for incoming MSRP connections.

The default MSRP port is 2855 as described in RFC4975.

Parameters
[in]valueThe MSRP TCP port

◆ useMSRPRelay

- (BOOL) useMSRPRelay
readwritenonatomicassign

Configures the use of MSRP relay functionality as described in RFC 4976.

Routes all MSRP requests through the MSRP relay configured with msrpRelayURL().

MSRP relays are almost always needed for MSRP to work for clients behind NATs.

Parameters
[in]value
  • 0 - disabled
  • 1 - enabled
See also
msrpRelayURL()

The documentation for this protocol was generated from the following file: