AvayaWebRTCConnectSDK
AOVideoInteraction.h
Go to the documentation of this file.
1/* Copyright Avaya Inc. */
2
3#import "AOSessionEnum.h"
4#import "AOVideoDevice.h"
6#import "AOVideoDetails.h"
7#import "AOAudioDetails.h"
8#import <AvayaClientServicesLite/AvayaClientServicesLite.h>
9#import "AOCallQuality.h"
19@protocol AOVideoInteractionDelegate <NSObject>
20
25
36
40- (void)interactionActive;
41
45- (void)interactionEnded;
46
52- (void)interactionFailed:(NSError*)error;
53
59- (void)interactionAudioMuteStatusChanged:(BOOL)isMuted;
60
66- (void)interactionVideoMuteStatusChanged:(BOOL)isMuted;
67
73- (void)interactionVideoEnabledStatusChanged:(BOOL)isEnabled;
74
78- (void)discardComplete;
79
83- (void)holdComplete;
84
88- (void)unholdComplete;
89
93- (void)remoteHoldComplete;
94
99
104- (void)onInteractionQualityChanged:(AOCallQuality) quality;
109- (void)onInteractionVideoMuteStatusChanged:(BOOL) state;
110
116- (void)onInteractionVideoDisabledBelowThreshold:(AOCallQuality)quality;
117
122- (void)onInteractionVideoCanBeEnabledThresholdCrossed:(AOCallQuality)quality;
123
124
125@end
126
128
132@property (nonatomic) NSString* authorizationToken;
133
137@property (nonatomic, readonly) AOVideoDevice* videoDevice;
138
142- (void) start;
143
147@property (nonatomic, assign) id<AOVideoInteractionDelegate> delegate;
148
152@property (nonatomic, weak) id<AOConnectionListenerDelegate> connectionListenerDelegate;
153
157@property (nonatomic, readonly, getter=isAudioMuted) BOOL audioMuted;
158
162@property (nonatomic, readonly, getter=isVideoMuted) BOOL videoMuted;
163
167@property (nonatomic, readonly, getter=isVideoEnabled) BOOL videoEnabled;
168
172@property (nonatomic, readonly, getter=isHeld) BOOL held;
173
177- (void)end;
178
182- (void) discard;
183
189- (void)muteAudio:(BOOL)mute;
190
196- (void)muteVideo:(BOOL)mute;
197
201- (void)holdWithCompletionHandler:(void (^)(NSError *))handler;
202
206- (void)unholdWithCompletionHandler:(void (^)(NSError *))handler;
207
213- (void) enableVideo:(BOOL)enable;
214
219
225- (void)sendDTMF:(AODTMFTone)tone;
226
230- (AOInteractionState)getInteractionState;
231
237@property (nonatomic, strong) NSString *destinationAddress;
238
244- (void)readVideoDetailsWithCompletionHandler:(void (^)(AOVideoDetails *videoDetails))handler;
245
253- (void)readAudioDetailsWithCompletionHandler:(void (^)(AOAudioDetails *audioDetails))handler;
254
259- (void)readCallTypeWithCompletionHandler:(void (^)(NSString *csCallTypeString))handler;
260
261#ifdef DEBUG_1
262// To change the AudioCodec at runtime for Dev
263@property (nonatomic, assign) CSAudioCodec useThisCodec;
264#endif
265
270- (void) setPlatformType : (AOPlatformType) type;
271
272@end
Defines the AOAudioDetails class.
Defines the AOConnectionListener class.
Defines the Session enums.
Defines the AOVideoDetails class.
Defines the AOVideoDevice class.
Definition: AOAbstractInteraction.h:17
Definition: AOAudioDetails.h:13
Definition: AOVideoDetails.h:111
Definition: AOVideoDevice.h:59
Definition: AOVideoInteraction.h:128
BOOL audioMuted
Definition: AOVideoInteraction.h:157
AOVideoDevice * videoDevice
Definition: AOVideoInteraction.h:137
NSString * destinationAddress
Definition: AOVideoInteraction.h:237
NSString * authorizationToken
Definition: AOVideoInteraction.h:132
BOOL videoEnabled
Definition: AOVideoInteraction.h:167
long getInteractionTimeElapsed()
id< AOConnectionListenerDelegate > connectionListenerDelegate
Definition: AOVideoInteraction.h:152
BOOL videoMuted
Definition: AOVideoInteraction.h:162
AOInteractionState getInteractionState()
id< AOVideoInteractionDelegate > delegate
Definition: AOVideoInteraction.h:147
BOOL held
Definition: AOVideoInteraction.h:172
Definition: AOVideoInteraction.h:19