help.txt 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536
  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 make it only visible within the bot, and not used as the ban
  7. reason. Ban time has to be expressed in days, hours, and/or minutes.
  8. See also: bans, -ban, stick, unstick
  9. ::+exempt
  10. ### %b+exempt%b <hostmask> [channel] [%%<XdXhXm>] [comment]
  11. Adds an exempt to the list of exempts stored on the bot, with optional
  12. comment and exempt time. This exempt is stored with your handle as the
  13. creator, and will be in effect for every channel if no channel is specified.
  14. Exempt time has to be expressed in days, hours, and/or minutes.
  15. See also: exempts, -exempt, stick, unstick
  16. ::+host
  17. ### %b+host%b [handle] <hostmask>
  18. Adds a hostmask to a user's user record. Hostmasks are used to identify your
  19. handle on IRC. If a handle is not specified, the hostmask will be added to
  20. YOUR user record.
  21. See also: -host
  22. ::+ignore
  23. ### %b+ignore%b <hostmask> [%%<XdXhXm>] [comment]
  24. Adds an ignore to the list of ignores stored on the bot, with optional
  25. comment and ignore time. This ignore is stored with your handle as the
  26. creator. Ignore time has to be expressed in days, hours, and/or minutes.
  27. See also: -ignore, ignores
  28. ::+invite
  29. ### %b+invite%b <hostmask> [channel] [%%<XdXhXm>] [comment]
  30. Adds an invite to the list of invites stored on the bot, with optional
  31. comment and invite time. This invite is stored with your handle as the
  32. creator, and will be in effect for every channel if no channel is specified.
  33. Invite time has to be expressed in days, hours, and/or minutes.
  34. See also: invites, -invite, stick, unstick
  35. ::+user
  36. ### %b+user%b <handle> [hostmask]
  37. Creates a new user record for the handle given. The new user record will
  38. have no flags, an optional hostmask, and a random pass/secpass.
  39. See also: -user, +host, -host%(hub)%{+n}, newleaf
  40. :hub:-bot
  41. ### %b-bot%b <bot>
  42. This is exactly the same as %b'%d-user'%b (it removes a user record). It is
  43. included for convenience.
  44. See also: +user, -user%{+n}, newleaf
  45. ::-host
  46. ### %b-host%b <hostmask>
  47. Removes a host from your handle.
  48. %{+m|m}
  49. ### %b-host%b <handle> <hostmask>
  50. Removes a hostmask from a user's user record.
  51. %{-}
  52. See also: +host
  53. ::-ignore
  54. ### %b-ignore%b <hostmask/number>
  55. Removes the specified ignore from the list of ignores stored on the bot. You
  56. may also reference the ignore by the number shown by the 'ignores' command.
  57. See also: +ignore, ignores
  58. ::-user
  59. ### %b-user%b <handle>
  60. Removes the specified handle's user record.
  61. See also: +user%(hub)%{+a}, -bot%{+n}, newleaf
  62. ::addlog
  63. ### %baddlog%b <text>
  64. Adds your comment to the bot's logfile. Bot masters can go back later and
  65. review the log, and will see your comment (with your handle attached). This
  66. is useful for explaining confusing activity.
  67. ::away
  68. ### %baway%b [reason]
  69. Marks you as "away" on the party line. Your away message will show up in
  70. the %b'%dwho'%b list, and will be displayed to anyone who tries to send you
  71. a note. Your notes will be stored, and then displayed to you as soon as you
  72. are no longer away. Saying something on the party line will automatically
  73. remove your "away" status, or you can type %b'%dback'%b or %b'%daway'%b by
  74. itself.
  75. See also: back
  76. ::back
  77. ### %bback%b
  78. This marks you as no longer away on the party line.
  79. See also: away
  80. :hub:backup
  81. ### %bbackup%b
  82. This makes the bot write a backup of its entire user list to the disk.
  83. This is useful if you feel the need to backup the userfile and channel
  84. settings.
  85. See also: reload, save
  86. :hub:binds
  87. ### %bbinds%b [type/match] [all]
  88. Shows the Tcl bindings in effect, in a list similar to this:
  89. Command bindings:
  90. TYPE FLGS COMMAND HITS BINDING (TCL)
  91. msg -|- rose 0 msg_rose
  92. msg -|- go 0 msg_go
  93. dcc m|- bind 0 cmd_bind
  94. pub -|- gross 0 pub_gross
  95. The fields should be self-explanatory, except for HITS, which records the
  96. number of times that binding has been called. If not, go read the file
  97. %b'doc/tcl-commands.doc'%b for help on the Tcl bind command. Note that the
  98. builtin commands are now shown. You may also specify a type of binding to
  99. show (i.e. %b'%dbinds msg'%b) or you can specify a wild card match (i.e.
  100. %b'%dbinds *seen*'%b) if you want to narrow the field a bit. The wild card
  101. matches will match against the TYPE, COMMAND and BINDING fields. You can
  102. view more binds by adding 'all' to the end of the command.
  103. See also: tcl
  104. :hub:boot
  105. ### %bboot%b <handle[@bot]> [reason]
  106. Kicks a user off the party line and displays the reason, if you specify
  107. one. You can also specify a bot, and attempt to boot someone from another
  108. bot on the botnet, though it may be rejected if that bot does not allow
  109. remote boots. You can not boot a bot owner.
  110. :hub:botinfo
  111. ### %bbotinfo%b
  112. Requests information from every bot currently on the botnet. Each bot should
  113. eventually send you one line containing its version, network setting,
  114. channels, and uptime.
  115. See also: %{+n}bottree, vbottree%{+m}, bots
  116. :hub:bots
  117. ### %bbots%b
  118. Shows the list of bots currently on the botnet.
  119. Example:
  120. Bots: cEvin, ruthie, Killa1
  121. There is no indication of which bots are directly connected to this current
  122. bot. %{+n}Use %b'%dwho'%b or %b'%dbottree'%b for that information.%{-}
  123. See also: downbots%{+n}, bottree, vbottree%{-}, botinfo
  124. :hub:bottree
  125. ### %bbottree%b
  126. Shows a tree-format diagram of the bots currently on the botnet. It's just a
  127. nice way to get a feel for how the bots are physically connected. If 2 bots
  128. are sharing, a + will be indicated, or a ? if nothing is known.
  129. See also: bots, downbots, botinfo, vbottree
  130. :hub:chaddr
  131. ### %bchaddr%b <bot> <address[:bot port[/user port]]>
  132. Changes the address for a bot. This is the address your bot will try to
  133. connect to when linking. If the bot has a separate port for bots and users,
  134. they should be separated by a slash (/).
  135. %{+a}
  136. It is not recommneded that this is used, you should change your source,
  137. and update all bots instead.
  138. %{-}
  139. See also: link
  140. ::chat
  141. ### %bchat%b <on/off>
  142. ### %bchat%b <[*]channel number/name>
  143. Changes your current channel on the partyline. When you first connect to
  144. the partyline, it places you on channel 0 (the main party line).
  145. Some channels may have assigned names if the assoc module is loaded. For
  146. these, you can specify the channel by name instead of channel number if
  147. you wish.
  148. %b'%dchat off'%b removes you from all channels, including the main party line.
  149. You can still use bot commands and see the console, but you can't talk to
  150. anyone except via %b'%dnote'%b. %b'%dchat on'%b returns you to the main party
  151. line (channel 0) if you were elsewhere.
  152. If you prefix the channel with a '*', you will join a local channel.
  153. See also: console
  154. ::chattr
  155. ### %bchattr%b <handle> [flags] [channel]
  156. This lets you view and change the flags for a user.
  157. For example, to give Lamer the p and f flags:
  158. .chattr Lamer +pf
  159. To remove Denali from the global op list:
  160. .chattr Denali -o
  161. You may also do any combination of the above:
  162. .chattr Fred1 -m+xj-o
  163. You can also change the flags for Usagi on a specific channel by supplying
  164. the channel after the attributes:
  165. .chattr Usagi -m+dk-o #blah
  166. Changing global and channel specific flags within the same command line is
  167. also possible (global +f, +o #lamer):
  168. .chattr Bill f|o #lamer
  169. Whether or not you change any flags, it will show you the user's attributes
  170. afterwards. To get a list of all possible flags, see %b'%dhelp whois'%b.
  171. %bNOTES:%b Only the owner may add or remove the 'a' (admin) or 'n' (owner) flags.
  172. It is pointless to -a a permanent owner.
  173. You must remove the permanent owner in the binary.
  174. See also: whois
  175. :hub:chhandle
  176. ### %bchhandle%b <oldhandle> <newhandle>
  177. Changes the handle of a user. For example, to change the handle of user
  178. 'gavroche' to 'jamie', you would use 'chhandle gavroche jamie'.
  179. See also: chpass%{+n}, chsecpass
  180. :hub:chpass
  181. ### %bchpass%b <handle> [newpassword]
  182. Changes a user's password. If you do not specify the new password, the user
  183. effectively no longer has a password set. A password is needed to get ops,
  184. join the party line, etc. If the newpassword is 'rand', a random password
  185. will be used.
  186. See also: chhandle%{+n}, chsecpass
  187. ::comment
  188. ### %bcomment%b <user> <comment>
  189. Creates or changes the comment field for a user. The comment field can only
  190. be seen via 'whois' or 'match'. Non-masters cannot see the comment field.
  191. Using the comment 'none' will clear a user's comment.
  192. :hub:dccstat
  193. ### %bdccstat%b
  194. Displays a table-format list of all "dcc" connections in use on the bot.
  195. Dcc stands for "Direct Client-to-client Communication", and Eggdrop expands
  196. this to cover every open socket. Any type of network connection to the bot
  197. is considered a "dcc" connection.
  198. The headings of the table are:
  199. %bSOCK%b the socket number of this connection (always unique)
  200. %bADDR%b the ip address mask of the host the bot is connected to, if
  201. applicable
  202. %bPORT%b the port number being used for this connection
  203. %bNICK%b the handle of the user or bot, if applicable
  204. %bHOST%b the hostname corresponding to the IP address, if available
  205. %bTYPE%b the type of dcc connection (see below)
  206. The types of connections currently possible are as follows (but more are
  207. being added all the time):
  208. %bCHAT%b dcc-chat partyline user
  209. %bPASS%b user entering dcc chat (being asked for password)
  210. %bSEND%b user sending a file
  211. %bGET%b sending a file to a user
  212. %bGETP%b pending get (waiting for the user to acknowledge)
  213. %bLSTN%b telnet listening port (in place of a hostname, it will show the
  214. callback procedure name, or a mask of acceptable handles)
  215. %bT-IN%b incoming telnet user (being asked for handle)
  216. %bFILE%b user in dcc-chat file area
  217. %bBOT%b connected bot (botnet connection)
  218. %bBOT*%b pending bot link (waiting for acknowledgement)
  219. %bRELA%b user in relay connection to another bot
  220. %b>RLY%b bot being relay'd to (one for each "RELA")
  221. %bCONN%b pending telnet connection (chat, relay, bot-link, etc)
  222. %bNEW%b new user via telnet (entering a handle)
  223. %bNEWP%b new user via telnet (entering a password)
  224. In addition, 'CHAT' and 'BOT' have flags listed for each connection. Capital
  225. letters mean that the flag is on, and lowercase letters mean that the flag
  226. is off. The flags for 'CHAT' are:
  227. %bC%b in file area, but allowed to return to party line
  228. %bP%b party line access only
  229. %bT%b telnet connection (instead of dcc chat)
  230. %bE%b echo is on
  231. %bP%b paging is on
  232. %b6%b socket is ipv6
  233. The flags for 'BOT' are:
  234. %bP%b ping sent, waiting for reply
  235. %bU%b user-file sharing is active
  236. %bC%b local bot initiated the connection
  237. %bO%b user-file offered, waiting for reply
  238. %bS%b in the process of sending the user-file
  239. %bG%b in the process of getting the user-file
  240. %bW%b warned this bot to stop hubbing
  241. %bL%b leaf-only bot (not allowed to be a hub)
  242. %bI%b bot is currently in the 'linking' stage
  243. %bA%b bot is being aggressively shared with
  244. For 'CHAT' users, the party-line channel is also listed.
  245. ::debug
  246. ### %bdebug%b
  247. Display a dump of memory allocation information, assuming the bot was
  248. compiled with memory debugging. It's useless to anyone but developers
  249. trying to find memory leaks.
  250. ::die
  251. ### %bdie%b [reason]
  252. This kills the bot. The bot goes offline immediately, logging who issued
  253. the 'die' command. You shouldn't have to use this too often. If you specify
  254. a reason, it is logged, otherwise the reason is "authorized by <handle>".
  255. ::echo
  256. ### %becho%b <on/off>
  257. Specifies whether you want your messages echoed back to you. If it's on,
  258. then when you say something on the party line, it will be displayed to you
  259. just like everyone else will see it. If it's off, then it won't happen.
  260. See also: color
  261. ::fixcodes
  262. ### %bfixcodes%b
  263. This is for use in situations where the bot gets mixed up about the type
  264. of connection you have with it. For example, you /CTCP CHAT the bot and
  265. it thinks you are connecting via telnet, and you see text displayed as
  266. "Local time is now 17:17" for example instead of "Local time is
  267. now 17:17". Use this to turn telnet codes on or off/change the display
  268. mode.
  269. ::handle
  270. ### %bhandle%b <new-handle>
  271. Changes your handle on the bot. This is the handle (nickname) that the
  272. bot will know you as from this point forward. It is used to log into the
  273. bot.
  274. See also: newpass%{+m}, %(hub)chhand, chpass%{+n}, chsecpass
  275. ::ignores
  276. ### %bignores%b [wildcard]
  277. Shows a list of hostmasks from which the bot is currently ignoring msgs,
  278. notices, etc. There are two types of ignores: permanent and temporary.
  279. Permanent ignores never automatically expire. You must use %b'%d-ignore'%b
  280. to remove them.
  281. Here is a sample permanent ignore:
  282. [ 1] *!*@217.156.44.184 (perm)
  283. Wcc: go away
  284. Started 523 days ago
  285. The number (1) can be used to reference the ignore if you wish to remove it
  286. (see %b'%dhelp -ignore'%b). Next is the actual hostmask being ignored. The
  287. "(perm)" means that the ignore is "permanent": that is, it doesn't
  288. automatically expire. The second line of the ignore entry is the comment
  289. ("go away"), and who set the ban (Wcc). The last line shows when the ignore
  290. was added.
  291. Here is a sample temporary ignore:
  292. [ 10] blah!blah@blah.cc (expires in 1 day)
  293. Wcc: requested
  294. Started 18:02
  295. Here, you see the "perm" in the parentheses next to the hostmask is instead
  296. an expire time. This means that the ignore will expire automatically in one
  297. day.
  298. If you use %b'%dignores <wildcard>'%b, it will list all the ignores
  299. that match against your wildcard.
  300. See also: +ignore, -ignore
  301. :hub:link
  302. ### %blink%b [via-bot] <bot-to-link>
  303. Attempts to link to another hub. This command is deprecated and not
  304. recommended for use.
  305. See also: unlink, newleaf%{+a}, -bot
  306. ::match
  307. ### %bmatch%b <attr> [channel] [[start] limit]
  308. This displays all user records with the attributes requested.
  309. "attr" is of the form: <+/-><global>[&/|<channel>[&/|<bot>]]
  310. Specifying "&" as the separator will cause AND style matching.
  311. For example:
  312. .match p&o
  313. This will match all users with both the "p" global flag and the "o" channel
  314. flag on your current console channel.
  315. Specifying "|" as the separator will cause OR style matching.
  316. For example:
  317. .match p|o
  318. This will match all users with either the "p" global flag or the "o" channel
  319. flag on your current console channel. If you specify a channel, it will be
  320. used instead of the current console channel.
  321. For example:
  322. .match p|o #eggdrop
  323. This will match all users with either the "p" global flag or the "o" channel
  324. flag on the channel #eggdrop. You can also match bot flags.
  325. For example:
  326. .match o|o|h
  327. This will match all bots with either the "o" global flag, the "o" channel
  328. flag on the current console channel, or the "h" botflag. You can also limit
  329. the number of total results returned by specifying a limit at the end of the
  330. command. A starting point can also be specified.
  331. For example:
  332. .match p&o #eggdrop 16 25
  333. This would show results 16 through 25 matching any users with the "p" global
  334. flag or the "o" channel flag on #eggdrop.
  335. ### %bmatch%b <wildcard-string> [[start] limit]
  336. This displays all user records where the user's handle or any of the user's
  337. hostmasks match the specified wildcard string. You can also limit the number
  338. of total results returned by specifying a limit at the end of the command. A
  339. starting point can also be specified.
  340. For example:
  341. .match *.edu 16 25
  342. This would show results 16 through 25 matching any users with a hostmask
  343. that ends with ".edu".
  344. ::me
  345. ### %bme%b <text>
  346. Performs an action on the party line. This appears as "* Wcc is leaving",
  347. etc.
  348. ::motd
  349. ### %bmotd%b %{+m}<message>%{-}
  350. This redisplays the partyline Message Of The Day, which was shown when you
  351. first joined the partyline.%{m) Inclue a message to set the motd.
  352. ::newpass
  353. ### %bnewpass%b <password>
  354. Changes your password on the bot. This is similar to the '/msg <bot> pass'
  355. command, except you don't need to specify your old password.
  356. %(hub)%{+m}See also: chpass%{+n}, chsecpass
  357. ::note
  358. ### %bnote%b <nickname[@bot]> <message>
  359. Sends a private note to a user on the partyline. If that user is currently
  360. logged in and not marked as away, the message will be received immediately.
  361. Otherwise, it will be stored and displayed the next time that user joins the
  362. partyline. To send a note to someone on a different bot, add "nick@bot" to
  363. the nickname.
  364. See also: whom, notes
  365. ::page
  366. ### %bpage%b <number/off>
  367. This allows you to slow down the number of lines the bot sends you at once
  368. via the partyline. When enabled, any commands that send greater than the
  369. specified number of lines will stop when that number is reached and wait for
  370. you to type another command (or press enter) to continue. If you have too
  371. many pending lines, you may be booted off the bot.
  372. ::quit
  373. ### %bquit%b [comment]
  374. This disconnects you from the partyline. If you specify a comment, it will
  375. be displayed to other partyline users as you leave.
  376. ::relay
  377. ### %brelay%b <botname>
  378. Relays you via telnet to another bot, whether or not it is currently linked.
  379. The local bot must, however, have a bot record for the bot you wish to
  380. relay to. Typing .quit or "*bye*" on a line by itself will end the relay.
  381. See also: bots%{+n}, newleaf%{+a}, -bot
  382. ::reload
  383. ### %breload%b
  384. Reloads the bot's user file, discarding any changes made since the last
  385. %b'%dsave'%b command or hourly user file save. Sharebots should probably
  386. never do this.
  387. See also: save
  388. ::restart
  389. ### %brestart%b
  390. Restarts the Tcl interpreter, wipes all timers, reloads all modules, and
  391. reloads the config file for the bot (which resets any changes made via the
  392. %b'%dset'%b command and reloads any Tcl scripts your config loads). As with
  393. the %b'%drehash'%b command, it also saves and reloads the user file from disk.
  394. See also: reload, save
  395. :hub:save
  396. ### %bsave%b
  397. This makes the bot write its entire userfile to disk. This is useful if you
  398. think the bot is about to crash or something, since the user file is only
  399. written to disk about once an hour.
  400. See also: reload, backup
  401. ::simul
  402. ### %bsimul%b <handle> <text>
  403. This allows you to simulate the specified handle typing the given text.
  404. For example:
  405. %dsimul dweeb%d.quit
  406. This would appear just as if "dweeb" typed "%dquit". This command will not
  407. work unless eggdrop has simul enabled in the config file.
  408. See also: su
  409. ::strip
  410. ### %bstrip%b [modes]
  411. Allows you to remove embedded 'attribute' codes your partyline output. Valid
  412. options are:
  413. %bb%b - remove all boldface codes
  414. %bc%b - remove all color codes
  415. %br%b - remove all reverse video codes
  416. %bu%b - remove all underline codes
  417. %ba%b - remove all ANSI codes
  418. %bg%b - remove all ctrl-g (bell) codes
  419. The mode can also be a modifier like '+c' or '-bu' or '+ru-c'. If
  420. you omit modes, it will show your current setting.
  421. See also: fixcodes, color, echo
  422. %{+m}
  423. ### %bstrip%b <user> [modes]
  424. Set the strip level of another user. A master can't set their own strip
  425. flags without prefixing the modes with a '+' or '-'.
  426. ::su
  427. ### %bsu%b <user>
  428. Lets you assume the identity of another user. If you are a global owner,
  429. this does not require a password. Otherwise, you will be asked for the
  430. user's password. %b%dquit%b returns you to your original handle.
  431. :hub:trace
  432. ### %btrace%b <bot>
  433. Sends out a trace signal to another bot. If/when the trace signal returns,
  434. (and it should!) you will get an output that looks something like this:
  435. Trace result -> Valis:Stonewall:NoBoty:SomeBoty
  436. This is a list of the bots connected between you and the destination bot.
  437. It should also return the time in seconds taken for the trace to occur.
  438. See also: bots, bottree, vbottree
  439. :hub:traffic
  440. ### %btraffic%b
  441. Shows total and daily net traffic stats since the last %b'%drestart'%b.
  442. Stats groups are IRC, Botnet, Partyline, Transfer.mod and Misc.
  443. %{+m}See also: restart
  444. ::whoami
  445. ### %bwhoami%b
  446. Shows your current handle and to what bot you are connected.
  447. See also: whom
  448. ::end