Avaya Client Services API Reference (OS X)
Instance Methods | Properties | List of all members
CSCall Class Reference

The Call class is a facade object that may be used to represent a 2-party or a or a conference call. More...

#import <CSCall.h>

Inherits NSObject.

Instance Methods

(void) - addRemoteAddressDigit:
 For a call in the off-hook dialing state, adds a digit to the remote address being collected via a dial pad. More...
 
(void) - start
 Starts an outgoing call to the current remote address. More...
 
(void) - end
 Requests termination of the call. More...
 
(void) - accept
 For an incoming call, requests acceptance of an incoming call. More...
 
(void) - ignore
 Ignores an incoming call. More...
 
(void) - denyWithCompletionHandler:
 For an incoming call, denies the call using appropriate reason based on CSSIPUserConfiguration::callDenialPolicy property. More...
 
(void) - denyWithReason:completionHandler:
 For an incoming call, denies the call for the specified reason regardless of configured CSSIPUserConfiguration::callDenialPolicy property. More...
 
(void) - holdWithCompletionHandler:
 Requests that an active call be held. More...
 
(void) - unholdWithCompletionHandler:
 Requests that a held call be unheld. More...
 
(void) - joinWithStatusHandler:
 Request that a remote call to be joined. More...
 
(void) - transferToRemoteAddress:statusHandler:
 Transfers this call to the specified remote address (an unattended transfer). More...
 
(void) - transferToRemoteAddress:applyingDialingRules:statusHandler:
 Transfers this call to the specified remote address (an unattended transfer). More...
 
(CSCapability *) - transferToCallCapability:
 CSCapability object indicating whether this call can be transferred to the call specified in the input argument. More...
 
(void) - transferToCall:statusHandler:
 Transfers this call to another call (an attended transfer). More...
 
(void) - sendDigit:
 Sends the specified DTMF tone. More...
 
(void) - readAudioDetailsWithCompletionHandler:
 Reads detailed information about the audio channel associated with the call. More...
 
(void) - readVideoDetailsWithCompletionHandler:
 Reads list of CSVideoDetails objects representing details of all video streams in call. More...
 
(void) - muteAudio:completionHandler:
 Mutes or unmutes the call's audio. More...
 
(void) - silenceSpeaker:completionHandler:
 Silences or unsilences speaker for the call. More...
 
(void) - setVideoMode:completionHandler:
 Sets the overall video status for the call. More...
 
(void) - setReceiveVideoResolutionPreferences:completionHandler:
 Used in conjunction with CSCall::setVideoMode: to set receive video resolutions the client application wants to have for multi video stream calls. More...
 
(void) - setReceiveVideoResolutionPreferencesForMultiVideoStreaming:completionHandler:
 Used in conjunction with CSCall::setVideoMode: to set receive video resolutions the client application wants to have for multi video stream calls. More...
 
(void) - setVideoResolutionPreferenceForMainVideoStreaming:completionHandler:
 Used in conjunction with CSCall::setVideoMode: to set video resolution. More...
 
(void) - acceptVideo:completionHandler:
 Called to accept incoming video escalation. More...
 
(void) - denyVideoWithCompletionHandler:
 Denies the incoming request to add video. More...
 
(void) - addCollaborationWithCompletionHandler:
 Adds a collaboration session to this call. More...
 
(void) - transferToVoicemailForRemoteAddress:statusHandler:
 Transfers this call to the specified remote address's voicemail (an unattended transfer). More...
 
(void) - transferToVoicemailForRemoteAddress:applyingDialingRules:statusHandler:
 Transfers this call to the specified remote address's voicemail (an unattended transfer). More...
 

Properties

id< CSCallDelegatedelegate
 The delegate responsible for handling call-related events. More...
 
NSInteger callId
 The unique numeric ID for this call. More...
 
CSCallType callType
 Enum value indicating whether this is default registered service (SIP call through Aura) or Meetme call through Service gateway. More...
 
BOOL presentationOnlyMode
 A Boolean value indicating whether the call is in presentation only mode. More...
 
BOOL pickupCall
 Returns true if the call is created as a result of invoking the call pickup feature CSFeatureTypeGroupCallPickup, CSFeatureTypeDirectedCallPickup, CSFeatureTypeExtendedGroupCallPickup or CSFeatureTypeTeamButton pickup. More...
 
BOOL teamButtonCall
 Returns true if the call is created as a result of invoking the Team Button feature. More...
 
NSString * remoteAddress
 The remote address for this call. More...
 
NSString * remoteDisplayName
 The display name for the remote end of the call. More...
 
NSString * remoteNumber
 The number for the remote end of the call. More...
 
NSString * vectorDirectoryNumberName
 Represents a Vector Directory Number (VDN)name. More...
 
NSString * remoteDialedNumber
 Represents the number dialed by originator of incoming call. More...
 
NSString * lineAppearanceOwnerAddress
 The remote call owner address. More...
 
NSString * lineAppearanceOwnerDisplayName
 The remote call owner display name. More...
 
NSUInteger lineAppearanceId
 The line id for the remote call. More...
 
CSParticipantremoteParticipant
 The information about the remote participant connected to the call. More...
 
NSString * subject
 The subject line associated with the call, if any. More...
 
CSAlertType alertType
 For an incoming call, the associated alert type. More...
 
CSPrecedenceLevel precedenceLevel
 The current precedence level of call. More...
 
CSPreemptionReason preemptionReason
 The reason why this call was preempted. More...
 
CSCallState state
 The call's current state. More...
 
BOOL incoming
 A Boolean value indicating whether this is an incoming call. More...
 
BOOL canAutoAnswer
 A Boolean value indicating whether this incoming call can be answered automatically. More...
 
BOOL autoAnswerEnabled
 A Boolean value indicating whether Avaya Communication Manager allows answering the incoming call automatically. More...
 
BOOL serviceObserving
 A Boolean value indicating whether the call is a service observing call. More...
 
BOOL ronaOrRoofRedirection
 A Boolean value indicating whether the incoming call was redirected by Redirection on no answer(RONA) or Redirection on Off-PBX Telephone (ROOF) integration and Mobility (OPTIM) failure. More...
 
BOOL remote
 A Boolean value indicating whether this is a remote call. More...
 
BOOL callerIdentityPrivate
 A Boolean value indicating whether the identity of the user who initiated the call wishes their identity to be kept private. More...
 
BOOL missed
 For an incoming call, a Boolean value indicating whether the call was missed. More...
 
BOOL ignored
 A Boolean value indicating whether this is an ignored call. More...
 
BOOL isConference
 A Boolean value indicating whether this is a conference call. More...
 
CSConferenceconference
 The conference instance associated with the call. More...
 
BOOL audioMuted
 A Boolean value indicating whether audio has been explicitly muted for this call. More...
 
BOOL speakerSilenced
 A Boolean value indicating whether speaker has been explicitly silenced for this call. More...
 
BOOL serviceAvailable
 A Boolean value indicating whether there is an active signaling path available for this call. More...
 
NSDate * establishedDate
 The time the call was initially established. More...
 
NSDate * heldDate
 The time the call was last placed on hold. More...
 
BOOL answered
 A Boolean value indicating if the call was ever answered/accepted. More...
 
BOOL emergencyCall
 A Boolean value indicating whether this is an emergency call. More...
 
CSRingType lineAppearanceRingType
 Line appearance ring type for an incoming call. More...
 
NSUInteger abbreviatedDelayedRingCycles
 The ring cycles for abbreviated/delayed alerting for incoming call. More...
 
CSCapabilitydenialCapability
 CSCapability object indicating whether the call can be denied. More...
 
CSCapabilityholdCapability
 CSCapability object indicating whether the call can be held. More...
 
CSCapabilityunholdCapability
 CSCapability object indicating whether the call can be unheld. More...
 
CSCapabilityjoinCapability
 CSCapability object indicating whether the call can be joined. More...
 
CSCapabilitytransferCapability
 CSCapability object indicating whether this call can be unattended transferred. More...
 
CSCapabilitysendDigitCapability
 CSCapability object indicating whether DTMF tones can be sent over the call. More...
 
CSCapabilitymuteCapability
 CSCapability object indicating whether the call's audio can be muted. More...
 
CSCapabilityunmuteCapability
 CSCapability object indicating whether the call's audio can be unmuted. More...
 
BOOL acdCall
 A boolean value indicating whether the call sent from Vector (Automatic Call Distribution) More...
 
CSCapabilitysilenceSpeakerCapability
 CSCapability object indicating whether speaker can be silenced for the call. More...
 
CSCapabilityunsilenceSpeakerCapability
 CSCapability object indicating whether speaker can be unsilenced for the call. More...
 
CSIncomingVideoStatus incomingVideoStatus
 Determine if the incoming call has video. More...
 
CSCapabilityupdateVideoModeCapability
 CSCapability object indicating whether current video mode of the call can be updated based on the current state and capabilities of the call. More...
 
CSMaxSupportedVideoResolutionsCapabilitymultiVideoChannelsCapability
 Property that provides the maximum number of receive only video streams that can be supported, and the maximum resolution that can be supported for each video stream. More...
 
NSArray * videoChannels
 The video channels associated with this call. More...
 
BOOL videoActive
 A convenience method that returns if the call has active video session or not. More...
 
CSVideoMode videoMode
 Returns the current video mode of the call, that is, whether video is enabled or disabled, and if enabled, the video direction. More...
 
CSAllowedVideoDirection allowedVideoDirection
 Returns allowed video direction for current call and its state. More...
 
CSUserToUserInformationuserToUserInformation
 User-to-User Information (UUI), known as call control UUI data, is a small piece of data inserted by an application initiating the session and utilized by an application accepting the session. More...
 
NSString * callerInformation
 Caller information (maximum 16 digits) associated with the call. More...
 
NSDictionary * extraProperties
 A read - only map of extra call properties the application may be interested in. More...
 
CSCallForwardingInformationforwardingInformation
 Information about forwarding details of current incoming call. More...
 
CSCapabilityaddCollaborationCapability
 CSCapability object indicating whether the collaboration can be added to the call. More...
 
CSCapabilitytransferToVoicemailCapability
 CSCapability object indicating whether the call can be transferred to voicemail. More...
 
CSSupervisorCallType supervisorCallType
 CSSupervisorCallType object indicating whether the call is supervisor assistance call. More...
 
BOOL recordingActive
 A Boolean value indicating whether the call is being recorded. More...
 
BOOL recordingPaused
 A Boolean value indicating whether the call recording is paused. More...
 
BOOL secureCall
 A Boolean value indicating whether the call is secure. More...
 

Detailed Description

The Call class is a facade object that may be used to represent a 2-party or a or a conference call.

When a Call instance represents a 2-party call, conference-related methods are unsupported. The client application can call conference method regardless of whether the call is a point to point or a conference call. Calling conference operations on a pt-to-pt call returns failure. The Call also supports video control methods, which can be applied to either a 2-party or a conference call.

See also
to create new call createCall .

Method Documentation

- (void) accept

For an incoming call, requests acceptance of an incoming call.

- (void) acceptVideo: (CSVideoMode videoMode
completionHandler: (void(^)(NSError *error))  handler 

Called to accept incoming video escalation.

The video can be accepted to be bidirectional or unidirectional.

Parameters
videoModeDesired video status for the call.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) addCollaborationWithCompletionHandler: (void(^)(NSError *error))  handler

Adds a collaboration session to this call.

If the call is a two-party call, the call becomes a conference. If the call is already a conference, the call is not modified.

Parameters
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) addRemoteAddressDigit: (CSAddressDigit digit

For a call in the off-hook dialing state, adds a digit to the remote address being collected via a dial pad.

When a match is found in the dial plan the call will automatically be initiated and -[CSCallDelegate callDidCompleteDigitCollection] will be sent. During digit collection the dial plan may indicate that dial tone should be played, this will be indicated via -[CSCallDelegate callDidRequestDialToneForDigitCollection].

Parameters
digitThe digit to be appended to the remote address.
- (void) denyVideoWithCompletionHandler: (void(^)(NSError *error))  handler

Denies the incoming request to add video.

Parameters
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) denyWithCompletionHandler: (void(^)(NSError *error))  handler

For an incoming call, denies the call using appropriate reason based on CSSIPUserConfiguration::callDenialPolicy property.

The default denial reason is busy.

Parameters
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) denyWithReason: (CSCallDenialReason reason
completionHandler: (void(^)(NSError *error))  handler 

For an incoming call, denies the call for the specified reason regardless of configured CSSIPUserConfiguration::callDenialPolicy property.

Parameters
reasonThe reason for the denial.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nill. If an error occurred it contains an object describing the error.
- (void) end

Requests termination of the call.

- (void) holdWithCompletionHandler: (void(^)(NSError *error))  handler

Requests that an active call be held.

If the hold is successful, all CallListener are informed of the hold state change. If it fails, the CompletionHandler is informed of the failure. If the hold operation fails, the call state returns to 'established' state, and any media channels previously ended to handle hold request are resumed.

Parameters
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) ignore

Ignores an incoming call.

The call is not ended, to the remote it will seem as if the call is still alerting. The application can use this method to silent the ringing of call without rejecting it. The call can still be accepted or rejected after it is ignored.

- (void) joinWithStatusHandler: (void(^)(CSJoinStatus status, NSError *error))  handler

Request that a remote call to be joined.

When the join is successful, the existing call object becomes a local call. This can be verified by querying isRemote(), which returns false when the join is successful. If the join operation fails, the call continues representing a remote call. In this case, isRemote() returns true.

Parameters
handlerA block to be called to report the status of the join operation.
  • status The current status of the join operation.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) muteAudio: (BOOL)  mute
completionHandler: (void(^)(NSError *error))  handler 

Mutes or unmutes the call's audio.

Parameters
muteYES to mute audio; NO to unmute.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
See also
-[- call:didMuteAudio: (CSCallDelegate-p)]
-[CSCallDelegate::call:muteAudioDidFailWithError:]
- (void) readAudioDetailsWithCompletionHandler: (void(^)(CSAudioDetails *audioDetails))  handler

Reads detailed information about the audio channel associated with the call.

If the audio channel has ended the audio details contain the information received from the channel just before it was ended.

Parameters
handlerA block to be called to with audio details in CSAudioDetails.
- (void) readVideoDetailsWithCompletionHandler: (void(^)(NSArray *arrayOfVideoDetails))  handler

Reads list of CSVideoDetails objects representing details of all video streams in call.

Parameters
handlerA block to be called to with video details in arrayOfVideoDetails.
- (void) sendDigit: (CSDTMFTone tone

Sends the specified DTMF tone.

Parameters
toneThe DTMF tone to send.
- (void) setReceiveVideoResolutionPreferences: (NSArray *)  videoResolutionPreferences
completionHandler: (void(^)(NSError *error))  handler 

Used in conjunction with CSCall::setVideoMode: to set receive video resolutions the client application wants to have for multi video stream calls.

Calling this method is optional.

If this method is not called and the local user wants to receive video, for a multi video stream conference call the Client SDK negotiates the maximum number of video streams that can be supported with the server, subject to the limitations of the local CPU/host capabilities and the locally provisioned video-related bandwidth and resolution settings. If this method is called, the number of video streams negotiated with the conference server and their resolution will be the lesser of the information passed in the method and the maximum number of video streams that can be supported subject to the limitations of the conference server's ability to multiple video streams, the local CPU/platform limitations, and the locally provisioned video bandwidth and resolution settings. For example, the conference server may be capable of sending up to nine 180p video streams, but the local platform may only be able to decode up to one 360p and four 180p video streams. If this method is not called, when the server escalates the single video stream call to multi stream video, the SDK negotiates one 360p stream and four 180p video streams with the server. Depending on the number of video participants on the call and the capabilities of the media server, the local SDK may receive anywhere from a single 360p video stream up to four 180p video streams. In the same example, if the local application called this method to view up to three video streams, then only three video streams are negotiated with the conference server. If the application sets a lesser number of video streams to render than what can be supported maximum, some of the video channel instances that can be supported but not requested by the application for rendering are marked as disabled, and reported with disabled reason of "layout selection". It should be noted that calling this method on a call that does not support multiple video channels has no effect. But in this case successful response would be provided through completion handler. However, a call normally starts as a point to point call, and is later escalated to have multi video channels. In this case, any preference setting provided prior to the multiple video channels escalation is used during processing of an incoming escalation request. This method may be called mid-call.

Parameters
videoResolutionPreferencesThe video resolution preferences requested by the application.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
See also
-[CSCallDelegate call:didUpdateVideoChannels:]
Deprecated:
Use setReceiveVideoResolutionPreferencesForMultiVideoStreaming:completionHandler:
- (void) setReceiveVideoResolutionPreferencesForMultiVideoStreaming: (NSArray *)  videoResolutionPreferences
completionHandler: (void(^)(NSError *error))  handler 

Used in conjunction with CSCall::setVideoMode: to set receive video resolutions the client application wants to have for multi video stream calls.

Calling this method is optional.

If this method is not called and the local user wants to receive video, for a multi video stream conference call the Client SDK negotiates the maximum number of video streams that can be supported with the server, subject to the limitations of the local CPU/host capabilities and the locally provisioned video-related bandwidth and resolution settings. If this method is called, the number of video streams negotiated with the conference server and their resolution will be the lesser of the information passed in the method and the maximum number of video streams that can be supported subject to the limitations of the conference server's ability to multiple video streams, the local CPU/platform limitations, and the locally provisioned video bandwidth and resolution settings. For example, the conference server may be capable of sending up to nine 180p video streams, but the local platform may only be able to decode up to one 360p and four 180p video streams. If this method is not called, when the server escalates the single video stream call to multi stream video, the SDK negotiates one 360p stream and four 180p video streams with the server. Depending on the number of video participants on the call and the capabilities of the media server, the local SDK may receive anywhere from a single 360p video stream up to four 180p video streams. In the same example, if the local application called this method to view up to three video streams, then only three video streams are negotiated with the conference server. If the application sets a lesser number of video streams to render than what can be supported maximum, some of the video channel instances that can be supported but not requested by the application for rendering are marked as disabled, and reported with disabled reason of "layout selection". It should be noted that calling this method on a call that does not support multiple video channels has no effect. But in this case successful response would be provided through completion handler. However, a call normally starts as a point to point call, and is later escalated to have multi video channels. In this case, any preference setting provided prior to the multiple video channels escalation is used during processing of an incoming escalation request. This method may be called mid-call.

Parameters
videoResolutionPreferencesThe video resolution preferences requested by the application.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
See also
-[CSCallDelegate call:didUpdateVideoChannels:]
- (void) setVideoMode: (CSVideoMode videoMode
completionHandler: (void(^)(NSError *error))  handler 

Sets the overall video status for the call.

This method can be used to enable bidirectional or unidirectional video, or disable video.

Parameters
videoModeDesired video status for the call.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) setVideoResolutionPreferenceForMainVideoStreaming: (CSVideoResolutionPreferenceForMainVideoStreaming *)  videoResolutionPreferences
completionHandler: (void(^)(NSError *error))  handler 

Used in conjunction with CSCall::setVideoMode: to set video resolution.

The actual resolution can be lower than the specified preference. It is subjected to the negotation result, configuration limits, and hardware capability. Calling this method is optional. This method may be called mid-call. Note: This API adjusts the encoder and decoder resolution. It does not affect the capture resolution. Refer to the media engine documentation to adjust the video capture resolution.

Parameters
videoResolutionPreferencesThe video resolution preference requested by the application.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
See also
-[CSCallDelegate call:didUpdateVideoChannels:]
- (void) silenceSpeaker: (BOOL)  silence
completionHandler: (void(^)(NSError *error))  handler 

Silences or unsilences speaker for the call.

Parameters
silenceYES to silence speaker; NO to unsilence.
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
See also
-[- call:didSilenceSpeaker: (CSCallDelegate-p)]
-[CSCallDelegate::call:silenceSpeakerDidFailWithError:]
- (void) start

Starts an outgoing call to the current remote address.

Usage in Shared Control mode: UI should call this function only for outgoing calls initiated from UC client. In all other call cases do not invoke the Start function for any call or conference because calls are initiated from the desk phone.

- (void) transferToCall: (CSCall *)  callToReplace
statusHandler: (void(^)(CSTransferStatus status, NSError *error))  handler 

Transfers this call to another call (an attended transfer).

In SIP, transfer operation is implemented using delegation technique where transferor delegates transferee to reach out to transfer target in order to complete the transfer operation. While the transfer is in progress, the transferor receives feedback from the transferee about the status of the transfer. If a failure is reported by the transferee, on the transferor's is notified of the error via the handler that was provided as input argument.

Parameters
callToReplaceThe existing call to transfer to.
handlerA block to be called to report the status of the transfer operation.
  • status The current status of the transfer operation.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (CSCapability *) transferToCallCapability: (CSCall *)  callToTarget

CSCapability object indicating whether this call can be transferred to the call specified in the input argument.

Parameters
callToTargetCall to the transfer target
Returns
CSCapability object indicating whether call can be transferred.
- (void) transferToRemoteAddress: (NSString *)  address
applyingDialingRules: (BOOL)  applyDialingRules
statusHandler: (void(^)(CSTransferStatus status, NSError *error))  handler 

Transfers this call to the specified remote address (an unattended transfer).

Parameters
addressThe remote address to transfer to.
applyDialingRulesControls whether any configured dialing rules will be applied to the remote address.
handlerA block to be called to report the status of the transfer operation.
  • status The current status of the transfer operation.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
See also
CSUserConfiguration::dialingRulesConfiguration
- (void) transferToRemoteAddress: (NSString *)  address
statusHandler: (void(^)(CSTransferStatus status, NSError *error))  handler 

Transfers this call to the specified remote address (an unattended transfer).

If dialing rules have been configured via CSUserConfiguration.dialingRulesConfiguration they will be applied to the remote address. To control whether dialing rules are applied use transferToRemoteAddress:applyingDialingRules:statusHandler: instead.

Parameters
addressThe remote address to transfer to.
handlerA block to be called to report the status of the transfer operation.
  • status The current status of the transfer operation.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) transferToVoicemailForRemoteAddress: (NSString *)  address
applyingDialingRules: (BOOL)  applyDialingRules
statusHandler: (void(^)(CSTransferStatus status, NSError *error))  handler 

Transfers this call to the specified remote address's voicemail (an unattended transfer).

Parameters
addressThe remote address whose voicemail transfer the call to.
applyDialingRulesControls whether any configured dialing rules will be applied to the remote address.
handlerA block to be called to report the status of the transfer operation.
  • status The current status of the transfer operation.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
See also
CSUserConfiguration::dialingRulesConfiguration
- (void) transferToVoicemailForRemoteAddress: (NSString *)  address
statusHandler: (void(^)(CSTransferStatus status, NSError *error))  handler 

Transfers this call to the specified remote address's voicemail (an unattended transfer).

If dialing rules have been configured via CSUserConfiguration.dialingRulesConfiguration they will be applied to the remote address. To control whether dialing rules are applied use transferToVoicemailForRemoteAddress:applyingDialingRules:statusHandler: instead.

Parameters
addressThe remote address whose voicemail transfer the call to.
handlerA block to be called to report the status of the transfer operation.
  • status The current status of the transfer operation.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.
- (void) unholdWithCompletionHandler: (void(^)(NSError *error))  handler

Requests that a held call be unheld.

If unhold is successful, The call transition to 'established' state, and its media channel(s) are restored. If unhold fails, the call stays in 'held' state, and its media channel(s) are not restored.

Parameters
handlerA block to be called when the operation is completed.
  • error If the operation was successful this parameter is nil. If an error occurred it contains an object describing the error.

Property Documentation

- (NSUInteger) abbreviatedDelayedRingCycles
readnonatomicassign

The ring cycles for abbreviated/delayed alerting for incoming call.

- (BOOL) acdCall
readnonatomicassign

A boolean value indicating whether the call sent from Vector (Automatic Call Distribution)

- (CSCapability*) addCollaborationCapability
readnonatomicassign

CSCapability object indicating whether the collaboration can be added to the call.

- (CSAlertType) alertType
readnonatomicassign

For an incoming call, the associated alert type.

- (CSAllowedVideoDirection) allowedVideoDirection
readnonatomicassign

Returns allowed video direction for current call and its state.

- (BOOL) answered
readnonatomicassign

A Boolean value indicating if the call was ever answered/accepted.

- (BOOL) audioMuted
readnonatomicassign

A Boolean value indicating whether audio has been explicitly muted for this call.

This does not reflect device-level mute state that may affect this call, but only the call-specific mute state controlled via -[CSCall muteAudio:].

- (BOOL) autoAnswerEnabled
readnonatomicassign

A Boolean value indicating whether Avaya Communication Manager allows answering the incoming call automatically.

- (BOOL) callerIdentityPrivate
readnonatomicassign

A Boolean value indicating whether the identity of the user who initiated the call wishes their identity to be kept private.

For an incoming call, this property returns whether the remote user's address is private. For an outgoing call, this property returns whether the local user's address is private (which can happen if user chooses to make a private call).

- (NSString*) callerInformation
readnonatomicassign

Caller information (maximum 16 digits) associated with the call.

The collected digits information neither change during the life of the call nor it can be updated during the life of a call. In case of transfer of call caller information associated with the call is also transferred.

Collected digits which are sent as part of call establishment will be provided to the sip application in a new sip header Avaya-user-data. Avaya-User-Data:45676;purpose=collected-digits;content=digits;encoding=text

Example: Collect 4 digits after announcement 3502 (Thank you for calling the Widget Company. If you know your party's 4-digit extension, please dial it now or stay on the line for the operator.)

An empty string is returned if call does not have digit information.

- (NSInteger) callId
readnonatomicassign

The unique numeric ID for this call.

- (CSCallType) callType
readnonatomicassign

Enum value indicating whether this is default registered service (SIP call through Aura) or Meetme call through Service gateway.

- (BOOL) canAutoAnswer
readnonatomicassign

A Boolean value indicating whether this incoming call can be answered automatically.

Auto answer is not allowed when:

  • Avaya Communication Manager does not allow answering it automatically, as well as
  • there is another live call, as well as
  • the application is running on a mobile device, as well as
  • the desktop screen is locked, as well as
  • the desktop screen saver is active, as well as
  • the presence state is set to Do-Not-Distrub (DND)
- (CSConference*) conference
readnonatomicassign

The conference instance associated with the call.

The CSConference object is returned regardless of whether the call is a conference call or not. Invoking methods on the Conference object returns an error if the call is not a conference call.

- (id<CSCallDelegate>) delegate
readwritenonatomicweak

The delegate responsible for handling call-related events.

- (CSCapability*) denialCapability
readnonatomicassign

CSCapability object indicating whether the call can be denied.

Call denial capability is not allowed if CSSIPUserConfiguration::callDenialPolicy is Disabled. The capability is allowed only for incoming Point-to-Point & adhoc conferencing calls if the policy is set to Busy or Decline. The capability is not allowed for incoming answered or outgoing calls irrespective of the call denial policy. The capability is not allowed for calls on bridge line appearances irrespective of the call denial policy

- (BOOL) emergencyCall
readnonatomicassign

A Boolean value indicating whether this is an emergency call.

- (NSDate*) establishedDate
readnonatomicassign

The time the call was initially established.

- (NSDictionary*) extraProperties
readnonatomicassign

A read - only map of extra call properties the application may be interested in.

For SIP - based calls, the map contains the list of SIP headers that are unknown to the SDK. SIP header name is used as the map key, and the header content is used as to the value of the map entry. During the lifetime of a call session, the extra properties of the call may be updated based on the information received from the network.The extra properties field tracks cumulative list of properties added to the call.For instance, an unknown SIP header of the form "header1: content1" is received, it is added to the map (key = “header1”, value = “content1”) A subsequent SIP message carrying two unknown headers "header1: contentA" and "header2: content2" will result in the update of the existing property as well as addition of a new map entry, as follows : (key = “header1”, value = “contentA”) (key = “header2”, value = “content2”) If there are multiple occurrences of an unknown SIP header, a unique map entry is created for each occurrence by appending a unique integer to the header name.For instance, if a SIP message contains two occurrences of an unknown SIP header, "unknownHeader:content1" and "unknownHeader:content2", then two separate map entries are created : (key = ”unknownHeader”, value = ”content1”) (key = ”unknownHeader2”, value = ”content2”) The application will be notified of this change using the CSCallDelegate::call : didChangeExtraProperties : event. Av-Phone-Global-Session-ID Header will be available in computer and shared control modes. In case of computer mode, there will be an entry in the map as follows:
(key = ”Av-Phone-Global-Session-ID”, value = ”Global Session ID of the incoming call received from far end.”) In case of shared control, there will be an entry in the map as follows:
(key = ”Av-Phone-Global-Session-ID”, value = ”Global Session ID of the incoming call received from controllable endpoint.”)

- (CSCallForwardingInformation*) forwardingInformation
readnonatomicassign

Information about forwarding details of current incoming call.

Information can be null if current incoming call was not forwarded.

- (NSDate*) heldDate
readnonatomicassign

The time the call was last placed on hold.

- (CSCapability*) holdCapability
readnonatomicassign

CSCapability object indicating whether the call can be held.

It should be noted that a subsequent hold operation depends on the state of the call that is being held.

- (BOOL) ignored
readnonatomicassign

A Boolean value indicating whether this is an ignored call.

- (BOOL) incoming
readnonatomicassign

A Boolean value indicating whether this is an incoming call.

- (CSIncomingVideoStatus) incomingVideoStatus
readnonatomicassign

Determine if the incoming call has video.

Returns
CSIncomingVideoStatus indicating the video availability in an incoming call
- (BOOL) isConference
readnonatomicassign

A Boolean value indicating whether this is a conference call.

- (CSCapability*) joinCapability
readnonatomicassign

CSCapability object indicating whether the call can be joined.

It should be noted that a subsequent join operation is not guaranteed to succeed as this depends on the characteristics of the remote call that is being joined. For example, the remote call may have exclusion turned on, in which case the local user will not be allowed to join.

- (NSUInteger) lineAppearanceId
readnonatomicassign

The line id for the remote call.

- (NSString*) lineAppearanceOwnerAddress
readnonatomicassign

The remote call owner address.

- (NSString*) lineAppearanceOwnerDisplayName
readnonatomicassign

The remote call owner display name.

- (CSRingType) lineAppearanceRingType
readnonatomicassign

Line appearance ring type for an incoming call.

For a call appearance button a client shall use the cadence specified by the Alert type (alertType ) and shall apply audible ringer based on the value of Ring type property. A subsequent call arriving on a station (while another call is active) shall honor the property for call appearance button. If the ring type is not specified for call appearance, then client shall use the cadence (internal, external, priority, no-ring) provided by the Alert type. A subsequent call arriving on a station (while another call is active) shall ring once and transition from audible ring to no-ring.

For a bridge appearance button a client shall use the cadence specified by the Alert type (alertType ) and shall apply audible ringer based on the value of this property. A subsequent call arriving on a station (while another call is active) shall honor the property for bridge appearance button. If the ring type is not specified for the bridge appearance, then a client shall use the cadence (internal, external, priority, no-ring) provided by the Alert type. A subsequent call arriving on a station (while another call is active) shall ring once and transition from audible ring to no-ring.

- (BOOL) missed
readnonatomicassign

For an incoming call, a Boolean value indicating whether the call was missed.

- (CSMaxSupportedVideoResolutionsCapability*) multiVideoChannelsCapability
readnonatomicassign

Property that provides the maximum number of receive only video streams that can be supported, and the maximum resolution that can be supported for each video stream.

The information returned is based on local bandwidth and video resolution configuration, local CPU/platform's video decode capabilities, and other user's video related information such as end user video preference, video licensing, etc. However, after the call setup, if the call is not multi video stream enabled, this CSCapability::allowed returns false, indicating that calling CSCall::setReceiveVideoResolutionPreferences: will not succeed. Similarly, for a call that is not multi video stream enabled, CSMaxSupportedVideoResolutionsCapability::maxSupportedVideoResolutions: returns an empty list.

Returns
Maximum number of receive only video streams that can be supported, and their maximum resolution.
- (CSCapability*) muteCapability
readnonatomicassign

CSCapability object indicating whether the call's audio can be muted.

- (BOOL) pickupCall
readnonatomicassign

Returns true if the call is created as a result of invoking the call pickup feature CSFeatureTypeGroupCallPickup, CSFeatureTypeDirectedCallPickup, CSFeatureTypeExtendedGroupCallPickup or CSFeatureTypeTeamButton pickup.

Returns
indication as to whether the call is pickup call.
- (CSPrecedenceLevel) precedenceLevel
readnonatomicassign

The current precedence level of call.

See also
CSPrecedenceLevel
- (CSPreemptionReason) preemptionReason
readnonatomicassign

The reason why this call was preempted.

See also
CSPreemptionReason
- (BOOL) presentationOnlyMode
readnonatomicassign

A Boolean value indicating whether the call is in presentation only mode.

- (BOOL) recordingActive
readnonatomicassign

A Boolean value indicating whether the call is being recorded.

- (BOOL) recordingPaused
readnonatomicassign

A Boolean value indicating whether the call recording is paused.

- (BOOL) remote
readnonatomicassign

A Boolean value indicating whether this is a remote call.

A remote call is one that does not exist on the local device but the user is aware of, such as a call on a bridged line appearance.

- (NSString*) remoteAddress
readwritenonatomiccopy

The remote address for this call.

For SIP this is the unescaped URI of the remote end of the call.

- (NSString*) remoteDialedNumber
readnonatomicassign

Represents the number dialed by originator of incoming call.

For outgoing calls this property is empty.

- (NSString*) remoteDisplayName
readnonatomicassign

The display name for the remote end of the call.

- (NSString*) remoteNumber
readnonatomicassign

The number for the remote end of the call.

For outgoing calls, it's the the post dialing rules string. For incoming SIP calls, it's the user part of the URI.

- (CSParticipant*) remoteParticipant
readnonatomicassign

The information about the remote participant connected to the call.

The information in participant can be empty if call is not connected OR the details are not available for remote party.

- (BOOL) ronaOrRoofRedirection
readnonatomicassign

A Boolean value indicating whether the incoming call was redirected by Redirection on no answer(RONA) or Redirection on Off-PBX Telephone (ROOF) integration and Mobility (OPTIM) failure.

Flag is only for these RONA and ROOF redirections. Redirections due to forwarding, not available or other has no influence on this flag.

- (BOOL) secureCall
readnonatomicassign

A Boolean value indicating whether the call is secure.

- (CSCapability*) sendDigitCapability
readnonatomicassign

CSCapability object indicating whether DTMF tones can be sent over the call.

For example, the capability is denied, if the call is in ringing state without early media (VoIP).

- (BOOL) serviceAvailable
readnonatomicassign

A Boolean value indicating whether there is an active signaling path available for this call.

- (BOOL) serviceObserving
readnonatomicassign

A Boolean value indicating whether the call is a service observing call.

- (CSCapability*) silenceSpeakerCapability
readnonatomicassign

CSCapability object indicating whether speaker can be silenced for the call.

- (BOOL) speakerSilenced
readnonatomicassign

A Boolean value indicating whether speaker has been explicitly silenced for this call.

This does not reflect device-level speaker silence state that may affect this call, but only the call-specific speaker silence state controlled via -[CSCall silenceSpeaker:].

- (CSCallState) state
readnonatomicassign

The call's current state.

- (NSString*) subject
readwritenonatomiccopy

The subject line associated with the call, if any.

- (CSSupervisorCallType) supervisorCallType
readnonatomicassign

CSSupervisorCallType object indicating whether the call is supervisor assistance call.

- (BOOL) teamButtonCall
readnonatomicassign

Returns true if the call is created as a result of invoking the Team Button feature.

Returns
indication whether the call is a team button call.
- (CSCapability*) transferCapability
readnonatomicassign

CSCapability object indicating whether this call can be unattended transferred.

- (CSCapability*) transferToVoicemailCapability
readnonatomicassign

CSCapability object indicating whether the call can be transferred to voicemail.

It should be noted that a subsequent transfer operation depends on the state of the call that is being transferred.

- (CSCapability*) unholdCapability
readnonatomicassign

CSCapability object indicating whether the call can be unheld.

It should be noted that a subsequent unhold operation is not guaranteed to succeed as this depends on the state of the call that is being unheld.

- (CSCapability*) unmuteCapability
readnonatomicassign

CSCapability object indicating whether the call's audio can be unmuted.

- (CSCapability*) unsilenceSpeakerCapability
readnonatomicassign

CSCapability object indicating whether speaker can be unsilenced for the call.

- (CSCapability*) updateVideoModeCapability
readnonatomicassign

CSCapability object indicating whether current video mode of the call can be updated based on the current state and capabilities of the call.

The capability object indicates an error(denial) if the current call state does not allow video mode update, or if local video is disabled, e.g., due to video licensing or local platform's configuration.

- (CSUserToUserInformation*) userToUserInformation
readnonatomicassign

User-to-User Information (UUI), known as call control UUI data, is a small piece of data inserted by an application initiating the session and utilized by an application accepting the session.

The syntax and semantics for the UUI data used by a specific application are defined by a UUI package.

- (NSString*) vectorDirectoryNumberName
readnonatomicassign

Represents a Vector Directory Number (VDN)name.

Agent may need to know which VDN the call has arrived from in order to get prepared. For example, agent may consult for sales and for technical support questions. And voice menu have the VDNs for sales and technical support. Once call is ringing, agent can see the VDN name and get prepared to talk on the particular subject.

- (BOOL) videoActive
readnonatomicassign

A convenience method that returns if the call has active video session or not.

The method returns true if there is at least one video channel that is enabled, and has a negotiated media direction of send-receive, receive-only or send-only.

- (NSArray*) videoChannels
readnonatomicassign

The video channels associated with this call.

- (CSVideoMode) videoMode
readnonatomicassign

Returns the current video mode of the call, that is, whether video is enabled or disabled, and if enabled, the video direction.


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