NERtcCallKit V3.4.0
载入中...
搜索中...
未找到
NECallEngine.h
浏览该文件的文档.
1// Copyright (c) 2022 NetEase, Inc. All rights reserved.
2// Use of this source code is governed by a MIT license that can be
3// found in the LICENSE file.
4
5#import <Foundation/Foundation.h>
6
7#import "NECallConfig.h"
9#import "NECallEndInfo.h"
11#import "NECallInfo.h"
12#import "NECallParam.h"
13#import "NECallPushConfig.h"
16#import "NEHangupParam.h"
17#import "NEInviteInfo.h"
18#import "NERecordConfig.h"
19#import "NESetupConfig.h"
20#import "NESwitchParam.h"
21
22NS_ASSUME_NONNULL_BEGIN
23
24@protocol NECallEngineRtcDelegateEx <NSObject>
25
26- (void)onNERtcEngineVirtualBackgroundSourceEnabled:(BOOL)enabled
27 reason:(NERtcVirtualBackgroundSourceStateReason)reason;
28
29@end
30
31@protocol NERecordProvider <NSObject>
32
33- (void)onRecordSend:(NERecordConfig *)config;
34
35@end
36
37@protocol NECallEngineDelegate <NSObject>
38
39#pragma mark - 回调接口
40
41@optional
42
45- (void)onReceiveInvited:(NEInviteInfo *)info;
46
49- (void)onCallEnd:(NECallEndInfo *)info;
50
53- (void)onCallConnected:(NECallInfo *)info;
54
57- (void)onCallTypeChange:(NECallTypeChangeInfo *)info;
58
62- (void)onVideoAvailable:(BOOL)available userID:(NSString *)userId;
63
67- (void)onVideoMuted:(BOOL)muted userID:(NSString *)userId;
68
72- (void)onAudioMuted:(BOOL)muted userID:(NSString *)userId;
73
76- (void)onLocalAudioMuted:(BOOL)muted;
77
78#pragma mark - 内部周期回调接口
79
81- (void)onRtcInitEnd;
82
83@end
84
85@interface NECallEngine : NSObject
86
88@property(nonatomic, assign, readonly) NERtcCallStatus callStatus;
89
91@property(nonatomic, assign) NSTimeInterval timeOutSeconds;
92
94@property(nonatomic, weak) id<NERtcEngineDelegateEx> engineDelegate;
95
97@property(nonatomic, weak) id<NERtcEngineMediaStatsObserver> observer;
98
100@property(nonatomic, readonly, strong) NESetupConfig *config;
101
103+ (instancetype)sharedInstance;
104
106- (void)destroy;
107
108#pragma mark - 主流程
109
112- (void)setup:(NESetupConfig *)config;
113
117- (void)call:(NECallParam *)param
118 completion:
119 (nullable void (^)(NSError *_Nullable error, NECallInfo *_Nullable callInfo))completion;
120
123- (void)accept:(nullable void (^)(NSError *_Nullable error,
124 NECallInfo *_Nullable callInfo))completion;
125
129- (void)hangup:(NEHangupParam *)param
130 completion:(nullable void (^)(NSError *_Nullable error))completion;
131
132#pragma mark - 配置接口
133
136- (void)switchCallType:(NESwitchParam *)param
137 completion:(nullable void (^)(NSError *_Nullable))completion;
138
141- (void)setTimeout:(int)time;
142
147- (int)setupLocalView:(nullable UIView *)view;
148
153- (int)setupRemoteView:(nullable UIView *)view;
154
158- (int)enableLocalVideo:(BOOL)enable;
159
163- (int)muteLocalVideo:(BOOL)muted;
164
168- (int)muteLocalAudio:(BOOL)muted;
169
172- (void)setCallRecordProvider:(id<NERecordProvider>)provider;
173
175- (void)switchCamera;
176
179- (void)setCallConfig:(NECallConfig *)config;
180
182- (void)addCallDelegate:(id<NECallEngineDelegate>)delegate;
183
185- (void)removeCallDelegate:(id<NECallEngineDelegate>)delegate;
186
187#pragma mark - 状态信息获取
188
191- (nullable NECallInfo *)getCallInfo;
192
196
198+ (NSString *)getVersion;
199
200#pragma mark - 弹出系统来电提示
201
207
208- (void)reportIncomingCallWithParam:(NECallSystemIncomingCallParam *)param
209 acceptCompletion:
210 (nullable void (^)(NSError *_Nullable error,
211 NECallInfo *_Nullable callInfo))acceptCompletion
212 hangupCompletion:(nullable void (^)(NSError *_Nullable error))hangupCompletion
213 muteCompletion:
214 (nullable void (^)(NSError *_Nullable error, BOOL mute))muteCompletion
215 API_AVAILABLE(ios(17.4));
216
217@end
218
219NS_ASSUME_NONNULL_END
NERtcCallStatus
通话状态
定义 NECallEngineConsts.h:41
定义 NECallConfig.h:10
定义 NECallEndInfo.h:11
定义 NECallEngine.h:86
NSTimeInterval timeOutSeconds
单位:秒,IM服务器邀请2分钟后无响应为超时,最大值不超过2分钟。
定义 NECallEngine.h:91
nullable NECallInfo * getCallInfo()
获取当前通话信息
定义 NECallEngine.m:631
NESetupConfig * config
初始化设置
定义 NECallEngine.h:100
id< NERtcEngineDelegateEx > engineDelegate
NERtcEngine 的回调接口,由用户提供
定义 NECallEngine.h:94
NERtcCallStatus callStatus
通话状态
定义 NECallEngine.h:88
id< NERtcEngineMediaStatsObserver > observer
中转NERtcEngine统计回调
定义 NECallEngine.h:97
void destroy()
销毁
定义 NECallEngine.m:120
NECallConfig * getCallConfig()
获取当前通话配置
定义 NECallEngine.m:638
NSString * getVersion()
版本号
定义 NECallEngine.m:1643
instancetype sharedInstance()
单例
定义 NECallEngine.m:78
void switchCamera()
摄像头前后切换
定义 NECallEngine.m:483
定义 NECallInfo.h:14
定义 NECallParam.h:13
定义 NECallSystemIncomingCallParam.h:21
定义 NECallTypeChangeInfo.h:11
定义 NEHangupParam.h:11
定义 NEInviteInfo.h:11
定义 NERecordConfig.h:11
定义 NESetupConfig.h:10
定义 NESwitchParam.h:10