mirror of
git://git.acid.vegas/anope.git
synced 2024-12-29 09:36:38 +00:00
129 lines
4.9 KiB
Plaintext
129 lines
4.9 KiB
Plaintext
Anope Modules
|
|
-------------
|
|
|
|
1) Introduction
|
|
2) Installation
|
|
3) Usage
|
|
4) Usage Example
|
|
5) More Modules
|
|
6) Support
|
|
7) Information for Developers
|
|
8) Modules Repository
|
|
|
|
1) Introduction
|
|
|
|
Anope 1.6 onwards supports external modules. External modules are pieces
|
|
of code that can be attached to a running Anope process dynamically. These
|
|
modules can serve several purposes, and perform all kind of operations to
|
|
enhance your network.
|
|
|
|
2) Installation
|
|
|
|
1. If modules are supported by your system, they will be configured
|
|
automatically when you run ./Config. The modules will be installed
|
|
to the modules directory in your data path (by default this will
|
|
be ~/services/data/modules).
|
|
|
|
2. Compile Anope as usual using ./Config. The "make" process will now
|
|
compile module support into Anope, and compile the default sample
|
|
modules, and any other module located in the modules folder or any
|
|
of its sub-directories, eg. modules/extra.
|
|
|
|
3. Install Anope as usual. The "make install" process will place the
|
|
compiled modules in their runtime location, making them available
|
|
for loading.
|
|
|
|
4. Start or restart services to make use of the new Anope executable.
|
|
Note that you do not need to restart to load new or changed modules,
|
|
only to make use of a new Anope executable.
|
|
|
|
3) Usage
|
|
|
|
All module manipulation commands are done through OperServ. These are:
|
|
|
|
MODLOAD Load a module
|
|
MODRELOAD Reload a module
|
|
MODUNLOAD Un-Load a module
|
|
MODLIST List loaded modules
|
|
MODINFO Info about a loaded module
|
|
|
|
Access to the above commands require the operserv/modload and modlist
|
|
permissions. Refer to operserv.example.conf.
|
|
|
|
You can also load (and pre-load) Modules automatically by loading them
|
|
on startup. To do so, edit any one of the configuration files (you may
|
|
want to use modules.conf for third-party/extra modules, or a config
|
|
file relevant to the *Serv your module operates on, eg. hostserv.conf),
|
|
and use the following method to load a module on startup or reload:
|
|
module { name="hs_modname" }
|
|
|
|
4) Usage Example
|
|
|
|
/msg OperServ modload ns_identify
|
|
-OperServ- Module ns_identify loaded
|
|
|
|
/msg OperServ modinfo ns_identify
|
|
-OperServ- Module: ns_identify Version: 1.9.7 Author: Anope loaded: Jun 17 18:43:08 2012 BST (2 minutes ago)
|
|
-OperServ- Providing service: nickserv/identify
|
|
-OperServ- Command ID on NickServ is linked to nickserv/identify
|
|
-OperServ- Command IDENTIFY on NickServ is linked to nickserv/identify
|
|
|
|
/msg OperServ modreload ns_identify
|
|
-OperServ- Module ns_identify reloaded
|
|
|
|
/msg OperServ modunload ns_identify
|
|
-OperServ- Module ns_identify unloaded
|
|
|
|
/msg NickServ IDENTIFY
|
|
-NickServ- Unknown command identify. "/msg NickServ HELP" for help.
|
|
NOTE: Doing the above, with the command still existing in a config file,
|
|
will result in a log message, similar to the following:
|
|
<@NickServ> Command IDENTIFY exists on me, but its service nickserv/identify was not found!
|
|
|
|
* Note that the name of the module source file is "ns_identify.cpp", yet we
|
|
load and reference the module as "ns_identify" only. By naming convention
|
|
modules have an abbreviated service name they attach to (hs_ for
|
|
HostServ, cs_ for ChanServ, etc) followed by a descriptive keyword.
|
|
|
|
5) More Modules
|
|
|
|
You can download more useful modules from https://modules.anope.org/. Just
|
|
grab the module file (usually with a .cpp extension). Place the module
|
|
file in your modules (anope-1.9.x/modules/third) folder; although any of
|
|
the other folders within the modules directory will work.
|
|
|
|
The new modules need to be compiled and installed before you can make
|
|
use of them:
|
|
|
|
1. Make sure you're in the main source directory. (usually anope-1.X.XX/)
|
|
2. Run ./Config to find and configure modules, then `cd build`.
|
|
3. Run `make` to compile Anope, and any modules.
|
|
4. Run `make install` to copy the compiled binaries to the ~/services/
|
|
directory.
|
|
|
|
You can now use /msg OperServ MODLOAD to load the new modules.
|
|
|
|
6) Support
|
|
|
|
The Anope team is not responsible or liable for any unofficial module
|
|
(i.e. anything other than what was released with the Anope package).
|
|
|
|
Use modules at your own risk, and make sure you get them from a
|
|
reputable source. You might get module support by contacting the module
|
|
author, posting on our online forum, or maybe on our #anope channel
|
|
at /server irc.anope.org.
|
|
|
|
7) Information for Developers
|
|
|
|
There are a number of useful documents on the Anope Wiki. The Anope Wiki
|
|
can be reached at:
|
|
|
|
* https://wiki.anope.org/
|
|
|
|
8) Modules Repository
|
|
|
|
You can find modules at https://modules.anope.org/
|
|
|
|
These modules are 3rd party and as such are not supported by the Anope Team.
|
|
Contact the Module Author directly with problems, not the Anope Team.
|