JRTCSDK-iOS v2401.0
视频客服 API 文档
载入中...
搜索中...
未找到
JRTCAgent.h
1//
2// JRTCAgent.h
3// JRTCSDK
4//
5// Created by juphoon on 2019/7/22.
6// Copyright © 2019 juphoon. All rights reserved.
7//
8
9#import <Foundation/Foundation.h>
10#import <JRTCSDK/JRTCAgentCallback.h>
11#import <JRTCSDK/JRTCCallCenter.h>
12#import <JRTCSDK/JRTCRoom.h>
13#import <JRTCSDK/JRTCEnum.h>
14#import <JRTCSDK/JRTCModuleBase.h>
15#import <JRTCSDK/JRTCRecordControlParam.h>
16#import <JRTCSDK/JRTCCallCenterCallParam.h>
17#import <JRTCSDK/JRTCAgentCheckinParam.h>
18
21
22NS_ASSUME_NONNULL_BEGIN
23
26
30@property (nonatomic, readonly, assign) CallState callState;
31
39@property (nonatomic, readonly, assign) bool isMainAgent;
40
46@property (nonatomic, readonly, strong) JRTCRoomParticipant *mainGuestParticipant;
47
48
56@property (nonatomic, readonly, strong) NSArray<JRTCRoomParticipant *> *guestParticipants;
57
63@property (nonatomic, strong, readonly) JRTCRoomParticipant *selfParticipant;
64
68@property (nonatomic, readonly, strong) NSArray <JRTCRoomParticipant *> *participants;
69
252@property (nonatomic, readonly, copy) NSString *statistics;
253
278@property (nonatomic, readonly, copy) NSString *jsonStats;
279
288@property (nonatomic, readonly, assign) bool pause;
289
293@property (nonatomic, readonly, assign) AgentOperatorState operatorState;
294
300@property (nonatomic, readonly, copy) NSString *shareStreamId;
301
307@property (nonatomic, readonly, copy) NSString *shareUserId;
308
314@property (nonatomic, strong) JRTCVideoSize *requestSize;
315
319@property (nonatomic, readonly, copy) NSString *serialNumber;
320
326@property (nonatomic, assign) AgentTermState termState;
327
334@property (nonatomic, readonly, assign) bool isAutoRecord;
335
349+ (JRTCAgent *)create:(JRTCClient *)client mediaDevice:(JRTCMediaDevice *)mediaDevice callback:(id<JRTCAgentCallback>)callback;
350
358+ (void)destroy;
359
365- (NSArray<JRTCVideoSize *> *_Nullable)getSupportVideoSizes;
366
376
385- (bool)isOnewayVideo;
386
399- (bool)setHoldState:(bool)hold;
400
409- (bool)getHoldState;
410
418- (bool)queryAllGroups;
419
427- (int)queryAvailableAgentList:(NSString *)businessNumber;
428
429
446- (bool)checkin:(NSString *)userId busy:(bool)busy checkinParam:(JRTCAgentCheckinParam * __nullable)checkinParam;
447
461- (bool)checkIn:(NSString *)userId role:(AgentRoleType)role DEPRECATED_MSG_ATTRIBUTE("该方法即将废弃,请用checkin:busy:checkinParam:代替");
462
476- (bool)checkIn:(AgentRoleType)role DEPRECATED_MSG_ATTRIBUTE("该方法即将废弃,请用checkin:busy:checkinParam:代替");
477
494- (bool)checkIn:(NSString *)userId role:(AgentRoleType)role busy:(bool)busy DEPRECATED_MSG_ATTRIBUTE("该方法即将废弃,请用checkin:busy:checkinParam:代替");
495
506- (bool)checkout;
507
521- (bool)joinCall:(NSString *)serialNumber partRole:(PartRoleType)partRole;
522
534- (bool)recall:(NSString *)userId callParam:(JRTCCallCenterCallParam *)param;
535
544- (bool)answer;
545
556- (bool)term;
557
571- (int)applyStatePause:(bool)pause;
572
589- (int)applyStatePause:(bool)pause subState:(int)subState;
590
608- (int)transferCall:(TransferType)type to:(NSString *)_id;
609
619- (void)turnCallType:(CallType)callType;
620
627-(void)setUseExternalScreenCaptureControl:(bool)useExternalControl;
628
639- (bool)inviteThirdGuest:(NSString *)userId extraInfo:(NSString *__nullable)extraInfo;
640
651- (bool)inviteThirdAgent:(NSString *)userId;
652
665- (int)switchPartRole:(PartRoleType)partRole;
666
676- (int)kickParticipant:(NSString *)userId;
677
690- (bool)requestSign;
691
707- (bool)requestSign:(NSString *)userId extraInfo:(nullable NSString *)extraInfo;
708
718- (void)requestOnewayVideo:(bool)turnOn;
719
735- (int)responseUrgent:(NSString *)serialNumber callerNumber:(NSString *)callerNumber agree:(BOOL)agree;
736
748- (bool)sendMessage:(NSString *)contentType content:(NSString *)content toUserId:(nullable NSString *)toUserId;
749
760- (bool)sendNotifyMessage:(JRTCNotifyMessage *)notifyMessage toUserId:(NSString *__nullable)toUserId;
761
775- (bool)enableUploadAudioStream:(bool)enable;
776
790- (bool)enableUploadVideoStream:(bool)enable;
791
803- (bool)sendAudioEmptyPack:(bool)empty;
804
816- (bool)sendVideoEmptyPack:(bool)empty;
817
818#if TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR
819
837- (bool)enableScreenShare:(bool)enable appGroupId:(NSString *__nullable)appGroupId preferredExtension:(NSString *__nullable)preferredExtension;
838
849- (bool)suspendScreenShare:(bool)suspend tip:(NSString *_Nonnull)tip;
850
858
865- (bool)setSubScreenShare:(bool)enable;
866
873- (bool)isSubScreenShare;
874
875#endif
876
888- (bool)setRatio:(float)ratio;
889
899- (bool)requestVideo:(JRTCRoomParticipant* __nonnull)participant videoSize:(JRTCVideoSize* __nonnull)videoSize;
900
908- (bool)unRequestVideo:(JRTCRoomParticipant* __nonnull)participant;
909
918- (bool)requestScreenVideo:(JRTCVideoSize* __nonnull)videoSize;
919
927
942- (bool)controlRecord:(AgentRecordAction)action watermarkText:(NSString *)watermarkText DEPRECATED_MSG_ATTRIBUTE("该方法即将废弃,请使用 controlRecord:recordParam: 替换");
943
958- (bool)controlRecord:(AgentRecordAction)action recordParam:(JRTCRecordControlParam *)recordParam;
959
972- (bool)enableLocalRecord:(bool)enable recordParam:(JRTCRecordLocalParam *)recordParam;
973
982- (bool)updateLocalRecordLayout:(NSArray<JRTCRecordLocalLayout*> *)layoutList;
983
990- (bool)isLocalRecording;
991
1005- (bool)enableRemoteRecord:(bool)enable recordParam:(JRTCRecordRemoteParam *)recordParam;
1006
1014
1023-(bool)updateRemoteRecordLayout:(NSArray<JRTCRecordRemoteLayout *> *)layoutList;
1024
1033- (bool)updateRemoteRecordWatermark:(NSDictionary *)watermarkTextDic;
1034
1043- (bool)setVideoDot:(NSString *__nonnull)timespan info:(NSString *__nonnull)info;
1044
1054- (bool)enableMicAgc:(bool)enable;
1055
1056@end
1057
1058NS_ASSUME_NONNULL_END
1059
RecordState
Definition: JRTCEnum.h:170
AgentRecordAction
Definition: JRTCCallCenter.h:221
AgentTermState
Definition: JRTCCallCenter.h:181
TransferType
Definition: JRTCCallCenter.h:88
CallType
Definition: JRTCCallCenter.h:59
CallState
Definition: JRTCCallCenter.h:69
AgentRoleType
Definition: JRTCCallCenter.h:128
AgentOperatorState
Definition: JRTCCallCenter.h:207
PartRoleType
Definition: JRTCCallCenter.h:98
座席管理
Definition: JRTCAgent.h:26
JRTCVideoSize * requestSize
Definition: JRTCAgent.h:314
bool isMainAgent
Definition: JRTCAgent.h:39
RecordState getRemoteRecordState()
AgentTermState termState
Definition: JRTCAgent.h:326
bool isSubScreenShare()
NSString * statistics
Definition: JRTCAgent.h:252
bool isAutoRecord
Definition: JRTCAgent.h:334
bool unRequestScreenVideo()
NSString * jsonStats
Definition: JRTCAgent.h:278
bool isOnewayVideo()
void destroy()
JRTCRoomParticipant * selfParticipant
Definition: JRTCAgent.h:63
bool pause
Definition: JRTCAgent.h:288
AgentOperatorState operatorState
Definition: JRTCAgent.h:293
bool isSuspendScreenShare()
bool requestSign()
CallType getCallType()
NSArray< JRTCRoomParticipant * > * guestParticipants
Definition: JRTCAgent.h:56
CallState callState
Definition: JRTCAgent.h:30
NSArray< JRTCVideoSize * > *_Nullable getSupportVideoSizes()
bool getHoldState()
NSArray< JRTCRoomParticipant * > * participants
Definition: JRTCAgent.h:68
NSString * shareStreamId
Definition: JRTCAgent.h:300
bool isLocalRecording()
bool answer()
NSString * serialNumber
Definition: JRTCAgent.h:319
JRTCRoomParticipant * mainGuestParticipant
Definition: JRTCAgent.h:46
bool checkout()
NSString * shareUserId
Definition: JRTCAgent.h:307
bool queryAllGroups()
呼叫参数
Definition: JRTCCallCenterCallParam.h:22
登录登出管理
Definition: JRTCClient.h:24
音视频设备管理
Definition: JRTCMediaDevice.h:149
业务基础类
Definition: JRTCModuleBase.h:16
事件通知
Definition: JRTCNotifyMessage.h:19
远程录制参数
Definition: JRTCRecordControlParam.h:19
成员布局配置类
Definition: JRTCRecordLocalParam.h:18
本地录制参数
Definition: JRTCRecordLocalParam.h:43
成员布局配置类
Definition: JRTCRecordRemoteParam.h:18
远程录制参数
Definition: JRTCRecordRemoteParam.h:41
Definition: JRTCRoomParticipant.h:114
视频尺寸
Definition: JRTCVideoSize.h:18