From d2e741cc109626d882d9fe3c260c36481e65e062 Mon Sep 17 00:00:00 2001 From: Exordian Date: Thu, 21 Nov 2019 01:36:20 +0100 Subject: [PATCH] [IMPROVE] Make push notification batchsize and interval configurable (#15804) --- app/lib/server/startup/settings.js | 18 ++++++++++++++++++ packages/rocketchat-i18n/i18n/en.i18n.json | 2 ++ server/lib/cordova.js | 4 ++-- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/app/lib/server/startup/settings.js b/app/lib/server/startup/settings.js index 2340fd5dff3..3bc64934f75 100644 --- a/app/lib/server/startup/settings.js +++ b/app/lib/server/startup/settings.js @@ -1166,6 +1166,24 @@ settings.addGroup('Push', function() { value: true, }, }); + this.add('Push_send_interval', 5000, { + type: 'int', + public: true, + alert: 'Push_Setting_Requires_Restart_Alert', + enableQuery: { + _id: 'Push_enable', + value: true, + }, + }); + this.add('Push_send_batch_size', 10, { + type: 'int', + public: true, + alert: 'Push_Setting_Requires_Restart_Alert', + enableQuery: { + _id: 'Push_enable', + value: true, + }, + }); this.add('Push_enable_gateway', true, { type: 'boolean', alert: 'Push_Setting_Requires_Restart_Alert', diff --git a/packages/rocketchat-i18n/i18n/en.i18n.json b/packages/rocketchat-i18n/i18n/en.i18n.json index 486d9229156..508c89da8f3 100644 --- a/packages/rocketchat-i18n/i18n/en.i18n.json +++ b/packages/rocketchat-i18n/i18n/en.i18n.json @@ -2532,6 +2532,8 @@ "Push_apn_key": "APN Key", "Push_apn_passphrase": "APN Passphrase", "Push_debug": "Debug", + "Push_send_interval": "Interval to check the queue for new push notifications", + "Push_send_batch_size": "Batch size to be processed every tick", "Push_enable": "Enable", "Push_enable_gateway": "Enable Gateway", "Push_gateway": "Gateway", diff --git a/server/lib/cordova.js b/server/lib/cordova.js index 4fb38f8559c..5bdce4ec40c 100644 --- a/server/lib/cordova.js +++ b/server/lib/cordova.js @@ -176,8 +176,8 @@ function configurePush() { apn, gcm, production: settings.get('Push_production'), - sendInterval: 5000, - sendBatchSize: 10, + sendInterval: settings.get('Push_send_interval'), + sendBatchSize: settings.get('Push_send_batch_size'), }); if (settings.get('Push_enable_gateway') === true) {