diff --git a/services/real-time/app/coffee/ChannelManager.coffee b/services/real-time/app/coffee/ChannelManager.coffee index 0e6b2fb98e..7ea676267f 100644 --- a/services/real-time/app/coffee/ChannelManager.coffee +++ b/services/real-time/app/coffee/ChannelManager.coffee @@ -1,5 +1,6 @@ logger = require 'logger-sharelatex' metrics = require "metrics-sharelatex" +settings = require "settings-sharelatex" ClientMap = new Map() # for each redis client, stores a Set of subscribed channels @@ -34,7 +35,7 @@ module.exports = ChannelManager = metrics.inc "unsubscribe.#{baseChannel}" publish: (rclient, baseChannel, id, data) -> - if id is 'all' + if id is 'all' or !settings.publishOnIndividualChannels channel = baseChannel else channel = "#{baseChannel}:#{id}" diff --git a/services/real-time/config/settings.defaults.coffee b/services/real-time/config/settings.defaults.coffee index ceeb65191d..a3128e84d1 100644 --- a/services/real-time/config/settings.defaults.coffee +++ b/services/real-time/config/settings.defaults.coffee @@ -54,6 +54,8 @@ settings = checkEventOrder: process.env['CHECK_EVENT_ORDER'] or false + publishOnIndividualChannels: process.env['PUBLISH_ON_INDIVIDUAL_CHANNELS'] or false + sentry: dsn: process.env.SENTRY_DSN