From 6af72354b3a779e02a8ee9c7db4d87d21bf4d6d4 Mon Sep 17 00:00:00 2001 From: Bill Neff Date: Wed, 4 Sep 2019 10:33:38 -0400 Subject: [PATCH] audience-mentions Allow audience to include multiple mentions, including individual user mentions --- lib/bot/setAudience.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/bot/setAudience.js b/lib/bot/setAudience.js index 3ddab58..f629e2e 100644 --- a/lib/bot/setAudience.js +++ b/lib/bot/setAudience.js @@ -5,7 +5,8 @@ var models = require('../../models'); var _ = require('underscore'); function setUserGroup(bot, message) { - log.verbose('Heard a request to set an audience'); + log.verbose(`Heard a request to set an audience to ${message.match[2]}`); + // Currently, bots cannot access the usergroups api endpoint, so we can't check // See https://api.slack.com/bot-users @@ -36,7 +37,7 @@ function setUserGroup(bot, message) { } } ).then(function (){ - bot.reply(message, ':thumbsup: Set audience to `'+message.match[2]+'`. If you\'re using a '+ + bot.reply(message, ':thumbsup: Set audience to `' + message.match[2] + '`. If you\'re using a '+ 'user group, make sure that it exists'); }); } else { @@ -47,7 +48,7 @@ function setUserGroup(bot, message) { } function attachListener(controller) { - controller.hears(['(usergroup|audience) ()'],['direct_mention'], setUserGroup); + controller.hears(['(usergroup|audience)\\s+((?:[^>]+>[\\s;,]*)+)'],['direct_mention'], setUserGroup); log.verbose('Attached'); }