Использование Primus вместо socket-io с simplewebrtc
Я хочу использовать Primus вместо socket-io с simplewebrtc. Может ли кто-нибудь помочь мне преобразовать приведенный ниже код для использования Primus? https://github.com/andyet/SimpleWebRTC/blob/master/socketioconnection.js
1 ответ
Как это работает, вы можете передать любой конструктор как connection
Свойство для конфигурации, и любые дополнительные параметры, которые вам нужны. Затем все, что нужно вашему конструктору, это экспортировать объект четырьмя методами: on
, emit
, getSessionId
, а также disconnect
, Для 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;