-"<INDEX>" ("=------------------ $b$O Help$b ------------------=",
+"<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. ",
- " $bTRACES$b Powerfull commands for ",
+ " $bTRACES$b Powerful commands for ",
" viewing or acting on lists of",
" IRC objects. ",
" $bALERTS$b Automated responses. ",
" $bSETTINGS$b View and temporarily change ",
" config file settings. ",
" $bADMIN$b Misc Administrator Commands. ",
- " $bOWNERONLY$b $O operator only commands. ",
- "=---------------- End of Help ----------------="
+ " $bOWNERONLY$b $O operator only commands. "
);
"COMMANDS" "${index}";
-"PUNISH" ("=------------- $bUser Punishments$b --------------=",
+"PUNISH" (
" $bGLINE$b Global Ban a host.",
" $bUNGLINE$b Remove a GLINE.",
" $bBLOCK$b Gline by nickname.",
" $bTRACE GLINE$b Gline all hosts matching a search.",
" $bGTRACE$b Search the gline list.",
" $b$b",
+ " $bSHUN$b Global Shun a host.",
+ " $bUNSHUN$b Remove a SHUN.",
+ " $bSBLOCK$b Shun by nickname.",
+ " $bTRACE SHUN$b Shun all hosts matching a search.",
+ " $bSTRACE$b Search the shun list.",
+ " $b$b",
" $bGAG$b Cause the services to ignore... ",
- " $bUNGAG$b ...or unignore by mask.",
- "=---------------- End of Help ----------------="
+ " $bUNGAG$b ...or unignore by mask."
);
-"INFORMATION" ("=----------- $bInformation Gathering$b -----------=",
+"INFORMATION" (
" $bACCESS$b Shows a users $O access level.",
" $bSTATS$b Show various lists and runtime info.",
" $bWHOIS$b Show details about a user by nick.",
" $bVERSION$b Show the $O version information.",
" $bLOG$b View $O logs.",
- " $bTRACES$b Powerfull commands for viewing or acting on lists of IRC objects.",
- "=--------------- End of Help ----------------="
+ " $bTRACES$b Powerfull commands for viewing or acting on lists of IRC objects."
);
-"TRACES" ("=------------------ $bTraces$b ------------------=",
+"TRACES" (
" $bTRACE$b Search current users and optionally apply an action.",
" $bGTRACE$b Search current GLINEs and optionally remove them.",
- " $bCSEARCH$b Search current channels.",
- "=--------------- End of Help ----------------="
+ " $bSTRACE$b Search current SHUNs and optionally remove them.",
+ " $bCSEARCH$b Search current channels."
);
-"ALERTS" ("=------------------ $bAlerts$b ------------------=",
+"ALERTS" (
" $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. ",
- "=--------------- End of Help ----------------="
+ " $bSTATS ALERT$b See a listing of alerts. "
);
-"CHANNEL" ("=------------- $bChannel Commands$b -------------=",
+"CHANNEL" (
" $bOP$b Op someone.",
" $bDEOP$b Deop someone.",
" $bVOICE$b Voice someone.",
" $bINVITE$b Invite someone to a channel.",
" $bINVITEME$b Invite yourself to a channel.",
" $bCLEARBANS$b Cear all bans from a channel.",
- " $bCLEARMODES$b Clear all modes from a channel.",
- "=--------------- End of Help ----------------="
+ " $bCLEARMODES$b Clear all modes from a channel."
);
-"CLONES" ("=-------------- $bClone handling$b --------------=",
+"CLONES" (
" $bADDTRUST$b Add a clone limit exemption for a host.",
" $bDELTRUST$b Remove a clone exemption.",
" $bEDITTRUST$b Modify a clone exemption.",
" $bquery services/opserv/untrusted_max$b",
- " View the clone kill limit",
- "=--------------- End of Help ----------------="
+ " View the clone kill limit"
);
-"SETTINGS" ("=----------------- $bSettings$b -----------------=",
+"SETTINGS" (
" $bQUERY$b Show a runtime config setting.",
- " $bSET$b $uTemporarily$u change a runtime config setting.",
- "=--------------- End of Help ----------------="
+ " $bSET$b $uTemporarily$u change a runtime config setting."
);
-"ADMIN" ("=---------- $bAdministrative Commands$b ---------=",
+"ADMIN" (
" $bACCESS$b Modify someone's $O access level.",
" $bCOMMAND$b Show details of a command.",
" $bSHOWCOMMANDS$b List all commands and required access levels.",
" $bUNJUPE$b Remove a dummy server.",
" $b$b",
" $bREFRESHG$b Refresh the Glines.",
+ " $bREFRESHS$b Refresh the Shuns.",
" $bSETTIME$b Synchronize time across the network.",
- " $bTIMECMD$b Time how long a command runs.",
- "=--------------- End of Help ----------------="
+ " $bTIMECMD$b Time how long a command runs."
);
-"OWNERONLY" ("=------------- $bOwner Only Stuff$b -------------=",
+"OWNERONLY" (
" $bWRITE$b Write out a database.",
" $bWRITEALL$b Write out ALL databases.",
" $bREOPEN$b Close and Re-Open the logs.",
" $bDIE$b Make the bot quit.",
" $bJUMP$b Change uplink servers.",
" $bRECONNECT$b Reconnect to this uplink server.",
- " $bGSYNC$b Pull glines from the givin server into memory.",
+ " $bGSYNC$b Pull glines from the given server into memory.",
+ " $bSSYNC$b Pull shuns from the given server into memory.",
" $b$b",
" $bMODCMD$b Change details of a command.",
" $bBIND$b Make a command alias.",
" $bUNBIND$b Remove a command alias.",
+ " $bREBINDALL$b Re-create all missing commands on all services",
" $bHELPFILES$b Change the helpfile priority order.",
" $b$b",
" $bSERVICE ADD$b Create a new service bot.",
" $bDELEXEMPT$b Remove an exception of the illegal word list.",
" $b$b",
" $bDUMP$b Drop safetychecked server protocol to the server. ",
- " $bRAW$b Draw raw server protocol to the server. (DANGEROUS!)",
- "=--------------- End of Help ----------------="
+ " $bRAW$b Drop raw server protocol to the server. (DANGEROUS!)"
);
"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"
);
"$uSee Also:$u delalert, alert reaction, trace criteria"
);
-"TIME NOTATION" ("=---------------- $bTime Notation$b ---------------=",
+"TIME NOTATION" (
" Many commands require a duration perameter ",
" which all use the same syntax: ",
" 1s - 1 second ",
" 1y - 1 year",
" Times can be compounded such as: ",
" 1m40s - 1 minute and 40 seconds ",
- " 5h20m30s - 5 hours 20 minutes and 30 seconds ",
- "=-----------------------------------------------="
+ " 5h20m30s - 5 hours 20 minutes and 30 seconds "
);
"ADDTRUST" ("/msg $O ADDTRUST <ip> <count> <duration> <reason>",
"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",
+ "$bSHUN$b : Shun the user that tripped the alert",
"$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, 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",
+ "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",
"Access level: $b${level/trace}$b",
"$uSee Also:$u trace action, trace criteria"
);
"$bCOUNT$b: Count all matching users.",
"$bKILL$b: Kill matching clients.",
"$bGLINE$b: Issue a gline for the client's host (by default, 1 hour long).",
+ "$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 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.",
+ "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 or gline (must be listed last).",
+ "$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.",
"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"
);
"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 gline"
);
+"SHUN" ("$bSHUN COMMANDS$b",
+ "Searches for, issues, and removes Shuns.",
+ " SBLOCK [${level/sblock}]",
+ " SHUN [${level/shun}]",
+ " STRACE [${level/strace}]",
+ " SSYNC [${level/ssync}]",
+ " REFRESHS [${level/refreshs}]",
+ " 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.",
+ "Access level: $b${level/sblock}$b",
+ "$uSee Also:$u shun, unshun"
+ );
+
+"SHUN" ("/msg $O SHUN <user@host> <duration> <reason>",
+ "Issues a SHUN on the network for the speicified user@host for the specified duration (making the expiration time: net time + duration).",
+ "Access level: $b${level/shun}$b",
+ "$uSee Also:$u trace, unshun"
+ );
+
+"STRACE" ("/msg $O STRACE <action> <criteria> [<criteria> <value>]...",
+ "Searches through the shuns, much like $bTRACE$b does for users.",
+ "Access level: $b${level/strace}$b",
+ "$uSee Also:$u trace, strace action, strace criteria"
+ );
+
+"STRACE ACTION" ("$bSTRACE ACTION$b",
+ "Options for the action in $bstrace$b are:",
+ "$bPRINT$b: Display the shuns (mask, issuer, expiration time, reason)",
+ "$bCOUNT$b: Count the number of matching shuns",
+ "$bUNSHUN$b: Remove matching shuns",
+ "$uSee Also:$u strace criteria, strace"
+ );
+
+"STRACE CRITERIA" ("$bSTRACE CRITERIA$b",
+ "Criteria and values for $bstrace$b (a search with $bstrace$b must match all the criteria you give):",
+ "$bMASK SUPERSET$b user@host Shun matches if it applies to someone with this hostmask.",
+ "$bMASK SUBSET$b user@host Shun matches if this hostmask \"covers\" the Shun target.",
+ "$bMASK EXACT$b user@host Shun matches only if the target is exactly this.",
+ "$bMASK$b user@host Specifies a mask to search for (equivalent to MASK SUPERSET).",
+ "$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.",
+ "$bAFTER$b interval Looks for shuns that expire more than $binterval$b in the future.",
+ "$uSee Also:$u strace action, strace"
+ );
+
+"SSYNC" ("/msg $O SSYNC [server]",
+ "Requests a list of SHUNS from its uplink or the specified server. This can be used in the event X3 is down for period and becomes desynced.",
+ "Access level: $b${level/ssync}$b",
+ "$uSee Also:$u refreshs, shun, unshun"
+ );
+
+"REFRESHS" ("/msg $O REFRESHS [server]",
+ "Re-issues all SHUNS in $b$O's$b database. Usually used for newly joining or desynched servers. If a server mask is specified, the SHUNS are only sent to server(s) with matching names.",
+ "Access level: $b${level/refreshs}$b",
+ "$uSee Also:$u shun, unshun, ssync"
+ );
+
+"UNSHUN" ("/msg $O UNSHUN <user@host>",
+ "Removes a shun from the network before it expires.",
+ "Access level: $b${level/unshun}$b",
+ "$uSee Also:$u shun"
+ );
+
"CLONE" ("/msg $O CLONE <sub-command> <sub-command arguments>",
"Creats and manipulates a fake user. Sub-commands for $bclone$b are:",
"$bADD$b: Adds a new clone. Arguments: <nickname> <user@host> <info>",
"$uSee also:$u /msg $O HELPSERV HELP"
);
-"QUERY" ("/msg $O QUERY <option>",
- "Displays the value of the given configuration key. If the key is a composite entry, show the subkeys inside it.",
+"QUERY" ("/msg $O QUERY [key][/<sub-key>[/<sub-sub-key>]...]",
+ "Displays the value of the given configuration key. ",
+ "If the key is a composite entry, show the subkeys inside it.",
+ "Examples:",
+ " QUERY - shows 1st level keys ",
+ " QUERY services/chanserv - shows list of chanserv settings ",
+ " QUERY services/chanserv/chan_expire_delay - shows value ",
"Access level: $b${level/query}$b",
"$uSee Also:$u set, rehash"
);
"$bBAD$b: Current list of bad words and exempted channels.",
"$bGAGS$b: The list of current gags.",
"$bGLINES$b: Reports the current number of glines.",
+ "$bSHUNS$b : Reports the current number of shuns.",
"$bLINKS$b: Information about the link to the network.",
"$bMAX$b: The max clients seen on the network.",
"$bNETWORK$b: Displays network information such as total users and how many users are on each server.",