]>
Commit | Line | Data |
---|---|---|
189935b1 | 1 | Undernet server features. |
2 | ------------------------- | |
3 | ||
4 | This document is supposed to list the features that undernet supports and | |
5 | provides to clients, and which version of ircu this was added. Additional | |
6 | numeric replies should be added here too. | |
7 | ||
8 | Extended Who information: (WHOX) | |
9 | Version: unknown, but at least 2.10.07+ | |
10 | ||
11 | This is described in the file 'readme.who' | |
12 | ||
13 | USERIP: | |
14 | Version: unknown, but at least 2.10.07+ | |
15 | ||
16 | This works the same as userhost, but returns the IP instead, useful for | |
17 | setting a ban on someones IP address instead of their nick. | |
18 | usage: | |
19 | USERIP nick[,nick...] | |
20 | returns: | |
21 | RPL_USERIP (307) | |
22 | :server.name 307 target nick[*]=[+|-]user@host... | |
23 | ||
24 | RPL_ISUPPORT: | |
25 | version: 2.10.08+ | |
26 | ||
27 | This sends a numeric during client signon that lists various features that | |
28 | ircu supports. This allows client and script writers to know what features | |
29 | they can use, and various parameters about the irc server. The numeric | |
30 | used is '005' to try and maintain some semblance of compatibility with | |
31 | dalnet which has a similar feature. The 005 numeric may be split across | |
32 | multiple lines if the length exceeds 512 characters. | |
33 | ||
34 | The format is: | |
35 | :servername 005 target feature1 feature2... :are supported by this server. | |
36 | :servername 005 target feature200... :are supported by this server. | |
37 | ||
38 | features are either a word describing the feature eg: 'SILENCE', or a word | |
39 | describing the feature and an equals and a list of parameters. | |
40 | eg: SILENCE=15 (says that we support silence, and we support up to 15 of | |
41 | them per user), or FOO=12,3 (says we support FOO with parameters 12 and 3) | |
42 | for example 2.10.08 lists: | |
43 | ||
44 | :test.undernet.org 005 test SILENCE=15 WHOX WALLCHOPS USERIP CPRIVMSG | |
45 | CNOTICE MODES=6 MAXCHANNELS=10 MAXBANS=30 NICKLEN=9 TOPICLEN=160 | |
46 | KICKLEN=160 | |
47 | ||
48 | NOTE: Versions prior to 2.10.08+ use numeric 005 as part of 'MAP', so | |
49 | 005 should be /not/ be used after the server registration has occured. | |
50 | (ie: after END_OF_MOTD has arrived). | |
51 | ||
52 | MAP: | |
53 | Version: unknown, but since 2.9.30 at least, updated in 2.10.08 | |
54 | ||
55 | /map shows the servers as the server percieves them, who's connected | |
56 | to who in a pretty display. In version 2.10.08 it also lists the | |
57 | amount time time it takes a message to get /from/ a server to the local | |
58 | server - this measures the one way lag only, in 2.10.08 it also lists | |
59 | the number of clients that are currently on that server. | |
60 | The lag estimation is very approximate and depends on people changing nick | |
61 | and joining channels, so the less clients on a server the less reliable the | |
62 | lag estimation is. | |
63 | ||
64 | Map prior to 2.10.08 uses: | |
65 | RPL_MAP 005 | |
66 | RPL_MAPMORE 006 | |
67 | RPL_MAPEND 007 | |
68 | Map changed in 2.10.08 to allow for ISUPPORT on numeric 005, the new | |
69 | numerics are: | |
70 | RPL_MAP 015 | |
71 | RPL_MAPMORE 016 | |
72 | RPL_MAPEND 017 | |
73 | ||
74 | WALLCHOPS: | |
75 | Version: unknown, but since 2.10.07 | |
76 | ||
77 | WALLCHOPS sends a message to all channel operators (@)'s on a channel. | |
78 | It does /not/ require you to be op'd (@'d) to do so. This is a feature. | |
79 | ||
80 | syntax: | |
81 | WALLCHOPS #channel :message | |
82 | or: | |
83 | NOTICE @#channel :message | |
84 | ||
85 | this sends: | |
86 | :user NOTICE @#channel :message | |
87 | to clients that are @'d on the channel. | |
88 | ||
89 | CPRIVMSG/CNOTICE: | |
90 | Version: unknown, but since 2.10.07 | |
91 | ||
92 | CPRIVMSG/CNOTICE are a way around target limiting in recent undernet | |
93 | servers. Undernet servers prevent you from sending messages to too many | |
94 | people at once in an attempt to help cut down the amount of spam that | |
95 | occurs on the network. Because there are several situations where you want | |
96 | to send messages to lots of people that are on the same channel as you | |
97 | (autogreet's and gamebots for example) an 'escape' was made in the form | |
98 | of CPRIVMSG/CNOTICE. These allow you to send a privmsg/notice to a person | |
99 | on a common channel if you are op'd (@'d) without incuring a target | |
100 | penalty. If you see 'Target changed too fast' messages, you should | |
101 | probably be using these commands. | |
102 | ||
103 | Syntax: | |
104 | CPRIVMSG #channel nick :Message | |
105 | CNOTICE #channel nick :Message | |
106 | ||
107 | Results are the same as for 'PRIVMSG' and 'NOTICE' respectively. | |
108 | ||
109 | SILENCE: | |
110 | Version: unknown, 2.9.32 at least. | |
111 | ||
112 | Silence is a server side ignore. You can /silence +hostmask or | |
113 | /silence +nick, to add someone to your silence list, or use /silence | |
114 | -hostmask to remove it. /silence will list your 'silence list'. | |
115 | you can /silence nick, to see someone elses silence list (useful for | |
116 | helping someone). Silence is preferably used as a last resort as it | |
117 | tends to use server CPU time. Undernet typically only allows 15 silences | |
118 | per user. in 2.10.08+ this information is available in the RPL_ISUPPORT | |
119 | line. | |
120 | ||
121 | Syntax: | |
122 | SILENCE +hostmask | |
123 | SILENCE +nick | |
124 | SILENCE -hostmask | |
125 | SILENCE -nick | |
126 | SILENCE nick | |
127 | ||
128 | reply: | |
129 | RPL_SILELIST 217 | |
130 | RPL_ENDOFSILELIST 218 | |
131 | ||
132 | User modes: | |
133 | Version: various | |
134 | ||
135 | Undernet supports these additional user modes: | |
136 | +d: Deaf & Dumb. This user will not get any channel traffic. Used for | |
137 | bots. | |
138 | +k: This user cannot be kicked, deop'd or /kill'd. This usermode may only | |
139 | be set by a server, it may not be set by a user. This is used by | |
140 | undernet service bots (X/W/UWorld etc) | |
141 | +g: List channel HACK:'s | |
142 | +s: Server messages - takes a parameter of which masks to send, see | |
143 | 'snomask.html' for more details. (2.10.0+) | |
144 | ||
145 | LIST: | |
146 | Version: Unknown | |
147 | ||
148 | List now takes various parameters to allow you to quickly and efficiently | |
149 | find interesting channels. These are: | |
150 | ||
151 | >n or <n show channels with less than or greater than 'n' users | |
152 | respectively | |
153 | C>n or C<n show channels that have existed for less than or greater than | |
154 | 'n' minutes. | |
155 | T>n or C<n show channels that have had their topic changed in less than or | |
156 | greater than 'n' minutes. | |
157 | ||
158 | Additional Numerics: | |
159 | RPL_LISTHELP 334 | |
160 | ||
161 | Additional Topic Numerics: | |
162 | Version: Since the dawn of time. | |
163 | ||
164 | Topic also lists who set it and when they set it. | |
165 | ||
166 | Additional Numerics: | |
167 | RPL_TOPICWHOTIME 333 | |
168 | ||
169 | Straight after the topic: | |
170 | :server.name 333 #channel Isomer 923423442 | |
171 | where the number is seconds past 00:00 1970-01-01 that the topic was set. | |
172 | ||
173 | ||
174 | INVITE list: | |
175 | Version: 2.10.08+ | |
176 | ||
177 | /invite without any parameters lists which channels you have an outstanding | |
178 | invite to (ie: an invite to a channel which you haven't joined) | |
179 | ||
180 | Additional Numerics: | |
181 | RPL_INVITELIST 346 | |
182 | RPL_ENDOFINVITELIST 347 | |
183 | ||
184 | NICK change: | |
185 | Version: Since the dawn of time. | |
186 | ||
187 | Undernet prevents you from changing nick on a channel while your banned. | |
188 | Undernet prevents you changing nicks more than once per 30 seconds, you | |
189 | get one 'free' nick change if you haven't changed nick recently. | |
190 | ||
191 | Additional Numerics: | |
192 | RPL_BANNICKCHANGE 347 | |
193 | RPL_NICKTOOFAST 349 | |
194 | ||
195 | Target limiting: | |
196 | Version: Recent 2.10.07ish at least. | |
197 | ||
198 | Undernet prevents you from changing 20 targets per 2 minutes. A target | |
199 | is a 'Nick' or 'channel'. This is to prevent spam. If you message more | |
200 | than 20 people or join more than 20 channels in two minutes then you'll | |
201 | start getting 'Target change too fast' and will have to wait before you | |
202 | can start talking. See CPRIVMSG/CNOTICE above for information on how to | |
203 | avoid this. | |
204 | ||
205 | Additional Numerics: | |
206 | ERR_TARGETTOOFAST 349 | |
207 | ||
208 |