@tiledesk/tiledesk-server 2.4.33 → 2.4.34
Sign up to get free protection for your applications and to get access to all the features.
- package/app.js +42 -2
- package/middleware/passport.js +1 -1
- package/package.json +5 -4
package/app.js
CHANGED
@@ -72,6 +72,7 @@ var connection = mongoose.connect(databaseUri, { "useNewUrlParser": true, "autoI
|
|
72
72
|
winston.error('Failed to connect to MongoDB on ' + databaseUri + " ", err);
|
73
73
|
process.exit(1);
|
74
74
|
}
|
75
|
+
winston.info("Mongoose connection done on host: "+mongoose.connection.host + " on port: " + mongoose.connection.port + " with name: "+ mongoose.connection.name)// , mongoose.connection.db);
|
75
76
|
});
|
76
77
|
if (process.env.MONGOOSE_DEBUG==="true") {
|
77
78
|
mongoose.set('debug', true);
|
@@ -133,6 +134,7 @@ var schemaMigrationService = require('./services/schemaMigrationService');
|
|
133
134
|
var RouterLogger = require('./models/routerLogger');
|
134
135
|
var cacheEnabler = require("./services/cacheEnabler");
|
135
136
|
const session = require('express-session');
|
137
|
+
const RedisStore = require("connect-redis").default
|
136
138
|
|
137
139
|
require('./services/mongoose-cache-fn')(mongoose);
|
138
140
|
|
@@ -275,11 +277,49 @@ app.use(passport.initialize());
|
|
275
277
|
if (process.env.DISABLE_SESSION_STRATEGY==true || process.env.DISABLE_SESSION_STRATEGY=="true" ) {
|
276
278
|
winston.info("Express Session disabled");
|
277
279
|
} else {
|
280
|
+
|
278
281
|
// https://www.npmjs.com/package/express-session
|
279
282
|
let sessionSecret = process.env.SESSION_SECRET || "tiledesk-session-secret";
|
280
|
-
|
281
|
-
|
283
|
+
|
284
|
+
if (process.env.ENABLE_REDIS_SESSION==true || process.env.ENABLE_REDIS_SESSION=="true" ) {
|
285
|
+
|
286
|
+
// Initialize client.
|
287
|
+
// let redisClient = createClient()
|
288
|
+
// redisClient.connect().catch(console.error)
|
289
|
+
|
290
|
+
let cacheClient = undefined;
|
291
|
+
if (pubModulesManager.cache) {
|
292
|
+
cacheClient = pubModulesManager.cache._cache._cache; //_cache._cache to jump directly to redis modules without cacheoose wrapper (don't support await)
|
293
|
+
}
|
294
|
+
// winston.info("Express Session cacheClient",cacheClient);
|
295
|
+
|
296
|
+
|
297
|
+
let redisStore = new RedisStore({
|
298
|
+
client: cacheClient,
|
299
|
+
prefix: "sessions:",
|
300
|
+
})
|
301
|
+
|
302
|
+
|
303
|
+
app.use(
|
304
|
+
session({
|
305
|
+
store: redisStore,
|
306
|
+
resave: false, // required: force lightweight session keep alive (touch)
|
307
|
+
saveUninitialized: false, // recommended: only save session when data exists
|
308
|
+
secret: sessionSecret
|
309
|
+
})
|
310
|
+
)
|
311
|
+
winston.info("Express Session with Redis enabled with Secret: " + sessionSecret);
|
312
|
+
|
313
|
+
|
314
|
+
} else {
|
315
|
+
app.use(session({ secret: sessionSecret}));
|
316
|
+
winston.info("Express Session enabled with Secret: " + sessionSecret);
|
317
|
+
|
318
|
+
}
|
319
|
+
|
282
320
|
app.use(passport.session());
|
321
|
+
|
322
|
+
|
283
323
|
}
|
284
324
|
|
285
325
|
//ATTENTION. If you use AWS Api Gateway you need also to configure the cors policy https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors-console.html
|
package/middleware/passport.js
CHANGED
@@ -460,7 +460,7 @@ if (enableGoogleSignin==true) {
|
|
460
460
|
clientID: googleClientId,
|
461
461
|
clientSecret: googleClientSecret,
|
462
462
|
callbackURL: googleCallbackURL, // 'https://www.example.com/oauth2/redirect/google'
|
463
|
-
stateless: true
|
463
|
+
// stateless: true ????
|
464
464
|
},
|
465
465
|
function(issuer, profile, cb) {
|
466
466
|
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@tiledesk/tiledesk-server",
|
3
3
|
"description": "The Tiledesk server module",
|
4
|
-
"version": "2.4.
|
4
|
+
"version": "2.4.34",
|
5
5
|
"scripts": {
|
6
6
|
"start": "node ./bin/www",
|
7
7
|
"pretest": "mongodb-runner start",
|
@@ -29,11 +29,11 @@
|
|
29
29
|
"tiledesk-server": "./bin/www"
|
30
30
|
},
|
31
31
|
"optionalDependencies": {
|
32
|
+
"@tiledesk-ent/tiledesk-server-enterprise": "^1.0.0",
|
32
33
|
"@tiledesk-ent/tiledesk-server-jwthistory": "^1.1.9",
|
33
34
|
"@tiledesk-ent/tiledesk-server-payments": "^1.1.12",
|
34
35
|
"@tiledesk-ent/tiledesk-server-request-history": "^1.1.5",
|
35
|
-
"@tiledesk-ent/tiledesk-server-visitorcounter": "^1.1.1"
|
36
|
-
"@tiledesk-ent/tiledesk-server-enterprise": "^1.0.0"
|
36
|
+
"@tiledesk-ent/tiledesk-server-visitorcounter": "^1.1.1"
|
37
37
|
},
|
38
38
|
"dependencies": {
|
39
39
|
"@tiledesk/tiledesk-apps": "^1.0.16",
|
@@ -44,13 +44,14 @@
|
|
44
44
|
"@tiledesk/tiledesk-kaleyra-proxy": "^0.1.7",
|
45
45
|
"@tiledesk/tiledesk-messenger-connector": "0.1.9",
|
46
46
|
"@tiledesk/tiledesk-rasa-connector": "^1.0.10",
|
47
|
-
"@tiledesk/tiledesk-tybot-connector": "^0.1.
|
47
|
+
"@tiledesk/tiledesk-tybot-connector": "^0.1.83",
|
48
48
|
"@tiledesk/tiledesk-whatsapp-connector": "^0.1.50",
|
49
49
|
"amqplib": "^0.5.5",
|
50
50
|
"app-root-path": "^3.0.0",
|
51
51
|
"bcrypt-nodejs": "0.0.3",
|
52
52
|
"body-parser": "^1.20.0",
|
53
53
|
"cachegoose": "^8.0.0",
|
54
|
+
"connect-redis": "^7.1.0",
|
54
55
|
"cookie-parser": "^1.4.6",
|
55
56
|
"cors": "^2.8.5",
|
56
57
|
"csv-express": "^1.2.2",
|