add custom rule channel filtering
This commit is contained in:
parent
66babfc40e
commit
1152108621
2 changed files with 12 additions and 0 deletions
|
@ -11,6 +11,11 @@ async function messageContentTrigger(message: Message, trigger: CustomRuleTrigge
|
|||
|
||||
let matched = false;
|
||||
if (trigger.matcher) {
|
||||
if (trigger.channelFilter) {
|
||||
if (trigger.channelFilter.mode == 'WHITELIST' && !trigger.channelFilter.channels.includes(message.channel_id)) return false;
|
||||
if (trigger.channelFilter.mode == 'BLACKLIST' && trigger.channelFilter.channels.includes(message.channel_id)) return false;
|
||||
}
|
||||
|
||||
if (trigger.matcher instanceof RegExp) {
|
||||
/**
|
||||
* Since users will eventually be able to provide regexes, we need to protect
|
||||
|
|
|
@ -10,6 +10,13 @@ class CustomRuleTrigger {
|
|||
|
||||
userFilter?: 'user' | 'bot' | 'any';
|
||||
|
||||
channelFilter?: {
|
||||
// Whitelist only triggers the rule in specified channels,
|
||||
// Blacklist only triggers the rule in channels not specified
|
||||
mode: 'WHITELIST'|'BLACKLIST',
|
||||
channels: string[],
|
||||
}
|
||||
|
||||
// The minimum delay between rule matches. If omitted, rule matches every message
|
||||
timeout?: {
|
||||
perUser?: number;
|
||||
|
|
Loading…
Reference in a new issue