VICallDelegate
Delegate that may be used to handle call events.
Methods
call:didAddEndpoint:
- (void
)call:(VICall *
)call
didAddEndpoint:()endpoint
Invoked after endpoint is added to the call.
Parameters
call:
VICall *
Call that triggered the event.
endpoint:
Added endpoint.
Returns
type:
void
call:didAddLocalVideoStream:
- (void
)call:(VICall *
)call
didAddLocalVideoStream:()videoStream
Triggered when local video stream is added to the call. The event is triggered on the main thread.
Parameters
call:
VICall *
Call that triggered the event.
videoStream:
Local video stream that is added to the call.
Returns
type:
void
call:didConnectWithHeaders:
- (void
)call:(VICall *
)call
didConnectWithHeaders:(nullable NSDictionary *
)headers
Triggered after call was successfully connected.
Parameters
call:
VICall *
Call that triggered the event.
headers:
nullable NSDictionary *
Optional headers passed with event.
Returns
type:
void
call:didDisconnectWithHeaders:answeredElsewhere:
- (void
)call:(VICall *
)call
didDisconnectWithHeaders:(nullable NSDictionary *
)headers
answeredElsewhere:(NSNumber *
)answeredElsewhere
Triggered after the call was disconnected.
Parameters
call:
VICall *
Call that triggered the event.
headers:
nullable NSDictionary *
Optional headers passed with event.
answeredElsewhere:
NSNumber *
YES if call was answered on another device.
Returns
type:
void
call:didFailWithError:headers:
- (void
)call:(VICall *
)call
didFailWithError:(NSError *
)error
headers:(nullable NSDictionary *
)headers
Triggered if the call is failed.
Parameters
call:
VICall *
Call that triggered the event.
error:
NSError *
Error that contains status code and status message of the call failure. See VICallFailErrorCode for possible reasons.
headers:
nullable NSDictionary *
Optional headers passed with event.
Returns
type:
void
call:didReceiveInfo:type:headers:
- (void
)call:(VICall *
)call
didReceiveInfo:(NSString *
)body
type:(NSString *
)type
headers:(nullable NSDictionary *
)headers
Triggered when INFO message is received within the call.
Parameters
call:
VICall *
Call that triggered the event.
body:
NSString *
Body of INFO message.
type:
NSString *
MIME type of INFO message.
headers:
nullable NSDictionary *
Optional headers passed with event.
Returns
type:
void
call:didReceiveMessage:headers:
- (void
)call:(VICall *
)call
didReceiveMessage:(NSString *
)message
headers:(nullable NSDictionary *
)headers
Triggered when message is received within the call. Implemented atop SIP INFO for communication between call endpoint and Voximplant cloud, and is separated from Voximplant messaging API.
Parameters
call:
VICall *
Call that triggered the event.
message:
NSString *
Content of the message.
headers:
nullable NSDictionary *
Optional headers passed with event.
Returns
type:
void
call:didReceiveStatistics:
- (void
)call:(VICall *
)call
didReceiveStatistics:()stat
Triggered when call statistics are available for the call.
Parameters
call:
VICall *
Call that triggered the event.
stat:
Call statistics.
Returns
type:
void
callDidReconnect:
- (void
)callDidReconnect:(VICall *
)call
Triggered if the connection to the Voximplant Cloud is restored and media stream are active in the call.
Parameters
call:
VICall *
Call that triggered the event.
Returns
type:
void
call:didRemoveLocalVideoStream:
- (void
)call:(VICall *
)call
didRemoveLocalVideoStream:()videoStream
Triggered when local video stream is removed from the call. The event is triggered on the main thread.
Parameters
call:
VICall *
Call that triggered the event.
videoStream:
Local video stream that is removed from the call.
Returns
type:
void
callDidStartAudio:
- (void
)callDidStartAudio:(VICall *
)call
Triggered when audio subsystem is initialized and ready to start audio within the call. You should stop playing progress tone when event is received.
Parameters
call:
VICall *
Call that triggered the event.
Returns
type:
void
callDidStartReconnecting:
- (void
)callDidStartReconnecting:(VICall *
)call
Triggered if the connection to the Voximplant Cloud is lost due to a network issue and media streams may be interrupted in the call.
Once the connection to the Voximplant Cloud is restored and media streams are active, [VICallDelegate callDidReconnect:] event will be invoked.
Until [VICallDelegate callDidReconnect:] event is invoked, the following API calls will fail with VICallErrorCodeReconnecting error:
- [VICall setSendVideo:completion:]
- [VICall startReceiveVideoWithCompletion:]
- [VICall setHold:completion:]
- [VICall startInAppScreenSharing:]
Until [VICallDelegate callDidReconnect:] event is invoked, the following events will not be invoked:
- [VICallDelegate call:didReceiveStatistics:]
- any events from VIQualityIssueDelegate
While the call is reconnecting, all previously detected quality issues (if any) are reset and their VIQualityIssueLevel is set to VIQualityIssueLevelNone
Parameters
call:
VICall *
Call that triggered the event.
Returns
type:
void
call:startRingingWithHeaders:
- (void
)call:(VICall *
)call
startRingingWithHeaders:(nullable NSDictionary *
)headers
Triggered if the call is ringing. You should start playing call progress tone now.
Parameters
call:
VICall *
Call that triggered the event.
headers:
nullable NSDictionary *
Optional headers passed with event.
Returns
type:
void