]> jfr.im git - irc/evilnet/x3.git/blobdiff - src/opserv.help
Return an error if an extended ban is invalid
[irc/evilnet/x3.git] / src / opserv.help
index 8a913cdbd263407cf1b3aecc3b2b8ad17802b851..45ca3b8a528e2f825e28696203d7cb488f45a1fb 100644 (file)
@@ -1,16 +1,17 @@
 "<INDEX>"  (
             " $O provides Oper Services for the Network.    ",
             " Please choose from the following categories:  ",
-            "  $bGOD$b         Enabling channel override.   ",
-            "  $bPUNISH$b      Commands to discipline users.",
             "  $bINFORMATION$b Get information about users. ",
             "              or $O, $C, and $N.           ",
+            "  $bPUNISH$b      Commands to discipline users.",
+            "  $bCHANNEL$b     Channel commands.            ",
+            "  $bUSER$b        User commands.               ",
             "  $bTRACES$b      Powerful commands for       ",
             "              viewing or acting on lists of",
             "              IRC objects.                 ",
             "  $bALERTS$b      Automated responses.         ",
+            "  $bGOD$b         Enabling channel override.   ",
             "  $bTRACKING$b    Tracking commands. (if enabled)",
-            "  $bCHANNEL$b     Channel commands.            ",
             "  $bCLONES$b      Manage trusts and limits.    ",
             "  $bROUTING$b     Manage the Auto Routing System.",
             "  $bSETTINGS$b    View and temporarily change  ",
             "  $bUNGAG$b       ...or unignore by mask."
             );
 
+"USER"     (
+            " $bSVSJOIN$b      Force a user to join a channel.",
+            " $bSVSPART$b      Force a user to part a channel.",
+            " $bSVSNICK$b      Force a user to change nicks.",
+            " $bACCESS$b       Show/modify $O access level of a user."
+           );
+
 "INFORMATION"  (
                 "  $bACCESS$b  Shows a users $O access level.",
                 "  $bSTATS$b   Show various lists and runtime info.",
@@ -62,7 +70,7 @@
             "  $bADDALERT$b  Make $O automatically do something",
             "            when users match a criteria.",
             "  $bDELALERT$b  Remove an alert.",
-            "  $bSTATS ALERT$b See a listing of alerts. "
+            "  $bSTATS ALERTS$b See a listing of alerts. "
            );
 
 "TRACKING"   (
             " $bROUTING MAP$b       Show what the active routing plan says the network should look like.",
             " $bREROUTE$b           Connect servers to the network, optionally squiting them first to change the routing.",
             " $b$b ",
-            " Start by creating a routing plan, and then adding servers to it, with their listning port, uplink, and a backup uplink. You can view it in $bSTATS ROUTING$b. Take care not to create loops, and that you make everything connected. Then set your new plan ACTIVE using $bROUTING SET$b. $O does the rest! See help topic $bROUTING EXAMPLE$b for a working example."
+            " Start by creating a routing plan, and then adding servers to it, with their listning port, uplink, and a backup uplink. You can view it in $bSTATS ROUTING planname$b. Take care not to create loops, and that you make everything connected. Then set your new plan ACTIVE using $bROUTING SET$b. $O does the rest! See help topic $bROUTING EXAMPLE$b for a working example."
             );
 
 "CHANNEL"  (
             "  $bDEHOPALL$b   Dehalfop everyone in a channel.",
             "  $bVOICEALL$b   Voice everyone in a channel.",
             "  $bDEVOICEALL$b Devoice everyone in a channel.",
+            "  $bFORCEKICK$b  Kicks someone even if they are +k.",
             "  $bKICKALL$b    Kick everyone from a channel.",
             "  $bKICKBANALL$b Kickban everyone from a channel.",
             "  $b$b",
         "$uSee Also:$u commands, modcmd"
         );
 
-"ADDALERT" ("/msg $O ADDALERT <name> <reaction> <criteria>",
+"ADDALERT" ("/msg $O ADDALERT <name> <reaction> [expire <duration>] <criteria>",
         "Adds the specified alert to the $b$O$b alert list.",
         "Alerts watch for users matching a givin criteria and perform an action on them.",
         "   <name> - An alphanumeric word to identify this alert in the list",
         "   <reaction> - What to do if a user matches the criteria. See $bALERT REACTION$b.",
+        "   <duration> - Duration after which the alert should be deleted. See $bdurations$b.",
         "   <criteria> - What to look for. See $bTRACE CRITERIA$b.",
         "Access level: $b${level/addalert}$b",
         "$uSee Also:$u delalert, alert reaction, trace criteria"
         "<duration> uses $btime  notation$b",
         "You may use 0 as the duration if you do not wish the trust to ever expire, and 0 as the count for unlimited connections.",
         "Access level: $b${level/addtrust}$b",
-        "$uSee Also:$u deltrust, stats trusted, time notation"
+        "$uSee Also:$u deltrust, edittust, stats trusted, time notation"
         );
 
 "ALERT REACTION" ("$bALERT REACTION$b",
         "$bGLINE$b:        Gline the user that tripped the alert",
         "$bTRACK$b:        Send a notice to the $b$O$b alert channel and track the user (if the tracking module is loaded)",
         "$bSHUN$b :        Shun the user that tripped the alert",
+        "$bVERSION$b :     Check the version on the user that tripped the alert",
+        "$bSVSJOIN$b :     Force the user that tripped the alert to join the target channel",
+        "$bSVSPART$b :     Force the user that tripped the alert to part the target channel",
         "$uSee Also:$u addalert, delalert"
         );
 
 "DELTRUST" ("/msg $O DELTRUST <ip>",
         "Deletes a trusted IP from $b$O's$b trusted hosts list. A trusted IP address is exempted from normal client limits. A list of currently trusted IPs is displayed by $bstats trusted$b.",
         "Access level: $b${level/deltrust}$b",
-        "$uSee Also:$u addtrust, stats"
+        "$uSee Also:$u addtrust, edittrust, stats"
         );
-
+"EDITTRUST" ("/msg $O EDITTRUST <ip> <count> <duration> <reason>",
+        "Edits the 'trust' for the specified IP, changing the count, duration and/or reason.",
+        "You may use 0 as the duration if you do not wish the trust to ever expire, and 0 as the count for unlimited connections.",
+        "$uSee Also:$u addtrust, deltrust, stats trusted");
 "INVITEME" ("/msg $O INVITEME [nick]",
         "Invites the specified user (if omitted, you) to $O's debug channel.",
         "This is currently pointless, since no output is sent to the debug channel.",
         
 "TRACE" ("/msg $O TRACE <action> <criteria> <value> [<criteria> <value>]...",
         "Searches through the current users for those matching the specified criteria, and applies the specified action to them. A detailed list of actions can be found in $bhelp trace action$b and a list of criteria in $bhelp trace criteria$b.",
-        "Quick Ref ACTIONS: PRINT, COUNT, KILL, GLINE, SHUN, GAG, DOMAINS",
-        "Quick Ref CRITERIA: MASK, NICK, IDENT, HOST, INFO, SERVER, IP, ACCOUNT, AUTHED, CHANNEL, NUMCHANNELS, LIMIT, NICKAGE, ACCESS, REASON, DEPTH, DURATION, CLONES, INFO_SPACE, ABUSE OPERS, LOG, REGEX",
+        "Quick Ref ACTIONS: PRINT, COUNT, KILL, GLINE, SHUN, GAG, DOMAINS, SVSJOIN, SVSPART, VERSION",
+        "Quick Ref CRITERIA: MASK, NICK, IDENT, HOST, INFO, SERVER, IP, ACCOUNT, AUTHED, CHANNEL, NUMCHANNELS, LIMIT, NICKAGE, ACCESS, REASON, DEPTH, DURATION, CLONES, INFO_SPACE, CHECKRESTRICTIONS ABUSE OPERS, LOG, REGEX, CHANTARGET, SILENT, VERSION, MARKED",
         "Access level: $b${level/trace}$b",
         "$uSee Also:$u trace action, trace criteria"
         );
         "$bSHUN$b:    Issue a shun for the client's host (by default, 1 hour long).",
         "$bGAG$b:     Gag all matching users (by default, does not expire).",
         "$bDOMAINS$b: Display counts of users in each domain (length specified by DEPTH criteria.", 
+        "$bSVSJOIN$b: Force users to join channel givin in chantarget criteria.",
+        "$bSVSPART$b: Force part the matching clients out of the specified target channel.",
+        "$bVERSION$b: Query for the users CTCP VERSION reply.",
+        "$bMARK$b:    Set a nefarius 'mark' named via the mark criteria as if the user were in that dnsbl.",
         "Note: By default, IRC operators are not affected by the KILL, GLINE, SHUN or GAG actions.  You can override this by specifying the $bABUSE OPERS$b criteria for a trace.  Even if you do specify $bABUSE OPERS$b, it will not affect opers at your access level or above.",
         "$uSee Also:$u trace criteria, trace"
         );
 
 "TRACE CRITERIA" ("$bTRACE CRITERIA$b",
         "Criteria and values for $btrace$b (a search with $btrace$b must match all specified items):",
-        "$bMASK$b nick!user@host    Specifies a full hostmask to search for.",
-        "$bNICK$b nick              Specifies a nick to search for.",
-        "$bIDENT$b ident            Specifies an ident to search for.",
-        "$bHOST$b host              Specifies a hostname to search for.",
-        "$bINFO$b infoline          Specifies a user's info to search for.",
-        "$bSERVER$b server          Specifies a server to search for.",
-        "$bIP$b 127.0.0.1           Specifies an IP to search for (independent of hostname).",
-        "$bACCOUNT$b account        Specifies an account to search for.",
-        "$bAUTHED$b yes/no          Specifies if matching users must be authenticated with $N or not",
-        "$bCHANNEL$b #target        Specifies a channel the client must be in.",
-        "$bNUMCHANNELS$b 5          Specifies a number of channels the client must be in.",
-        "$bLIMIT$b 50               Limits the number of responses to a certain number.",
-        "$bNICKAGE$b cmp            Client has had nick this long (<Nu, <=Nu, =Nu, >=Nu or >Nu)",
-        "$bLINKED$b cmp             Connected to the network this long (<Nu, <=Nu, =Nu, >=Nu or >Nu)",
-        "$bACCESS$b cmp             Access constraints (<nnn, <=nnn, =nnn, >=nnn or >nnn)",
-        "$bREASON$b reason          Reason for kill, gline or shun (must be listed last).",
-        "$bDEPTH$b depth            How many domain-name parts to use for $bDOMAINS$b action.",
-        "$bDURATION$b duration      How long to apply a G-line or gag (see $C help topic $bdurations$b).",
-        "$bCLONES$b min             Ignore clients from hosts with fewer than this many connections.",
-        "$bINFO_SPACE$b yes/no      Clients match only if their info starts with a space (' ') character.",
-        "$bABUSE OPERS$b            Force adverse actions to affect opers as well.",
-        "$bLOG$b                    Record matching users in $O's log file (in addition to acting).",
-        "$bREGEX$b yes/no           Specifies if NICK/IDENT/HOST/INFO should be treated as a regular expression.",
-        "$bSILENT$b yes/no          If yes, AUTO is prepended to the gline message, making the gline silent in nefarious ircd.",
+        "$bMASK$b nick!user@host      Specifies a full hostmask to search for.",
+        "$bNICK$b nick                Specifies a nick to search for.",
+        "$bIDENT$b ident              Specifies an ident to search for.",
+        "$bHOST$b host                Specifies a hostname to search for.",
+        "$bINFO$b infoline            Specifies a user's info to search for.",
+        "$bSERVER$b server            Specifies a server to search for.",
+        "$bIP$b 127.0.0.1             Specifies an IP to search for (independent of hostname).",
+        "$bACCOUNT$b account          Specifies an account to search for.",
+        "$bAUTHED$b yes/no            Specifies if matching users must be authenticated with $N or not",
+        "$bCHANNEL$b #target          Specifies a channel the client must be in.",
+        "$bNUMCHANNELS$b 5            Specifies a number of channels the client must be in.",
+        "$bLIMIT$b 50                 Limits the number of responses to a certain number.",
+        "$bNICKAGE$b cmp              Client has had nick this long (<Nu, <=Nu, =Nu, >=Nu or >Nu)",
+        "$bLINKED$b cmp               Connected to the network this long (<Nu, <=Nu, =Nu, >=Nu or >Nu)",
+        "$bACCESS$b cmp               Access constraints (<nnn, <=nnn, =nnn, >=nnn or >nnn)",
+        "$bREASON$b reason            Reason for kill, gline or shun (must be listed last).",
+        "$bDEPTH$b depth              How many domain-name parts to use for $bDOMAINS$b action.",
+        "$bDURATION$b duration        How long to apply a G-line or gag (see $C help topic $bdurations$b).",
+        "$bCLONES$b min               Ignore clients from hosts with fewer than this many connections.",
+        "$bINFO_SPACE$b yes/no        Clients match only if their info starts with a space (' ') character.",
+        "$bABUSE OPERS$b              Force adverse actions to affect opers as well.",
+        "$bABUSE TRUSTED$b            Force adverse actions to affect users on trusted hosts as well.",
+        "$bTARGET$b                   Send alert notice to this channel.",
+        "$bLOG$b                      Record matching users in $O's log file (in addition to acting).",
+        "$bREGEX$b yes/no             Specifies if NICK/IDENT/HOST/INFO should be treated as a regular expression.",
+        "$bSILENT$b yes/no            If yes, AUTO is prepended to the gline message, making the gline silent in nefarious ircd.",
+        "$bVERSION$b version          If they have been queried using the VERSION action and responded, they are matched if the reply they give matches.",
+        "$bMARKED$b mark              If they have a dnsbl mark matching mark. (e.g. from an X line or alert)",
+        "$bCHANTARGET$b #channel      For use with SVSJOIN action, this specifies the channel they are svsjoined to.",
+        "$bCHECKRESTRICTIONS$b yes/no For use with SVSJOIN action, this specifies to check channel modes like bans, invite, limits, and key before the SVSJOIN is issued.",
+        "$bMARK$b mark                For use with the MARK action, this is what thety are marked with.",
         "Additionally, the $bCHANNEL$b target may be prefixed with @ to select channel operators, + to select voiced users (will not select chanops unless @ is also used), or - to select non-voiced non-chanop users.  For example, CHANNEL #foo will select all users in #foo; CHANNEL +#foo will select only users voiced in #foo; CHANNEL @+#foo will select ops and voiced users in #foo; etc.",
         "When searching on the criteria of nick, ident, or info, the search string can be another of the three, prefixed with a & character, to indicate that the match should compare each user's individual data.  For example, $binfo &nick$b would search for all users whose info matches their nick.  To search for that phrase explicitly, prefix the & with a backslash; e.g.: $binfo \&ident$b.",
         "$uSee Also:$u trace action, trace"
         "Access level: $b${level/kick}$b",
         "$uSee Also:$u ban, kickall, kickban, kickbanall"
         );
-
+"FORCEKICK" ("/msg $O FORCEKICK <#channel> <nick> [reason]",
+        "Kicks the specified user from the specified channel even if he is a channel service (+k).",
+        "If the channel is omitted, then $bforcekick$b will be done in the channel where the command was given.",
+        "$uSee Also:$u ban, kick, kickall, kickban, kickbanall"
+        );
 "KICKALL" ("/msg $O KICKALL <#channel> [reason]",
         "Kicks all users in the specified channel except for the user issuing the command.",
         "If the channel is omitted, then $bkickall$b will be done in the channel where the command was given.",
         "$uSee Also:$u ban, kick, kickban"
         );
 
+"MARK" ("/msg $O MARK <mark>",
+        "Sets a nefarious 'mark' on the user as if they are in <mark> dnsbl. ",
+        "(shows in /whois and prefixes their host, for easy banning)",
+        "Mark must be a-z0-9 or dash (-) 20 chars or less.",
+        "$uSee Also:$u trace action"
+        );
+
+"SVSJOIN" ("/msg $O SVSJOIN <nick> <#channel>",
+        "Forces nick to join #channel",
+        "$uSee Also:$u svspart, join, trace action"
+        );
+
+"SVSPART" ("/msg $O SVSPART <nick> <#channel>",
+        "Forces nick to part #channel",
+        "$uSee Also:$u svsjoin, part, trace action"
+        );
+
+"SVSNICK" ("/msg $O SVSNICK <nick> <newnick>",
+        "Forces nick to change nick to newnick",
+        "$uSee Also:$u svspart, svsjoin"
+        );
+
 "MODE" ("/msg $O MODE <#channel> <+/- mode>",
         "Sets the specified modes (but cannot include voice, ban or op changes) on a channel.",
         "If the channel is omitted, then $bmode$b will be done in the channel where the command was given.",
         "  UNGLINE  [${level/ungline}]"
         );
 
-"BLOCK" ("/msg $O BLOCK <nick> [reason]",
-        "GLINES the host of the specified nick for one hour  If no reason is given, use a default reason.",
+"BLOCK" ("/msg $O BLOCK <nick> [duration] [reason]",
+        "GLINES the host of the specified nick for one hour if no duration is given.  If no reason is given, use a default reason.",
         "Access level: $b${level/block}$b",
         "$uSee Also:$u gline, ungline"
         );
         "$bLIMIT$b count            Limits the number of matching glines.",
         "$bREASON$b reason          Looks for glines with the given reason.",
         "$bISSUER$b account         Looks for glines issued by the given account.",
+        "$bLASTMOD$b interval       Looks for glines last modified in the specified time.",
         "$bAFTER$b interval         Looks for glines that expire more than $binterval$b in the future.",
         "$uSee Also:$u gtrace action, gtrace"
         );
         "  UNSHUN   [${level/unshun}]"
         );
 
-"SBLOCK" ("/msg $O SBLOCK <nick> [reason]",
-        "SHUNS the host of the specified nick for one hour  If no reason is given, use a default reason.",
+"SBLOCK" ("/msg $O SBLOCK <nick> [duration] [reason]",
+        "SHUNS the host of the specified nick for one hour if no duration is given.  If no reason is given, use a default reason.",
         "Access level: $b${level/sblock}$b",
         "$uSee Also:$u shun, unshun"
         );
         "$bLIMIT$b count            Limits the number of matching shuns.",
         "$bREASON$b reason          Looks for shuns with the given reason.",
         "$bISSUER$b account         Looks for shuns issued by the given account.",
+        "$BLASTMOD$b interval       Looks for shuns last modified in the specified time.",
         "$bAFTER$b interval         Looks for shuns that expire more than $binterval$b in the future.",
         "$uSee Also:$u strace action, strace"
         );
 "ROUTING ADDPLAN" ("/msg $O ROUTING ADDPLAN <name>",
         "Creates a new blank routing plan named name.",
         "You can then use $bROUTING ADDSERVER$b to build it.",
-        "Use $bSTATS ROUTING$b to view it, and $bROUTING SET ACTIVE$b to activate it.",
+        "Use $bSTATS ROUTING [name]$b to view it, and $bROUTING SET ACTIVE$b to activate it.",
         "$uSee Also:$u routing, stats routing, routing delplan, routing set, routing addserver"
         );
 "ROUTING DELPLAN" ("/msg $O ROUTING DELPLAN <name>",
         "$uSee also:$u routing, routing map, stats routing",
         );
 
-"STATS ROUTING" ("/msg $O STATS ROUTING",
+"STATS ROUTING" ("/msg $O STATS ROUTING [planmask]",
         "Provides information about The Auto Routing System's configuration. You can see the routing plans, and the current routing options.",
+        " If planmask is provided, you will see the full details for any plans matching the mask (* and ? wildcards)",
         "$uSee also:$u routing, routing set",
         );
 
         "$bMODULES$b:    Shows loaded modules that implement commands.",
         "$bSERVICES$b:   Shows active service bots.",
         "Access level: $b${level/stats}$b",
+        "$b$b",
+        "$uSee Also:$u stats alerts"
+        );
+
+"STATS ALERTS" ("/msg $O STATS ALERTS [Owner|Filter]",
+        "Show alerts. If a parameter is given, only alerts who match it are shown.",
+        "$b$b",
+        " Owner  - the account name of whoever created the alert",
+        " Filter - A wildcard (* and ?) match string compared against the criteria string",
+        "$b$b",
+        "Example: STATS ALERTS *nick phil*",
+        "$uSee Also:$u addalert, delalert, stats"
         );
 
 "TRACK" ("/msg $O TRACK <+/-type|all|none>",