Working on implementation of tell. Have done: tell, and set tellme. Need to do...
[ircbot] / helpinfos
1 ::wwwtitle Blight (chiark IRC bot) help
2 ::wwwaddress chiark IRC operators <ircop@chiark>
3
4 :
5 See http://www.chiark.greenend.org.uk/ucgi/~ijackson/blight-help
6 or /msg me with `help !overview'.
7
8 :overview
9 General commands: Registration and user settings:
10 !help [<cmd>|<opt>|<topic>] !register [insecure|delete]
11 !seen <nick> !set [<opt> [<value>]] who [<nick>]
12 !summon <username> (See `help !identify', `help !blight-id')
13 !invite [<chan>] <nick>... Channel settings (see `help channel'):
14 !op [<chan>] !channel [<chan>] <setting> [....]
15 !leave [<chan>] Additional help topics:
16 !ping [<stuff ...>] !identify !identpass !invite !blight-id
17 !tell <nick> <message ...>
18 Send commands to me by /msg, or say them in channel with \! in front.
19 To get me on a channel, invite me. To become channel manager, op me.
20
21 :help
22 help gives an overview and lists the topics &c
23 help <command> gives help on a command
24 help <opt> gives help on an option
25 help <topic> gives help on an additional topic
26
27 :tell
28 tell <nick> <message ...>
29 Leaves a message for someone, which will be delivered according to
30 their `!set !tellme'. I will tell you about your undelivered tells
31 whenever I see you arriving, or when you say `!ping'. See also
32 `help !untell' and `help !delmsg'.
33
34 :untell
35 !untell [<nick> ...]
36 Forgets about all message(s) you've sent with !tell, or those to
37 particular nick(s). Use !delmsg to delete messages sent *to* you.
38 There is no way to untell individual messages to the same nick.
39 If your nick is secure, you must !identify yourself to use untell.
40
41 :tellme
42 !tellme repeats any messages you have outstanding.
43 !set tellme configures how you receive messages sent with !tell:
44 set tellme insecure When I see you. (Default.)
45 set tellme secure Hide body until secure ident.
46 set tellme refuse Do not accept messages.
47 set tellme mailto <email-addr> By email. (Secure nicks only.)
48 and also when to consider them delivered (see `help !untell'):
49 set tellme unreliable Tell you once, then forget.
50 set tellme pester <interval> Remind until you say !delmsg
51 set tellme remind <every-!interval> [<within-interval>]
52 Remind until you talk on channel within <within-interval>
53 of me having told you. (Default is remind 1h 30s.)
54
55 :delmsg
56 delmsg [<nick> ...]
57 Forgets about !tell messages I've passed on: either all of them, or
58 only those from certain nicks. Necessary if you !set !tellme pester
59 or reliable, and also works with remind, but not with unreliable.
60 Use !untell to delete messages you've sent, rather than received.
61
62 :seen
63 seen <nick>
64 Tells you or the channel when I last saw that nick in
65 use. When the nick is next used, I'll tell them you asked.
66
67 :summon
68 summon <username>
69 Invites a logged-on user onto IRC. If the user is not logged on
70 you'll be told. Target users can change this (eg, to disable it)
71 by reconfiguring the userv service `irc-summon'. See ~ian/.userv.
72
73 :who
74 who [<nick>]
75 Gives information about who I think the nick is (or who I think you
76 are), including whether the nick is registered, whether it is
77 associated with a username and if so who, and whether the current
78 user of the nick has identified themselves to me.
79 See `help !register'.
80
81 #:convert
82 #convert <number> <unit>
83 # Converts the specified quantity into SI units. Units that are
84 # understood are any understood by units(1) and also
85 # kelvin celsius fahrenheit (convert to celsius or kelvin)
86 #(Not yet implemented.)
87
88 :op
89 op [<channel>] on channel
90 op <channel> (privately)
91 I'll give you channel operator privilege, if you're a manager.
92 See `help !manager'.
93
94 :leave
95 leave [<channel>] on channel
96 leave <channel> (privately)
97 I'll leave the channel, if you're a manager. For an unmanaged
98 channel, I'll leave when I'm the last one on the channel.
99
100 :channel
101 channel [<chan>] [show] show settings
102 channel [<chan>] !manager +|-|= <nick> ... set manager list
103 channel [<chan>] !autojoin yes|no join at bot start ?
104 channel [<chan>] !userinvite pub|here|all|none who can !invite ?
105 channel [<chan>] !mode *|+...-... set modes when alone
106 channel [<chan>] !topic leave | set <topic> set topic when alone?
107 channel [<chan>] !topic see|tell +|-|= <chan>|* ...
108 See `help <setting>' (eg, `help manager') for more info.
109
110 :topic
111 channel [<chan>] topic set <topic> set topic when alone
112 channel [<chan>] topic leave don't (default)
113 If set to `topic set <topic>' then whenever I'm alone in the channel
114 I'll reset the topic; if se to `topic leave' I'll leave it alone.
115 channel [<chan>] topic see|tell +|-|= <chan>|* ...
116 I can inform one channel about topic changes in another. Each
117 channel has a `see list' and a `tell list' which may be empty or
118 contain some channel names and/or a `*'. I'll tell channel #spy
119 whenever I see the topic change in #showoff if: #showoff or * is
120 mentioned in #spy's see list, and #spy or * is mentioned in
121 #showoff's tell list, and at least one those mentions is not a `*'.
122 + adds items to the relevant list, - removes them, and = sets the
123 list to exactly those items specified. Both lists are empty by
124 default, but a good permissive value is just `*' for both lists.
125
126 :autojoin
127 !channel [<chan>] autojoin yes|no (`yes' is the default.)
128 Controls whether I'll join the channel when I'm (re)started.
129
130 :userinvite
131 channel [<chan>] userinvite pub users on chan can \!invite
132 channel [<chan>] userinvite here users on chan can \!invite and /msg
133 channel [<chan>] userinvite all anyone can \!invite and /msg
134 channel [<chan>] userinvite none \!invite and /msg are disabled
135 Controls whether the `invite' command works for this channel, and
136 who can use it (`help !invite'). `userinvite pub' is the default.
137 Channel managers can always use the `invite' command.
138
139 :mode
140 !channel [<chan>] mode *|+...-... (`mode *' is default.)
141 If not set to `*' then whenever I'm alone in the channel I'll set
142 and unset the channel modes specified. Only the modes imnpst are
143 supported. Precede one or more mode letters with + to set, - to
144 unset; any letters not mentioned will be left alone.
145
146 :manager
147 !channel [<chan>] manager + <nick> <nick> ... add managers
148 !channel [<chan>] manager - <nick> <nick> ... remove managers
149 !channel [<chan>] manager = <nick> <nick> ... set new manager list
150 Managers are those who can use the `channel' command to change
151 channel settings. Manager status is only effective for secure
152 nicks, after the manager has identified themselves.
153 If you op me on an unmanaged channel you become the only manager,
154 but you must use `!channel' to change a channel setting to make this
155 permanent. To make a channel unmanaged, make it have no managers.
156
157 :identify
158 You must identify yourself to change your settings if your nick is
159 secure, and to use channel management commands. In ircII on chiark,
160 just say `/!blight-id'. For other clients, see `help !identpass'.
161 Once you are identified you can then register new nicks, change
162 settings, etc. - so long as you remain on a channel that I'm on too
163 (see `help !invite'). See also `help !register'.
164
165 :blight-id
166 /blight-id is a command available in ircII (and possibly other
167 clients) on chiark. It sets up a password if you don't already have
168 one, and then uses it to identify you to Blight. If you want to
169 change your password, delete the file ~/.userv/irc-pass-md5.
170 See `help !register' and `help !identpass'.
171
172 :identpass
173 identpass <username> <password>
174 Identifies you to Blight. To set up your password, or be reminded
175 of it, run the shell command `irc-blight-id' on chiark.
176 (On ircII on chiark `/!blight-id' is easier, see `help !blight-id'.)
177 See `help !identpass-internals' for technical details.
178
179 :identpass-internals
180 Identification, for example with /!blight-id, is actually done with
181 `!identpass', which feeds the md5sum of the password to `userv
182 <username> irc-identpass <nick>'. That must exit 0 if all is well.
183 By default this checks the md5sum against ~/.userv/irc-pass-md5.
184
185 :invite
186 invite <nick> ... on channel
187 invite <channel> <nick> ... privately
188 This command gets me to invite the specified people to the channel.
189 This can be disabled for managed channels - see `help !userinvite'.
190 To get me to join a channel, just invite me to it.
191
192 :register
193 register register your nick (or make it secure)
194 register delete delete your nick registration
195 register insecure register your nick insecurely
196 I only store settings for registered nicks. For `insecure' nicks
197 anyone who currently holds that nick can change its settings (see
198 `help !set', including securing it to their username. `secure'
199 nicks can only have their settings changed by the user to which they
200 are registered, after identifying themselves (see `help !identify').
201
202 :set
203 set show your current settings
204 set <option> show the current setting of <option>
205 set <option> <value> set <option> to <value>
206 Options: !timeformat ks|hms !marktime off|once|<!interval>
207 !tellme ...
208 See also `help <option>', `help !register' and `help !identify'
209
210 :timeformat
211 !set timeformat ks show times in seconds, kiloseconds, etc.
212 set timeformat hms use days, hours, minutes, seconds
213
214 :ping
215 ping [<string>]
216 Replies with hopefully-useful information, including:
217 * Current time, number of IRC and system users, and load averages.
218 * Most recent traffic on a relevant channel (if sent privately, any
219 channel we're both on, otherwise the channel in question.) Only
220 actual message traffic counts, and \!-commands don't count either.
221 * The specified string, if any.
222 I can tell you this automatically if you like - see `help !marktime'.
223 If you have undelivered messages sent with !tell by or to you, I'll
224 let you know about those too (privately, if you ping on channel).
225
226 :marktime
227 !set marktime off Only an explicit `!ping' command sends info.
228 set marktime once Send ping info shortly after I first see you.
229 set marktime <!interval> Also send info regularly (min. interval 5m).
230
231 :interval
232 Intervals in commands are <amount><unit>, where the unit is one of
233 s for seconds, ks for kiloseconds, m for minutes, h for hours.
234
235 # Local variables:
236 # fill-column: 69
237 # End: