FYRtcEngine:

  • 创建FYRtcEngine

public static FYRtcEngine create(Context context, String appId, String appToken, FYRtcEventHandler handler);
参数 是否必须 描述
context 应用程序上下文
appId 应用id
appToken 应用token
handler 一个提供了缺省实现的抽象类,SDK通过该抽象类报告SDK运行时的各种事件
  • 获取sdk版本:

public static String getVersion();
  • 加入频道

public void joinChannel(String channelId, String uid, FYOptionData option);
参数 是否必须 描述
channelId 频道id,字符串,数字,_,长度不超过40位
uid 用户id,为空时sdk会生成一个uid
option 选项,可以配置最大时长,是否录音和透传数据
  • 离开频道

public void leaveChannel();
  • 将频道中某一个成员静音

public void muteRemoteAudio(String uid, boolean enabled);
参数 是否必须 描述
uid 被静音的成员uid
enabled true:静音,false:解除静音
  • 将频道中除某一个成员之外的其他成员全部静音

public void muteOtherRemoteAudio(String uid, boolean enabled);
参数 是否必须 描述
uid 不被静音的成员uid
enabled true:静音,false:解除静音
  • 将频道中所有成员静音

public void muteAllRemoteAudio(boolean enabled);
参数 是否必须 描述
enabled true:静音,false:解除静音
  • 将本地Audio静音

public void muteLocalAudio(boolean enabled);
参数 是否必须 描述
enabled true:静音,false:解除静音
  • 点对点语音

public void dialPeer(String calleeUid, String callerUid, FYOptionData option);
参数 是否必须 描述
calleeUid 被叫用户id
callerUid 主叫用户id,为空时sdk会生成一个uid
option 呼叫选项,可配置最大时长,是否录音,透传数据
  • 准备接听点对点来电

主叫呼叫被叫时,可以使用离线推送(如小米push)通知被叫,被叫调用calleePrepare准备接听来电,调用成功后一段时间内都可以接听到点对点语音来电。

public void calleePrepare(String uid);
参数 是否必须 描述
uid 当前的uid
  • 结束通话

public void endCall();
  • 接听来电

public void answerCall();
  • 打开扬声器

public void setEnableSpeaker(boolean enabled);
参数 是否必须 描述
enabled true:切换到扬声器,false:切换到听筒
  • 发送dtmf

public void sendDtmf(char dtmf);
参数 是否必须 描述
dtmf dtmf: 0-9,*,#
  • 点对点来电铃声

public void setRing(Uri ringtone);
参数 是否必须 描述
ringtone 铃声,null代表静音
public String getRing();
返回值 描述
String 当前来电的铃声,null代表静音
  • 点对点来电震动

public void setVibratorEnabled(boolean enabled);
参数 是否必须 描述
enabled true:震动,false:不震动
public boolean isVibratorEnabled();
返回值 描述
boolean 当前来电是否震动
  • 设置日志文件路径

public void setLogFile(String filePath);
参数 是否必须 描述
filePath 日志文件的路径
  • 设置日志级别

public void setLogFilter(int level);
参数 是否必须 描述
level 日志文件的级别,如:android.util.Log.INFO


FYOptionData

通话需要的选项,可以为空。

public class FYOptionData {
    int maxDuration; // 最大通话时长,默认为不限制(小于等于0为不限制)
    boolean isRecord; // 是否录音,默认为false
    String data; // 透传数据,默认为null
}


FYRtcEventHandler

// sdk错误回调
public void onError(FYError error);
// 加入频道成功
public void onJoinChannelSuccess(String channelId, String uid);
// 离开频道
public void onLeaveChannel(RtcStats stats);
// 用户加入频道
public void onUserJoined(String uid);
// 用户离开频道
public void onUserOffline(String uid);
// 用户静音状态改变
public void onUserMuteAudio(String uid, boolean muted);
// 频道状态变化
public void onRtcStats(RtcStats stats);
// 点对点语音来电
public void onIncomingCall(String caller);
// 正在外呼
public void onOutgoingCall(String callee, String uid);
// 通话接通
public void onCallConnect(String uid);
// 通话结束
public void onCallEnd(RtcStats stats);
// 专线回拨成功
public void onDialBackSuccess();
// 接收到dtmf
public void onDtmfReceived(char dtmf);
  • FYRtcEventHandler.RtcStats:
public static class RtcStats {
    public float downBandWidth; // 下行带宽
    public float upBandWidth; // 上行带宽
    public float sendLossRate; // 发送丢包率
    public float recvLossRate; // 接收丢包率
    public long sendBytes; // 发送数据
    public long recvBytes; // 接收数据
}



results matching ""

    No results matching ""