我见过以下内容:
chrome://webrtc-internals
但是,我正在寻找一种方法让用户点击网络应用中的按钮,以便下载或 - 最好 - POST
WebRtc日志记录到应用程序中的端点。我的想法是,通过点击UI按钮,我可以让非技术用户与我共享技术日志。
如何实现这一目标?
注意:这不应取决于Chrome; Chromium也将被用作应用程序将被包含在Electron中。
答案 0 :(得分:3)
这就是我最终使用的东西(用下划线或其他替换淘汰赛):
connectionReport.signalingState = connection.signalingState;
connectionReport.stats = [];
connection.getStats(function (stats) {
const reportCollection = stats.result();
ko.utils.arrayForEach(reportCollection, function (innerReport) {
const statReport = {};
statReport.id = innerReport.id;
statReport.type = innerReport.type;
const keys = innerReport.names();
ko.utils.arrayForEach(keys, function (reportKey) {
statReport[reportKey] = innerReport.stat(reportKey);
})
connectionReport.stats.push(statReport);
});
connectionStats.push(connectionReport);
});
<强>更新强>
这个getStats
机制似乎很快就会被弃用。
答案 1 :(得分:3)
您需要编写一个等效的javascript来捕获所有RTCPeerConnection API调用。 rtcstats.js执行此操作但将所有数据发送到服务器。如果将该行为替换为将其存储在内存中,则应该是好的。
答案 2 :(得分:0)
通过chrome://webrtc-internals
的js源读取,我注意到网页正在使用一个名为chrome.send()
的方法来发送chrome.send('enableEventLogRecordings');
之类的消息来执行日志记录命令。
根据{{3}}:
chrome.send()是一个仅适用于内部chrome的私有函数 页。
所以函数是沙盒的,这使得访问它不可能