问题标签 [agora-web-sdk-ng]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
542 浏览

reactjs - 在 react/redux 应用程序中管理 webRTC 状态(流)

我正在开发一个带有反应的视频聊天应用程序,并使用 redux 进行状态管理。目前在 webRTC 中使用 agora。随着 webRTC 相关事件的发生(流被添加、删除等等),状态应该被更新并发送到所有需要/依赖它的组件。

然而,单独的 redux 并不意味着这个。正如这个 SO questionDan Abramov(制造商本人)所讨论的那样,redux 并不适用于类,因此存储 webRTC 流是一个坏主意。

我想我应该手动存储和管理自己的 webRTC 状态(某处,idk where

尽管如此,我还是很难理解如何自己存储 webRTC 流:

  1. 我相信使用上下文 API 将导致我的所有组件在每次流更改/添加/删除/发生任何其他相关事件时呈现。
  2. 在 react 函数组件上管理 webRTC 状态将很快成为一场噩梦,因为我必须在顶层进行,并且几乎在任何地方都将其传递下去。
  3. redux-saga 被认为是一个潜在的救星,但我对此有点陌生,我不清楚这有什么帮助,因为它似乎主要处理副作用和异步调用。我需要一个并行商店(AFAI 了解)

底线:

有人可以给出一个好的和详细的解释,或者给我一个很好的代码库吗?

0 投票
0 回答
570 浏览

angular - Agora Angular 8 中的屏幕共享

我正在尝试将 Agora 集成到 Angular 8 应用程序中。成功地,我能够加入和离开视频通话,现在我正在尝试集成我无法做到的屏幕共享。从 Agora 官方文档中,我们有屏幕共享的示例,但 AgoraRTC 在 Angular 中不支持,因为它是一个 JS 文件。

https://www.npmjs.com/package/angular-agora-rtc

我正在使用这个 Angular npm 库。

我使用了以下代码

屏幕共享现在正在工作,但其他参与者看不到屏幕(在 2 个选项卡中打开)。

谢谢你。

0 投票
1 回答
1542 浏览

websocket - 无法使用 Agora Web SDK NG 在移动数据上发布 RTC 客户端

我是 WebRTC 和 Websockets 世界的新手。我尝试使用Agora Web SDK NG实现 1 对 1 视频通话,并且在同一网络上的两台设备(PC 和 Android 移动设备)上一切正常。一旦我的智能手机连接了移动数据,我就无法再加入通话,尽管它仍然可以同时在连接到路由器的 PC 上运行。

这是用于在我的 Angular 服务中启动调用的函数:

它给出了各种错误,并不断尝试在上面标有注释的语句上重新发布流。以下是导航到页面时的 Web 控制台日志,然后尝试从我的移动设备加入呼叫:

如您所见,它在发布时失败,Client.publish timeout然后是receive p2p lostand pub p2p gateway lost。然后它不断地重试start reconnect pc

什么可能导致这种行为?

如果我需要提供有关此问题的更多信息,请告诉我。

0 投票
2 回答
397 浏览

agora.io - 是否有使用 Agora web sdk ng 删除/抑制音频回声的功能?

在实时视频流中,当有两个或更多扬声器加入流时,音频会得到回声。我可以使用 Agora Web SDK 中的任何功能来解决这个问题吗?

0 投票
1 回答
122 浏览

agora.io - 仅限制主持人和访客的视频通话访问权限

我想在我的网站上将 agora 与 angular 集成。我需要进行多个活动的视频通话,我如何确保主持人和客人是唯一加入会议的人?其余的(主人和主人)进入他们各自独特的房间?是否有一个唯一的临时频道 ID,以便两者都通过那个或类似的东西进入?

0 投票
1 回答
188 浏览

video-streaming - 我在哪里可以找到 Agora HTTP 基本授权令牌?

如何 从我的 agora 账户中找到Agora HTTP 基本授权令牌?我正在尝试构建一个webapp

0 投票
0 回答
400 浏览

jestjs - 升级到 Agora SDK NG - 版本 4.0.1 后,Jest 失败

我们有一个使用 Agora 进行通话/视频通话的 React 应用程序。我们还使用 Jest 库来运行我们的大部分测试。升级到标记为稳定的 Agora Web SDK NG(版本 4.0.1)后,我们在尝试使用 Jest 测试时收到一堆 Agora 错误(错误粘贴在下面)。

似乎 Agora 正在尝试检查浏览器的兼容性,但 Jest 在没有浏览器的情况下运行,所以这将永远失败(如果这就是问题所在)。有想法该怎么解决这个吗?由于我们正在使用 NG 功能,因此无法选择降级回以前的版本。

运行 Jest 时的错误:

  1. AgoraRTCError NOT_SUPPORT: can not create audio context

  2. console.error node_modules/agora-rtc-sdk-ng/AgoraRTC_N-production.js:375 16:17:09:618 Agora-SDK [错误]:您的浏览器不支持网络音频

  3. console.error node_modules/agora-rtc-sdk-ng/AgoraRTC_N-production.js:375 16:17:09:619 Agora-SDK [错误]: AgoraRTCError NOT_SUPPORT: enumerateDevices() 不支持

  4. console.warn node_modules/agora-rtc-sdk-ng/AgoraRTC_N-production.js:375 16:17:09:626 Agora-SDK [警告]:设备检测功能无法正常启动。AgoraRTCError NOT_SUPPORT:不支持 enumerateDevices()

  5. console.error node_modules/agora-rtc-sdk-ng/AgoraRTC_N-production.js:375 16:17:09:626 Agora-SDK [ERROR]: TypeError: Cannot read property '_location' of null

0 投票
1 回答
768 浏览

reactjs - 带有 React 问题的 Agora RTC

我第一次使用 Agora,在添加远程流时遇到问题。当第一个用户加入一个频道时,它会正确显示它的流,但是当另一个用户加入同一个频道时,第二个用户的流会出现在第一个用户的屏幕上,但第一个用户的流不会出现在第二个用户流上。即用户只能看到在它之后加入的人的流,而不是在它之前加入的人的流。下面是代码。

0 投票
1 回答
140 浏览

agora.io - Agora 错误:流已关闭且无法初始化

我们已经在我们的平台上集成了 Agora 进行视频通话,但是一些用户收到了这个错误“ stream is closed and cannot be initialized”。在什么情况下会出现这个错误

0 投票
4 回答
3298 浏览

javascript - 加入通话时出现 CAN_NOT_GET_GATEWAY_SERVER 异常

我正在尝试使用 agora 发起视频通话,并在控制台上抛出以下错误,当我尝试加入通话时会发生这种情况。

我在此处附加了 react JS 代码,我正在使用 Agora 的 react js 模块,并按照文档进行操作,我已经验证了电子邮件并创建了正确的 APP,它与 Agora 的 web 演示一起使用,但不是在这里。请帮忙