文档反馈
文档反馈

网易云信音视频通话Server Http API接口文档

接口概述

API调用说明

本文档中,所有调用网易云信服务端接口的请求都需要按此规则校验。

API checksum校验

以下参数需要放在Http Request Header中

参数 参数说明
AppKey 开发者平台分配的appkey
Nonce 随机数(最大长度128个字符)
CurTime 当前UTC时间戳,从1970年1月1日0点0 分0 秒开始到现在的秒数(String)
CheckSum SHA1(AppSecret + Nonce + CurTime),三个参数拼接的字符串,进行SHA1哈希计算,转化成16进制字符(String,小写)

CheckSum有效期:出于安全性考虑,每个checkSum的有效期为5分钟(用CurTime计算),建议每次请求都生成新的checkSum,同时请确认发起请求的服务器是与标准时间同步的,比如有NTP服务。
CheckSum检验失败时会返回414错误码,具体参看code状态表。
重要提示: 本文档中提供的所有接口均面向开发者服务器端调用,用于计算CheckSum的AppSecret开发者应妥善保管,可在应用的服务器端存储和使用,但不应存储或传递到客户端,也不应在网页等前端代码中嵌入。

计算CheckSum的java代码举例如下:

import java.security.MessageDigest;

public class CheckSumBuilder {
    // 计算并获取CheckSum
    public static String getCheckSum(String appSecret, String nonce, String curTime) {
        return encode("sha1", appSecret + nonce + curTime);
    }

    // 计算并获取md5值
    public static String getMD5(String requestBody) {
        return encode(“md5”, requestBody);
    }

    private static String encode(String algorithm, String value) {
        if (value == null) {
            return null;
        }
        try {
            MessageDigest messageDigest
                    = MessageDigest.getInstance(algorithm);
            messageDigest.update(value.getBytes());
            return getFormattedText(messageDigest.digest());
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    private static String getFormattedText(byte[] bytes) {
        int len = bytes.length;
        StringBuilder buf = new StringBuilder(len * 2);
        for (int j = 0; j < len; j++) {
            buf.append(HEX_DIGITS[(bytes[j] >> 4) & 0x0f]);
            buf.append(HEX_DIGITS[bytes[j] & 0x0f]);
        }
        return buf.toString();
    }
    private static final char[] HEX_DIGITS = { '0', '1', '2', '3', '4', '5',
            '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
}

接口说明

  1. 所有接口都只支持POST请求;
  2. 所有接口请求Content-Type类型为:application/x-www-form-urlencoded;charset=utf-8;
  3. 所有接口返回类型为JSON,同时进行UTF-8编码。

接口示例

网易云信服务端接口是简单的http接口,适配各种语言。 当然我们也提供了一些简单的示例供开发者参考。 网易云信服务器接口示例

网易云信IM账号

音视频通话依赖IM的账号体系,在集成音视频通话相关功能之前,需要先集成IM服务的账号体系。请参照IM服务端API文档的网易云信IM账号

消息抄送

网易云信服务器可以通过消息抄送功能,将消息数据实时同步给第三方开发者的服务器。在使用音视频通话的过程中,音视频/白板通话的时长消息和录制文件的下载信息可以通过消息抄送服务抄送到第三方开发者的服务器。详细使用说明请参照IM服务器API文档的消息抄送

音视频房间管理

网易云信服务器能提供音视频房间管理功能,它是以RESTful API形式给第三方开发者服务器。在使用音视频通话的过程中,第三方开发服务器可以通过该RESTful接口向网易云信服务器获取房间相关信息。详细使用说明请参照音视频房间管理RESTful API


code状态表

code 详细描述
200 操作成功
201 客户端版本不对,需升级sdk
301 被封禁
302 用户名或密码错误
315 IP限制
403 非法操作或没有权限
404 对象不存在
405 参数长度过长
406 对象只读
408 客户端请求超时
413 验证失败(短信服务)
414 参数错误
415 客户端网络问题
416 频率控制
417 重复操作
418 通道不可用(短信服务)
419 数量超过上限
422 账号被禁用
431 HTTP重复请求
500 服务器内部错误
503 服务器繁忙
508 消息撤回时间超限
509 无效协议
514 服务不可用
998 解包错误
999 打包错误
群相关错误码
801 群人数达到上限
802 没有权限
803 群不存在
804 用户不在群
805 群类型不匹配
806 创建群数量达到限制
807 群成员状态错误
808 申请成功
809 已经在群内
810 邀请成功
音视频、白板通话相关错误码
9102 通道失效
9103 已经在他端对这个呼叫响应过了
11001 通话不可达,对方离线状态
聊天室相关错误码
13001 IM主连接状态异常
13002 聊天室状态异常
13003 账号在黑名单中,不允许进入聊天室
13004 在禁言列表中,不允许发言
特定业务相关错误码
10431 输入email不是邮箱
10432 输入mobile不是手机号码
10433 注册输入的两次密码不相同
10434 企业不存在
10435 登陆密码或帐号不对
10436 app不存在
10437 email已注册
10438 手机号已注册
10441 app名字已经存在
×

反馈成功

非常感谢您的反馈,我们会继续努力做得更好。