Skip to content

Commit 7875fce

Browse files
committed
Merge branch 'develop'
# Conflicts: # Framework/QuickbloxWebRTC.framework/Headers/QuickbloxWebRTC.h # Framework/QuickbloxWebRTC.framework/QuickbloxWebRTC
2 parents 25dcfd3 + 517c024 commit 7875fce

37 files changed

+725
-460
lines changed

Framework/QuickbloxWebRTC.framework/Headers/QBRTCAudioSession.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// QBRTCAudioSession.h
33
// QuickbloxWebRTC
44
//
5-
// Copyright (c) 2016 QuickBlox. All rights reserved.
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
66
//
77

88
#import <Foundation/Foundation.h>

Framework/QuickbloxWebRTC.framework/Headers/QBRTCAudioSessionConfiguration.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// QBRTCAudioSessionConfiguration.h
33
// QuickbloxWebRTC
44
//
5-
// Copyright (c) 2016 QuickBlox. All rights reserved.
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
66
//
77

88
#import <Foundation/Foundation.h>

Framework/QuickbloxWebRTC.framework/Headers/QBRTCAudioTrack.h

+5-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// QBRTCAudioTrack.h
33
// QuickbloxWebRTC
44
//
5-
// Copyright (c) 2016 QuickBlox. All rights reserved.
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
66
//
77

88
#import <Foundation/Foundation.h>
@@ -15,6 +15,10 @@ NS_ASSUME_NONNULL_BEGIN
1515
/// Entity to describe remote audio track
1616
@interface QBRTCAudioTrack : QBRTCMediaStreamTrack
1717

18+
// Sets the volume for the specific track. |volume] is a gain value in the range
19+
// [0, 10].
20+
@property (nonatomic, assign) double volume;
21+
1822
/// Init is not a supported initializer for this class.
1923
- (instancetype)init NS_UNAVAILABLE;
2024

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
//
2+
// QBRTCBaseClient.h
3+
// QuickbloxWebRTC
4+
//
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
6+
//
7+
8+
#import <Foundation/Foundation.h>
9+
#import "QBRTCBaseClientDelegate.h"
10+
11+
NS_ASSUME_NONNULL_BEGIN
12+
13+
/**
14+
* QBRTCBaseClient class interface.
15+
* This class represents basic client methods.
16+
*/
17+
@interface QBRTCBaseClient : NSObject
18+
19+
// unavailable initializers
20+
- (instancetype)init NS_UNAVAILABLE;
21+
+ (instancetype)new NS_UNAVAILABLE;
22+
23+
/**
24+
* Client instance singleton.
25+
*
26+
* @return Client instance
27+
*/
28+
+ (instancetype)instance;
29+
30+
/**
31+
* Add delegate to the observers list.
32+
*
33+
* @param delegate class that conforms to QBRTCBaseClientDelegate protocol
34+
*/
35+
- (void)addDelegate:(id<QBRTCBaseClientDelegate>)delegate;
36+
37+
/**
38+
* Remove delegate from the observers list.
39+
*
40+
* @param delegate class that conforms to QBRTCBaseClientDelegate protocol
41+
*/
42+
- (void)removeDelegate:(id<QBRTCBaseClientDelegate>)delegate;
43+
44+
@end
45+
46+
NS_ASSUME_NONNULL_END
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
//
2+
// QBRTCBaseClientDelegate.h
3+
// QuickbloxWebRTC
4+
//
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
6+
//
7+
8+
#import <Foundation/Foundation.h>
9+
10+
#import "QBRTCTypes.h"
11+
12+
@class QBRTCBaseSession;
13+
@class QBRTCStatsReport;
14+
@class QBRTCAudioTrack;
15+
@class QBRTCVideoTrack;
16+
17+
NS_ASSUME_NONNULL_BEGIN
18+
19+
/**
20+
* Base client protocol.
21+
*/
22+
@protocol QBRTCBaseClientDelegate <NSObject>
23+
24+
/**
25+
* Protocol methods down below are optional and not required to be implemented.
26+
*/
27+
@optional
28+
29+
/**
30+
* Called by timeout with updated stats report for user ID.
31+
*
32+
* @param session QBRTCSession instance
33+
* @param report QBRTCStatsReport instance
34+
* @param userID user ID
35+
*
36+
* @remark Configure time interval with [QBRTCConfig setStatsReportTimeInterval:timeInterval].
37+
*/
38+
- (void)session:(__kindof QBRTCBaseSession *)session updatedStatsReport:(QBRTCStatsReport *)report forUserID:(NSNumber *)userID;
39+
40+
/**
41+
* Called when session state has been changed.
42+
*
43+
* @param session QBRTCSession instance
44+
* @param state session state
45+
*
46+
* @discussion Use this to track a session state. As SDK 2.3 introduced states for session, you can now manage your own states based on this.
47+
*/
48+
- (void)session:(__kindof QBRTCBaseSession *)session didChangeState:(QBRTCSessionState)state;
49+
50+
/**
51+
* Called when received remote audio track from user.
52+
*
53+
* @param audioTrack QBRTCAudioTrack instance
54+
* @param userID ID of user
55+
*/
56+
- (void)session:(__kindof QBRTCBaseSession *)session receivedRemoteAudioTrack:(QBRTCAudioTrack *)audioTrack fromUser:(NSNumber *)userID;
57+
58+
/**
59+
* Called when received remote video track from user.
60+
*
61+
* @param videoTrack QBRTCVideoTrack instance
62+
* @param userID ID of user
63+
*/
64+
- (void)session:(__kindof QBRTCBaseSession *)session receivedRemoteVideoTrack:(QBRTCVideoTrack *)videoTrack fromUser:(NSNumber *)userID;
65+
66+
/**
67+
* Called when connection is closed for user.
68+
*
69+
* @param session QBRTCSession instance
70+
* @param userID ID of user
71+
*/
72+
- (void)session:(__kindof QBRTCBaseSession *)session connectionClosedForUser:(NSNumber *)userID;
73+
74+
/**
75+
* Called when connection is initiated with user.
76+
*
77+
* @param session QBRTCSession instance
78+
* @param userID ID of user
79+
*/
80+
- (void)session:(__kindof QBRTCBaseSession *)session startedConnectingToUser:(NSNumber *)userID;
81+
82+
/**
83+
* Called when connection is established with user.
84+
*
85+
* @param session QBRTCSession instance
86+
* @param userID ID of user
87+
*/
88+
- (void)session:(__kindof QBRTCBaseSession *)session connectedToUser:(NSNumber *)userID;
89+
90+
/**
91+
* Called when disconnected from user.
92+
*
93+
* @param session QBRTCSession instance
94+
* @param userID ID of user
95+
*/
96+
- (void)session:(__kindof QBRTCBaseSession *)session disconnectedFromUser:(NSNumber *)userID;
97+
98+
/**
99+
* Called when connection failed with user.
100+
*
101+
* @param session QBRTCSession instance
102+
* @param userID ID of user
103+
*/
104+
- (void)session:(__kindof QBRTCBaseSession *)session connectionFailedForUser:(NSNumber *)userID;
105+
106+
/**
107+
* Called when session connection state changed for a specific user.
108+
*
109+
* @param session QBRTCSession instance
110+
* @param state state - @see QBRTCConnectionState
111+
* @param userID ID of user
112+
*/
113+
- (void)session:(__kindof QBRTCBaseSession *)session didChangeConnectionState:(QBRTCConnectionState)state forUser:(NSNumber *)userID;
114+
115+
@end
116+
117+
NS_ASSUME_NONNULL_END
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
//
2+
// QBRTCBaseSession.h
3+
// QuickbloxWebRTC
4+
//
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
6+
//
7+
8+
#import <Foundation/Foundation.h>
9+
10+
#import "QBRTCTypes.h"
11+
12+
@class QBRTCMediaStream;
13+
@class QBRTCAudioTrack;
14+
@class QBRTCVideoTrack;
15+
16+
NS_ASSUME_NONNULL_BEGIN
17+
18+
/**
19+
* QBRTCBaseSession class interface.
20+
* This class represents basic session methods.
21+
*/
22+
@interface QBRTCBaseSession : NSObject
23+
24+
/**
25+
* Session state.
26+
*
27+
* @see QBRTCSessionState
28+
*/
29+
@property (assign, nonatomic, readonly) QBRTCSessionState state;
30+
31+
/**
32+
* Current user ID.
33+
*/
34+
@property (assign, nonatomic, readonly) NSNumber *currentUserID;
35+
36+
/**
37+
* Local media stream with audio and video (if video conferene) tracks.
38+
*
39+
* @discussion QBRTCMediaStream instance that has both video and audio tracks and allows to manage them.
40+
*/
41+
@property (strong, nonatomic, readonly) QBRTCMediaStream *localMediaStream;
42+
43+
// unavailable initializers
44+
- (instancetype)init NS_UNAVAILABLE;
45+
+ (instancetype)new NS_UNAVAILABLE;
46+
47+
/**
48+
* Remote audio track with opponent user ID.
49+
*
50+
* @param userID opponent user ID
51+
*
52+
* @return QBRTCAudioTrack audio track instance
53+
*/
54+
- (QBRTCAudioTrack *)remoteAudioTrackWithUserID:(NSNumber *)userID;
55+
56+
/**
57+
* Remote video track with opponent user ID.
58+
*
59+
* @param userID opponent user ID
60+
*
61+
* @return QBRTCVideoTrack video track instance
62+
*/
63+
- (QBRTCVideoTrack *)remoteVideoTrackWithUserID:(NSNumber *)userID;
64+
65+
/**
66+
* Connection state for opponent user ID.
67+
*
68+
* @param userID opponent user ID
69+
*
70+
* @return QBRTCConnectionState connection state for opponent user ID
71+
*/
72+
- (QBRTCConnectionState)connectionStateForUser:(NSNumber *)userID;
73+
74+
@end
75+
76+
NS_ASSUME_NONNULL_END

Framework/QuickbloxWebRTC.framework/Headers/QBRTCBitrateTracker.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// QBRTCBitrateTracker.h
33
// QuickbloxWebRTC
44
//
5-
// Copyright (c) 2016 QuickBlox. All rights reserved.
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
66
//
77

88
#import <Foundation/Foundation.h>

Framework/QuickbloxWebRTC.framework/Headers/QBRTCCameraCapture.h

+1-45
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// QBRTCCameraCapture.h
33
// QuickbloxWebRTC
44
//
5-
// Copyright (c) 2016 QuickBlox. All rights reserved.
5+
// Copyright (c) 2017 QuickBlox. All rights reserved.
66
//
77

88
#import "QBRTCVideoCapture.h"
@@ -121,48 +121,4 @@ NS_ASSUME_NONNULL_BEGIN
121121

122122
@end
123123

124-
@interface QBRTCCameraCapture (Deprecated)
125-
126-
/**
127-
* Start the capture session.
128-
*
129-
* @warning *Deprecated in 2.3.* Use 'startSession:' with nil param instead.
130-
*/
131-
- (void)startSession DEPRECATED_MSG_ATTRIBUTE("Deprecated in 2.3. Use 'startSession:' with nil param instead.");
132-
133-
/**
134-
* Stop the capture session asynchronously.
135-
*
136-
* @warning *Deprecated in 2.3.* Use 'stopSession:' with nil param instead.
137-
*/
138-
- (void)stopSession DEPRECATED_MSG_ATTRIBUTE("Deprecated in 2.3. Use 'stopSession:' with nil param instead.");
139-
140-
141-
/**
142-
* Stop the capture session and close video output.
143-
*
144-
* @warning *Deprecated in 2.3.* Use 'stopSession:' instead.
145-
*/
146-
- (void)stopSessionAndTeardownOutputs:(BOOL)teardownOutputs DEPRECATED_MSG_ATTRIBUTE("Deprecated in 2.3. Use 'stopSession:' instead.");
147-
148-
/**
149-
* Select back or front camera position.
150-
*
151-
* @param cameraPosition AVCaptureDevicePosition
152-
*
153-
* @warning *Deprecated in 2.3.* Use 'setPosition:' instead.
154-
*/
155-
- (void)selectCameraPosition:(AVCaptureDevicePosition)cameraPosition DEPRECATED_MSG_ATTRIBUTE("Deprecated in 2.3. Use 'setPosition:' instead.");
156-
157-
/**
158-
* Selects a new camera position.
159-
*
160-
* @param currentPosition The camera position to select
161-
*
162-
* @warning *Deprecated in 2.3.* Use 'position' instead.
163-
*/
164-
- (AVCaptureDevicePosition)currentPosition DEPRECATED_MSG_ATTRIBUTE("Deprecated in 2.3. Use 'position' instead.");
165-
166-
@end
167-
168124
NS_ASSUME_NONNULL_END

0 commit comments

Comments
 (0)