]> jfr.im git - irc/evilnet/x3.git/blobdiff - src/opserv.help
SVSPART trace / alert support (level 999). Just like the recent SVSJOIN support
[irc/evilnet/x3.git] / src / opserv.help
index ba72a6bb8f73928cecc2679b4472b76edfacbabb..1eefd6bde5a37ec440b486063437706b6e712be9 100644 (file)
@@ -9,14 +9,21 @@
             "              viewing or acting on lists of",
             "              IRC objects.                 ",
             "  $bALERTS$b      Automated responses.         ",
+            "  $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  ",
             "              config file settings.        ",
             "  $bADMIN$b       Misc Administrator Commands. ",
             "  $bOWNERONLY$b   $O operator only commands.   "
 );
-"COMMANDS" "${index}";
+"COMMANDS" ("The following commands are available in $O:",
+            "${index}",
+            "$uSee Also$u: modcmd, access, command");
+"INDEX" ("The following commands are available in $O:",
+            "${index}",
+            "$uSee Also$u: modcmd, access, command");
 
 "PUNISH"   (
             "  $bGLINE$b       Global Ban a host.",
             "  $bSTATS ALERT$b See a listing of alerts. "
            );
 
+"TRACKING"   (
+              " These commands only work if the tracking module has been compiled in",
+              "  $b$b",
+              "  $bTRACK$b     Display and set tracking options.",
+              "  $bADDTRACK$b  Adds a nick to the tracking list.",
+              "  $bDELTRACK$b  Deletes an active track.",
+              "  $bLISTTRACK$b Lists all active tracks.",
+             );
+
+"PRIVILEGE" (
+             " The Privilege list system: ",
+             " $b$b",
+             " $bPRIVSET$b Set and unset privileges on the fly."
+            );
+
+"ROUTING"  (
+            " The Auto Routing System: ",
+            " $b$b",
+            " $bSTATS ROUTING$b     Shows everything about the auto routing configuration.",
+            " $bROUTING ADDPLAN$b   Creates a new routing plan. Routing plans are a collection of server linking information that $O uses to decide how to route.",
+            " $bROUTING DELPLAN$b   Deletes a routing plan (and all its servers).",
+            " $bROUTING ADDSERVER$b Adds server linking information to a plan.",
+            " $bROUTING DELSERVER$b Deletes a server from a routing plan.",
+            " $bROUTING SET$b       Show and change routing settings. ",
+            " $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."
+            );
+
 "CHANNEL"  (
             "  $bOP$b      Op someone.",
             "  $bDEOP$b    Deop someone.",
+            "  $bHOP$b     Half Op someone.",
+            "  $bDEHOP$b   DeHalfop someone.",
             "  $bVOICE$b   Voice someone.",
             "  $bDEVOICE$b Devoice someone.",
             "  $bKICK$b    Kick someone.",
             "  $b$b",
             "  $bOPALL$b      Op everyone in a channel.",
             "  $bDEOPALL$b    Deop everyone in a channel.",
+            "  $bHOPALL$b     Half Op everyone in a channel.",
+            "  $bDEHOPALL$b   Dehalfop everyone in a channel.",
             "  $bVOICEALL$b   Voice everyone in a channel.",
             "  $bDEVOICEALL$b Devoice everyone in a channel.",
             "  $bKICKALL$b    Kick everyone from a channel.",
             "  $bJUPE$b         Create dummy server.",
             "  $bUNJUPE$b       Remove a dummy server.",
             "  $b$b",
+            "  $bDEFCON$b       Manipulate the DefCon system.",
             "  $bREFRESHG$b     Refresh the Glines.",
             "  $bREFRESHS$b     Refresh the Shuns.",
             "  $bSETTIME$b      Synchronize time across the network.",
              "  $bDELEXEMPT$b     Remove an exception of the illegal word list.",
              "  $b$b",
              "  $bDUMP$b          Drop safetychecked server protocol to the server. ",
-             "  $bRAW$b           Drop raw server protocol to the server. (DANGEROUS!)"
+             "  $bRAW$b           Drop raw server protocol to the server. (DANGEROUS!)",
+             "  $b$b",
+             "  $bRESETMAX$b      Reset the maximum recorded users. (used in the event of a clone flood)"
             );
 
 
 "ACCESS" ("/msg $O ACCESS [nick|*account] [new-level]",
         "Displays the $O access level for the specified user or account.  With no arguments, displays your own access level.  With two arguments, sets the target's $O access level to the second argument (assuming you have sufficient access to do so).",
+        "\"ACCESS *\" will show the access levels of everyone.",
         "Access level: $b${level/access}$b",
         "$uSee Also:$u commands, modcmd"
         );
         "Valid alert actions (to be taken when an alert is hit) are:",
         "$bNOTICE$b:       Send a notice to the $b$O$b alert channel",
         "$bKILL$b:         Disconnect the user",
-        "$bSILENT$b        Same as GLINE, except AUTO: is appended to make the gline silent",
         "$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"
         );
 
         
 "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, VERSION, SVSJOIN, SVSPART",
+        "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, SILENT, VERSION",
         "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.", 
-        "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.",
+        "$bVERSION$b: Issue a ctcp version for the clients who match.",
+        "$bSVSJOIN$b: Force join the matching clients into the specified target channel.",
+        "$bSVSPART$b: Force part the matching clients into the specified target channel.",
+        "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"
         );
 
         "$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.",
+        "$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.",
+        "$bVERSION$b version        Specifies a users version to search for.",
         "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"
         );
 
         "$uSee Also:$u deop, devoiceall, op, opall"
         );
 
+"DEHOP" ("/msg $O DEHOP <#channel> <nick> [nick]...",
+        "Dehalfops the specified user from the specified channel.",
+        "If the channel is omitted, then $bdehop$b will be done in the channel where the command was given.",
+        "Access level: $b${level/dehalfop}$b",
+        "$uSee Also:$u dehalfopall, hop, hopall"
+        );
+
+"DEHOPALL" ("/msg $O DEHOPALL <#channel>",
+        "Dehalfops all members of the specified channel.",
+        "If the channel is omitted, then $bdehopall$b will be done in the channel where the command was given.",
+        "Access level: $b${level/dehopall}$b",
+        "$uSee Also:$u dehop, hop, hopall"
+        );
+
 "DEVOICEALL" ("/msg $O DEVOICEALL <#channel>",
         "Devoice all members of the specified channel who do not have channel ops.",
         "If the channel is omitted, then $bdevoiceall$b will be done in the channel where the command was given.",
         "$uSee Also:$u deopall"
         );
 
+"HOP" ("/msg $O HOP <#channel> <nick> [nick]...",
+        "Half ops specified nicknames the specified channel.",
+        "If the channel is omitted, then $bhop$b will be done in the channel where the command was given.",
+        "Access level: $b${level/hop}$b",
+        "$uSee Also:$u dehop, dehopall, hopall"
+        );
+
+"HOPALL" ("/msg $O HOPALL <#channel>",
+        "Half ops all members of the specified channel.",
+        "If the channel is omitted, then $bhopall$b will be done in the channel where the command was given.",
+        "Access level: $b${level/hopall}$b",
+        "$uSee Also:$u dehopall"
+        );
+
 "VOICEALL" ("/msg $O VOICEALL <#channel>",
         "Voices all members of the specified channel who do not have channel ops.",
         "If the channel is omitted, then $bvoiceall$b will be done in the channel where the command was given.",
 
 "GLINE" ("/msg $O GLINE <user@host> <duration> <reason>",
         "Issues a GLINE (network ban) on the network for the speicified user@host for the specified duration (making the expiration time: net time + duration).",
+        "duration is in the form nnm, where nn is a number, and m is a charactor representing the unit (eg d for days.)",
         "Access level: $b${level/gline}$b",
-        "$uSee Also:$u trace, ungline"
+        "$uSee Also:$u trace, ungline, ($C) durations"
         );
 
 "GTRACE" ("/msg $O GTRACE <action> <criteria> [<criteria> <value>]...",
        "$uSee Also:$u refreshg, gline, ungline"
         );
 
+"DEFCON" ("/msg $O DEFCON [1|2|3|4|5]",
+        "The defcon system can be used to implement a pre-defined set of restrictions to services useful during an attempted attack on the network. Not specifying a level will cause $O to display the currently set defcon level and options if the level is below 5",
+        "Access level: $b${level/defcon}$b",
+        );
+
 "REFRESHG" ("/msg $O REFRESHG [server]",
         "Re-issues all GLINES in $b$O's$b database. Usually used for newly joining or desynched servers.  If a server mask is specified, the GLINES are only sent to server(s) with matching names.",
         "Access level: $b${level/refreshg}$b",
        "$uSee Also:$u jupe, unreserve, clone"
         );
 
+"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.",
+        "$uSee Also:$u routing, stats routing, routing delplan, routing set, routing addserver"
+        );
+"ROUTING DELPLAN" ("/msg $O ROUTING DELPLAN <name>",
+        "Removes the routing plan name, including all the servers that make it up. Use with caution, there is no undo.",
+        "$uSee Also:$u routing, stats routing, routing addplan"
+        );
+
+"ROUTING ADDSERVER" ("/msg $O ROUTING ADDSERVER <plan> <name>[:port] <uplink> [backup uplink]",
+        "Adds a server to the routing plan 'plan'.",
+        " plan   - The name of a routing plan already created.",
+        " server - The name of the server you are adding (full hostname).",
+        " port   - The port that the server listens to connectons on. If you leave this out, the default is taken from $bSET ROUTING DEFAULT_PORT$b.",
+        " uplink - This is the server (full hostname) that you want the server to connect to.",
+        " backup uplink - If uplink is offline, this one takes over.",
+        " $b$b ",
+        " It is $uvery$u important that the routing plan be from a consistant perspective, without any loops, or disconnected pieces. It helps to pick a server (usually the one $O is liked to) and consider which server each of the servers links to towards $O. For an example see /msg $O HELP ROUTING EXAMPLE.",
+        " If you add a server whose name already exists, the old one will be replaced.",
+        "$uSee Also:$u routing, stats routing, routing delserver, routing addplan",
+        );
+
+"ROUTING EXAMPLE" ("An Auto Routing System Example:",
+        "  Consider the following map: ",
+        "    test.net.org         - test's uplink is x3",
+        "    |-X3.NET.Services    - this is me",
+        "    |-laptop.net.org     - laptop's uplink is test",
+        "    | `-foobar.net.org   - foobar's uplink is laptop",
+        "    `-test2.net.org      - test2's uplink is test",
+        "      `-test3.net.org    - test3's uplink is test2",
+        " $b$b ",
+        " Its important that every entry in your routing plan be specified relitive to the same location. Usually this is the location of X3 itself, but doesn't have to be. In the above example you could do:",
+        "  ROUTING ADDPLAN mylpan ",
+        "  ROUTING ADDSERVER myplan test.net.org:4400 x3.net.services ",
+        "  ROUTING ADDSERVER myplan test2.net.org:4400 test.net.org ",
+        "  ROUTING ADDSERVER myplan test3.net.org:4400 test2.net.org ",
+        "  ROUTING ADDSERVER myplan laptop.net.org:4400 test.net.org ",
+        "  ROUTING ADDSERVER myplan foobar.net.org:4400 laptop.net.org ",
+        "  ROUTING SET ACTIVE myplan ",
+        " $b$b ",
+        " If there are loops, or two servers who point to eachother, $O will not be able to use the plan. If there are sections which do not link back to the rest, they will be lost and the plan will not work properly.",
+        );
+       
+"ROUTING DELSERVER" ("/msg $O ROUTING DELSERVER <plan> <server>",
+        "Deletes a server from a routing plan.",
+        "$uSee also:$u routing, stats routing, routing addserver, routing delplan",
+        );
+
+"ROUTING SET" ("/msg $O ROUTING SET [option] [value]",
+        "Changes The Auto Routing System options",
+        "  ACTIVE           - Sets which routing plan is active. ",
+        "                     Set to 'none' to disable auto routing.",
+        "  RETRY_PERIOD     - How often to check for missing servers",
+        "                     see /msg $C durations for help with units",
+        "  CONN_PINGOUT     - enable to auto-reconnect servers that ping out",
+        "  CONN_READERROR   - enable to auto-reconnect servers that squit with a read error",
+        "  KARMA            - enable to keep track of oft-splitting servers, and try to route around them",
+        "  DEFAULT_PORT     - If you don't specify a port in $brouting addserver$b, this port is used",
+        " $b$b ",
+        " Issue without any option/value to see the current value(s).",
+        "$uSee also:$u routing, stats routing, routing addserver",
+       );
+
+"ROUTING MAP" ("/msg $O ROUTING MAP",
+        "Shows the currently active routing plan, as parsed and re-centered for use.",
+        "Before $O can take a routing plan as entered by you, and use it, $O must re-orient the map so all the uplinks point toward it. Loops are detected, and missing pieces lost. This command shows you the desired route, as $O has compiled it.",
+        "If KARMA is enabled, or a server is un-connectable, $O may use a backup uplink to build this map to attempt to repair the network.",
+        "The check box [ ] is used to indicate if the current routing of the network conforms to the routing map.",
+        "[X] - Server is linked correctly",
+        "[!] - Server is linked, but not where the plan specifies",
+        "[ ] - Server is not linked to the network at all",
+        " $b$b",
+        "$uSee also:$u routing, stats routing, routing set, routing addserver",
+        );
+
+"REROUTE" ("/msg $O REROUTE <C|N|T>",
+        "Allows $O to make changes to the linkage of the servers on the network. It has 3 modes: Normal, Connect-only, and Test:",
+        " N - Normal mode: Will delink any servers which are not linked to their primary uplink, and try to reconnect them correctly according to the active routing plan. it will also try to connect servers that are completely missing.",
+        " C - Connect-only:  Will attempt to connect any missing servers to the network, using the active routing plan.",
+        " T - Test: Will do the same as normal mode, only all actions will be simulated. No actual rerouting will take place, it will only tell you what it WOULD do in normal mode.",
+        " $b$b ",
+        "$uSee also:$u routing, routing map, stats routing",
+        );
+
+"STATS ROUTING" ("/msg $O STATS ROUTING",
+        "Provides information about The Auto Routing System's configuration. You can see the routing plans, and the current routing options.",
+        "$uSee also:$u routing, routing set",
+        );
+
+"PRIVSET" ("/msg $O PRIVSET <nick> <+/-flag>",
+           "Allows $O to set flags on users.",
+           "Access level: $b${level/privset}$b",
+           "$uSee also: privflags"
+          );
+
 "UNRESERVE" ("/msg $O UNRESERVE <nick>",
         "Removes a nick from $b$O's$b reserve list.",
         "Access level: $b${level/unreserve}$b",
         "$bOPERS$b:      A list of users that are currently +o.",
         "$bPROXYCHECK$b: Information about proxy checking in X3.",
         "$bRESERVED$b:   The list of currently reserved nicks.",
+        "$bROUTING$b:    The routing plans and settings of the Auto Routing System",
         "$bTIMEQ$b:      The number of events in the timeq, and how long until the next one.",
         "$bTRUSTED$b:    The list of currently trusted IPs.",
         "$bUPTIME$b:     X3 uptime, lines processed, and CPU time.",
         "Access level: $b${level/stats}$b",
         );
 
-"INDEX" "${index}";
+"TRACK" ("/msg $O TRACK <+/-type|all|none>",
+        "This specifies what will be tracked in the tracking channel.",
+        "Use + to add flags and - to remove types. Use ALL to enable all",
+        "tracking options available, use NONE to completly disable them.",
+        "Available flags are:",
+        "auth  - Auths",
+        "chanmode - Channel Modes",
+        "del   - Quits",
+        "join  - Joins",
+        "kick  - Kicks",
+        "new   - New Nicks",
+        "nick  - Nick Changes",
+        "part  - Parts",
+        "umode - Umodes");
+
+"ADDTRACK" ("/msg $O ADDTRACK <nick>",
+        "Adds the given <nick> to the tracking list.",
+        "$uSee Also:$u deltrack listtrack addalert");
+
+"DELTRACK" ("/msg $O DELTRACK <nick>",
+        "Removes the given <nick> from the tracking list.",
+        "$uSee Also:$u deltrack listtrack");
+
+"LISTTRACK" ("/msg $O LISTTRACK",
+        "Lists all currently active tracks.",
+        "$uSee Also:$u addtrack deltrack");
+
+"RESETMAX" ("/msg $O RESETMAX",
+        "Resets the max clients number to the current ammount of connected clients. Use with caution.",
+        "$uSee Also:$u stats max");
+