diff --git a/ee/utilities/servers/websocket-cluster.js b/ee/utilities/servers/websocket-cluster.js index 2b8a5f26c..b0649127c 100644 --- a/ee/utilities/servers/websocket-cluster.js +++ b/ee/utilities/servers/websocket-cluster.js @@ -1,7 +1,6 @@ const _io = require('socket.io'); const express = require('express'); const { - extractSessionInfo, extractPeerId, hasFilters, isValidSession, @@ -9,6 +8,9 @@ const { getValidAttributes, uniqueAutocomplete } = require('../utils/helper'); +const { + extractSessionInfo +} = require('../utils/assistHelper'); const { extractProjectKeyFromRequest, extractSessionIdFromRequest, diff --git a/ee/utilities/servers/websocket.js b/ee/utilities/servers/websocket.js index f870033c8..4fa61aa42 100644 --- a/ee/utilities/servers/websocket.js +++ b/ee/utilities/servers/websocket.js @@ -1,7 +1,6 @@ const _io = require('socket.io'); const express = require('express'); const { - extractSessionInfo, extractPeerId, hasFilters, isValidSession, @@ -9,6 +8,9 @@ const { getValidAttributes, uniqueAutocomplete } = require('../utils/helper'); +const { + extractSessionInfo +} = require('../utils/assistHelper'); const { extractProjectKeyFromRequest, extractSessionIdFromRequest, diff --git a/utilities/servers/websocket.js b/utilities/servers/websocket.js index df4b3b283..5636eafcc 100644 --- a/utilities/servers/websocket.js +++ b/utilities/servers/websocket.js @@ -1,7 +1,6 @@ const _io = require('socket.io'); const express = require('express'); const { - extractSessionInfo, extractPeerId, extractProjectKeyFromRequest, extractSessionIdFromRequest, @@ -12,6 +11,9 @@ const { getValidAttributes, uniqueAutocomplete } = require('../utils/helper'); +const { + extractSessionInfo +} = require('../utils/assistHelper'); const wsRouter = express.Router(); const UPDATE_EVENT = "UPDATE_SESSION"; const IDENTITIES = {agent: 'agent', session: 'session'}; diff --git a/utilities/utils/helper.js b/utilities/utils/helper.js index 7f1b4dca4..b9c20a6f3 100644 --- a/utilities/utils/helper.js +++ b/utilities/utils/helper.js @@ -1,5 +1,3 @@ -const uaParser = require('ua-parser-js'); -const {geoip} = require('./geoIP'); let PROJECT_KEY_LENGTH = parseInt(process.env.PROJECT_KEY_LENGTH) || 20; let debug = process.env.debug === "1" || false; const extractPeerId = (peerId) => { @@ -186,56 +184,7 @@ const uniqueAutocomplete = function (list) { } return _list; } -const BASE_sessionInfo = { - "pageTitle": "Page", - "active": true, - "live": true, - "sessionID": "0", - "metadata": {}, - "userID": "", - "userUUID": "", - "projectKey": "", - "revID": "", - "timestamp": 0, - "trackerVersion": "", - "isSnippet": true, - "userOs": "", - "userBrowser": "", - "userBrowserVersion": "", - "userDevice": "", - "userDeviceType": "", - "userCountry": "", - "projectId": 0 -}; -const extractSessionInfo = function (socket) { - if (socket.handshake.query.sessionInfo !== undefined) { - debug && console.log("received headers"); - debug && console.log(socket.handshake.headers); - socket.handshake.query.sessionInfo = JSON.parse(socket.handshake.query.sessionInfo); - socket.handshake.query.sessionInfo = {...BASE_sessionInfo, ...socket.handshake.query.sessionInfo}; - - let ua = uaParser(socket.handshake.headers['user-agent']); - socket.handshake.query.sessionInfo.userOs = ua.os.name || null; - socket.handshake.query.sessionInfo.userBrowser = ua.browser.name || null; - socket.handshake.query.sessionInfo.userBrowserVersion = ua.browser.version || null; - socket.handshake.query.sessionInfo.userDevice = ua.device.model || null; - socket.handshake.query.sessionInfo.userDeviceType = ua.device.type || 'desktop'; - socket.handshake.query.sessionInfo.userCountry = null; - if (geoip() !== null) { - debug && console.log(`looking for location of ${socket.handshake.headers['x-forwarded-for'] || socket.handshake.address}`); - try { - let country = geoip().country(socket.handshake.headers['x-forwarded-for'] || socket.handshake.address); - socket.handshake.query.sessionInfo.userCountry = country.country.isoCode; - } catch (e) { - debug && console.log("geoip-country failed"); - debug && console.log(e); - } - } - } -} - module.exports = { - extractSessionInfo, extractPeerId, request_logger, getValidAttributes,