跳到主要内容

集成和使用灵动课堂过程中的常见错误

运行灵动课堂 Web 项目报错

如果你在运行灵动课堂 Web 项目时碰到以下报错:

./node_modules/agora-electron-sdk/js/Api/index.js
Module not found: Can't resolve '../../build/Release/agora_node_ext'
in'/Users/magikarp/workspace/web/teacher-classroom/node_modules/agora-electron-sdk/js/Api'

或者

Error running install script for optional dependency: "/root/flexible-classroom-desktop/node modules/agora-rdc-core: Command failed.

可通过以下方式解决:

  • 如果你的 Web 项目是通过 Next.js 创建的,可在 next.config.js 文件中添加以下代码:

    JavaScript
    module.exports = {
    reactStrictMode: true,
    webpack: (config, options) => {
    // 添加下面这行代码
    config.externals.push({"agora-electron-sdk": "commonjs2 agora-electron-sdk", "agora-rdc-core": "commonjs2 agora-rdc-core"});
    return config;
    },
    };
  • 如果你的 Web 项目是通过 React 创建的,可在 webpack.base.js 中添加以下代码:

    JavaScript
    module.exports = {
    // 添加下面这行代码
    externals: { 'agora-electron-sdk': 'commonjs2 agora-electron-sdk' , "agora-rdc-core": "commonjs2 agora-rdc-core"},
    resolve: {
    fallback: {
    crypto: require.resolve('crypto-browserify'),
    stream: require.resolve('stream-browserify'),
    buffer: require.resolve('buffer/'),
    },
  • 如果你的 Web 项目是通过 Vue.js 创建的,可在 vue.config.js 中添加以下代码:

    JavaScript
    const vueConfig = {
    // publicPath: './',
    configureWebpack: {
    // webpack plugins
    plugins: [
    ..........................
    ],

    externals:{
    // 添加下面这行代码
    'agora-electron-sdk': 'commonjs2 agora-electron-sdk',
    "agora-rdc-core": "commonjs2 agora-rdc-core"
    }
    },

在 Linux 环境下运行报错

如果你在 Linux 环境下运行灵动课堂时碰到 Error:unsupported platform! 报错,可在 agora-classroom-sdk 文件夹中的 package.json 文件中添加 platform 属性。

修改前:

JSON
"agora_electron": {
"electron_version": "12.0.0",
"prebuilt": true
},

修改后:

JSON
"agora_electron": {
"electron_version": "12.0.0",
"prebuilt": true,
"platform":"win32" | "darwin", //"darwin"或者"win32"二选一
},

加入课堂相关报错

600001: Failed to join the classroom

该错误有以下几种可能的错误原因:

  • 用户 Token 无效,可参照《Web 端加入房间时报 600001-1 错误,或登录教室时服务端报 401 错误怎么办?》。
  • 用户选择的区域错误。 请检查 launch 方法的 region 字段是否设置了正确的区域。
  • 教室内该角色人数已达上限,无法进入。例如,教室内老师的数量达到上限,则用户无法再以老师的角色进入教室。
  • 房间人数已达上限,无法进入。例如,房间总人数大于 200。
  • 房间不存在或者创建的房间已结束,请检查房间是否过期。

600001-1 错误,或服务端报 401 错误

600001-1401 错误一般是因为 launch 方法传入的 Token 错误,或者 Token 和 App ID 不匹配。请检查 Token 是否正确,以及保证 App ID 和 Token 匹配。

声网推荐你在后端生成 Token,前端调用生成的 Token,详情参考使用 Token 鉴权

如果需要临时生成 token 测试,可以使用这个工具

代码 30409104 详细信息:roomType conflict

该错误是因为该房间编号(roomUuid)已经创建了一个小班课课堂,同一个房间编号被配置为不同的房间类型,从而导致房间类型冲突。 声网建议不要使用同一个房间编号创建多个课堂,并且每个房间都应配置一个不同的房间类型。

其他相关服务端错误码可参考响应状态码

Error Domain=last launch not finished Code=-1 "(null)"

该错误错误一般是因为 launch 方法传入的 Token 错误或过期,或者 Token 和 App ID 或 User ID 不匹配。请检查 Token 是否正确和有效,以及保证 Token 和 App ID 以及 User ID 匹配。

文档内容对你是否有帮助?
有帮助
没帮助