Modules

From AnopeWiki
Revision as of 18:20, 6 July 2009 by Amanda (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

Introduction

Modules allow you to extend Anope by adding your own functionaly. Modules have full access to all of Anope's internal data structures and functions, and can thus do virtually anything you want.

This section of the wiki contains information about 3rd party modules for Anope. If you are looking for tutorials on how to make modules, please check out the tutorials section of the wiki.

Module Pages

MODULE AUTHORS: This section allows you to create a page for your module. If you would like to add a page for your module, add it to the list here using the name of the module under the appropriate heading. For example, if I wanted to add bs_8ball to the list and create a page, I would click Edit at the top of this page, find the BotServ heading, and type:

[[Modules:bs_8ball|bs_8ball]]

When I clicked save at the bottom, my module text would appear in red. Click the red link and you will be instructed to Create/Edit the page. That's where you need to put your module information.

You should include:

  • Module name
  • Your name
  • Brief explanation of the module
  • Which versions of Anope the module works with
  • Any config directives needed
  • FAQ section

The FAQ section is not necessary, however you may want to include troubleshooting tips or questions you get frequently about the module. Additionally, you may want to include some technical information about the module itself for other developers.

Put as much or as little information as you like. If you would like to see an example, please look at bs_8ball

The example above uses a template to format the information. You can find the template here. Follow the directions on the template page.

If you would like to put your code here (useful for smaller modules), you may also use syntax highlighting. To do this, you need to put your code between source tags:

<source lang="c">
int my_he_meow(User *u) {
     /* Meow at the user, (s)he wanted it so badly */
     notice(s_HelpServ, u->nick, "MEOW! Specially for you \002%s\002 ;)", u->nick);
 
     /* Halt processing */
     return MOD_STOP;
 }
</source>

Would look like:

int my_he_meow(User *u) {
     /* Meow at the user, (s)he wanted it so badly */
     notice(s_HelpServ, u->nick, "MEOW! Specially for you \002%s\002 ;)", u->nick);
 
     /* Halt processing */
     return MOD_STOP;
 }

To change the highlighting to C++, change 'c' in the source tag to 'cpp'.



What you should use this section for:

  • Informing people about your module(s)
  • Providing help for your modules

What you should not use this page for:

  • Advertising your coding (programmer for hire ads) - Please do this on the forums or your user page.
  • Advertising networks - We don't care that it's used on XYZnet.
  • Reporting bugs - Please use the modsite or Forums for this.
  • Bios - Please use your User page to tell us about yourself. You are more than welcome to link to your User page on your module page.

Defacing module pages will result in deletion of your pages and possible termination of your privileges. In other words, behave!

Modules

BotServ

This section is for modules that interact with BotServ.

bs_8ball

ChanServ

This section is for modules that interact with ChanServ.

HelpServ

This section is for modules that interact with HelpServ. Please note that HelpServ is no longer included in Anope as of version 1.9.1

HostServ

This section is for modules that interact with HostServ.

MemoServ

This section is for modules that interact with MemoServ.

OperServ

This section is for modules that interact with OperServ.

Miscellaneous/IRCd

This section is for modules that are not specific to any particular service or are specific to an IRCd.

ircd_tssync

logchan

Personal tools