Constructor for initial load. Usually called from the inherited constructor.
Used to load the Plugin, initially loading state if requred.
Returns the name of this plugin.
Used to unload the Plugin. Saves config/storage if required.
Client instance for the Bot running this plugin
Config instance for this plugin
Returns path to this plugins config file.
Plugin log instance.
User instance for the account this bot is running under
PluginOptions for this plugin
Storage instance for this plugin.
Returns path to this plugins storage directory.
Returns path to this plugins storage file.
Bot instance for this plugin. Should always be set
Pointer to the dynamic library, used for cleaning up on shutdown.
The path to the dynamic library this plugin was loaded from. If set, this signals this Plugin was loaded from a dynamic library, and can be reloaded from the given path.
Current runtime state for this plugin
A Plugin represents a modular, extendable class that encapsulates certain Bot functionality into a logical slice. Plugins usually have a set of commands and listeners attached to them, and are built to be dynamically loaded/reloaded into a Bot.