ACSCall Class

Declaration

@interface ACSCall : NSObject;

Description

Describes a call

Methods

addParticipant

Add participants to the call with MRIs.

-(ACSRemoteParticipant* _Nullable)addParticipant:(id<CommunicationIdentifier> _Nonnull)participant withError:(NSError*_Nullable*_Nonnull) error __attribute__((swift_error(nonnull_error)));

Add participats to the call with phone numbers.

-(ACSRemoteParticipant* _Nullable)addParticipant:(PhoneNumberIdentifier* _Nonnull) participant options:(ACSAddPhoneNumberOptions* _Nullable)options withError:(NSError*_Nullable*_Nonnull) error __attribute__((swift_error(nonnull_error)));

feature

Feature extensions for the call.

-(id _Nonnull)feature: (Class _Nonnull)featureClass;

startAudio

Start audio stream

-(void)startAudio:(ACSCallAudioStream *)stream withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • stream -
  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

stopAudio

Stop audio stream

-(void)stopAudio:(ACSCallAudioStream *)stream withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • stream -
  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

mute

Mute local microphone.

-(void)muteWithCompletionHandler:(void (^)(NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Use muteOutgoingAudio instead");

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

unmute

Unmute local microphone.

-(void)unmuteWithCompletionHandler:(void (^)(NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Use unmuteOutgoingAudio instead");

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

muteIncomingAudio

Mute speaker.

-(void)muteIncomingAudioWithCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

unmuteIncomingAudio

UnMute speaker.

-(void)unmuteIncomingAudioWithCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

unmuteOutgoingAudio

UnMute microphone.

-(void)unmuteOutgoingAudioWithCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

muteOutgoingAudio

Mute microphone.

-(void)muteOutgoingAudioWithCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

sendDtmf

Send DTMF tone

-(void)sendDtmf:(ACSDtmfTone)tone withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • tone -
  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

startVideo

Start sharing video stream to the call

-(void)startVideo:(ACSOutgoingVideoStream *)stream withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • stream - Local Video stream to be shared
  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

stopVideo

Stop sharing video stream to the call

-(void)stopVideo:(ACSOutgoingVideoStream *)stream withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • stream - Local Video stream to stop sharing
  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

hangUp

HangUp a call

-(void)hangUp:(ACSHangUpOptions *)options withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • options - Options for call hangUp
  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

removeParticipant

Remove a participant from a call

-(void)removeParticipant:(ACSRemoteParticipant *)participant withCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • participant -
  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

hold

Hold this call

-(void)holdWithCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

resume

Resume this call

-(void)resumeWithCompletionHandler:(void (^)(NSError *error))completionHandler;

Parameters

  • completionHandler - A block to be invoked asynchronously after the operation has finished.

Returns

  • void

Properties

delegate

An object you provide to receive events from this ACSCall instance.

@property(nonatomic, assign) id<ACSCallDelegate> delegate;

remoteParticipants

Get a list of remote participants in the current call. In case of calls with participants of hundred or more, only media active participants are present in this collection.

@property (copy, nonnull, readonly) NSArray<ACSRemoteParticipant *> * remoteParticipants;

id

Id of the call

@property (retain, nonnull, readonly) NSString * id;

state

Current state of the call

@property (readonly) ACSCallState state;

callEndReason

Containing code/subcode indicating how a call has ended

@property (retain, nonnull, readonly) ACSCallEndReason * callEndReason;

direction

Outgoing or Incoming depending on the Call Direction

@property (readonly) ACSCallDirection direction;

isMuted

Whether the local microphone is muted or not.

@property (readonly) BOOL isMuted DEPRECATED_MSG_ATTRIBUTE("Use isOutgoingAudioMuted instead");

isOutgoingAudioMuted

Whether the local microphone is muted or not.

@property (readonly) BOOL isOutgoingAudioMuted;

isIncomingAudioMuted

Whether the local speaker is muted or not.

@property (readonly) BOOL isIncomingAudioMuted;

callerInfo

The identity of the caller

@property (retain, nonnull, readonly) ACSCallerInfo * callerInfo;

callLobby

Get the Teams meeting lobby.

@property (retain, nonnull, readonly) ACSCallLobby * callLobby;

activeIncomingAudioStream

Currently active incoming audio stream in the call

@property (retain, nonnull, readonly) ACSIncomingAudioStream * activeIncomingAudioStream;

activeOutgoingAudioStream

Currently active outgoing audio stream in the call

@property (retain, nonnull, readonly) ACSOutgoingAudioStream * activeOutgoingAudioStream;

callParticipantRole

Participant role in the call

@property (readonly) ACSCallParticipantRole callParticipantRole;

localVideoStreams

Get a list of local video streams in the current call.

@property (copy, nonnull, readonly) NSArray<ACSLocalVideoStream *> * localVideoStreams DEPRECATED_MSG_ATTRIBUTE("Use outgoingVideoStreams instead");

outgoingVideoStreams

Get a list of outgoing streams in the current call.

@property (copy, nonnull, readonly) NSArray<ACSOutgoingVideoStream *> * outgoingVideoStreams;

totalParticipantCount

Total number of participants active in the current call

@property (readonly) int totalParticipantCount;

liveOutgoingAudioFilters

Get the current configurable outgoing audio filters

@property (retain, nonnull, readonly) ACSLiveOutgoingAudioFilters * liveOutgoingAudioFilters;