JRTCSDK-iOS v2401.0
视频客服 API 文档
载入中...
搜索中...
未找到
构造函数 | 所有成员列表
<JRTCGuestCallback>协议 参考

访客相关事件回调 更多...

#import <JRTCGuestCallback.h>

构造函数

(void) - onGetAllGroups:result:
 
(void) - onCallStateChanged:incomingType:inviter:termReason:
 
(void) - onCallQueueCount:time:
 
(void) - onCallQueueCount:time:agentRinging:
 
(void) - onCallPropertyChanged:
 
(void) - onMemberJoin:
 
(void) - onMemberLeave:
 
(void) - onMemberUpdate:changeParam:
 
(void) - onUrgentResultResponse:
 
(void) - onMessageReceived:contentType:messageType:fromUserId:
 
(void) - onHoldStateChanged:
 
(void) - onCallTypeChanged:
 
(void) - onSignRequest:extraInfo:
 
(void) - onOnewayVideoChanged:
 
(void) - onDeliveryAbort:deliveryUserId:reason:
 
(void) - onCallForwarding
 
(void) - onNotifyMessageReceived:fromUserId:
 

详细描述

访客相关事件回调

函数文档

◆ onCallForwarding

- (void) onCallForwarding

座席通话转接回调

通话中座席调用 transferCall 接口将通话转接到某个座席或转接到某个业务组后,访客会收到此回调,然后访客需等待新的座席接听该通话。
该过程中,访客通话状态不变,新的座席接听通话后,访客可通过 onMemberJoin 回调得知。

◆ onCallPropertyChanged:

- (void) onCallPropertyChanged: (JRTCRoomPropChangeParam *)  propChangeParam

通话属性改变回调

注解
重点关注屏幕共享,即当 screenShare 属性为 true 时,去处理屏幕共享相关事件。
可根据 shareStreamIdshareUserId 属性进行屏幕共享画面的渲染和停止渲染。
参数
propChangeParam通话改变的属性

◆ onCallQueueCount:time:

- (void) onCallQueueCount: (int)  count
time: (int)  time 

当前排队人数上报回调

在呼叫发起尚未接通的时间段每5秒上报一次,通话接通后将停止上报。

参数
count当前排队人数,不包含已经分配座席但是未接听的访客成员
time预计等待时长,单位秒

◆ onCallQueueCount:time:agentRinging:

- (void) onCallQueueCount: (int)  count
time: (int)  time
agentRinging: (bool)  agentRinging 

当前排队人数上报回调

在呼叫发起尚未接通的时间段每5秒上报一次,通话接通后将停止上报。

参数
count当前排队人数,不包含已经分配座席但是未接听的访客成员
time预计等待时长,单位秒
agentRinging座席是否振铃

◆ onCallStateChanged:incomingType:inviter:termReason:

- (void) onCallStateChanged: (GuestCallStateChangeType type
incomingType: (CallIncomingType incomingType
inviter: (nullable JRTCInviter *)  inviter
termReason: (CallTermReason reason 

通话状态改变回调

参数
type访客通话状态改变类型,即以下情况会收到此回调:
incomingType来电类型,当 type == GuestCallStateChangeTypeIncoming 时有效
inviter邀请成员对象,当 type == GuestCallStateChangeTypeIncoming 时有效
reason挂断原因,只在 type 为 GuestCallStateChangeTypeTermed 时需要关注,详见 CallTermReason

◆ onCallTypeChanged:

- (void) onCallTypeChanged: (CallType callType

音视频通话切换回调

通话中的访客和座席可分别调用 turnCallTypeturnCallType 方法切换音视频通话模式,通话中所有成员都会收到此回调。

参数
callType通话模式

◆ onDeliveryAbort:deliveryUserId:reason:

- (void) onDeliveryAbort: (bool)  isShutDown
deliveryUserId: (NSString *)  deliveryUserId
reason: (NSString *)  reason 

录制异常回调

远程录制异常退出时会上报此回调。

参数
isShutDown录制异常时服务器是否自动结束通话
  • true: 自动结束通话
  • false: 不自动结束通话
deliveryUserId录制异常的用户ID
reason录制异常的原因

◆ onGetAllGroups:result:

- (void) onGetAllGroups: (NSArray< JRTCCallCenterGroupItem * > *)  groups
result: (bool)  result 

获取业务号列表结果回调

访客调用 queryAllGroups 接口获取业务号列表,会收到此回调。

参数
groups座席业务实体对象列表,获取失败时为 nil
result获取结果,true 表示获取成功,false 表示获取失败

◆ onHoldStateChanged:

- (void) onHoldStateChanged: (bool)  hold

收到通话保持或取回的回调

通话中座席可调用 setHoldState 接口保持通话或取回通话,通话中所有成员都会收到此回调。

参数
holdtrue 表示通话被保持,false 表示通话取回

◆ onMemberJoin:

- (void) onMemberJoin: (JRTCRoomParticipant *)  participant

通话中有新成员加入回调

当第三方成员加入时,已在通话中的所有成员会收到此回调,而新加入的成员不会收到此回调。

参数
participant新加入的成员对象

◆ onMemberLeave:

- (void) onMemberLeave: (JRTCRoomParticipant *)  participant

通话中有成员离开回调

通话中有成员离开通话时,剩余的成员会收到此回调,而离开的成员不会收到此回调。

参数
participant离开的成员对象

◆ onMemberUpdate:changeParam:

- (void) onMemberUpdate: (JRTCRoomParticipant *)  participant
changeParam: (JRTCRoomParticipantChangeParam *)  changeParam 

通话中成员属性更新回调

常用的有 音量值音频上传状态视频上传状态等。
例如当通话中有成员关闭视频传输,通话中所有成员都会收到此回调。

参数
participant属性更新的成员对象
changeParam更新的属性对象

◆ onMessageReceived:contentType:messageType:fromUserId:

- (void) onMessageReceived: (NSString *)  content
contentType: (NSString *)  contentType
messageType: (MessageType messageType
fromUserId: (NSString *)  fromUserId 

收到消息回调

通话中的访客和座席可分别调用 sendMessagesendMessage 接口给通话中的指定成员或全体成员发送消息,接收消息的成员会收到此回调,由此获取消息具体信息。

参数
contentType消息内容类型
messageType消息归属类型
fromUserId发送方的用户ID

◆ onNotifyMessageReceived:fromUserId:

- (void) onNotifyMessageReceived: (JRTCNotifyMessage *)  notifyMessage
fromUserId: (NSString *)  fromUserId 

收到事件通知消息回调

通话中的访客和座席可分别调用 sendNotifyMessagesendNotifyMessage 接口给通话中的指定成员或全体成员发送通知消息,接收消息的成员会收到此回调,由此获取消息具体信息。

参数
notifyMessage事件通知实体类
fromUserId发送方的用户ID

◆ onOnewayVideoChanged:

- (void) onOnewayVideoChanged: (bool)  turnOn

收到单向视频变化回调

通话中座席调用 requestOnewayVideo 请求单向视频,所有成员都会收到此回调。
收到此回调后,应用需要自行实现单向视频功能,例如用图片遮挡该座席画面,SDK不会对画面进行单向处理。

参数
turnOn是否单向视频

◆ onSignRequest:extraInfo:

- (void) onSignRequest: (NSString *)  fromUserId
extraInfo: (nullable NSString *)  extraInfo 

收到签名请求回调

通话中座席调用 requestSign 接口给访客发送签名请求,访客会收到此回调。

参数
fromUserId发起签名请求的座席用户ID
extraInfo随路额外消息

◆ onUrgentResultResponse:

- (void) onUrgentResultResponse: (bool)  agree

座席处理加急的结果回调

访客调用 requestUrgent 接口请求加急后,座席可调用 responseUrgent 接口同意或拒绝加急请求,然后访客会收到此回调获得加急请求应答结果。

参数
agree加急是否通过,true 表示座席同意了访客的加急请求,false 表示不同意