0

因此,Firefox 中有一个 WebRTC,并且有一个方便的类可以使 RTC 通信成为可能,称为 RTCPeerConnection,它可以从 JavaScript 应用程序实例化和使用。您可以在[1]上找到一些不错的示例。这是我的定制交通工具(如果你有兴趣 - [2]) 希望将其用于 RTC 通信。简而言之,我需要用我的自定义传输“替换”WebRTC 引擎的传输层,同时为用户提供相同的类似 RTCPeerConnection 的 JavaScript 接口。最好不要看起来像 Firefox 的自定义构建(没有补丁)。所以我想出了扩展的想法,它将用 C++ 编写(因为它需要与 WebRTC 库和我的自定义传输库链接)并且以某种方式将其接口暴露给 Javascript。而且我发现 XPCOM 正如我所想的那样,它可以为我提供这个。因此,我开始与有关该主题的过时且稀疏的信息进行斗争,经过 3 天的努力,最终以构建的附加组件告终。不幸的是,我无法从 Javascript 访问它,因为 Javascript 的“Components.classes 未定义” 错误。而且似乎根本没有办法访问它。还是我错了?

这是Javascript:

function check()
{
console.debug("checking...");   

const {Cc,Ci,Cu} = require("chrome");
var rtc = Components.classes["@named-data.net/ndnrtc;1"].createInstance();
rtc = rtc.QueryInterface(Ci.ndINrtc);   

console.debug("rtc: "+rtc);
}

我的组件在 XPCOM Viewer插件中可见,上面的代码可以在 Firefox 中打开空页面时在控制台中执行。

鉴于这一切,我想向 Firefox 专家询问我可以采取哪些方法来实现我的想法。先感谢您

1 https://apprtc.appspot.com/

2 http://named-data.net

4

1 回答 1

2

最后,我找到了一种可能的解决方案,并在我的帖子中进行了描述

于 2013-08-06T20:00:15.497 回答