1
0

help.txt 93 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119
  1. ::+ban
  2. ### $b+ban$b <hostmask> [channel] [%%<XdXhXm>] [comment]
  3. Adds a ban to the list of bans stored on the bot, with optional comment and
  4. ban time. This ban is stored with your handle as the creator, and will be
  5. in effect for every channel if no channel is specified. Prefixing a comment
  6. with '*' will set the ban sticky. Prefixing a comment with '@' will make the
  7. comment only visible within the bot, and not used as the ban reason. Ban
  8. time has to be expressed in days, hours, and/or minutes.
  9. See also: bans, -ban, stick, unstick
  10. ::+chan
  11. ### $b+chan$b <channel> [options]
  12. Adds a channel to the bot's channel list. If options are specified, the
  13. channel will be configured with the options.
  14. See also: -chan, chanset, chaninfo
  15. ::+chrec
  16. ### $b+chrec$b <handle> [channel]
  17. Adds an empty channel record for the specified user so that channel lastons
  18. and info lines can be saved. No flags are associated with the channel.
  19. See also: -chrec, chattr%{+n}, +chan, -chan%{-}
  20. ::+exempt
  21. ### $b+exempt$b <hostmask> [channel] [%%<XdXhXm>] [comment]
  22. Adds an exempt to the list of exempts stored on the bot, with optional
  23. comment and exempt time. This exempt is stored with your handle as the
  24. creator, and will be in effect for every channel if no channel is specified.
  25. Exempt time has to be expressed in days, hours, and/or minutes.
  26. See also: exempts, -exempt, stick, unstick
  27. ::+host
  28. ### $b+host$b [handle] <hostmask> [anotherhostmask] ...
  29. Adds a hostmask to a user's user record. Hostmasks are used to identify your
  30. handle on IRC. If a handle is not specified, the hostmask will be added to
  31. YOUR user record. List as many hosts as wanted.
  32. See also: -host, clearhosts
  33. ::+ignore
  34. ### $b+ignore$b <hostmask> [%%<XdXhXm>] [comment]
  35. Adds an ignore to the list of ignores stored on the bot, with optional
  36. comment and ignore time. This ignore is stored with your handle as the
  37. creator. Ignore time has to be expressed in days, hours, and/or minutes.
  38. See also: -ignore, ignores
  39. ::+invite
  40. ### $b+invite$b <hostmask> [channel] [%%<XdXhXm>] [comment]
  41. Adds an invite to the list of invites stored on the bot, with optional
  42. comment and invite time. This invite is stored with your handle as the
  43. creator, and will be in effect for every channel if no channel is specified.
  44. Invite time has to be expressed in days, hours, and/or minutes.
  45. See also: invites, -invite, stick, unstick
  46. ::+user
  47. ### $b+user$b <handle> [hostmask] [anotherhostmask] ...
  48. Creates a new user record for the handle given. The new user record will
  49. have no flags, an optional hostmask, and a random pass/secpass.
  50. List as many hosts as needed.
  51. See also: -user, +host, -host, clearhosts%{+ni}, newleaf%{-}%{+a}, newhub%{-}
  52. ::-ban
  53. ### $b-ban$b <banmask or number> [channel]
  54. Removes the specified ban from the list of bans stored on the bot. You may
  55. also reference the ban by the number shown by the 'bans' command.
  56. See also: bans, +ban, stick, unstick
  57. :hub:-bot
  58. ### $b-bot$b <bot>
  59. This is exactly the same as $b'%d-user'$b (it removes a user record). It is
  60. included for convenience.
  61. See also: +user, -user%{+ni}, newleaf%{-}%{+a}, newhub%{-}
  62. ::-chan
  63. ### $b-chan$b <channel>
  64. This removes ALL information about a channel from the bot.
  65. $f*** IMPORTANT ***$f
  66. This erases ALL information about the channel, including channel settings,
  67. bans, exempts, invites, and channel records for users -- $bEVERYTHING$b.
  68. $bDO NOT$b use it to have the bot temporarily leave a channel. This
  69. command is for abandoning a channel (e.g. the channel will have to be
  70. redefined and all user flags for that channel will have to be redone.
  71. If you want to do this try '%dcycle' or '%ddown'
  72. See also: +chan, chanset, chaninfo, cycle, down
  73. ::-chrec
  74. ### $b-chrec$b <handle> [channel]
  75. Removes a channel record for the specified user, including channel lastons,
  76. info lines, and flags.
  77. See also: +chrec, chattr
  78. ::-exempt
  79. Removes the specified exempt from the list of exempts stored on the bot. You
  80. may also reference the exempt by the number shown by the 'exempts' command.
  81. See also: exempts, +exempt, stick, unstick
  82. ::-host
  83. ### $b-host$b <hostmask>
  84. Removes a host from your handle.
  85. %{+m|m}
  86. ### $b-host$b <handle> <hostmask> [anotherhostmask] ...
  87. Removes a hostmask from a user's user record.
  88. %{-}
  89. See also: +host, clearhosts
  90. ::-ignore
  91. ### $b-ignore$b <hostmask/number>
  92. Removes the specified ignore from the list of ignores stored on the bot. You
  93. may also reference the ignore by the number shown by the 'ignores' command.
  94. See also: +ignore, ignores
  95. ::-invite
  96. ### $b-invite$b <hostmask or number>
  97. Removes the specified invite from the list of invites stored on the bot. You
  98. may also reference the invite by the number shown by the 'invites' command.
  99. See also: invites, +invite, stick, unstick
  100. ::-user
  101. ### $b-user$b <handle> [anotherhandle] ...
  102. Removes the specified handles user records.
  103. See also: +user%{+ai}, -bot%{-}%{+ni}, newleaf%{-}%{+a}, newhub%{-}
  104. ::about:
  105. ### $babout$b
  106. If you feel you are missing from the list feel free to contact bryan.
  107. :leaf:act
  108. ### $bact$b [channel] <text>
  109. Performs an action on the current console channel (or otherwise
  110. specified channel), as if the bot did it. Just like the /me
  111. command in IRC.
  112. See also: console
  113. ::addline
  114. ### $baddline$b <username>
  115. Shows you a simple line for adding a user to another botnet with the
  116. same hostmasks.
  117. See also: whois
  118. ::addlog
  119. ### $baddlog$b <text>
  120. Adds your comment to the bot's logfile. Bot masters can go back later and
  121. review the log, and will see your comment (with your handle attached). This
  122. is useful for explaining confusing activity.
  123. :leaf:adduser
  124. ### $badduser$b [!]<nickname> [handle]
  125. Creates a new user record for a user on the channel, using their
  126. current hostname. It's similar to a user msg'ing the bot 'hello'
  127. except that no information is sent to that user. If the bot
  128. already knows someone by that nickname, and the user on the channel
  129. doesn't have a bot record, then it does the equivalent of an
  130. 'ident' for that user -- except that, again, no information is
  131. sent to the user telling them that anything was done.
  132. If the user is using a different nickname than the bot normally
  133. knows her by, you can specify her "handle" (the nickname that the
  134. bot remembers).
  135. If you want to add a user using a static hostmask, prefix their nick
  136. with a '!'. i.e. '%dadduser !Lamer'
  137. The user being added is sent a NOTICE with their initial password.
  138. See also: +host, -host, clearhosts%{+m}, +user, -user%{-}
  139. :leaf:authed:
  140. ### $bauthed$b
  141. Displays users who are authed on the bot for chan/msg cmds.
  142. ::away
  143. ### $baway$b [reason]
  144. Marks you as "away" on the party line. Your away message will show up in
  145. the $b'%dwho'$b list. Saying something on the party line will automatically
  146. remove your "away" status, or you can type $b'%dback'$b or $b'%daway'$b by
  147. itself.
  148. See also: back
  149. ::back
  150. ### $bback$b
  151. This marks you as no longer away on the party line.
  152. See also: away
  153. :hub:backup
  154. ### $bbackup$b
  155. This makes the bot write a backup of its entire user list to the disk.
  156. This is useful if you feel the need to backup the userfile and channel
  157. settings.
  158. See also: reload, save
  159. ::bans
  160. ### $bbans$b [[channel/all/global]/wildcard]
  161. Shows you a list of the global bans active on the current channel, and the
  162. list of channel-specific bans, as well as any bans that are on the channel
  163. but weren't placed by the bot.
  164. Here's a sample entry;
  165. [ 5] *!*habib@*frys.com (perm)
  166. paulie: revolving check policy
  167. Created 15:10
  168. The number (5) can be used to reference the ban if you wish to remove it
  169. (see $b'-ban'$b). Next is the actual hostmask being banned. The "(perm)"
  170. means that the ban is "permanent": that is, it doesn't automatically expire.
  171. If there is an elapsed time showing instead, the time displayed is how long
  172. the ban has been active. These types of bans expire after two hours. The
  173. second line of the ban entry is the comment ("revolving check policy"), and
  174. who set the ban (paulie). The last line shows when the ban was added, and
  175. possibly the last time the ban was activated on the channel (if it's
  176. different from the creation time).
  177. Sometimes there will be a "!" or "*" right before the number. A "!" means
  178. the ban is in the bot's ban list, but is not currently on the channel. A "*"
  179. marks a ban which is NOT in the bot's ban list but IS on the channel.
  180. If you use 'bans' without an argument, it will show you only the bans which
  181. are currently active on the channel. If you use 'bans all', it will show you
  182. every ban in the global ban list and on the channel. If you use 'bans
  183. <wildcard>', it will list all bans (active or not) that match against your
  184. wildcard. Consider it a 'bans all' list matched against your wildcard.
  185. If you use 'bans global', a full list of bans for EVERY channel will be
  186. displayed, including inactive/active bans on each channel.
  187. The ban list may change according to which channel you're currently viewing
  188. in the console. Different bans may be active on different channels. If you
  189. specify a channel name, that channel will be used instead of your current
  190. console channel.
  191. See also: -ban, +ban, console%{+m|m}, chanset, chaninfo%{-}, stick, unstick
  192. :hub:bc:
  193. ### $bbc$b <bot> <cmd> [params]
  194. See: botcmd
  195. :hub:boot
  196. ### $bboot$b <handle[@bot]> [reason]
  197. Kicks a user off the party line and displays the reason, if you specify
  198. one. You can also specify a bot, and attempt to boot someone from another
  199. bot on the botnet. You cannot boot a bot owner.
  200. :hub:botcmd:
  201. ### $bbotcmd$b <bot|*|?|&> [%%group] <cmd> [params]
  202. The specified cmd and optional parameters are executed on the specified bot,
  203. all results are displayed back on DCC. For example:
  204. [19:29] #bryan# botcmd wtest whom ...
  205. [19:29] (wtest) #bryan# whom
  206. [wtest] Nick
  207. [wtest] ----------
  208. [wtest] ^bryan
  209. [wtest] ^bryan [idle 1h22m]
  210. [wtest] ^bryan [idle 1h22m]
  211. [wtest] Total users: 3
  212. The bot specified can also have wildcards in it. '*' for 1 or more chars, and
  213. '?' for exactly 1 char. Use this cmd carefully, and even think about placing
  214. a cmdpass on it.
  215. Just using '?' for 'bot' will choose a random leaf bot.
  216. Just using '&' for 'bot' will do the cmd on all localhub bots. (first bot in config).
  217. Use '%%group' to match a specific group. (see also: '%dhelp set')
  218. This cmd cannot be chained over the botnet, ie, no: '%dbotcmd [bot] botcmd [bot2] ...'
  219. There are two default aliases added for this cmd:
  220. bc -> botcmd
  221. bl -> botcmd ?
  222. See also: cmdpass
  223. :hub:botjump:
  224. ### $bbotjump$b <bot> [server [port [pass]]]
  225. Makes the bot jump to another server. If you don't specify a
  226. server, it will jump to the next server in its internal list (see
  227. $b'%dhelp set'$b). If you specify a server, it will jump to that
  228. server (default port is 6667), and if that server is not in the
  229. internal list already, it will add it (until the bot relinks).
  230. Jumping servers ALWAYS makes the bot lose ops! be careful!
  231. See also: jump, servers, botserver
  232. :hub:botmsg:
  233. ### $bbotmsg$b <bot> <nickname|#chan> <text>
  234. Sends a private message to someone from the bot, just as if the
  235. bot had typed /msg.
  236. See also: msg%{+n}
  237. :hub:botnick:
  238. ### $bbotnick$b <bot>
  239. The specified bot will display its current nick over DCC.
  240. See also: netnick, nick
  241. :hub:bots
  242. ### $bbots$b [nodename|%group]
  243. Shows the list of bots currently on the botnet.
  244. Example:
  245. Bots: cEvin, ruthie, Killa1
  246. There is no indication of which bots are directly connected to this current
  247. bot. %{+n}Use $b'%dwho'$b or $b'%dbottree'$b for that information.%{-}
  248. Specifying a nodename will display all bots up/down on that nodename.
  249. Bots with a * preceding its name are down.
  250. Specifying a %%group will only show bots in that group.
  251. See also: groups, downbots%{+n}, bottree%{-}
  252. :hub:botserver:
  253. ### $bbotserver$b <bot>
  254. The bot will display its current server and lag over DCC.
  255. See also: netserver, servers%{+n}, set%{-}
  256. :hub:botset:
  257. ### $bbotset$b <bot> [<+/->list] [<var> [data|-]]
  258. Set's a bot specific entry.
  259. NOTE: 'set' and 'botset' have different entries.
  260. If there is a botset entry for 'name' and a set entry for 'name',
  261. the bot will use the 'botset' entry. Otherwise, the 'set' entry
  262. will be used for all options.
  263. The <var> may have wildcards. Wildcards will only be used for listing
  264. variable, not for setting.
  265. See 'set' for a full help listing.
  266. See also: set
  267. :hub:bottree
  268. ### $bbottree$b
  269. Shows a tree-format diagram of the bots currently on the botnet. It's just a
  270. nice way to get a feel for how the bots are physically connected. If 2 bots
  271. are sharing, a + will be indicated, or a ? if nothing is known.
  272. Some bots are colored if you have colors on (see '%dhelp color')
  273. Yellow: hubs (Do not come on IRC)
  274. Red: localhubs (first bot in binary, see '%dhelp conf')
  275. Other: normal leaf bots
  276. See also: bots, downbots, groups
  277. ::botversion:
  278. ### $bbotversion$b <bot>
  279. The bot will display its pack version and uname.
  280. See also: version, netversion, about%{+m|m}, status%{-}
  281. :hub:chaddr
  282. ### $bchaddr$b <bot> <address[:bot port[/user port]]>
  283. Changes the address for a bot. This is the address your bot will try to
  284. connect to when linking. If the bot has a separate port for bots and users,
  285. they should be separated by a slash (/).
  286. %{+a}
  287. It is not recommended that this is used, you should change your source,
  288. and update all bots instead.
  289. %{-}
  290. See also: link%{+a}, newhub%{-}
  291. ::chaninfo
  292. ### $bchaninfo$b <channel>
  293. This lists all the settings for the bot on the given channel.
  294. It shows any of the following:
  295. $bchanmode$b These modes are enforced on the channel.
  296. Both + and - modes can be enforced. Use {} to
  297. add a key. '%dchanset #chan chanmode { +nt key }'
  298. $bgroups$b List of groups that should join the channel.
  299. Use {} to add multiple groups. See also '%dhelp set'
  300. '%dchanset #chan groups { main alt }'
  301. %{+m|m}
  302. $bauto-delay$b Amount of seconds to wait before auto opping,
  303. or auto voicing a client based on flags or
  304. +voice
  305. $blimit$b If this is set, the +l bot will raise the limit
  306. to the users in the channel + this amount. Set to
  307. 0 to disable.
  308. $bclosed-ban$b Set this to 1 to ban users who join +closed
  309. channels. This is probably not needed though, as
  310. +closed maintains +i.
  311. $bclosed-invite$b If a channel is set +closed and this is set
  312. force the channel to always be +i, otherwise don't.
  313. $bclosed-private$b If a channel is set +closed, the bots will
  314. enforce +p as well. The point is to notice the chan
  315. and bots when an /invite is done. This is useful in
  316. seeing when a shell is hijacked ;)
  317. $bcaps-limit$b If this is set, any +f bots will kick a client for using
  318. too many caps. This is a percentage (0-100) of how much of
  319. their message can be caps before being kicked.
  320. $bcolor-limit$b If this is set, any +f bot will kick the client for
  321. excess color codes. The setting is how many color/bold
  322. character codes the message may contain before being kicked.
  323. $bban-time$b Set here how long temporary bans will last (in
  324. minutes). If you set this setting to 0, the bot will
  325. never remove them. (This also requires +dynamicbans)
  326. $bban-type$b
  327. This setting defines what type of bans should be
  328. placed. Available types are:
  329. 0 *!user@host
  330. 1 *!*user@host
  331. 2 *!*@host
  332. 3 *!*user@*.host
  333. 4 *!*@*.host
  334. 5 nick!user@host
  335. 6 nick!*user@host
  336. 7 nick!*@host
  337. 8 nick!*user@*.host
  338. 9 nick!*@*.host
  339. You can also specify types from 10 to 19 which correspond
  340. to types 0 to 9, with the exception that numbers in hostnames
  341. are replaced with the '?' wildcard, or 20 to 29, which works
  342. like 10 to 19 but using '*' for numbers, instead of '?'.
  343. $bexempt-time$b Set here how long temporary exempts will last (in
  344. minutes). If you set this setting to 0, the bot will
  345. never remove them. The bot will check the exempts
  346. every X minutes, but will not remove the exempt if a
  347. ban is set on the channel that matches that exempt.
  348. Once the ban is removed, then the exempt will be
  349. removed the next time the bot checks. Please note
  350. that this is an IRCnet feature.
  351. $bknock$b Allow auto-inviting on /KNOCK? +y bots will invite.
  352. None/0 Don't invite on /KNOCK
  353. Op/1 Ops (+o) are invited on /KNOCK
  354. Voice/2 Voices (+v) are invited on /KNOCK
  355. User/3 Users (not +dk) are invited on /KNOCK
  356. $bflood-exempt$b Should clients be exempt from flood checks based
  357. on their channel status? (not deop/kick floods)
  358. Valid values are:
  359. None/0 Stick to regular checking (+x)
  360. Op/1 Ops are exempt from flood checks
  361. Voice/2 Voices are exempt from flood checks
  362. $bclosed-exempt$b Should clients be exempt from +closed kicks based
  363. on their channel status?
  364. Valid values are:
  365. None/0 Stick to regular user checking (+o)
  366. Op/1 Ops are exempt from +closed kicks
  367. Voice/2 Voices are exempt from +closed kicks
  368. $bflood-lock-time$b How long in seconds to keep the channel locked
  369. during drone floods.
  370. $bfish-key$b The key to use for FiSH encryption. Use '{ key }'
  371. to set and '{}' to unset.
  372. $binvite-time$b Set here how long temporary invites will last (in
  373. minutes). If you set this setting to 0, the bot will
  374. never remove them. The bot will check the invites
  375. every X minutes, but will not remove the invite if a
  376. channel is set to +i. Once the channel is -i then the
  377. invite will be removed the next time the bot checks.
  378. Please note that this is an IRCnet feature.
  379. $bprotect-backup$b Set +backup in the event of a takeover if the
  380. channel is +protect.
  381. $bvoice-non-ident$b If channel is +voice, clients without an ident will
  382. be voiced. Set to 0 to not voice clients without ident.
  383. $bvoice-moderate$b If channel is +voice, auto set +m and devoice flooders
  384. instead of kicking them. Set to 0 to disable.
  385. The following options choose how to respond to specific events.
  386. Each can be set as any of the specified options.
  387. ignore/0 Ignore
  388. deop/1 Chattr user +d (deop)
  389. kick/2 Chattr user +k (auto kickban)
  390. delete/remove/3 Remove user
  391. react/4 React and punish the client, but don't add or modify
  392. their user flags.
  393. These events trigger the bot to react with the above option.
  394. $bbad-cookie$b Missing or invalid cookie in bot op line.
  395. $bmanop$b Manual op.
  396. $bmdop$b Mass deop.
  397. $bmop$b Mass op.
  398. $brevenge$b Client kicking/banning/deopping another bot.
  399. The following can be set + or - (e.g. '%dchanset #channel -enforcebans')
  400. $bautoop$b Bots that are +y will auto-op all users with
  401. op access to the channel.
  402. $bbackup$b Make backup-bots (+B) join when set.
  403. $bbitch$b Only let users with the +o flag have op on the
  404. channel?
  405. $bbotbitch$b Only let $bbots$b with the +o flag have op on the
  406. channel?
  407. $bclosed$b Kick all people who join channel unless they have
  408. op access for the channel.
  409. $bcycle$b Bot will attempt to cycle the channel when opless
  410. or during splits to gain ops.
  411. $benforcebans$b When a ban is set, kick people who are on the channel
  412. and match the ban?
  413. $bfastop$b Setting this will disable cookie-ops. You may
  414. know cookie-ops as an annoying way of bots opping
  415. themselves with +o-b bot *!*@fjdifgjdsgiufufdhgfudghfdgfdg,
  416. but, with -fastop (cookie-ops enabled), opping is much
  417. more secure and the chances of someone hijacking the bot
  418. for ops in your channel are much less. This is
  419. highly recommeneded to always be set.
  420. $bfloodban$b If a channel flood (public, notice or ctcp) is detected, the
  421. flooder will also be banned, in accordance with ban-type.
  422. $binactive$b This prevents the bot from joining the channel (or
  423. makes it leave the channel if it is already there). It
  424. can be useful to make the bot leave a channel without
  425. losing its settings, channel-specific user flags,
  426. channel bans, and without affecting sharing.
  427. $bnodesynch$b Allow non-ops to perform channel modes? This can stop
  428. the bot from fighting with services such as ChanServ, or
  429. from kicking IRCops when setting channel modes without
  430. having ops.
  431. $bprivate$b This by far is probably the single most unique and
  432. important feature of this pack. With this set, users with
  433. global +o will not implicitly have access to the channel.
  434. They will need to have channel |o flag to have access.
  435. Users with global +n override this as they should have
  436. control over the entire botnet and where it goes.
  437. Users who lose access to a channel because of this setting
  438. will see no reference to it over the botnet in any place.
  439. The +o restriction goes for +v as well.
  440. $bprotect$b Set chan +botbitch and mass deop the channel if someone
  441. attempts to takeover. The channel is also set +backup
  442. if protect-backup is set.
  443. $brbl$b Do RBL lookups on clients and ban on matches.
  444. Uses 'rbl-servers'. See also '%dhelp set'. Only the
  445. +r bot will do lookups. On positive match, the bot
  446. will add a ban to the botnet and all bots will enforce
  447. the ban.
  448. $btake$b Once a bot is opped, it will mass op all other bots
  449. in the channel. After that, they will all attempt to
  450. mass deop in hopes 'taking' the channel. :)
  451. $bvoice$b With this set, the +y bot will voice ALL clients
  452. that join the channel, whether they are a user or not.
  453. It will still keep +q|q users devoiced. Any client
  454. devoiced by a user op (+o) will remain devoiced even
  455. if they cycle. See also: 'voice-non-ident' and
  456. 'voice-moderate'
  457. $bvoicebitch$b Enforce voices in a +bitch style. Only +v users
  458. will be allowed to be voiced. This does take +private
  459. into mind as well.
  460. $bdynamicbans$b Only activate bans on the channel when necessary?
  461. This keeps the channel's ban list from getting
  462. excessively long. The bot still remembers every ban,
  463. but it only activates a ban on the channel when it sees
  464. someone join who matches that ban.
  465. $buserbans$b Allow bans to be made by users directly? If turned
  466. off, the bot will require all bans to be made through
  467. the bot's console.
  468. $bdynamicexempts$b Only activate exempts on the channel when
  469. necessary? This keeps the channel's exempt list from
  470. getting excessively long. The bot still remembers every
  471. exempt, but it only activates an exempt on the channel
  472. when it sees a ban set that matches the exempt. The
  473. exempt remains active on the channel for as long as the
  474. ban is still active.
  475. $buserexempts$b Allow exempts to be made by users directly? If
  476. turned off, the bot will require all exempts to be made
  477. through the bot's console.
  478. $bdynamicinvites$b Only activate invites on the channel when necessary?
  479. This keeps the channel's invite list from getting
  480. excessively long. The bot still remembers every invite,
  481. but the invites are only activated when the channel is
  482. set to invite only and a user joins after requesting an
  483. invite. Once set, the invite remains until the channel
  484. goes to -i.
  485. $buserinvites$b Allow invites to be made by users directly? If turned
  486. off, the bot will require all invites to be made through
  487. the bot's console.
  488. The following are flood settings, they are set via '%dchanset <channel>
  489. flood-type number:seconds', where number and second are integers
  490. indicating the number of times in how many seconds the flood will be
  491. triggered. Setting one of these to 0:0, 0:1, or 1:0 will deactivate the
  492. respective flood setting.
  493. $bflood-chan$b Set here how many channel messages in how many seconds
  494. from one host constitutes a flood. Setting this to 0 or 0:0
  495. disables text flood protection for the channel.
  496. $bflood-bytes$b Set here how many bytes in how many seconds from one
  497. host constitutes a flood. Setting this to 0 or 0:0
  498. disables text flood protection for the channel.
  499. $bflood-ctcp$b Set here how many channel ctcps in how many seconds from
  500. one host constitutes a flood. Setting this to 0 or 0:0
  501. disables ctcp flood protection for the channel.
  502. $bflood-join$b Set here how many joins in how many seconds from one
  503. host constitutes a flood. Setting this to 0 or 0:0 disables
  504. join flood protection for the channel.
  505. $bflood-kick$b Set here how many kicks in how many seconds from one
  506. host constitutes a flood. Setting this to 0 or 0:0 disables
  507. kick flood protection for the channel.
  508. $bflood-deop$b Set here how many deops in how many seconds from one
  509. host constitutes a flood. Setting this to 0 or 0:0 disables
  510. deop flood protection for the channel.
  511. $bflood-nick$b Set here how many nick changes in how many seconds from
  512. one host constitutes a flood. Setting this to 0 or 0:0
  513. disables nick flood protection for the channel.
  514. The following settings will trigger a lockdown (chanmode +mi) for 'flood-lock-time'
  515. seconds. Unlike the other flood-* settings, these will trigger on $bmultiple$b clients.
  516. They are for catching mass floods.
  517. $bflood-mjoin$b Set how many joins in how many seconds before triggering
  518. a lockdown for mass join. Setting this to 0 or 0:0 disables mass
  519. join protection for the channel.
  520. $bflood-mchan$b Set here how many channel messages in how many seconds
  521. from any host constitutes a flood. Setting this to 0 or 0:0
  522. disables text flood protection for the channel.
  523. $bflood-mbytes$b Set here how many bytes in how many seconds from any
  524. host constitutes a flood. Setting this to 0 or 0:0
  525. disables text flood protection for the channel.
  526. $bflood-mctcp$b Set here how many channel ctcps in how many seconds from
  527. any host constitutes a flood. Setting this to 0 or 0:0
  528. disables ctcp flood protection for the channel.
  529. These can all be changed simultaneously with $bflood-*$b
  530. See also: %{-}%{+n}+chan, -chan%{-}%{+m|m}, chanset%{-}
  531. :leaf:channel
  532. ### $bchannel$b [channel-name]
  533. Shows you an extensive display of the users on a channel, and
  534. the current channel attributes. By default, it shows you the
  535. channel you are currently viewing on the console, but you can
  536. specify another channel if you wish.
  537. The first line will look like:
  538. Channel #hiya, 8 members, 45 users, mode +tn:
  539. This means that the bot is sitting on channel #hiya, where 8
  540. other irc'ers are. There are 45 people that the bot knows by
  541. hostmask, and the channel mode is +tn. If the bot isn't on
  542. the channel it is supposed to be on, it will say "Desiring
  543. channel #hiya" instead. Next is a list of the users on the
  544. channel, with each entry looking like this:
  545. NICKNAME HANDLE JOIN HOPS IDLE USER@HOST
  546. @kantSF kantSF 14:53 o 2 6m josh@random.edu
  547. The "@kantSF" means that the user's nickname is kantSF and that
  548. he is a chanop. The second "kantSF" is the nickname that the
  549. bot knows him by. Sometimes this will differ from the nickname
  550. a person is using. The time displayed is the time the user
  551. joined the channel. The next field is the attributes:
  552. n - bot owner o - can get ops (+o)
  553. m - bot master or owner b - another bot
  554. d - cannot get ops (+d)
  555. The last field is the user@host he is using irc from.
  556. See also: status, whois
  557. ::channels:
  558. ### $bchannels$b %{+m}[user|%group]%{-}
  559. Displays channels that you have access to, and any important
  560. flags that are set on them.
  561. %{+m}
  562. Masters: You can specify other users to see what channels their
  563. flags grant them access to.%{-}
  564. Special %%group to see what channels a particular group is in.
  565. See also: whois%{+m}, chattr, chaninfo, groups%{-}
  566. ::chanset
  567. ### $bchanset$b [#&!+channel|*|default] <settings>
  568. Allows you to change the channel settings (see $b'chaninfo'$b for the
  569. settings) for one specific channel or all channels. Use '*' to apply the
  570. change to all channels.
  571. Changes are used until the next restart, and are saved
  572. whenever the userfile is saved.
  573. Modifying 'default' will change what new channels get when they are created.
  574. See also: %{+n}+chan, -chan%{-}, chaninfo
  575. ::chat
  576. ### $bchat$b <on/off>
  577. ### $bchat$b <[*]channel number/name>
  578. Changes your current channel on the partyline. When you first connect to
  579. the partyline, it places you on channel 0 (the main party line).
  580. Some channels may have assigned names if the assoc module is loaded. For
  581. these, you can specify the channel by name instead of channel number if
  582. you wish.
  583. $b'%dchat off'$b removes you from all channels, including the main party line.
  584. You can still use bot commands and see the console, but you can't talk to
  585. anyone. $b'%dchat on'$b returns you to the main party
  586. line (channel 0) if you were elsewhere.
  587. If you prefix the channel with a '*', you will join a local channel.
  588. See also: console
  589. ::chattr
  590. ### $bchattr$b <handle> [flags] [channel]
  591. This lets you view and change the flags for a user.
  592. For example, to give Lamer the p and f flags:
  593. '%dchattr Lamer +pf'
  594. To remove Denali from the global op list:
  595. '%dchattr Denali -o'
  596. You may also do any combination of the above:
  597. '%dchattr Fred1 -m+xj-o'
  598. You can also change the flags for Usagi on a specific channel by supplying
  599. the channel after the attributes:
  600. '%dchattr Usagi -m+dk-o #blah'
  601. Changing global and channel specific flags within the same command line is
  602. also possible (global +o #lamer):
  603. '%dchattr Bill f|o #lamer'
  604. Whether or not you change any flags, it will show you the user's attributes
  605. afterwards. To get a list of all possible flags, see $b'%dhelp whois'$b.
  606. $bNOTES:$b Only the owner may add or remove the 'a' (admin) or 'n' (owner) flags.
  607. It is pointless to -a a permanent owner.
  608. You must remove the permanent owner in the binary.
  609. See also: whois
  610. :hub:checkchannels
  611. ### $bcheckchannels$b
  612. This will make all leaf bots display which channels they are currently
  613. not in but *should* be in. This will only shows channels that contain
  614. the groups the bot are in.
  615. See also: botcmd, channels, channel, status
  616. :hub:chhandle
  617. ### $bchhandle$b <oldhandle> <newhandle>
  618. Changes the handle of a user. For example, to change the handle of user
  619. 'gavroche' to 'jamie', you would use 'chhandle gavroche jamie'.
  620. Perm owners may not change their handle without recompiling binaries first.
  621. Bot handles cannot be changed from partyline.
  622. See also: chpass%{+n}, chsecpass%{-}
  623. ::chinfo
  624. ### $bchinfo$b <user> [channel] [info-line/none]
  625. Sets the information line for a user. This line is shown via the /msg
  626. commands $b'who'$b and $b'whois'$b.
  627. If the info line begins with an '@', then it is "locked", and that user
  628. may no longer change it. If the channel name is omitted, the default info
  629. line is changed. If you specify 'none' as the info-line, it will be erased.
  630. See also: info
  631. :hub:chnick
  632. See: chhandle
  633. :hub:chpass
  634. ### $bchpass$b <handle> [newpassword|rand]
  635. Changes a user's password. If you do not specify the new password, the user
  636. effectively no longer has a password set. A password is needed to get ops,
  637. join the party line, etc. If the newpassword is 'rand', a random password
  638. will be used.
  639. This has no effect on bots.
  640. See also: chhandle%{+n}, chsecpass%{-}
  641. :hub:chsecpass:
  642. ### $bchsecpass$b <handle> [newpassword|rand]
  643. Changes a user's secpass. If you do not specify the new password, the user
  644. effectively no longer has a password set. A secpass is needed to auth and
  645. login via DCC chat. If the newpassword is 'rand', a random password
  646. will be used.
  647. See also: chhandle, chpass
  648. ::clearhosts
  649. ### $bclearhosts$b
  650. Removes all hosts from your handle.
  651. %{+m|m}
  652. ### $bclearhosts$b <handle>
  653. Removes all hosts from a user's user record.
  654. %{-}
  655. See also: +host, -host
  656. :leaf:clearqueue
  657. ### $bclearqueue$b <queue>
  658. Removes all msgs from the specified queue (mode/server/help/play/all)
  659. :hub:cmdpass:
  660. ### $bcmdpass$b <command> <pass> [newpassword]
  661. Places the specified pass on the cmd so that the cmd will need to be
  662. followed by the specified pass whenever it is called. For example:
  663. '%dcmdpass whoami BLAH'
  664. [19:32] #bryan# cmdpass whoami ...
  665. Set command password for whoami to 'BLAH'
  666. '%dwhoami'
  667. Invalid command password. Use !command password arguments
  668. [19:33] bryan attempted !whoami with missing or incorrect command password
  669. '%dwhoami BLAH'
  670. You are bryan@hub.
  671. [19:33] #bryan# whoami
  672. To remove a cmdpass for a cmd, specify the old pass and do not specify a new pass
  673. ** Only permanent owners specified in the binary COMPILE config file **
  674. ** can use this cmd. **
  675. ::color:
  676. ### $bcolor$b <on/off>
  677. Enables or disables misc coloring over DCC. mIRC or ANSI method is
  678. chosen automatically.
  679. See also: console, echo, login, page, strip
  680. ::comment
  681. ### $bcomment$b <user> <comment>
  682. Creates or changes the comment field for a user. The comment field can only
  683. be seen via 'whois' or 'match'. Non-masters cannot see the comment field.
  684. Using the comment 'none' will clear a user's comment.
  685. ::conf:
  686. ### $bconf$b <add|del|change|disable|enable|list|set> [options]
  687. This command is used to modify the bot's local shell config. Only
  688. the first bot listed will be able to perform this command. Using the cmd
  689. on a non-'localhub' will result in an error similar to:
  690. [16:42] #bryan# botcmd wtest2 conf list
  691. [wtest2] Please use 'wtest' for this login/shell.
  692. Simply use the command on the bot specified.
  693. 'add' uses the same syntax as the conf file:
  694. add <bot> [<ip|.> <[+]host|.> [ipv6-ip]]
  695. ip/host/ipv6-ip are all optional and/or can be replaced with '.'
  696. Newly added bots will start immediately, don't forget to 'newleaf'.
  697. 'del' syntax is:
  698. del <bot>
  699. Deleted bots that are running will be killed.
  700. 'change' syntax is the same as 'add'
  701. 'disable' syntax is:
  702. disable <bot>
  703. The bot will be killed, but not removed from userlist. It will not start again
  704. until you use 'enable' on it.
  705. 'enable' syntax is:
  706. enable <bot>
  707. The bot is enabled. (Only relevant for disabled bots designated via a prefix of '/')
  708. 'list' shows all the bots currently in the config.
  709. 'set' allows changing some variables in the config.
  710. Using with no parameters will show all changeable options.
  711. Simply specify the option and new setting as follows:
  712. set <what> [option]
  713. WARNING: Options changed MAY OR MAY NOT affect bots already running,
  714. it is a good idea to restart all bots on the shell
  715. if you change any of the following:
  716. $bhomedir$b, $bbinpath$b, $bbinname$b, $bportmin$b, $bportmax$b
  717. See also: newleaf, newhub
  718. ::console:
  719. ### $bconsole$b [channel] [modes]
  720. Changes your console level so that you will see only the types of console
  721. messages that you want to. Your current console channel is the channel (that
  722. the bot is on) from which you can view from the party line, and which
  723. channel-specific commands (like 'say' and 'op') take affect on.
  724. Valid flags are:
  725. $bj$b joins, parts, quits, and netsplits on the channel
  726. $bk$b kicks, bans, and mode changes on the channel
  727. $bm$b private msgs, notices and ctcps to the bot
  728. $bp$b public text on the channel
  729. $bs$b server connects, disconnects, and notices
  730. %{+m}
  731. Masters only:
  732. $bb$b information about bot linking and userfile sharing
  733. $bd$b misc debug information
  734. $bc$b commands
  735. $bo$b misc info, etc (IMPORTANT STUFF)
  736. $bw$b wallops
  737. %{-}
  738. %{+n}
  739. Owners only (these have to be enabled in the config file via "set raw-log"):
  740. $be$b errors
  741. $bg$b (getin) botnet op/invite/key requests
  742. $bh$b raw share traffic
  743. $br$b raw incoming server traffic
  744. $bt$b raw botnet traffic
  745. $bu$b warnings
  746. $bv$b raw outgoing server traffic
  747. %{-}
  748. %{+o|o}
  749. The mode can also be a modifier like '+p' or '-jk' or '+mp-b'. If you omit
  750. the channel and modes, your current console channel and flags will be shown.
  751. %{-}
  752. %{+m|m}
  753. ### $bconsole$b <user> [channel] [modes]
  754. This is used to set the console level of another user. This can even be used
  755. on users who normally would not be able to set their own console mode.%{-}
  756. See also: color, echo, login, page, strip
  757. ::crontab:
  758. ### $bcrontab$b <status|delete|show|new> [interval]
  759. This command is used to manipulate the crontab entries for the user
  760. that the bot is running on.
  761. 'status' will display the status of the crontab entry for the bot,
  762. for example:
  763. [18:59] #bryan# crontab status
  764. Crontabbed
  765. 'show' will display the current crontab entries, for example:
  766. [18:59] #bryan# crontab show
  767. Showing current crontab:
  768. Result:
  769. 3,8,13,18,23,28,33,38,43,48,53,58 * * * * /usr/home/bryan/hub/hub > /dev/null 2>&1
  770. 1,6,11,16,21,26,31,36,41,46,51,56 * * * * /usr/home/bryan/hub/newhub > /dev/null 2>&1
  771. 'delete' will remove the bot's own crontab entry from the crontab list.
  772. 'new' will make the bot add itself to the crontab list, although this is done
  773. automatically on startup.
  774. ::cycle:
  775. ### $bcycle$b <channel> [delay]
  776. If done on the hub, makes all linked bots cycle the specified channel.
  777. Otherwise, only the bot it is done on will cycle.
  778. Delay defaults to 10 seconds, which means bots will part and not rejoin
  779. until that time has passed.
  780. See also: down
  781. ::date
  782. ### $bdate$b
  783. Displays the time/date in local and GMT. Also displays which time zone
  784. is being used by the bot for internal logging.
  785. :hub:dccstat
  786. ### $bdccstat$b
  787. Displays a table-format list of all "dcc" connections in use on the bot.
  788. Dcc stands for "Direct Client-to-client Communication", and Eggdrop expands
  789. this to cover every open socket. Any type of network connection to the bot
  790. is considered a "dcc" connection.
  791. The headings of the table are:
  792. $bSOCK$b the socket number of this connection (always unique)
  793. $bADDR$b the ip address mask of the host the bot is connected to, if
  794. applicable
  795. $bPORT$b the port number being used for this connection
  796. $bNICK$b the handle of the user or bot, if applicable
  797. $bHOST$b the hostname corresponding to the IP address, if available
  798. $bTYPE$b the type of dcc connection (see below)
  799. The types of connections currently possible are as follows (but more are
  800. being added all the time):
  801. $bCHAT$b dcc-chat partyline user
  802. $bPASS$b user entering dcc chat (being asked for password)
  803. $bSEND$b user sending a file
  804. $bGET$b sending a file to a user
  805. $bGETP$b pending get (waiting for the user to acknowledge)
  806. $bLSTN$b telnet listening port (in place of a hostname, it will show the
  807. callback procedure name, or a mask of acceptable handles)
  808. $bT-IN$b incoming telnet user (being asked for handle)
  809. $bFILE$b user in dcc-chat file area
  810. $bBOT$b connected bot (botnet connection)
  811. $bBOT*$b pending bot link (waiting for acknowledgement)
  812. $bRELA$b user in relay connection to another bot
  813. $b>RLY$b bot being relay'd to (one for each "RELA")
  814. $bCONN$b pending telnet connection (chat, relay, bot-link, etc)
  815. $bNEW$b new user via telnet (entering a handle)
  816. $bNEWP$b new user via telnet (entering a password)
  817. In addition, 'CHAT' and 'BOT' have flags listed for each connection. Capital
  818. letters mean that the flag is on, and lowercase letters mean that the flag
  819. is off. The flags for 'CHAT' are:
  820. $bC$b in file area, but allowed to return to party line
  821. $bK$b color is on
  822. $bP$b party line access only
  823. $bT$b telnet connection (instead of dcc chat)
  824. $bE$b echo is on
  825. $bP$b paging is on
  826. $b6$b socket is ipv6
  827. The flags for 'BOT' are:
  828. $bP$b ping sent, waiting for reply
  829. $bU$b user-file sharing is active
  830. $bC$b local bot initiated the connection
  831. $bO$b user-file offered, waiting for reply
  832. $bS$b in the process of sending the user-file
  833. $bG$b in the process of getting the user-file
  834. $bW$b warned this bot to stop hubbing
  835. $bL$b leaf-only bot (not allowed to be a hub)
  836. $bI$b bot is currently in the 'linking' stage
  837. $bA$b bot is being aggressively shared with
  838. For 'CHAT' users, the party-line channel is also listed.
  839. ::debug
  840. ### $bdebug$b
  841. Display a dump of memory allocation information, assuming the bot was
  842. compiled with memory debugging. It's useless to anyone but developers
  843. trying to find memory leaks.
  844. ::decrypt
  845. ### $bdecrypt$b <key> <string>
  846. Decrypts the string using the specified key.
  847. See also: decrypt_fish, encrypt, encrypt_fish, randstring, md5, sha1, sha256, hash
  848. ::decrypt_fish
  849. ### $bdecrypt_fish$b <key> <string>
  850. Decrypts the string using the specified key.
  851. This algorithm is eggdrop's blowfish, same as FiSH.
  852. See also: decrypt, encrypt, encrypt_fish, randstring, md5, sha1, sha256, hash
  853. :leaf:deluser
  854. ### $bdeluser$b <nickname>
  855. Deletes a user record for a user on the channel, using their
  856. current hostname. Channel masters can remove users so long as
  857. the user isn't a bot master.
  858. Channel masters may only delete users which they added.
  859. see also: adduser%{+m}, +user, -user%{-}
  860. :leaf:deop
  861. ### $bdeop$b <nickname> [channel|*]
  862. Will remove chanop from the person you specify, so long as the
  863. bot is opped on that channel, and the person you specify isn't
  864. on the bot's list of authorized chanops. Specify * for all
  865. channels.
  866. See also: op, console
  867. :leaf:devoice
  868. ### $bdevoice$b <nickname> [channel|*]
  869. Will remove the +v voice from the person you specify, so long as
  870. the bot is opped on that channel. Specify * for all channels.
  871. ::die
  872. ### $bdie$b [reason]
  873. This kills the bot. The bot goes offline immediately, logging who issued
  874. the 'die' command. You shouldn't have to use this too often. If you specify
  875. a reason, it is logged, otherwise the reason is "authorized by <handle>".
  876. See also: suicide, conf
  877. ::dns
  878. ### $bdns$b <hostname/ip/flush>
  879. Resolves the given hostname/ip
  880. If "flush" is the specified hostname, the cache will be flushed.
  881. ::down:
  882. ### $bdown$b <channel>
  883. All linked bots will deop themselves in the specified channel. They
  884. will not reop for 10 seconds.
  885. See also: cycle
  886. :hub:downbots
  887. ### $bdownbots$b
  888. Shows the list of bots that are NOT currently linked to the botnet.
  889. Example:
  890. Down bots: cEvin, ruthie, Killa1
  891. See also: bots, groups
  892. :leaf:dump
  893. ### $bdump$b <text>
  894. dumps the text to the server. keep in mind that this bot doesn't
  895. run through ircII, so ircII commands will most likely not work this
  896. way. they need to be raw irc codes. read rfc1459 from ftp.internic.net
  897. for more help.
  898. '$n' is replaced with the bot's irc nickname.
  899. ** Only permanent owners specified in the binary COMPILE config file **
  900. ** can use this cmd. **
  901. ::echo
  902. ### $becho$b <on/off>
  903. Specifies whether you want your messages echoed back to you. If it's on,
  904. then when you say something on the party line, it will be displayed to you
  905. just like everyone else will see it. If it's off, then it won't happen.
  906. See also: color, console, login, page, strip
  907. ::encrypt
  908. ### $bencrypt$b <key> <string>
  909. Encrypts the string using the specified key.
  910. See also: encrypt_fish, decrypt, decrypt_fish, randstring, md5, sha1, sha256, hash
  911. ::encrypt_fish
  912. ### $bencrypt_fish$b <key> <string>
  913. Encrypts the string using the specified key.
  914. This algorithm is eggdrop's blowfish, same as FiSH.
  915. See also: encrypt, decrypt, decrypt_fish, randstring, md5, sha1, sha256, hash
  916. ::exec:
  917. ### $bexec$b <params>
  918. The bot will execute the specified program with each param specified,
  919. and display the results over DCC.
  920. ::exempts
  921. ### $bexempts$b [[channel/all/global]/wildcard]
  922. Shows you a list of the global exempts active on the current channel, and
  923. the list of channel-specific exempts, as well as any exempts that are on the
  924. channel but weren't placed by the bot.
  925. Here's a sample entry;
  926. ! [ 3] *!test@test.com (perm)
  927. bryan: requested
  928. Created 01:15
  929. The number (3) can be used to reference the exempt if you wish to remove it
  930. (see $b'-exempt'$b). Next is the actual hostmask being exempted. The "(perm)"
  931. means that the exempt is "permanent": that is, it doesn't automatically
  932. expire. If there is an elapsed time showing instead, the time displayed is
  933. how long the exempt has been active. These types of exempts expire after one
  934. hour. The second line of the exempt entry is the comment ("requested"), and
  935. who set the exempt (bryan). The last line shows when the exempt was added, and
  936. possibly the last time the exempt was activated on the channel (if it's
  937. different from the creation time).
  938. Sometimes there will be a "!" or "*" right before the number. A "!" means
  939. the exempt is in the bot's exempt list, but is not currently on the channel.
  940. A "*" marks an exempt which is NOT in the bot's exempt list but IS on the
  941. channel.
  942. If you use 'exempts' without an argument, it will show you only the exempts
  943. which are currently active on the channel. If you use 'exempts all', it will
  944. show you every exempt in the global exempt list and on the channel. If you
  945. use 'exempts <wildcard>', it will list all exempts (active or not) that
  946. match against your wildcard. Consider it a 'exempts all' list matched
  947. against your wildcard.
  948. If you use 'exempts global', a full list of exempts for EVERY channel will be
  949. displayed, including inactive/active exempts on each channel.
  950. The exempt list may change according to which channel you're currently
  951. viewing in the console. Different exempts may be active on different
  952. channels. If you specify a channel name, that channel will be used instead
  953. of your current console channel.
  954. See also: -exempt, +exempt, console%{+m|m}, chanset, chaninfo%{-}, stick, unstick
  955. :leaf:find:
  956. ### $bfind$b <nick!ident@host.com>|<user>
  957. The bot will search through all of its channel records and look
  958. for the specified hostmask. Wildcards are accepted; '*' for 1 or more
  959. characters, or '?' for exactly 1 character.
  960. If a username is specified, then the user is searched for in all the channel
  961. lists.
  962. ::fixcodes
  963. ### $bfixcodes$b
  964. This is for use in situations where the bot gets mixed up about the type
  965. of connection you have with it. For example, you /CTCP CHAT the bot and
  966. it thinks you are connecting via telnet, and you see text displayed as
  967. "Local time is now 17:17" for example instead of "Local time is
  968. now 17:17". Use this to turn telnet codes on or off/change the display
  969. mode.
  970. :leaf:getkey:
  971. ### $bgetkey$b [channel]
  972. If there is a key set for channel, it is displayed. If channel is not
  973. specified, your console channel is used.
  974. See also: console, channels%{+m}, status%{-}
  975. :hub:groups
  976. ### $bgroups$b [bot]
  977. Shows the list of groups and which bots are in them.
  978. Specify a bot to only show which groups it is in.
  979. See also: bots, downbots%{+n}, bottree%{-}
  980. ::handle
  981. ### $bhandle$b <new-handle>
  982. Changes your handle on the bot. This is the handle (nickname) that the
  983. bot will know you as from this point forward. It is used to log into the
  984. bot.
  985. Perm owners may not change their handle without recompiling binaries first.
  986. See also: newpass%{+mi}, chhandle, chpass%{-}%{+n}, chsecpass%{-}
  987. ::hash
  988. ### $bhash$b <string>
  989. Returns the MD5, SHA1, and SHA256 hash of the specified string.
  990. See also: randstring, md5, sha1, sha256, encrypt, encrypt_fish, decrypt, decrypt_fish
  991. ::help:
  992. ### $bhelp$b [cmd]
  993. Alone, will show all cmds that match your flags. With a cmd it will show
  994. the help entry, such as you see here. Specifying a wildcard will display
  995. a list of cmds (matching your flags) that match that wildcard. Use '*'
  996. to match 1 or more characters, and '?' to match exactly one character.
  997. This will only show the commands available on the current type of bot
  998. you are on. Ie, hubs and leafs have different cmds shown in '%dhelp'
  999. :hub:hublevel:
  1000. ### $bhublevel$b <hub-bot> <level>
  1001. Sets the hublevel for the specified hub. This command is not recommended
  1002. for use by anyone. Instead you should change your COMPILE config file
  1003. and update your net with new binaries.
  1004. You really shouldn't use this cmd.
  1005. See also: uplink, chaddr
  1006. ::ignores
  1007. ### $bignores$b [wildcard]
  1008. Shows a list of hostmasks from which the bot is currently ignoring msgs,
  1009. notices, etc. There are two types of ignores: permanent and temporary.
  1010. Permanent ignores never automatically expire. You must use $b'%d-ignore'$b
  1011. to remove them.
  1012. Here is a sample permanent ignore:
  1013. [ 1] *!*@217.156.44.184 (perm)
  1014. bryan: go away
  1015. Started 523 days ago
  1016. The number (1) can be used to reference the ignore if you wish to remove it
  1017. (see $b'%dhelp -ignore'$b). Next is the actual hostmask being ignored. The
  1018. "(perm)" means that the ignore is "permanent": that is, it doesn't
  1019. automatically expire. The second line of the ignore entry is the comment
  1020. ("go away"), and who set the ban (bryan). The last line shows when the ignore
  1021. was added.
  1022. Here is a sample temporary ignore:
  1023. [ 10] blah!blah@blah.cc (expires in 1 day)
  1024. bryan: requested
  1025. Started 18:02
  1026. Here, you see the "perm" in the parentheses next to the hostmask is instead
  1027. an expire time. This means that the ignore will expire automatically in one
  1028. day.
  1029. If you use $b'%dignores <wildcard>'$b, it will list all the ignores
  1030. that match against your wildcard.
  1031. See also: +ignore, -ignore
  1032. ::info
  1033. ### $binfo$b [channel] [info-line]
  1034. Sets your info line. This line is shown via the /msg commands $b'who'$b and
  1035. $b'whois'$b. If the info line begins with an '@', then it is "locked", and
  1036. you may no longer change it.
  1037. %{+m|m}See also: chinfo%{-}
  1038. :leaf:invite
  1039. ### $binvite$b <nickname> [channel|*]
  1040. Invites someone from irc into your current console channel (or
  1041. specified other channel). This is most useful when the channel
  1042. is +i. a user with the +o flag can also request an invite from
  1043. the bot with /MSG INVITE. Specify * for all channels.
  1044. See also: console, iop
  1045. ::invites
  1046. ### $binvites$b [[channel/all/global]/wildcard]
  1047. Shows you a list of the global invites active on the current channel, and
  1048. the list of channel-specific invites, as well as any invites that are on the
  1049. channel but weren't placed by the bot.
  1050. Here's a sample entry;
  1051. ! [ 3] *!test@test.com (perm)
  1052. bryan: requested
  1053. Created 01:15
  1054. The number (3) can be used to reference the invite if you wish to remove it
  1055. (see $b'-invite'$b). Next is the actual hostmask being invited. The "(perm)"
  1056. means that the invite is "permanent": that is, it doesn't automatically
  1057. expire. If there is an elapsed time showing instead, the time displayed is
  1058. how long the invite has been active. These types of invites expire after one
  1059. hour. The second line of the invite entry is the comment ("requested"), and
  1060. who set the invite (bryan). The last line shows when the invite was added, and
  1061. possibly the last time the invite was activated on the channel (if it's
  1062. different from the creation time).
  1063. Sometimes there will be a "!" or "*" right before the number. A "!" means
  1064. the invite is in the bot's invite list, but is not currently on the channel.
  1065. A "*" marks an invite which is NOT in the bot's invite list but IS on the
  1066. channel.
  1067. If you use 'invites' without an argument, it will show you only the invites
  1068. which are currently active on the channel. If you use 'invites all', it will
  1069. show you every invite in the global invite list and on the channel. If you
  1070. use 'invites <wildcard>', it will list all invites (active or not) that
  1071. match against your wildcard. Consider it a 'invites all' list matched
  1072. against your wildcard.
  1073. If you use 'invites global', a full list of invites for EVERY channel will be
  1074. displayed, including inactive/active invites on each channel.
  1075. The invite list may change according to which channel you're currently
  1076. viewing in the console. Different invites may be active on different
  1077. channels. If you specify a channel name, that channel will be used instead
  1078. of your current console channel.
  1079. See also: -invite, +invite, console%{+m|m}, chanset, chaninfo%{-}, stick, unstick
  1080. :leaf:iop
  1081. ### $biop$b <nickname> [channel|*]
  1082. Same as normal invite, except auto-ops them when they join.
  1083. See also: console, invite
  1084. :leaf:jump
  1085. ### $bjump$b [server [port [pass]]]
  1086. Makes the bot jump to another server. If you don't specify a
  1087. server, it will jump to the next server in its internal list (see
  1088. $b'%dhelp set'$b). If you specify a server, it will jump to that
  1089. server (default port is 6667), and if that server is not in the
  1090. internal list already, it will add it (until the bot relinks).
  1091. Jumping servers ALWAYS makes the bot lose ops! be careful!
  1092. See also: botjump, servers, botserver
  1093. :leaf:keyx
  1094. ### $bkeyx$b <nick>
  1095. Initiaite DH1080 key-exchange with nick for FiSH protocol.
  1096. %{+m}See also: setkey%{-}
  1097. :leaf:kick
  1098. ### $bkick$b [channel|*] <nickname> [reason]
  1099. Will kick a user off your current console channel (or specified
  1100. other channel) with the comment given. if you omit the reason,
  1101. the default kick comment is "requested". Specify * for all
  1102. channels.
  1103. See also: kickban, console
  1104. :leaf:kickban
  1105. ### $bkickban$b [channel|*] [-|@]<nickname> [comment]
  1106. Kicks a user off the channel and bans her by a reasonable host-
  1107. mask. your nickname will be attached to the ban in the bot's
  1108. internal ban list, and the ban will last for whatever is set in
  1109. ban-time -- only on this channel. use $b'%d+ban'$b for a more
  1110. permanent ban which will be activated on every channel the bot
  1111. monitors. if you use a comment, that will also be attached to
  1112. the ban in the ban list, and used as the kick comment. Specify
  1113. * for all channels.
  1114. appending a prefix of ! or @ to a nickname changes the ban
  1115. mask used:
  1116. e.g. with a host of nick!ident@host.name.domain
  1117. command banmask
  1118. '%dkickban nick *!*dent@*.name.domain'
  1119. '%dkickban -nick *!*dent@host.name.domain'
  1120. '%dkickban @nick *!*@host.name.domain'
  1121. with a host of nick!~ident@host.name.domain (strict-host set to 1)
  1122. command banmask
  1123. '%dkickban nick *!*ident@*.name.domain'
  1124. '%dkickban -nick *!*ident@host.name.domain'
  1125. See also: +ban, bans, stick
  1126. :hub:lagged:
  1127. ### $blagged$b
  1128. Displays the bot's internal ping list of bots linked to it.
  1129. If a pingtime goes over 30 seconds, it is delinked for
  1130. ping timeout.
  1131. See also: netlag
  1132. ::last:
  1133. ### $blast$b
  1134. Displays the 'last' output from the shell the bot is running on,
  1135. for the user it is running as.
  1136. %{+i}See also: netlast%{-}
  1137. :hub:link
  1138. ### $blink$b [via-bot] <bot-to-link>
  1139. Attempts to link to another hub. This command is deprecated and not
  1140. recommended for use.
  1141. See also: unlink%{+ni}, newleaf%{-}%{+a}, newhub, -bot%{-}
  1142. ::login
  1143. ### $blogin$b <banner|bots|channels|whom> [on/off]
  1144. Sets various login options.
  1145. Not specifying on/off will display what the setting is the for the specified
  1146. login entry.
  1147. See also: echo, color, console, page, strip, whois
  1148. ::match
  1149. ### $bmatch$b <attr> [channel] [[start] limit]
  1150. This displays all user records with the attributes requested.
  1151. "attr" is of the form: <+/-><global>[&/|<channel>[&/|<bot>]]
  1152. Specifying "&" as the separator will cause AND style matching.
  1153. For example:
  1154. '%dmatch p&o'
  1155. This will match all users with both the "p" global flag and the "o" channel
  1156. flag on your current console channel.
  1157. Specifying "|" as the separator will cause OR style matching.
  1158. For example:
  1159. '%dmatch p|o'
  1160. This will match all users with either the "p" global flag or the "o" channel
  1161. flag on your current console channel. If you specify a channel, it will be
  1162. used instead of the current console channel.
  1163. For example:
  1164. '%dmatch p|o #eggdrop'
  1165. This will match all users with either the "p" global flag or the "o" channel
  1166. flag on the channel #eggdrop. You can also match bot flags.
  1167. For example:
  1168. '%dmatch o|o|h'
  1169. This will match all bots with either the "o" global flag, the "o" channel
  1170. flag on the current console channel, or the "h" botflag. You can also limit
  1171. the number of total results returned by specifying a limit at the end of the
  1172. command. A starting point can also be specified.
  1173. For example:
  1174. '%dmatch p&o #eggdrop 16 25'
  1175. This would show results 16 through 25 matching any users with the "p" global
  1176. flag or the "o" channel flag on #eggdrop.
  1177. ### $bmatch$b <wildcard-string> [[start] limit]
  1178. This displays all user records where the user's handle or any of the user's
  1179. hostmasks match the specified wildcard string. You can also limit the number
  1180. of total results returned by specifying a limit at the end of the command. A
  1181. starting point can also be specified.
  1182. For example:
  1183. '%dmatch *.edu 16 25'
  1184. This would show results 16 through 25 matching any users with a hostmask
  1185. that ends with ".edu".
  1186. $bThis command will not match on bots. You must use 'matchbot' for that.$b
  1187. See also: matchbot
  1188. ::matchbot
  1189. ### $bmatchbot$b
  1190. Matches bots.
  1191. See also: match
  1192. ::md5
  1193. ### $bmd5$b <string>
  1194. Returns the MD5 hash of the specified string.
  1195. See also: randstring, sha1, sha256, hash, encrypt, encrypt_fish, decrypt, decrypt_fish
  1196. ::me
  1197. ### $bme$b <text>
  1198. Performs an action on the party line. This appears as "* bryan is leaving",
  1199. etc.
  1200. :leaf:mmode:
  1201. ### $bmmode$b <(+|-)MODE> <#channel> <a|o|v|d|r> [bots=n] [alines=n] [slines=n] [overlap=n] [bitch] [botbitch] [simul] [local]
  1202. For those of us who do not wish to be rocket scientists in the mass mode department,
  1203. a simple '%dmmode -o #channel o' will suffice.
  1204. This is a distributed mass mode command.
  1205. The modes will be distributed among the necessary bots to accomplish the task.
  1206. **Remember, unless specified with [local], the bot you mmode on will never participate.**
  1207. options:
  1208. $ba$b = $ball.$b
  1209. $bo$b = $bops.$b
  1210. $bO$b = $buser-op.$b
  1211. $bv$b = $bvoices.$b
  1212. $bd$b = $bnon-ops.$b
  1213. $br$b = $bregulars (-ov).$b
  1214. $bbitch$b - set +bitch after finished with mmode.
  1215. $bbotbitch$b - set +bitch after finished with mmode.
  1216. $bsimul$b - Simulates the mmode. IE: Gives you a practice run, will show who
  1217. does what in the dcc chat window.
  1218. $blocal$b - Modes will not be distributed: Ran on local bot only.
  1219. Use this with caution, and do not expect good results.
  1220. =============================================================================
  1221. don't bother setting the following options unless you REALLY know what you're
  1222. doing, and don't bother messaging me asking me how to use them if you don't.
  1223. =============================================================================
  1224. $bbots$b - Number of bots to use.
  1225. $balines$b - Number of MODE lines to assume each participating bot will get through.
  1226. $bslines$b - Number of MODE lines each participating bot will send.
  1227. $boverlap$b - Number of times to mode on each target nick (using alines for calc).
  1228. bots, alines, slines and overlap are dependant on each other, set them wrong and
  1229. the bot will complain.
  1230. Defaults are alines=1, slines=5, overlap=1. alines will be increased up to 5 if
  1231. there are not enough bots available.
  1232. Examples:
  1233. To mass deop (old style '%dmdop')
  1234. '%dmmode -o #chan o overlap=2'
  1235. To mass voice non-ops
  1236. '%dmmode +v #chan d'
  1237. To mass voice non-ops and non-voices
  1238. '%dmmode +v #chan r'
  1239. See also: mop
  1240. :leaf:mop:
  1241. ### $bmop$b <channel|*>
  1242. Bot will op all users in the specified channel that are valid ops
  1243. for the channel. If '*' is specified, the bot will scan all channels
  1244. and op all users in all channels that are valid ops in each chan.
  1245. See also: whois
  1246. ::motd
  1247. ### $bmotd$b %{+m}<message>%{-}
  1248. This redisplays the partyline Message Of The Day, which was shown when you
  1249. first joined the partyline.
  1250. %{+m}+m: Include a message to set the motd.%{-}
  1251. :leaf:msg
  1252. ### $bmsg$b <nickname> <text>
  1253. Sends a private message to someone from the bot, just as if the
  1254. bot had typed /msg.
  1255. See also: botmsg%{+n}
  1256. :hub:netcrontab:
  1257. ### $bnetcrontab$b <status|delete|show|new> [interval]
  1258. Runs the specified command on all linked bots.
  1259. See: crontab
  1260. :hub:netlag:
  1261. ### $bnetlag$b
  1262. Pings all bots over botnet, and displays results.
  1263. See also: lagged
  1264. :hub:netlast:
  1265. ### $bnetlast$b
  1266. All bots on the botnet will display an output from 'last' on
  1267. the user that they are currently running as.
  1268. See also: last
  1269. :hub:netnick:
  1270. ### $bnetnick$b
  1271. All bots on the botnet will display their nick over DCC.
  1272. See also: botnick, nick
  1273. :hub:netps:
  1274. ### $bnetps$b [ps-param]
  1275. Will run 'ps' on each bot on the botnet and returned the
  1276. results. If a params are specified, each bot will use those
  1277. on 'ps'.
  1278. See also: ps
  1279. :hub:netrelease
  1280. ### $bnetrelease$b <nick>
  1281. Tells all bots to unjupe the specified nickname. They will wait 7 seconds
  1282. before attempting to regain the nickname.
  1283. See also: set, release
  1284. :hub:netrontab:
  1285. ### $bnetcrontab$b <status|delete|show|new> [interval]
  1286. Runs the specified crontab command on all linked bots.
  1287. See: crontab
  1288. :hub:netserver:
  1289. ### $bnetservers$b
  1290. All bots on the botnet will display their current server and lag
  1291. to that server over DCC.
  1292. See also: botserver, servers%{+n}, set%{-}
  1293. :hub:netversion:
  1294. ### $bnetversion$b <bot>
  1295. All bots on the botnet will display their pack version, and uname.
  1296. See also: botversion, version, about%{+m|m}, status%{-}
  1297. :hub:netw:
  1298. ### $bnetw$b
  1299. All bots on the botnet will run 'w' on their shell and display
  1300. the results over DCC.
  1301. See also: w
  1302. :hub:newhub:
  1303. ### $bnewhub$b <handle> <address> <port> [hublevel]
  1304. Add a new hub to the net.
  1305. See also: chaddr, newleaf
  1306. :hub:newleaf:
  1307. ### $bnewleaf$b <handle> [hostmask] [anotherhostmask] ...
  1308. Adds a new leaf to the botnet with the specified handle and hostname.
  1309. Any number of hosts can be specified in the cmd.
  1310. The binary config botline will also be outputted, but should be
  1311. checked for correctness.
  1312. %{+a}See also: newhub%{-}
  1313. ::newpass
  1314. ### $bnewpass$b <password|rand>
  1315. Changes your password on the bot. This is similar to the '/msg <bot> pass'
  1316. command, except you don't need to specify your old password. If the
  1317. newpassword is 'rand', a random password will be used.
  1318. %{+mi}See also: chpass%{-}%{+n}, chsecpass%{-}
  1319. ::nick
  1320. See: handle
  1321. ::nick:
  1322. ### $bnick$b <bot>
  1323. The bot will display its current nick over DCC.
  1324. See also: botnick, netnick
  1325. :hub:nopass
  1326. ### $bnopass$b [anything]
  1327. Displays all users who do not have a password set.
  1328. Specify any argument to give random passes to users.
  1329. %{+mi}See also: chpass%{-}
  1330. :leaf:op
  1331. ### $bop$b <nickname> [channel|*]
  1332. Will grant chanop to the person you specify, so long as the bot
  1333. is opped on that channel, and the person you specify isn't being
  1334. actively deopped by the bot. Specify * for all channels.
  1335. See also: deop, console
  1336. ::page
  1337. ### $bpage$b <number/off>
  1338. This allows you to slow down the number of lines the bot sends you at once
  1339. via the partyline. When enabled, any commands that send greater than the
  1340. specified number of lines will stop when that number is reached and wait for
  1341. you to type another command (or press enter) to continue. If you have too
  1342. many pending lines, you may be booted off the bot.
  1343. See also: color, console, echo, login, strip
  1344. :leaf:play
  1345. ### $bplay$b [channel] <file>
  1346. Plays the specified file to the specified channel. If no channel is
  1347. given then your console channel is used.
  1348. The 'play' queue is used for this, which is the lowest priority on
  1349. the bot. Any IRC related queue needs will immediately trump
  1350. the 'play' queue and delay the playing of the file.
  1351. Only files in the bots directory path may be played. (Symlinked
  1352. paths are fine). This is to prevent a user from playing /etc/passwd
  1353. since the cmd is +m.
  1354. ::ps:
  1355. ### $bps$b [ps-param]
  1356. Will run 'ps' on the bot's shell and display any results. If
  1357. any params are specified, they will be used.
  1358. %{+i}See also: netps%{-}
  1359. ::quit
  1360. ### $bquit$b [comment]
  1361. This disconnects you from the partyline. If you specify a comment, it will
  1362. be displayed to other partyline users as you leave.
  1363. ::randstring
  1364. ### $brandstring$b <len>
  1365. Displays a random string of length 'len' up to 300 chars.
  1366. See also: md5, sha1, sha256, hash, encrypt, encrypt_fish, decrypt, decrypt_fish
  1367. ::rehash
  1368. ### $brehash$b
  1369. Don't use this cmd, it doesn't do what you think it does, and can result
  1370. in the bot behaving very oddly.
  1371. Reloads config data from binary. (Probably won't be needed as this is
  1372. automatically updated after editing the binary with -C)
  1373. See also: restart
  1374. ::relay
  1375. ### $brelay$b <bot>
  1376. Relays you via telnet to another bot, whether or not it is currently linked.
  1377. The local bot must, however, have a bot record for the bot you wish to
  1378. relay to. Typing '%dquit' or "*bye*" on a line by itself will end the relay.
  1379. See also: bots%{+n}, newleaf%{-}%{+a}, newhub, -bot%{-}
  1380. :leaf:release
  1381. ### $brelease$b
  1382. Releases the bot's nick if it is on the jupenick. It gives an estimated
  1383. 7 seconds before it attempts to regain its jupenick.
  1384. See also: set, netrelease
  1385. ::reload
  1386. ### $breload$b
  1387. Reloads the bot's user file, discarding any changes made since the last
  1388. $b'%dsave'$b command or hourly user file save.
  1389. See also: save
  1390. :leaf:reset
  1391. ### $breset$b [channel]
  1392. Clears out the bot's channel information and makes it gather the
  1393. information from the server all over again, as if it had just
  1394. joined that channel. It's not really useful much, but could be
  1395. if an odd bug causes the channel information to get scrambled.
  1396. unfortunately this command used to get a lot of use. You can omit
  1397. the channel name to make it reset ALL channels.
  1398. See also: resetbans, resetexempts, resetinvites
  1399. :leaf:resetbans
  1400. ### $bresetbans$b [channel]
  1401. Resets the bot's ban list for the channel. any bans on the channel
  1402. that aren't in the ban list (either the global list or the local
  1403. channel ban list) will be removed, and if there are any bans in the
  1404. global ban list or channel ban list that are not currently on the
  1405. channel, they will be added.
  1406. See also: bans, console%{+m|m}, reset%{-}
  1407. :leaf:resetexempts
  1408. ### $bresetexempts$b [channel]
  1409. Resets the bot's exemption list for the channel. this command
  1410. behaves exactly like resetbans, except it is for exempts.
  1411. See also: resetbans, resetinvites
  1412. :leaf:resetinvites
  1413. ### $bresetinvites$b [channel]
  1414. Resets the bot's invitation list for the channel. this command
  1415. behaves exactly like resetbans, except it is for invites.
  1416. See also: resetbans, resetinvites
  1417. ::restart
  1418. ### $brestart$b
  1419. Makes the bot restart, but keeps its connection to IRC active.
  1420. See also: rehash, reload, save
  1421. :hub:save
  1422. ### $bsave$b
  1423. This makes the bot write its entire userfile to disk. This is useful if you
  1424. think the bot is about to crash or something, since the user file is only
  1425. written to disk about once an hour.
  1426. See also: reload, backup
  1427. :leaf:say
  1428. ### $bsay$b [channel] <text>
  1429. Dumps the text to your current console channel (or other specified
  1430. channel), as if the bot "said" it.
  1431. ::secpass:
  1432. ### $bsecpass$b <password|rand>
  1433. Changes your secpass on the bot. This is used for Authing via /msg
  1434. and for DCC. If the password is 'rand', a random password will be used.
  1435. %{+mi}See also: chpass%{-}%{+n}, chsecpass%{-}
  1436. :leaf:servers
  1437. ### $bservers$b
  1438. Lists the servers that the bot has in its server list. this is
  1439. the list it rotates through when changing servers. it starts
  1440. with a static list which it loads from its config-file when the
  1441. bot is booted up. after that, you can add servers with the
  1442. $b'%djump'$b command. the server list will indicate which server the
  1443. bot is currently on.
  1444. :hub:set:
  1445. ### $bset$b [<+/->list] [<var> [data|-]]
  1446. Sets various options. Type alone to see all set entries. To set
  1447. an entry do '%dset name VALUE'. Use '-' as a value to clear an entry.
  1448. The <var> may have wildcards. Wildcards will only be used for listing
  1449. variable, not for setting.
  1450. The '+' may be used to add 1 element to a comma separated list. (ie, servers)
  1451. The '-' may be used to remove 1 element from a comma separated list. (ie, servers)
  1452. The 'list' may be used to list a comma separated variable as a vertical listing. (like '%dservers')
  1453. Current variables:
  1454. $uB$u: Boolean (0/1/true/on/false/off)
  1455. $uS$u: String
  1456. $uN$u: Number
  1457. $uL$u: List
  1458. $uR$u: Rate. Set as 'number:interval', ie, '1:5'
  1459. $uD$u: Detected vars have the following options: $bignore$b/0, $bwarn$b/1, $breject$b/2,
  1460. $bdie$b/3, $bsuicide$b/4
  1461. [L] $balias$b List of dcc aliases in format '<alias> <cmd> [parms]'. First
  1462. matching alias is used. Normal flag checking is done
  1463. after the alias is expanded.
  1464. $bAliases may not reference other aliases.$b
  1465. [N] $bserver-port$b Default port to use for server connections.
  1466. [N] $bserver-port-ssl$b Default port to use for SSL server connections.
  1467. [B] $bserver-use-ssl$b Use SSL for IRC server connections?
  1468. [B] $bauth-chan$b If set, auth cmds will work in channels as well as in msg, otherwise
  1469. only in msg.
  1470. [S] $bauth-key$b The authkey used during authing. Give to users if they need to auth.
  1471. (can be bot specific)
  1472. [C] $bauth-prefix$b The prefix character used for msg cmds, ie: $u!$uop or $u.$uop
  1473. [B] $bauth-obscure$b Will not halt on dcc login if pass is wrong. Will display auth hash..
  1474. Will always fail at hash though.
  1475. [N] $bdcc-autoaway$b Time in seconds until a user is set auto-away on dcc.
  1476. (0/- to disable)
  1477. [B] $bmanop-warn$b Warn users via /NOTICE when they msg-op in a channel with manop
  1478. punishments.
  1479. * Msg cmd vars may be left blank to disable usage of cmd.
  1480. [S] $bmsg-op$b Defines the cmd for opping via msging the bot.
  1481. [S] $bmsg-pass$b Defines the cmd for setting a pass via msging the bot.
  1482. [S] $bmsg-invite$b Defines the cmd for requesting invite via msging the bot.
  1483. [S] $bmsg-ident$b Defines the cmd for identing via msging the bot.
  1484. [S] $bmsg-release$b Defines the cmd for releasing a nick.
  1485. [N] $bfork-interval$b Number of seconds in between each fork() call made by the bot.
  1486. (Resets PID/CPU)
  1487. [R] $bflood-msg$b Msgs:Secs until a host is ignored. (0:0 to disable)
  1488. [R] $bflood-ctcp$b Ctcps:Secs until a host is ignored. (0:0 to disable)
  1489. [R] $bflood-callerid$b Msgs:Secs until triggering to set CALLERID for
  1490. 60 seconds (0:0 to disable)
  1491. [D] $blogin$b How to handle someone logging in to the shell.
  1492. [D] $btrace$b How to handle someone tracing/debugging the bot.
  1493. [D] $bpromisc$b How to handle when an interface is set to promiscuous mode.
  1494. [D] $bhijack$b How to handle when a commonly used hijack method attempt is detected.
  1495. [L] $bservers$b Comma-separated list of servers the bot will use.
  1496. [L] $bservers-ssl$b Comma-separated list of SSL servers to use if server-use-ssl is true.
  1497. [L] $bservers6$b Comma-separated list of servers the bot will use (FOR IPv6).
  1498. [L] $bservers6-ssl$b Comma-separated list of IPv6 SSL servers to use if server-use-ssl is true.
  1499. [N] $bmsgburst$b How many messages to burst at once to server. (Too high will excess flood)
  1500. [N] $bmsgrate$b How often (msecs) to dequeue msgs to the server. Only used on
  1501. non-ratbox servers. Too small a value can result in Excess Flood.
  1502. [L] $bgroups$b List of groups that the affected bots are a part of.
  1503. [L] $brbl-servers$b Servers to use for RBL checking in channels that are +rbl.
  1504. [S] $brealname$b The bot's "real name" when connecting. (supports '$n' expansion)
  1505. [S] $busermode$b The bot's usermode on IRC. (Set on connect/rehash)
  1506. [B] $bdeaf$b Runs bot in DEAF mode if the IRCD supports it. This will stop
  1507. the IRCD from sending any channel conversations to the bot.
  1508. This will decrease bandwidth/CPU used, as well as prevent
  1509. sniffing of channels.
  1510. [B] $bcallerid$b Run bot in CALLERID mode. This is commonly known as +g on most
  1511. servers. +c bots will automatically accept messages from
  1512. known users. Note that this will break msg-ident.
  1513. [B] $bfish-auto-keyx$b Whether to automatically do a DH1010 FiSH Key exchange when
  1514. accepting users. This is only supported if using callerid.
  1515. [B] $bfish-paranoid$b Whether to automatically re-keyexchange after every message. This
  1516. mitigates replay attacks.
  1517. [S] $baltchars$b Define string of characters to cycle when generating alternative
  1518. nicks when nick is taken. Ie: _-`[].
  1519. [S] $bjupenick$b The bot will attempt to jupe this nick. It will never use a variation
  1520. of the nick though. It will still prefer 'nick' over a variation
  1521. of jupenick.
  1522. [S] $bnick$b The bot's preferred nickname on IRC. It will auto rotate and append
  1523. 'altchars' on the end if taken.
  1524. [N] $bnotify-time$b The number of seconds between server notify checks for nick, if
  1525. the server does not support MONITOR.
  1526. [B] $birc-autoaway$b Should the bot go away auto?
  1527. [B] $bident-botnick$b Send botnick instead of shell username on connect (non-ident)
  1528. [B] $boidentd$b Make bot try and use oidentd spoofing as BOTNICK.
  1529. [B] $blink_cleartext$b Allows bots to link without an encryption scheme. This is needed
  1530. for allowing older bots to link in. Be sure to never leave this on
  1531. unless upgrading or letting an older bot link in to upgrade.
  1532. [B] $bdccauth$b Boolean (0 or 1). Set to use auth checking on dcc/telnet login.
  1533. [N] $bop-bots$b Number of bots to ask every time an oprequest is to be made.
  1534. [N] $bin-bots$b Number of bots to ask every time an inrequest is to be made.
  1535. [R] $bop-requests$b (requests:seconds) limits how often the bot will ask for ops.
  1536. [R] $bclose-threshold$b (H:L) When at least H hubs but L or less leafs are linked, close
  1537. all channels.
  1538. [N] $blag-threshold$b Maximum acceptable server lag for the bot to send/honor requests.
  1539. [N] $bkill-threshold$b When more than this many bots have been killed/klined in the last
  1540. minute, close all channels.
  1541. [N] $bfight-threshold$b When more than this many +obeI/-obeI/kicks have happened on a channel
  1542. in 1 minute, the channel is locked down. Channel must be +protect.
  1543. See also '%dhelp chanset' for +protect.
  1544. [N] $bcloak-script$b Decides which script the bot cloaks as.
  1545. If set to 0, a random script will be used.
  1546. 1=plain bitchx, 2=crackrock, 3=neonapple, 4=tunnelvision,
  1547. 5=argon, 6=evolver, 7=prevail 8=cypress 9=mIRC 10=other
  1548. * $bExamples$b:
  1549. '%dset realname I have no realname, I'm a bot!'
  1550. '%dbotset wraith realname The best pack evar!'
  1551. '%dset +servers irc.efnet.org'
  1552. '%dset -servers irc.efnet.org'
  1553. '%dset list servers'
  1554. '%dset -servers 10'
  1555. '%dbotset wraith nick -'
  1556. See also: botset
  1557. :leaf:setkey
  1558. ### $bsetkey$b <nick> [key|rand]
  1559. Sets the FiSH key for the given target.
  1560. Use no key to clear the currently set key.
  1561. Use 'rand' to generate a random key.
  1562. See also: keyx
  1563. ::sha1
  1564. ### $bsha1$b <string>
  1565. Returns the SHA1 hash of the specified string.
  1566. See also: randstring, md5, sha256, hash, encrypt, encrypt_fish, decrypt, decrypt_fish
  1567. ::sha256
  1568. ### $bsha256$b <string>
  1569. Returns the SHA256 hash of the specified string.
  1570. See also: randstring, md5, sha1, hash, encrypt, encrypt_fish, decrypt, decrypt_fish
  1571. ::simul
  1572. ### $bsimul$b <handle> <text>
  1573. This allows you to simulate the specified handle typing the given text.
  1574. For example:
  1575. '%dsimul dweeb %dquit'
  1576. This would appear just as if "dweeb" typed '%dquit'. This command will not
  1577. work unless eggdrop has simul enabled in the config file.
  1578. See also: su
  1579. ::slowjoin:
  1580. ### $bslowjoin$b <channel> <interval-seconds> [channel-options]
  1581. All bots on the botnet will join the channel at the rate of one bot
  1582. per 'interval-seconds'. If any channel-options are specified, the
  1583. channel will be added with those options.
  1584. See also: slowpart, chanset, chaninfo
  1585. ::slowpart:
  1586. ### $bslowpart$b <channel> <interval-seconds>
  1587. All bots on the botnet will part the specified channel at the rate
  1588. of one bot per 'interval-seconds'
  1589. %{+n}See also: slowjoin%{-}
  1590. ::status
  1591. ### $bstatus$b
  1592. ### $bstatus all$b
  1593. Displays a condensed block of status information about the bot.
  1594. is running. For example:
  1595. [01:15] #bryan# status
  1596. I am wtest, running [wraith] Wraith 1.2.3-cvs: 274 users
  1597. Online for 00:33 (terminal mode) CPU 00:01 cache hit 28.3%
  1598. OS: Linux 2.4.30
  1599. Running from: /home/wheel/bryan/.sshrc
  1600. uid: bryan (1000) pid: 25114 homedir: /home/wheel/bryan
  1601. Tempdir : /home/wheel/bryan/.ssh/.../
  1602. Channels: #|DAWG|Net, #|DAWG|Tcl
  1603. Online as: D|Anakha!wcc@cia.nu (|DAWG|Anakha - |DAWG|Net)
  1604. Server irc.inet.tele.dk:6667 (connected for 11 days)
  1605. #|DAWG|Net: 6 members, enforcing "+istn" (lurking)
  1606. #|DAWG|Tcl: 42 members, enforcing "+tn" (lurking)
  1607. The first line tells you the bot's name, what version of Eggdrop it's
  1608. running, the number of users the bot has records of, and the amount of
  1609. memory being used by the userfile. The second line tells you the uptime of
  1610. the bot, CPU time, and cache hit. The third shows the bot's admin, and the
  1611. forth shows its current config file. The fifth line shows what operating
  1612. system the bot is running on. The next two lines show Tcl information. If
  1613. debug mode is enabled, additional info may be shown. Sharing information
  1614. will also be shown if it's being used.
  1615. Select information from modules will be displayed after the core
  1616. information. If you use $b'%dstatus all'$b instead, you will see all status
  1617. information available from loaded modules.
  1618. See also: channel, channels%{+a}, debug%{-}
  1619. ::stick
  1620. ### $bstick$b [ban/exempt/invite] <hostmask/number> [channel]
  1621. Makes a ban, exempt, or invite "sticky". This means that the bot will always
  1622. try to keep it active on the channel. Obviously, if the channel isn't using
  1623. dynamic bans, this has no effect.
  1624. See also: bans, exempts, invites, unstick, +ban, +exempt, +invite
  1625. ::store
  1626. ### $bstore$b
  1627. Stores your console settings so that they are restored automatically the
  1628. next time you join the party line. ('console' calls this auto)
  1629. See also: console
  1630. ::strip
  1631. ### $bstrip$b [modes]
  1632. Allows you to remove embedded 'attribute' codes from your partyline output. Valid
  1633. options are:
  1634. $bb$b - remove all boldface codes
  1635. $bc$b - remove all color codes
  1636. $br$b - remove all reverse video codes
  1637. $bu$b - remove all underline codes
  1638. $ba$b - remove all ANSI codes
  1639. $bg$b - remove all ctrl-g (bell) codes
  1640. The mode can also be a modifier like '+c' or '-bu' or '+ru-c'. If
  1641. you omit modes, it will show your current setting.
  1642. NOTE: THIS CMD DOES NOT AFFECT ALL COLORS, PLEASE SEE '%dhelp color'
  1643. See also: fixcodes, color, echo, login, page
  1644. %{+m}
  1645. ### $bstrip$b <user> [modes]
  1646. Set the strip level of another user. A master can't set their own strip
  1647. flags without prefixing the modes with a '+' or '-'.%{-}
  1648. ::su
  1649. ### $bsu$b <user>
  1650. Lets you assume the identity of another user. If you are a global owner,
  1651. this does not require a password. Otherwise, you will be asked for the
  1652. user's password. $b%dquit$b returns you to your original handle.
  1653. ::suicide
  1654. ### $bsuicide$b [reason]
  1655. Makes bot remove itself and then dies. If bot is first bot in its binary
  1656. it will kill all bots running for that binary.
  1657. See also: die, conf, botcmd
  1658. :leaf:swhois
  1659. ### $bswhois$b [server/nick] <nick>
  1660. Displays a server /whois for the specified nick. Specifying
  1661. the nick twice will display idle time. Specifying a server will
  1662. display the whois as viewed by that server.
  1663. If the nick is currently not online, a /WHOWAS is done automatically.
  1664. This cmd will hide restricted username/channel info as follows:
  1665. -Username will be hidden for higher level users
  1666. -Users will not see +private chans unless they are in the chan or chan is -sp
  1667. -Users will not see channels that are +s or +p unless they have op access there
  1668. See also: find
  1669. ::tcl
  1670. ### $btcl$b script
  1671. Executes the given string and returns the result.
  1672. :leaf:topic
  1673. ### $btopic$b <text>
  1674. Changes the channel's topic, assuming the bot is a chanop or the
  1675. channel is not +t (uses your current console channel).
  1676. See also: console
  1677. :hub:trace
  1678. ### $btrace$b <bot>
  1679. Sends out a trace signal to another bot. If/when the trace signal returns,
  1680. (and it should!) you will get an output that looks something like this:
  1681. Trace result -> Valis:Stonewall:NoBoty:SomeBoty
  1682. This is a list of the bots connected between you and the destination bot.
  1683. It should also return the time in seconds taken for the trace to occur.
  1684. See also: bots, bottree
  1685. ::traffic
  1686. ### $btraffic$b
  1687. Shows total and daily net traffic stats since the last $b'%drestart'$b.
  1688. Stats groups are IRC, Botnet, Partyline, Transfer.mod and Misc.
  1689. %{+m}See also: restart%{-}
  1690. :leaf:umode
  1691. ### $bumode$b <+flags>
  1692. Sets the given usermode flags for the bot.
  1693. %{+a}
  1694. See also: dump
  1695. %{-}
  1696. ::unlink
  1697. ### $bunlink$b <bot|*> [reason]
  1698. This disconnects the specified bot from the botnet (assuming it was linked
  1699. in the first place). Some bots (sharebots in particular) might not allow you
  1700. to unlink them. If "*" is specified as the parameter, all bots will be
  1701. unlinked.
  1702. See also: %{+n}link, %{-}bots, downbots%{+n}, newleaf, bottree%{-}%{+a}, newhub%{-}
  1703. ::unstick
  1704. ### $bunstick$b [ban/exempt/invite] <hostmask/number> [channel]
  1705. Makes a "sticky" ban, exempt, or invite normal again.
  1706. See also: bans, exempts, invites, stick, -ban, -exempt, -invite
  1707. ::update:
  1708. ### $bupdate$b <binary>
  1709. The bot will attempt to start the new binary and kill itself.
  1710. The specified binary will need to be in the same directory
  1711. as the bot is running in.
  1712. See also: whois
  1713. :hub:uplink:
  1714. ### $buplink$b <bot> [uplink]
  1715. Changed a bot's preferred botnet uplink. Leave 'uplink' blank
  1716. to clear a bot's uplink, which will make it stay on any hub
  1717. that it can connect to. An uplink must be a hub-bot.
  1718. See also: hublevel, chaddr
  1719. ::uptime
  1720. ### $buptime$b
  1721. Displays the bot's current uptime.
  1722. See also: status
  1723. ::userlist:
  1724. ### $buserlist$b
  1725. A list of all users is displayed. Users with higher flags than you
  1726. will not appear in the list.
  1727. See also: match, whois
  1728. ::version:
  1729. ### $bversion$b
  1730. Displays the pack version and uname.
  1731. See also: botversion, netversion, about%{+m|m}, status%{-}
  1732. :leaf:voice
  1733. ### $bvoice$b <nickname> [channel|*]
  1734. Will give a +v voice to a person you specify, so long as the
  1735. bot is opped on that channel. Specify * for all channels.
  1736. See also: devoice
  1737. ::w:
  1738. ### $bw$b
  1739. The output of 'w' will be displayed over DCC, bot the shell
  1740. the bot is running on.
  1741. %{+i}See also: netw%{-}
  1742. ::who
  1743. ### $bwho$b [bot]
  1744. Displays a list of users on the local bot.
  1745. For example:
  1746. [23:21] #bryan# who
  1747. Party line members: (* = owner, + = master, @ = op)
  1748. *bryan telnet@xxx.atlaga.adelphia.net (idle 17m)
  1749. *bryan telnet@xxx.atlaga.adelphia.net
  1750. Bots connected:
  1751. -> wortel (05 Dec 16:32) eggdrop v1.6.15 <efnet>
  1752. The first section is people on your current channel (the party line, if you
  1753. haven't changed channels) who are on the bot. A '*' will precede the handle
  1754. if they are a bot owner, "+" if they are a master, "%%" if they are a botnet
  1755. master, or "@" if they are an op. The user's nickname, hostname, and
  1756. possibly an idle time and/or away message will be displayed.%{+n} Owners
  1757. will also see the user's dcc idx.%{-}
  1758. The next section is bots directly linked to the current bot. The arrow
  1759. indicates which bot initiated the connection. The right arrow means this bot
  1760. connected to wortel. A left arrow means the remote bot linked to this bot. A
  1761. '+' next to the arrow indicates that the bot is sharing userfiles with us.
  1762. The connection time (05 Dec 16:32) and bot version are also shown, as well
  1763. as what is specified under "network" in the config file.%{+n} Owners will
  1764. also see the bot's dcc idx.%{-}
  1765. The final section (not shown in example above) is a list of users on the
  1766. local bot who are not on your channel. This will be omitted if there are no
  1767. users on other channels. If you specify the name of a remote bot, for
  1768. example $b'%dwho valis'$b, the who request will be sent to that bot instead.
  1769. The remote bot must be linked to the botnet.
  1770. %{+m}
  1771. Masters may also see "(con <flags>)" after a user's entry, which shows the
  1772. user's console flags/modes (see $b'%dhelp console'$b).
  1773. In the final section (users that aren't on the current channel), masters
  1774. will see the actual channels other users are on. Also, people in the
  1775. filesystem will be listed (as being in channel "files") if the filesys
  1776. module is loaded. A '+' next to the nickname here means the user has
  1777. access to return to the party line.%{-}
  1778. See also: whom
  1779. ::whoami
  1780. ### $bwhoami$b
  1781. Shows your current handle and to what bot you are connected.
  1782. See also: whom
  1783. ::whois:
  1784. ### $bwhois$b [nickname]
  1785. Shows you stored information about a user record.
  1786. If no nickname is specified, your own record is shown. Five headings are
  1787. displayed:
  1788. $bHANDLE$b - the handle (nickname) of the user
  1789. $bBOTNICK$b - This user record is a bot.
  1790. $bPASS$b - "yes" if she has a password set; "no" otherwise
  1791. (bots dont use passwords)
  1792. $bFLAGS$b - the list of flags for this user (see below)
  1793. $bLAST$b - the time or date that the user was last on irc or the partyline
  1794. Valid flags:
  1795. $bd$b = deop (user cannot be opped)
  1796. $bk$b = autokick (user is kicked and banned automatically)
  1797. $bo$b = op (user has op access; this is not auto-op)
  1798. $bq$b = quiet (user cannot be voiced)
  1799. $bv$b = voice (user gets +v automatically from +y bots)
  1800. Valid user-only flags:
  1801. $ba$b - admin (user has absolute control over botnet minus a few perm-owner only cmds)
  1802. Be careful who you give this to, only the perm-owner of the net should even have it.
  1803. $bi$b - hub access (user has hub DCC access)
  1804. $bj$b - leaf access (user has leaf DCC access)
  1805. $bm$b = master (user has more access to the botnet cmds than a normal user)
  1806. $bn$b = owner (user has just about full access to bot)
  1807. $bO$b = autoop (user is auto-opped; this does not require any authentication)
  1808. $bp$b - partyline-chat (user can speak on partyline. [$brequires +j or +i$b])
  1809. $bx$b = flood-exempt (user is exempt from flood kicks)
  1810. Valid bot-only flags:
  1811. $bB$b = backup-bot (bot will only join chans marked +backup, see '%dhelp chaninfo')
  1812. $bc$b - chat-bot (bot accepts DCC chat on irc)
  1813. $bf$b = flood-bot (bot reacts to floods based on [cpu intensive] flood settings)
  1814. $bl$b = limit-bot (bot sets limit in all channels, see '%dhelp chaninfo') [$bCPU INTENSIVE$b]
  1815. $br$b = resolve (bot resolves clients in to match against userlist) [$bCPU INTENSIVE+$b]
  1816. $bu$b - update-bot (see doc/UPGRADING)
  1817. $by$b = voice-bot (bot gives out voices/auto-ops in chans) [$bCPU INTENSIVE$b]
  1818. $bFlags followed by a '=' may also be used for a specific channel record.$b
  1819. Hostmasks for the user are displayed on the following lines. If the user is
  1820. a bot, there will be a line below which says "ADDRESS:" and gives the bot's
  1821. telnet address. Some user entries may have "EMAIL:" and "INFO:" entries too.
  1822. There may be additional information displayed depending on the modules
  1823. loaded, such as filesys and console.
  1824. %{+m}
  1825. Masters: if the user has a comment, you will see it under "COMMENT:".%{-}
  1826. See also: match, who, whom%{+m|m}, chattr, chaninfo%{-}
  1827. ::whom
  1828. ### $bwhom$b [channel|*]
  1829. Displays a list of users on the botnet.
  1830. '*' is assumed if no parameters are given.
  1831. For example:
  1832. [23:12] #bryan# whom
  1833. Nick Bot Host
  1834. ---------- --------- --------------------
  1835. *bryan Anakha telnet@xxx.atlaga.adelphia.net [idle 8m]
  1836. *BitchSmack Anakha telnet@xxx.atlaga.adelphia.net
  1837. Total users: 2
  1838. Each user's nickname will be listed in the first column, preceded by a "*"
  1839. if they are a bot owner, "+" if they are a master, "%%" if they are a botnet
  1840. master, or "@" if they are an op. In the next column, the bot the user is
  1841. connected to will be displayed. In the third column, the host is shown. If
  1842. the user is away, the away message will be shown. Likewise, if they are
  1843. idle, their idle time will be displayed.
  1844. To see what users are on a different channel, you may specify a channel
  1845. number/name. If you specify "*" as the channel, all users on all botnet
  1846. channels will be shown.
  1847. See also: who, chat%{+m}, bots%{-}
  1848. ::end