初始化 FYRtcEngineKit
FYRtcEngineKit *engineKit = [FYRtcEngineKit
sharedEngineWithAppId:@"AppId" AppToken:@"AppToken" delegate:self];
参数 | 是否必须 | 描述 |
---|---|---|
appId | 是 | 应用id |
appToken | 是 | 应用token |
FYRtcEngineKitDelegate | 否 | 提供 FYRtcEngineKit所有事件回调 |
加入频道
[engineKit joinChannel:@"channelId" CallerUid:nil OptionData:nil JoinSuccess:nil];
参数 | 是否必须 | 描述 |
---|---|---|
channelId | 是 | 频道id,字符串,数字,_,长度不超过40位 |
uid | 否 | 用户id,为空时sdk会生成一个uid |
option | 否 | 选项,可以配置最大时长,是否录音和透传数据 |
离开频道
[engineKit leaveChannel:nil];
静音远端音频
[engineKit muteRemoteAudio:enable Uid:@"uid"]
参数 | 是否必须 | 描述 |
---|---|---|
uid | 是 | 指定用户ID |
enable | 是 | YES :停止播放指定用户ID音频 NO:恢复播放指定用户ID音频 |
静音所有远端音频
[engineKit muteAllRemoteAudio:enable]
参数 | 是否必须 | 描述 |
---|---|---|
enable | 是 | YES :停止播放频道内所有用户音频 NO:恢复播放频道内所有用户音频 |
静音除指定用户ID以外所有远端音频
[engineKit muteOtherRemoteAudio:enable Uid:@"uid"]
参数 | 是否必须 | 描述 |
---|---|---|
uid | 是 | 指定用户ID |
enable | 是 | YES :停止播放除指定用户ID以外所有音频 NO:恢复播放除指定用户ID以外音频 |
发起点到点语音呼叫
[engineKit dialPeer:@"calleeUid"CallerUid:@"callerUid" OptionData:nil];
参数 | 是否必须 | 描述 |
---|---|---|
calleeUid | 是 | 被叫用户ID,被叫方调用calleePrepare()传入的uid必须与主叫calleeUid相同,否则无法呼叫到被叫 |
callerUid | 否 | 用户ID,为空时sdk会生成一个uid |
option | 否 | 选项,可以配置最大时长,是否录音和透传数据 |
准备接收点到点语音呼叫
[engineKit calleePrepare:@"uid" prepareSuccess:nil];
参数 | 是否必须 | 描述 |
---|---|---|
uid | 是 | 用户ID,主叫方调用dialPeer()传入的uid必须与主叫calleeUid相同,否则被叫无法收到主叫呼入 |
发起专线呼叫
[engineKit dialPstn:@"calleeNum" CallerUid:nil Display:@"display" OptionData:nil];
参数 | 是否必须 | 描述 |
---|---|---|
calleeNum | 是 | 被叫电话号码。注:号码必须是E164格式,如:+8613012345678 |
uid | 否 | 用户id,为空时sdk会生成一个uid |
display | 否 | 被叫显示号码,注:号码必须是E164格式,如:+8613512345678 |
option | 否 | 选项,可以配置最大时长,是否录音和透传数据 |
发起专线回拨呼叫
[engineKit dialBack:@"calleeNumber" CalleeDisplay:@"calleeDisplay" CallerNumber:@"callerNumber"CallerDisplay:@"callerDisplay" OptionData:nil DialPstnSuccess:nil];
参数 | 是否必须 | 描述 |
---|---|---|
calleeNum | 是 | 被叫电话号码 |
calleeDisplay | 否 | 被叫显示号 |
callerNumber | 是 | 主叫电话号码。 |
callerDisplay | 否 | 主叫显示号码。 |
注:以上所有号码必须符合E164格式如:+8613012345678,否则会拨打以及显号失败。专线回拨只有主叫接通之后会拨打被叫,如果主叫挂断,不会继续拨打被叫。
结束专线呼叫或者点到点语音呼叫
[engineKit endCall:nil]
接听点到点语音呼叫
[engineKit answerCall]
麦克风开关
[engineKit muteLocalAudio:enable]
参数 | 是否必须 | 描述 |
---|---|---|
enable | 是 | YES :麦克风静音 NO:取消静音 |
扬声器开关
[engineKit enabledSpeaker:enable]
参数 | 是否必须 | 描述 |
---|---|---|
enable | 是 | YES :打开扬声器 NO:关闭扬声器 |
发送dtmf
[engineKit sendDtmf:@"dtmf"]
参数 | 是否必须 | 描述 |
---|---|---|
dtmf | 是 | char类型字符,包含’0’,’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,’#’,’*’ |
只有在接通电话之后才可以发送dtmf
设置本地铃声
[engineKit setRing:@"path"]
参数 | 是否必须 | 描述 |
---|---|---|
path | 是 | 音频文件路径。音频文件必须是wav格式,16位采样且长度不能超过30秒。 |
设置log路径
[engineKit setLogfile:@"path"]
参数 | 是否必须 | 描述 |
---|---|---|
path | 是 | log将输出到开发者指定目录 |
获取SDK版本号
[engineKit version]
FYRtcEngineKitDelegate
有用户加入频道回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine didJoinOfUid:(NSString *)uid
有用户加入当前频道。当用户加入频道时已经有人在频道中,sdk也会将这些已经在频道中的用户上报
有用户离开频道回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine didLeaveOfUid:(NSString *)uid
提示有用户离开当前频道
用户音频静音回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine didAudioMuted:(BOOL)muted Uid:(NSString *)uid
参数 | 描述 |
---|---|
muted | YES :静音 NO:取消静音 |
提示有用户用户被静音/取消静音
音频相关统计数据回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine reportRtcStats:(FYRtcEngineStatus *)status
参数 | 描述 |
---|---|
status | downBandwidth :下行带宽 upBandwidth:上行带宽 sendLossRate:发送丢包率 recvLossRate:接受丢包率 sendBytes:发送字节数(累计值) recvBytes:接受字节数(累计值) |
该回调定期上报音频相关统计数据,每两秒回调一次
加入频道成功回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine didJoinChannel:(NSString *)channelId Uid:(NSString *)uid
参数 | 描述 |
---|---|
channelId | 已加入频道号 |
uid | 如果用户在joinChannel()指定了uid则此处返回该uid,否则sdk将生成一个uid |
已离开频道成功回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine didLeaveChannel:(NSString *)channelId Stats:(FYRtcEngineStatus *)status;
参数 | 描述 |
---|---|
channelId | 已离开的频道号 |
status | downBandwidth :下行带宽 upBandwidth:上行带宽 sendLossRate:发送丢包率 recvLossRate:接受丢包率 sendBytes:发送字节数(累计值) recvBytes:接受字节数(累计值) |
当用户调用leaveChannel()成功之后调用该回调。
主叫开始呼出点到点语音回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine OutgoingCall:(NSString *)callee Uid:(NSString *)uid
参数 | 描述 |
---|---|
uid | 用户id,当调用dialPeer()指定了uid则此处返回该uid |
callee | 被叫号码 |
sdk正在建立UDP连接的时候触发此回调
接通中回调
- (void)onFYRtcEngineCallConnect:(FYRtcEngineKit *)engine
被叫已经开始接听点到点语音
挂断点到点语音回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine CallEnd:(FYRtcEngineStatus *)status
参数 | 描述 |
---|---|
status | downBandwidth :下行带宽 upBandwidth:上行带宽 sendLossRate:发送丢包率 recvLossRate:接受丢包率 sendBytes:发送字节数(累计值) recvBytes:接受字节数(累计值) |
主叫或者被叫挂断时触发此回调
被叫上线成功回调
- (void)onFYRtcEngineCalleePrepareSucess:(FYRtcEngineKit *)engine
音频相关统计数据回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine reportRtcStats:(FYRtcEngineStatus *)status
参数 | 描述 |
---|---|
status | downBandwidth :下行带宽 upBandwidth:上行带宽 sendLossRate:发送丢包率 recvLossRate:接受丢包率 sendBytes:发送字节数(累计值) recvBytes:接受字节数(累计值) |
该回调定期上报音频相关统计数据,每两秒回调一次
专线回拨成功回调
- (void)onFYRtcEngineDialBackSuccess:(FYRtcEngineKit *)engine
参数 | 描述 |
---|---|
error | code:FYRtcEngineKit错误码 msg:错误消息 |
在使用sdk期间发生所有错误,都会触发该回调。
在使用FYRtcEngineKit期间所有错误回调
- (void)onFYRtcEngine:(FYRtcEngineKit *)engine OnError:(FYError *)error
参数 | 描述 |
---|---|
error | code:FYRtcEngineKit错误码 msg:错误消息 |
在使用sdk期间发生所有错误,都会触发该回调。