Crule

Since UnrealIRCd 6.1.2 we support spamfilter::rule, security-group::rule and mask::rule. They allow you to filter in a C like if-style, eg:.

Syntax

 * You can call functions which may have 0, 1 or more arguments. Eg
 * Supported comparison operators are:,   and
 * You can use  (AND) and   (OR) expressions to combine multiple checks
 * You can use  and   to group items

Functions
The following functions are supported:
 * : number of seconds the user is online
 * : the Reputation score of the user
 * : read the value of a tag set on the user with name TAGNAME
 * : returns the CAP protocol used by the client, such as 300.
 * : returns true if the the client has requested the  capability via CAP REQ.
 * : for a spamfilter, allows you to check the destination of the message (which can be a channel or a nick), wildcards are supported.
 * : returns true if user is a member of this channel. Optionally channel member flags are supported, eg . It is important not to confuse this with destination in spamfilters.

Simple comparisson
This rule will match if the Reputation score of the user is more than 20: rule "reputation>20";

And/Or
You can combine things with an AND operator and OR, and group them: rule "!inchannel('#main') && (online_time<180 || reputation<50)"; This rule will match when:
 * User is not in the channel #main, AND
 * Either the online time is less than 180 seconds OR the Reputation score is less than 50