D++ (DPP)
C++ Discord API Bot Library
dpp::automod_metadata Struct Reference

Metadata associated with an automod action. More...

#include <automod.h>

+ Inheritance diagram for dpp::automod_metadata:
+ Collaboration diagram for dpp::automod_metadata:

Public Member Functions

 automod_metadata ()
 Construct a new automod metadata object. More...
 
virtual ~automod_metadata ()
 Destroy the automod metadata object. More...
 
automod_metadatafill_from_json (nlohmann::json *j)
 Fill object properties from JSON. More...
 
virtual std::string build_json (bool with_id=false) const
 Build a json string for this object. More...
 

Public Attributes

std::vector< std::string > keywords
 Substrings which will be searched for in content. More...
 
std::vector< automod_preset_typepresets
 Preset keyword list types to moderate. More...
 
std::vector< std::string > allow_list
 Substrings which will be exempt from triggering the automod_metadata::presets trigger type. More...
 
uint8_t mention_total_limit
 Total number of mentions (role & user) allowed per message (Maximum of 50) More...
 

Detailed Description

Metadata associated with an automod action.

Constructor & Destructor Documentation

◆ 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.

Member Function Documentation

◆ build_json()

virtual std::string dpp::automod_metadata::build_json ( bool  with_id = false) const
virtual

Build a json string for this object.

Returns
std::string JSON string

Reimplemented from dpp::json_interface< automod_metadata >.

◆ fill_from_json()

automod_metadata & dpp::automod_metadata::fill_from_json ( nlohmann::json *  j)

Fill object properties from JSON.

Parameters
jJSON to fill from
Returns
automod_metadata& Reference to self

Member Data Documentation

◆ allow_list

std::vector<std::string> dpp::automod_metadata::allow_list

Substrings which will be exempt from triggering the automod_metadata::presets trigger type.

Each keyword can be a phrase which contains multiple words. All keywords are case insensitive.

◆ keywords

std::vector<std::string> dpp::automod_metadata::keywords

Substrings which will be searched for in content.

Each keyword can be a phrase which contains multiple words. All keywords are case insensitive.

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_total_limit

uint8_t dpp::automod_metadata::mention_total_limit

Total number of mentions (role & user) allowed per message (Maximum of 50)

◆ presets

std::vector<automod_preset_type> dpp::automod_metadata::presets

Preset keyword list types to moderate.

See also
automod_preset_type
D++ Library version 10.0.29D++ Library version 10.0.28D++ Library version 10.0.27D++ Library version 10.0.26D++ Library version 10.0.25D++ Library version 10.0.24D++ Library version 10.0.23D++ Library version 10.0.22D++ Library version 10.0.21D++ Library version 10.0.20D++ Library version 10.0.19D++ Library version 10.0.18D++ Library version 10.0.17D++ Library version 10.0.16D++ Library version 10.0.15D++ Library version 10.0.14D++ Library version 10.0.13D++ Library version 10.0.12D++ Library version 10.0.11D++ Library version 10.0.10D++ Library version 10.0.9D++ Library version 10.0.8D++ Library version 10.0.7D++ Library version 10.0.6D++ Library version 10.0.5D++ Library version 10.0.4D++ Library version 10.0.3D++ Library version 10.0.2D++ Library version 10.0.1D++ Library version 10.0.0D++ Library version 9.0.19D++ Library version 9.0.18D++ Library version 9.0.17D++ Library version 9.0.16D++ Library version 9.0.15D++ Library version 9.0.14D++ Library version 9.0.13D++ Library version 9.0.12D++ Library version 9.0.11D++ Library version 9.0.10D++ Library version 9.0.9D++ Library version 9.0.8D++ Library version 9.0.7D++ Library version 9.0.6D++ Library version 9.0.5D++ Library version 9.0.4D++ Library version 9.0.3D++ Library version 9.0.2D++ Library version 9.0.1D++ Library version 9.0.0D++ Library version 1.0.2D++ Library version 1.0.1D++ Library version 1.0.0