0

我想在 simplewebrtc 中使用 Primus 而不是 socket-io。任何人都可以帮助我将以下代码转换为使用 Primus 吗? https://github.com/andyet/SimpleWebRTC/blob/master/socketioconnection.js

4

1 回答 1

1

它的工作原理是您可以将任何构造函数作为connection属性传递给配置,以及您需要的任何其他选项。然后,您的构造函数需要做的就是使用以下四种方法导出一个对象:onemitgetSessionIddisconnect。对于 Primus,你可以有这样的东西(我以前从未使用过 Primus,只是看文档)-

var Primus = window.Primus; // get primus from wherever you want

function PrimusConnection(config) {
    var self = this;
    var primus = new Primus(config.url, config.primus);
    primus.on('connection', function (spark) {
      // spark is the new connection.
      self.connection = spark;
    });
}

PrimusConnection.prototype.on = function (eventName, function) {
    this.connection.on(eventName, function);
};

PrimusConnection.prototype.emit = function () {
    this.connection.write.apply(this.connection, arguments);
};

PrimusConnection.prototype.getSessionid = function () {
    return this.connection.id;
};

PrimusConnection.prototype.disconnect = function () {
    return this.connection.end.apply(this.connection, arguments);
};

module.exports = PrimusConnection;
于 2015-12-14T02:58:34.430 回答