X-Git-Url: https://git.distorted.org.uk/~mdw/ircbot/blobdiff_plain/4fd2739ce610b22dd0aa192e51ab63a093d459e1..081556a487ae08815287fdba7a6bfeb495a4cc9d:/helpinfos diff --git a/helpinfos b/helpinfos index d6da2a0..2db412b 100644 --- a/helpinfos +++ b/helpinfos @@ -1,87 +1,266 @@ -! +::wwwtitle Blight (chiark IRC bot) help +::wwwaddress chiark IRC operators <ircop@chiark> + +: +See http://www.chiark.greenend.org.uk/ucgi/~ijackson/blight-help +or /msg me with `help !overview'. + +:overview General commands: Registration and user settings: - help [||] register [insecure|delete] - seen set [ []] - summon (See `help identify'.) - convert Channel settings: - ops oplist [] [+|-|= [?] ...] -Options: Additional help topics: - timeformat ks|hms identify identpass invite -Send commands to me by /msg, or say them in channel with ! in front. - -!help + !help [||] !register [insecure|delete] + !seen !set [ []] who [] + !summon (See `help !identify', `help !blight-id') + !invite [] ... For channel managers (`help !channel'): + !ping [] !op [] + !kill [] !leave [] + !tell !channel [] [....] +Additional help topics: + !tutorial (long\!) !identify !identpass !invite !blight-id +Send commands to me by /msg, or say them in channel with \! in front. +To get me on a channel, invite me. To become channel manager, op me. + +:help help gives an overview and lists the topics &c help gives help on a command help gives help on an option help gives help on an additional topic -!seen +:tell +tell + Leaves a message for someone, which will be delivered according to + their `!set !tellme'. I will tell you about your undelivered tells + whenever I see you arriving, or when you say `!ping'. See also + `help !untell' and `help !delmsg'. + +:untell +!untell ... + Forgets about all message(s) you've sent with !tell to particular + nick(s). Use !delmsg to delete messages sent *to* you. There is no + way to untell individual messages to the same nick. If your nick is + secure, you must !identify yourself to use untell. + +:tellme +The !tellme command repeats any messages you have outstanding. +!set tellme configures how you receive messages sent with !tell: + set tellme insecure When I see you. + set tellme secure [] Hide body (reminding) until ident. + set tellme reject Do not accept messages. + set tellme mailto By email. (Secure nicks only.) +Default: `secure 600'. For insecure nicks `secure' == `insecure'. +To set when to consider messages delivered (see `help !untell'): + set tellme unreliable Tell you once, then forget. + set tellme remind [ []] + Remind until you talk on channel within + of me having told you. (Default is remind 1h 30s.) + set tellme pester Remind until you say !delmsg + +:delmsg +delmsg [ ...] + Forgets about !tell messages I've passed on: either all of them, or + only those from certain nicks. Necessary if you !set !tellme pester + or reliable, and also works with remind, but not with unreliable. + Use !untell to delete messages you've sent, rather than received. + +:seen seen Tells you or the channel when I last saw that nick in use. When the nick is next used, I'll tell them you asked. -!summon +:summon summon - Invites a logged-on user onto IRC. If the user is not logged on - you'll be told. Target users can change this (eg, to disable it) - by reconfiguring the userv service `irc-summon'. See ~ian/.userv. - -!convert -convert - Converts the specified quantity into SI units. Units that are - understood are any understood by units(1) and also - kelvin celsius fahrenheit (convert to celsius or kelvin) - -!ops -ops on channel -ops (privately) - Asks me to give you channel operator privilege. You must have - identified yourself (see `help identification'). - -!oplist -oplist [] show chop list -oplist [] + ... add nicks to chop list -oplist [] - ... remove nicks from chop list -oplist [] = ... set chop list - Configures the list of who may use the `ops' command. You must be - on the oplist yourself to do this. If you op me on a channel I'll - automatically add you to the oplist if you have identified yourself. - -!identify -You must identify yourself to change your settings and to use channel -management commands. In ircII on chiark, just say `/blight-id'. For -other clients, see `help identpass'. Once you are identified you can -then register new nicks, change settings, etc. - so long as you -remain on a channel that I'm on too. (See also `help invite'.) - -!identpass + Invites a user onto IRC. By default a message (like a talk request) + will be written to their terminal; if they're not logged on to the + machine running Blight, or are `mesg n', you'll be told. A user can + change the way they are summoned (eg, to disable it) by reconfiguring + the userv service `irc-summon'. See `help !irc-summon'. + +:irc-summon +userv irc-summon + This userv invocation is invoked by Blight when `!summon' is used. + For examples of how to (re)configure it, see + ~ian/.userv/services.d/irc-summon + /etc/userv/services.d/irc-summon + The service should immediately print one of these, and exit: + problem => The user `' . + ok =>..invites (, idle for ..).. + and Blight will respond as shown. need not be an actual + terminal name; must be a decimal absolute time_t). + +:who +who [] + Gives information about who I think the nick is (or who I think you + are), including whether the nick is registered, whether it is + associated with a username and if so who, and whether the current + user of the nick has identified themselves to me. + See `help !register'. + +#:convert +#convert +# Converts the specified quantity into SI units. Units that are +# understood are any understood by units(1) and also +# kelvin celsius fahrenheit (convert to celsius or kelvin) +#(Not yet implemented.) + +:op +op [] on channel +op (privately) + I'll give you channel operator privilege, if you're a manager. + See `help !manager'. + +:leave +leave [] on channel +leave (privately) + I'll leave the channel, if you're a manager. For an unmanaged + channel, I'll leave when I'm the last one on the channel. + +:channel +channel [] [show] show settings +channel [] !manager +|-|= ... set manager list +channel [] !autojoin yes|no join at bot start ? +channel [] !userinvite pub|here|all|none who can !invite ? +channel [] !mode *|+...-... set modes when alone +channel [] !topic leave | set set topic when alone? +channel [] !topic see|tell +|-|= |* ... + See `help ' (eg, `help manager') for more info. + +:topic +channel [] topic set set topic when alone +channel [] topic leave don't (default) + If set to `topic set ' then whenever I'm alone in the channel + I'll reset the topic; if se to `topic leave' I'll leave it alone. +channel [] topic see|tell +|-|= |* ... + I can inform one channel about topic changes in another. Each + channel has a `see list' and a `tell list' which may be empty or + contain some channel names and/or a `*'. I'll tell channel #spy + whenever I see the topic change in #showoff if: #showoff or * is + mentioned in #spy's see list, and #spy or * is mentioned in + #showoff's tell list, and at least one those mentions is not a `*'. + + adds items to the relevant list, - removes them, and = sets the + list to exactly those items specified. Both lists are empty by + default, but a good permissive value is just `*' for both lists. + +:autojoin +!channel [] autojoin yes|no (`yes' is the default.) + Controls whether I'll join the channel when I'm (re)started. + +:userinvite +channel [] userinvite pub users on chan can \!invite +channel [] userinvite here users on chan can \!invite and /msg +channel [] userinvite all anyone can \!invite and /msg +channel [] userinvite none \!invite and /msg are disabled + Controls whether the `invite' command works for this channel, and + who can use it (`help !invite'). `userinvite pub' is the default. + Channel managers can always use the `invite' command. + +:mode +!channel [] mode *|+...-... (`mode *' is default.) + If not set to `*' then whenever I'm alone in the channel I'll set + and unset the channel modes specified. Only the modes imnpst are + supported. Precede one or more mode letters with + to set, - to + unset; any letters not mentioned will be left alone. + +:manager +!channel [] manager + ... add managers +!channel [] manager - ... remove managers +!channel [] manager = ... set new manager list + Managers are those who can use the `channel' command to change + channel settings. Manager status is only effective for secure + nicks, after the manager has identified themselves. + If you op me on an unmanaged channel you become the only manager, + but you must use `!channel' to change a channel setting to make this + permanent. To make a channel unmanaged, make it have no managers. + +:identify +You must identify yourself to change your settings if your nick is +secure, and to use channel management commands. In ircII on chiark, +just say `/!blight-id'. For other clients, see `help !identpass'. +Once you are identified you can then register new nicks, change +settings, etc. - so long as you remain on a channel that I'm on too +(see `help !invite'). See also `help !register'. + +:blight-id +/blight-id is a command available in ircII (and possibly other +clients) on chiark. It sets up a password if you don't already have +one, and then uses it to identify you to Blight. If you want to +change your password, delete the file ~/.userv/irc-pass-md5. +See `help !register' and `help !identpass'. + +:identpass identpass - Identification, for example with /blight-id, is actually done with - `identpass', which feeds the md5sum of the password to `userv - irc-identpass '. That must exit 0 if all is well. + Identifies you to Blight. To set up your password, or be reminded + of it, run the shell command `irc-blight-id' on chiark. + (On ircII on chiark `/!blight-id' is easier, see `help !blight-id'.) + See `help !identpass-internals' for technical details. -!invite -If you invite me to a channel I'll join it. +:identpass-internals +Identification, for example with /!blight-id, is actually done with +`!identpass', which feeds the md5sum of the password to `userv + irc-identpass '. That must exit 0 if all is well. +By default this checks the md5sum against ~/.userv/irc-pass-md5. -!register +:invite +invite ... on channel +invite ... privately + This command gets me to invite the specified people to the channel. + This is useful because only IRC channel operators can use /invite. + This can be disabled for managed channels - see `help !userinvite'. +To get me to join a channel, a channel operator should /invite me. + +:kill +kill [] + Asks me to throw that client off IRC completely, using my IRC + Operator privilege. You must have identified yourself as the user + to whom the nick is registered. (See `help !register'.) + +:register register register your nick (or make it secure) register delete delete your nick registration register insecure register your nick insecurely I only store settings for registered nicks. For `insecure' nicks - anyone who currently holds that nick can change its settings, - including securing it to their username. `secure' nicks can only - have their settings changed by the user to which they are - registered, after identifying themselves (see `help identify'). + anyone who currently holds that nick can change its settings (see + `help !set', including securing it to their username. `secure' + nicks can only have their settings changed by the user to which they + are registered, after identifying themselves (see `help !identify'). -!set +:set set show your current settings set