]>
Commit | Line | Data |
---|---|---|
1 | Installing | |
2 | ---------- | |
3 | * Add helpserv to the --enable-modules list in ./configure | |
4 | * /msg opserv bind opserv helpserv *helpserv.helpserv | |
5 | See the FAQ for more info re helpserv and memoserv. | |
6 | ||
7 | How HelpServ Works | |
8 | ------------------ | |
9 | ||
10 | HelpServ is a bot designed to help with queues of questions (or | |
11 | support requests). It's designed to work well in multiple channels | |
12 | at once. | |
13 | ||
14 | There is a one-to-one mapping between help bots and channels they act | |
15 | in; this is to allow privmsgs to work without having users specify a | |
16 | channel (which is much easier to use). For example, HelpServ might be | |
17 | in #support, and Interview could be in #counterstrike; both would be | |
18 | bots of this kind, but they would have totally separate user lists and | |
19 | data sets. | |
20 | ||
21 | Each channel/help bot has a set of "helper" users, defined by the | |
22 | channel admin(s). In the rest of this document, I will use "helper" | |
23 | to indicate someone on the helper list for the channel, and "user" to | |
24 | indicate all other users. There are also "manager" users and one | |
25 | "owner" for the bot. | |
26 | ||
27 | There are two primary modes: "command mode" and "help mode." Helpers | |
28 | default to command mode, and other users default to help mode. | |
29 | Command mode uses a command parser similar to the standard services. | |
30 | Help mode queues each user's messages into a virtual folder for later | |
31 | perusal by a helper. A helper who is actively using "help mode" may | |
32 | issue "command mode" lines by prefixing them with a "command word" for | |
33 | the channel. | |
34 | ||
35 | In Help Mode | |
36 | ------------ | |
37 | ||
38 | When a normal user joins the channel, a customizable greeting is sent. | |
39 | This usually tells the user to privmsg the bot for help (or to queue a | |
40 | question). It is recommended that this include a URL to a FAQ. The | |
41 | bot then shuts up until the user msgs them again. | |
42 | ||
43 | When a user msgs the bot for the first time after they join, it opens | |
44 | a virtual folder for them. The time of this request is filed, and | |
45 | they are added to a queue. It also sends another customizable | |
46 | message. The virtual folder is kept active until a helper closes it | |
47 | or the user is "lost"; when the virtual folder is closed, it is | |
48 | written out to a file (with statistics on when it was opened, closed, | |
49 | if (and when) it was picked up by a helper, etc). | |
50 | ||
51 | A user is "lost" when: | |
52 | - For QUIT-based requests (or queues), the user disconnects from IRC. | |
53 | - For PART-based requests, the user parts the channel. | |
54 | - For handle-based requests, the handle is unregistered. | |
55 | The "default" mode for queues is close-based -- which behaves as | |
56 | handle-based if the user is authed and quit-based otherwise. | |
57 | ||
58 | Helpers may also annotate an existing request, using the NOTE command. | |
59 | ||
60 | In Command Mode | |
61 | --------------- | |
62 | ||
63 | The following commands are defined: | |
64 | ||
65 | LIST - show the currently open requests (unassigned first, then | |
66 | assigned) | |
67 | ||
68 | NEXT - acts as PICKUP for the next unassigned request | |
69 | ||
70 | PICKUP <reqno> - assign request number to self | |
71 | ||
72 | REASSIGN <reqno> <helpernick|*handle> - reassign request to another | |
73 | (online) helper | |
74 | ||
75 | CLOSE <reqno> <comment> - close request, with comment | |
76 | CLOSELAST <comment> - close last PICKUP'ed or HANDOFF'ed request | |
77 | ||
78 | NOTE [<reqno>] <comment> - add a note to a request (if not a number, use last assigned) | |
79 | ||
80 | TOGMODE - switch between command mode and help mode | |
81 | ||
82 | IGNORE <handle> - Ignore the specified handle (or hostmask) | |
83 | IGNORE <nick!user@host> - in the future. Does not close current requests. | |
84 | ||
85 | ADDMANAGER <nick|*handle> - add or remove a manager or helper | |
86 | DELMANAGER <nick|*handle> (managers may add and remove users | |
87 | ADDHELPER <nick|*handle> and see statistics for anyone) | |
88 | DELHELPER <nick|*handle> | |
89 | ||
90 | PAGE [<explanation>] - send a page, if enabled | |
91 | ||
92 | SET [<option> <value>] - set an option: | |
93 | - GREETING - message sent when user joins channel | |
94 | - OPENREQ - message sent when user opens a request | |
95 | - CLOSEREQ - message sent to requester when a request is closed | |
96 | - CMDWORD - "command mode" escape word (for helpers in help mode) | |
97 | - PAGEDEST - target for pages | |
98 | - PAGEMSG - default page text (if no explanation when PAGE invoked) | |
99 | - IDLETIME - how long (with users, not helpers in the channel) before | |
100 | bot complains to PAGEDEST | |
101 | - WHINETIME - how long before an unhandled request will make the bot | |
102 | complain to PAGEDEST | |
103 | - WHINEINTERVAL - how frequently the bot will complain about unhandled | |
104 | requests, or users in channel without heleprs there | |
105 | - REASSIGN - privileges to use REASSIGN (helper, manager, owner) | |
106 | ||
107 | STATS [<nick|*handle>] - show statistics for nick/handle (must be self, | |
108 | or self must be a manager; defaults to self) | |
109 | ||
110 | STATSREPORT - show overall statistics (such as?) | |
111 | ||
112 | Statistics | |
113 | ---------- | |
114 | ||
115 | For any helper (includes managers), the following statistics are kept: | |
116 | ||
117 | - Time in channel (total, this week, this month) | |
118 | - Requests "picked up" | |
119 | - Requests closed | |
120 | - Requests handed off | |
121 | - Handoffs received |