音视频
<h2>相关接口</h2>
<p>发起语音或视频时先要创建音视频的房间成功之后再调用发起的指令,发起指令中的content为创建房间成功后返回的内容</p>
<pre><code class="language-java"> /**
* 创建音视频房间
* @param name 填""
* @param roomType 房间类型(1 语音 2 视频)
* @param type 填1
* @param role 填1
* @param callBack 成功返回url
*/
QDClient.getInstance().getSelfManager().createAVRoom("", roomType, 1, 1, QDResultCallBack<String> callback)
/**
* 发起音视频请求
* @param user 用户对象 下同
* @param isVideo 是否是视频请求 下同
* @param subject 内容 下同
* @param url 创建房间成功后返回的url地址
*/
QDAVCmd cmd = QDClient.getInstance().doAVCall(QDUser user, boolean isVideo, String subject, String url)
/**
* 取消音视频请求 (发起者在音视频没有接通前主动取消)
* @param guid 发起请求返回的对象的guid
* @param user
* @param isVideo
* @param subject
*/
QDClient.getInstance().doAVHangUp(String guid, QDUser user, boolean isVideo, String subject)
/**
* 音视频通话回复
* @param cmd 收到音视频请求时的对象
* @param userId 通话用户id
* @param isVideo
* @param subject
* @param reply 回复(QDAVCmd.CMD_REPLY_REFUSE 拒绝, QDAVCmd.CMD_REPLY_AGREE 同意, QDAVCmd.CMD_REPLY_BUSY 忙碌)
*/
QDClient.getInstance().replyAVCall(QDAVCmd cmd, String userId, boolean isVideo, String subject, int reply)
/**
* 创建音视频消息
* @param userId 用户id
* @param userName 用户姓名
* @param userIcon 用户头像
* @param content 内容
* @param isVideo 是否为视频通话
* @param isOut 是否自己发起的
* @return
*/
QDMessage message = QDClient.getInstance().createAVMessage(String userId, String userName, String userIcon, String content, boolean isVideo, boolean isOut) </code></pre>
<p>音视频监听</p>
<pre><code class="language-java">QDAvCallBack callBack = new QDAvCallBack() {
@Override
public void onAvCall(QDAVCmd cmd) {
//收到音视频请求
}
@Override
public void onAvResponse(QDAVCmd cmd) {
//收到音视频回复
}
@Override
public void onAvOtherPlatformResponse() {
//在其他设备回复音视频请求
}
}</code></pre>