UNPKG

ivcbox-adapter

Version:
103 lines 3.91 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var Base_1 = require("./Base"); var CoBrowsing = /** @class */ (function (_super) { __extends(CoBrowsing, _super); function CoBrowsing() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.peerCobrowsingConnections = {}; return _this; } CoBrowsing.prototype.init = function (options, callback) { var self = this; self.initialization(options, callback); self.addCoBrowdingWatchers(); }; CoBrowsing.prototype.initCobrowsing = function (roomHash) { var self = this; var requestObj = { roomHash: roomHash }; self.stompClient.send('/app/ws/room/initCobrowsing', {}, JSON.stringify(requestObj)); }; CoBrowsing.prototype.joinCobrowsing = function (roomHash) { var self = this; var requestObj = { roomHash: roomHash }; self.stompClient.send('/app/ws/room/joinCobrowsing', {}, JSON.stringify(requestObj)); }; CoBrowsing.prototype.leaveCobrowsing = function () { var self = this; self.stompClient.send('/app/ws/room/leaveCobrowsing', {}, null); }; CoBrowsing.prototype.broadcastCobrowsing = function (roomHash, payload) { var self = this; var requestObj = { roomHash: roomHash, payload: payload }; self.stompClient.send('/app/ws/room/broadcastCobrowsing', {}, JSON.stringify(requestObj)); }; CoBrowsing.prototype.addCoBrowdingWatchers = function () { var self = this; self._initProperties(); self.on('newCobrowsingConnectionSignal', function (data) { self.processNewCobrowsingConnection(data); }); self.on('userLeftCobrowsingConnectionSignal', function (data) { self.processCobrowsingLeave(data); }); self.on('cobrowsingBroadcastSignal', function (data) { self.processCobrowsingBroadcast(data); }); }; CoBrowsing.prototype._initProperties = function () { var self = this; self.peerCobrowsingConnections = {}; }; CoBrowsing.prototype.processNewCobrowsingConnection = function (payload) { var self = this; self.trigger('newCobrowsingConnection', { userId: payload.userId, roomHash: payload.roomHash }); self.clearCoBrowdingTimeouts(payload.userId); }; CoBrowsing.prototype.processCobrowsingLeave = function (payload) { var self = this; var data = { userId: payload.userId, roomHash: payload.roomHash }; if (payload.isForced) { self.trigger('peerCobrowsingConnectionDisconnected', data); } else { self.trigger('userLeftCobrowsingConnection', data); } }; CoBrowsing.prototype.processCobrowsingBroadcast = function (payload) { var self = this; self.trigger('cobrowsingBroadcast', payload); }; CoBrowsing.prototype.clearCoBrowdingTimeouts = function (userId) { var self = this; if (self.peerCobrowsingConnections[userId]) { clearTimeout(self.peerCobrowsingConnections[userId]); } }; return CoBrowsing; }(Base_1.default)); exports.default = CoBrowsing; //# sourceMappingURL=CoBrowsing.js.map