JCSDK-iOS
JCGuest.h
1 //
2 // JCGuest.h
3 // JCSDKOC
4 //
5 // Created by Ginger on 2019/3/28.
6 // Copyright © 2019 juphoon. All rights reserved.
7 //
8 
9 #import <Foundation/Foundation.h>
10 #import "JCGuestCallback.h"
11 #import "JCMediaChannel.h"
12 #import "JCGuestCallParam.h"
13 
19 NS_ASSUME_NONNULL_BEGIN
20 
22 @interface JCGuest : NSObject
23 
25 @property (nonatomic, assign, readonly) JCGuestCallState callState;
26 
28 @property (nonatomic, strong, readonly) JCMediaChannelParticipant *agentParticipant;
29 
31 @property (nonatomic, strong, readonly) NSArray <JCMediaChannelParticipant *> *participants;
32 
34 @property (nonatomic, copy, readonly) NSString *statistics;
35 
37 @property (nonatomic, readonly, copy) NSString *shareRenderId;
38 
40 @property (nonatomic, readonly, copy) NSString *shareUserId;
41 
43 @property (nonatomic, readonly, assign) int spkLevel;
44 
46 @property (nonatomic, readonly, assign) int micLevel;
47 
49 @property (nonatomic, readonly, copy) NSString *serialNumber;
50 
60 + (JCGuest *)create:(JCClient *)client mediaDevice:(JCMediaDevice *)mediaDevice callback:(id<JCGuestCallback>)callback;
61 
67 + (void)destroy;
68 
71 - (bool)queryAllGroups;
72 
78 - (bool)call:(NSString *)number callParams:(JCGuestCallParam *)callParam;
79 
85 - (bool)oneToOneCall:(NSString *)number callParams:(JCGuestCallParam *)callParam;
86 
91 - (bool)setRatio:(float)ratio;
92 
96 - (bool)setScreenMode:(JCMediaChannelConfMergeModeParam *)param;
97 
100 - (void)setRequestSize:(JCMediaChannelPictureSize)size;
101 
104 - (bool)term;
105 
112 - (bool)enableAudio:(bool)enable;
113 
120 - (bool)enableVideo:(bool)enable;
121 
128 - (bool)sendVideoEmptyPack:(bool)empty;
129 
136 - (bool)sendAudioEmptyPack:(bool)empty;
137 
142 - (bool)enableScreenShare:(bool)enable;
143 
149 - (bool)requestVideo:(JCMediaChannelParticipant *)participant pictureSize:(JCMediaChannelPictureSize)pictureSize;
150 
154 - (bool)requestUrgent;
155 
160 - (bool)enableLocalRecord:(bool)enable path:(NSString *)path;
161 
166 - (bool)enableLocalRecord:(bool)enable recordParam:(JCMediaChannelRecordLocalParams *)recordParam;
167 
173 - (bool)enableRemoteRecord:(bool)enable recordParam:(JCMediaChannelRecordRemoteParams*)recordParam;
174 
180 - (bool)sendMessage:(NSString *)type content:(NSString *)content;
181 
188 - (bool)sendMessage:(NSString *)type content:(NSString *)content toUserId:(nullable NSString *)userId;
189 
196 - (bool)insertStorageRecord:(NSString *)url fileType:(JCGuestStorageFileType)fileType fileSize:(int)fileSize expireTime:(int)expireTime;
197 
201 - (bool)setLineUpTag:(JCGuestTagType)tagType;
202 
207 - (bool)getHoldState;
208 
217 - (void)turnCallType:(JCGuestCallType)calltype;
218 
225 
230 - (void)sendTextMessage:(NSString *)content toUserId:(NSString *)userId;
231 @end
232 
233 NS_ASSUME_NONNULL_END
234 
-[JCGuest getCallType]
JCGuestCallType getCallType()
Definition: JCGuest.m:395
JCGuestTagType
JCGuestTagType
Definition: JCGuestConstants.h:110
JCGuest
访客模块
Definition: JCGuest.h:23
JCGuest::agentParticipant
JCMediaChannelParticipant * agentParticipant
通话中可以取得正在通话的座席对象
Definition: JCGuest.h:28
JCGuest::callState
JCGuestCallState callState
当前通话状态
Definition: JCGuest.h:25
-[JCGuest queryAllGroups]
bool queryAllGroups()
Definition: JCGuest.m:119
JCGuest::statistics
NSString * statistics
媒体统计信息
Definition: JCGuest.h:34
JCGuestCallParam
Definition: JCGuestCallParam.h:20
JCMediaDevice
Definition: JCMediaDevice.h:26
JCMediaChannelConfMergeModeParam
Definition: JCMediaChannel.h:186
JCGuestCallback-p
访客回调
Definition: JCGuestCallback.h:22
JCGuestCallType
JCGuestCallType
Definition: JCGuestConstants.h:124
JCGuest::micLevel
int micLevel
当前本地记录音量级别
Definition: JCGuest.h:46
JCGuest::spkLevel
int spkLevel
当前扬声器音量级别
Definition: JCGuest.h:43
JCGuest::shareUserId
NSString * shareUserId
屏幕共享时的共享成员id,无屏幕共享时为空
Definition: JCGuest.h:40
JCMediaChannelRecordLocalParams
Definition: JCMediaChannel.h:137
JCGuestStorageFileType
JCGuestStorageFileType
Definition: JCGuestConstants.h:93
-[JCGuest requestUrgent]
bool requestUrgent()
Definition: JCGuest.m:271
JCMediaChannelPictureSize
JCMediaChannelPictureSize
Definition: JCMediaChannelConstants.h:53
JCMediaChannelRecordRemoteParams
Definition: JCMediaChannel.h:83
-[JCGuest getHoldState]
bool getHoldState()
Definition: JCGuest.m:376
-[JCGuest term]
bool term()
Definition: JCGuest.m:217
JCMediaChannelParticipant
Definition: JCMediaChannelParticipant.h:70
JCGuestCallState
JCGuestCallState
Definition: JCGuestConstants.h:35
JCGuest::serialNumber
NSString * serialNumber
服务唯一标识,上层可使用该参数通过portal第三方接口查询到话务信息,如录制视频文件的URL
Definition: JCGuest.h:49
JCClient
Definition: JCClient.h:22
JCGuest::participants
NSArray< JCMediaChannelParticipant * > * participants
通话中的所有成员
Definition: JCGuest.h:31
JCGuest::shareRenderId
NSString * shareRenderId
屏幕共享时的渲染id,无屏幕共享时为空
Definition: JCGuest.h:37
+[JCGuest destroy]
void destroy()
Definition: JCGuest.m:352