Metadata associated with an automod action. Different fields are relevant based on the value of dpp::automod_rule::trigger_type.
More...
#include <automod.h>
Metadata associated with an automod action. Different fields are relevant based on the value of dpp::automod_rule::trigger_type.
◆ automod_metadata()
| dpp::automod_metadata::automod_metadata |
( |
| ) |
|
Construct a new automod metadata object.
◆ ~automod_metadata()
| virtual dpp::automod_metadata::~automod_metadata |
( |
| ) |
|
|
virtual |
Destroy the automod metadata object.
◆ build_json()
Convert object to json string.
- Parameters
-
| with_id | Whether to include the ID or not |
- Note
- Some fields are conditionally filled, do not rely on all fields being present
- Returns
- std::string Json built from the structure
◆ fill_from_json()
Convert object from nlohmann::json.
- Parameters
-
- Returns
- T& Reference to self for fluent calling
◆ fill_from_json_impl()
| automod_metadata & dpp::automod_metadata::fill_from_json_impl |
( |
nlohmann::json * |
j | ) |
|
|
protected |
Fill object properties from JSON.
- Parameters
-
- Returns
- automod_metadata& Reference to self
◆ to_json()
Convert object to nlohmann::json.
- Parameters
-
| with_id | Whether to include the ID or not |
- Note
- Some fields are conditionally filled, do not rely on all fields being present
- Returns
- json Json built from the structure
◆ to_json_impl()
| virtual json dpp::automod_metadata::to_json_impl |
( |
bool |
with_id = false | ) |
const |
|
protectedvirtual |
Build a json for this object.
- Returns
- json JSON object
◆ json_interface< automod_metadata >
◆ allow_list
| std::vector<std::string> dpp::automod_metadata::allow_list |
Substrings which should not trigger the rule (Maximum of 100 for the trigger type dpp::amod_type_keyword, Maximum of 1000 for the trigger type dpp::amod_type_keyword_preset).
Each keyword can be a phrase which contains multiple words. All keywords are case insensitive and can be up to 60 characters.
Wildcard symbols (*) can be used to customize how each keyword will be matched.
Examples for the * wildcard symbol:
Prefix - word must start with the keyword
| keyword | matches |
| cat* | catch, Catapult, CAttLE |
| the mat* | the matrix |
Suffix - word must end with the keyword
| keyword | matches |
| *cat | wildcat, copyCat |
| *the mat | breathe mat |
Anywhere - keyword can appear anywhere in the content
| keyword | matches |
| *cat* | location, eduCation |
| *the mat* | breathe matter |
Whole Word - keyword is a full word or phrase and must be surrounded by whitespace at the beginning and end
| keyword | matches |
| cat | Cat |
| the mat | the mat |
◆ keywords
| std::vector<std::string> dpp::automod_metadata::keywords |
Substrings which will be searched for in content (Maximum of 1000).
Each keyword can be a phrase which contains multiple words. All keywords are case insensitive and can be up to 60 characters.
Wildcard symbols (*) can be used to customize how each keyword will be matched.
Examples for the * wildcard symbol:
Prefix - word must start with the keyword
| keyword | matches |
| cat* | catch, Catapult, CAttLE |
| the mat* | the matrix |
Suffix - word must end with the keyword
| keyword | matches |
| *cat | wildcat, copyCat |
| *the mat | breathe mat |
Anywhere - keyword can appear anywhere in the content
| keyword | matches |
| *cat* | location, eduCation |
| *the mat* | breathe matter |
Whole Word - keyword is a full word or phrase and must be surrounded by whitespace at the beginning and end
| keyword | matches |
| cat | Cat |
| the mat | the mat |
◆ mention_raid_protection_enabled
| bool dpp::automod_metadata::mention_raid_protection_enabled |
Whether to automatically detect mention raids.
◆ mention_total_limit
| uint8_t dpp::automod_metadata::mention_total_limit |
Total number of unique role and user mentions allowed per message (Maximum of 50)
◆ presets
◆ regex_patterns
| std::vector<std::string> dpp::automod_metadata::regex_patterns |
Regular expression patterns which will be matched against content (Maximum of 10).
Only Rust flavored regex is currently supported, which can be tested in online editors such as Rustexp. Each regex pattern can be up to 260 characters.