IRCBot Plugin API  v5
Classes | Macros
Command Registration/Handling API

Classes

struct  COMMAND_ACL
 
struct  COMMAND
 
struct  API_commands
 

Macros

#define COMMAND_ACTION   0x00
 
#define COMMAND_PROC   0x01
 
#define CM_ALLOW_IRC_PUBLIC   0x00000001
 This plag means the command can be used via IRC channel message (ie. publically) More...
 
#define CM_ALLOW_IRC_PRIVATE   0x00000002
 This plag means the command can be used via IRC private message. More...
 
#define CM_ALLOW_CONSOLE_PUBLIC   0x00000004
 This plag means the command can be used in channels/groups via 'console' interfaces. These include DCC chat, Skype, Jabber, Twitter, SMS, etc. More...
 
#define CM_ALLOW_CONSOLE_PRIVATE   0x00000008
 This plag means the command can be used in private message via 'console' interfaces. These include DCC chat, Skype, Jabber, Twitter, SMS, etc. More...
 
#define CM_FLAG_FROM_TEXT   0x20000000
 This flag means the command was loaded from ircbot.text, this is used by the rehash function to wipe out old commands before loading the new text file. More...
 
#define CM_FLAG_SLOW   0x10000000
 This flag is set on slow interfaces or ones with limited speed, such as SMS. Commands supporting this flag can adjust themselves accordingly. More...
 
#define CM_FLAG_ASYNC   0x40000000
 This flag is set on functions that take a long time to execute so they will be run in a separate thread. More...
 
#define CM_FLAG_NOHANG   0x80000000
 This flag is set on interfaces that buffer output until the command is done, so the USER_PRESENCE should not be held on to for a long time because the user won't see any output until the command is done. More...
 
#define CM_NO_FLAGS(x)   (x & 0x0000000F)
 
#define CM_ALLOW_ALL_PUBLIC   CM_ALLOW_IRC_PUBLIC|CM_ALLOW_CONSOLE_PUBLIC
 
#define CM_ALLOW_ALL_PRIVATE   CM_ALLOW_IRC_PRIVATE|CM_ALLOW_CONSOLE_PRIVATE
 
#define CM_ALLOW_ALL   CM_ALLOW_ALL_PUBLIC|CM_ALLOW_ALL_PRIVATE
 

Detailed Description

Macro Definition Documentation

#define COMMAND_ACTION   0x00
#define COMMAND_PROC   0x01
#define CM_ALLOW_IRC_PUBLIC   0x00000001

This plag means the command can be used via IRC channel message (ie. publically)

#define CM_ALLOW_IRC_PRIVATE   0x00000002

This plag means the command can be used via IRC private message.

#define CM_ALLOW_CONSOLE_PUBLIC   0x00000004

This plag means the command can be used in channels/groups via 'console' interfaces. These include DCC chat, Skype, Jabber, Twitter, SMS, etc.

#define CM_ALLOW_CONSOLE_PRIVATE   0x00000008

This plag means the command can be used in private message via 'console' interfaces. These include DCC chat, Skype, Jabber, Twitter, SMS, etc.

#define CM_FLAG_FROM_TEXT   0x20000000

This flag means the command was loaded from ircbot.text, this is used by the rehash function to wipe out old commands before loading the new text file.

#define CM_FLAG_SLOW   0x10000000

This flag is set on slow interfaces or ones with limited speed, such as SMS. Commands supporting this flag can adjust themselves accordingly.

#define CM_FLAG_ASYNC   0x40000000

This flag is set on functions that take a long time to execute so they will be run in a separate thread.

#define CM_FLAG_NOHANG   0x80000000

This flag is set on interfaces that buffer output until the command is done, so the USER_PRESENCE should not be held on to for a long time because the user won't see any output until the command is done.

#define CM_NO_FLAGS (   x)    (x & 0x0000000F)
#define CM_ALLOW_ALL_PUBLIC   CM_ALLOW_IRC_PUBLIC|CM_ALLOW_CONSOLE_PUBLIC
#define CM_ALLOW_ALL_PRIVATE   CM_ALLOW_IRC_PRIVATE|CM_ALLOW_CONSOLE_PRIVATE
#define CM_ALLOW_ALL   CM_ALLOW_ALL_PUBLIC|CM_ALLOW_ALL_PRIVATE