1Event(3)              User Contributed Perl Documentation             Event(3)
2
3
4

NAME

6       Net::IRC::Event - A class for passing event data between subroutines
7

SYNOPSIS

9       None yet. These docs are under construction.
10

DESCRIPTION

12       This documentation is a subset of the main Net::IRC documentation. If
13       you haven't already, please "perldoc Net::IRC" before continuing.
14
15       Net::IRC::Event defines a standard interface to the salient information
16       for just about any event your client may witness on IRC. It's about as
17       close as we can get in Perl to a struct, with a few extra nifty
18       features thrown in.
19

METHOD DESCRIPTIONS

21       This section is under construction, but hopefully will be finally
22       written up by the next release. Please see the "irctest" script and the
23       source for details about this module.
24

LIST OF EVENTS

26       Net::IRC is an entirely event-based system, which takes some getting
27       used to at first. To interact with the IRC server, you tell Net::IRC's
28       server connection to listen for certain events and activate your own
29       subroutines when they occur. Problem is, this doesn't help you much if
30       you don't know what to tell it to look for. Below is a list of the
31       possible events you can pass to Net::IRC, along with brief descriptions
32       of each... hope this helps.
33
34   Common events
35       •   nick
36
37           The "nick" event is triggered when the client receives a NICK
38           message, meaning that someone on a channel with the client has
39           changed eir nickname.
40
41       •   quit
42
43           The "quit" event is triggered upon receipt of a QUIT message, which
44           means that someone on a channel with the client has disconnected.
45
46       •   join
47
48           The "join" event is triggered upon receipt of a JOIN message, which
49           means that someone has entered a channel that the client is on.
50
51       •   part
52
53           The "part" event is triggered upon receipt of a PART message, which
54           means that someone has left a channel that the client is on.
55
56       •   mode
57
58           The "mode" event is triggered upon receipt of a MODE message, which
59           means that someone on a channel with the client has changed the
60           channel's parameters.
61
62       •   topic
63
64           The "topic" event is triggered upon receipt of a TOPIC message,
65           which means that someone on a channel with the client has changed
66           the channel's topic.
67
68       •   kick
69
70           The "kick" event is triggered upon receipt of a KICK message, which
71           means that someone on a channel with the client (or possibly the
72           client itself!) has been forcibly ejected.
73
74       •   public
75
76           The "public" event is triggered upon receipt of a PRIVMSG message
77           to an entire channel, which means that someone on a channel with
78           the client has said something aloud.
79
80       •   msg
81
82           The "msg" event is triggered upon receipt of a PRIVMSG message
83           which is addressed to one or more clients, which means that someone
84           is sending the client a private message. (Duh. :-)
85
86       •   notice
87
88           The "notice" event is triggered upon receipt of a NOTICE message,
89           which means that someone has sent the client a public or private
90           notice. (Is that sufficiently vague?)
91
92       •   ping
93
94           The "ping" event is triggered upon receipt of a PING message, which
95           means that the IRC server is querying the client to see if it's
96           alive. Don't confuse this with CTCP PINGs, explained later.
97
98       •   other
99
100           The "other" event is triggered upon receipt of any number of
101           unclassifiable miscellaneous messages, but you're not likely to see
102           it often.
103
104       •   invite
105
106           The "invite" event is triggered upon receipt of an INVITE message,
107           which means that someone is permitting the client's entry into a +i
108           channel.
109
110       •   kill
111
112           The "kill" event is triggered upon receipt of a KILL message, which
113           means that an IRC operator has just booted your sorry arse offline.
114           Seeya!
115
116       •   disconnect
117
118           The "disconnect" event is triggered when the client loses its
119           connection to the IRC server it's talking to. Don't confuse it with
120           the "leaving" event. (See below.)
121
122       •   leaving
123
124           The "leaving" event is triggered just before the client
125           deliberately closes a connection to an IRC server, in case you want
126           to do anything special before you sign off.
127
128       •   umode
129
130           The "umode" event is triggered when the client changes its personal
131           mode flags.
132
133       •   error
134
135           The "error" event is triggered when the IRC server complains to you
136           about anything. Sort of the evil twin to the "other" event,
137           actually.
138
139   CTCP Requests
140       •   cping
141
142           The "cping" event is triggered when the client receives a CTCP PING
143           request from another user. See the irctest script for an example of
144           how to properly respond to this common request.
145
146       •   cversion
147
148           The "cversion" event is triggered when the client receives a CTCP
149           VERSION request from another client, asking for version info about
150           its IRC client program.
151
152       •   csource
153
154           The "csource" event is triggered when the client receives a CTCP
155           SOURCE request from another client, asking where it can find the
156           source to its IRC client program.
157
158       •   ctime
159
160           The "ctime" event is triggered when the client receives a CTCP TIME
161           request from another client, asking for the local time at its end.
162
163       •   cdcc
164
165           The "cdcc" event is triggered when the client receives a DCC
166           request of any sort from another client, attempting to establish a
167           DCC connection.
168
169       •   cuserinfo
170
171           The "cuserinfo" event is triggered when the client receives a CTCP
172           USERINFO request from another client, asking for personal
173           information from the client's user.
174
175       •   cclientinfo
176
177           The "cclientinfo" event is triggered when the client receives a
178           CTCP CLIENTINFO request from another client, asking for whatever
179           the hell "clientinfo" means.
180
181       •   cerrmsg
182
183           The "cerrmsg" event is triggered when the client receives a CTCP
184           ERRMSG request from another client, notifying it of a protocol
185           error in a preceding CTCP communication.
186
187       •   cfinger
188
189           The "cfinger" event is triggered when the client receives a CTCP
190           FINGER request from another client. How to respond to this should
191           best be left up to your own moral stance.
192
193       •   caction
194
195           The "caction" event is triggered when the client receives a CTCP
196           ACTION message from another client. I should hope you're getting
197           the hang of how Net::IRC handles CTCP requests by now...
198
199   CTCP Responses
200       •   crping
201
202           The "crping" event is triggered when the client receives a CTCP
203           PING response from another user. See the irctest script for an
204           example of how to properly respond to this common event.
205
206       •   crversion
207
208           The "crversion" event is triggered when the client receives a CTCP
209           VERSION response from another client.
210
211       •   crsource
212
213           The "crsource" event is triggered when the client receives a CTCP
214           SOURCE response from another client.
215
216       •   crtime
217
218           The "crtime" event is triggered when the client receives a CTCP
219           TIME response from another client.
220
221       •   cruserinfo
222
223           The "cruserinfo" event is triggered when the client receives a CTCP
224           USERINFO response from another client.
225
226       •   crclientinfo
227
228           The "crclientinfo" event is triggered when the client receives a
229           CTCP CLIENTINFO response from another client.
230
231       •   crfinger
232
233           The "crfinger" event is triggered when the client receives a CTCP
234           FINGER response from another client. I'm not even going to consider
235           making a joke about this one.
236
237   DCC Events
238       •   dcc_open
239
240           The "dcc_open" event is triggered when a DCC connection is
241           established between the client and another client.
242
243       •   dcc_update
244
245           The "dcc_update" event is triggered when any data flows over a DCC
246           connection.  Useful for doing things like monitoring file transfer
247           progress, for instance.
248
249       •   dcc_close
250
251           The "dcc_close" event is triggered when a DCC connection closes,
252           whether from an error or from natural causes.
253
254       •   chat
255
256           The "chat" event is triggered when the person on the other end of a
257           DCC CHAT connection sends you a message. Think of it as the private
258           equivalent of "msg", if you will.
259
260   Numeric Events
261       •   There's a whole lot of them, and they're well-described elsewhere.
262           Please see the IRC RFC (1495, at
263           http://cs-ftp.bu.edu/pub/irc/support/IRC_RFC ) for a detailed
264           description, or the Net::IRC::Event.pm source code for a quick
265           list.
266

AUTHORS

268       Conceived and initially developed by Greg Bacon <gbacon@adtran.com> and
269       Dennis Taylor <dennis@funkplanet.com>.
270
271       Ideas and large amounts of code donated by Nat "King" Torkington
272       <gnat@frii.com>.
273
274       Currently being hacked on, hacked up, and worked over by the members of
275       the Net::IRC developers mailing list. For details, see
276       http://www.execpc.com/~corbeau/irc/list.html .
277

URL

279       Up-to-date source and information about the Net::IRC project can be
280       found at http://netirc.betterbox.net/ .
281

SEE ALSO

283perl(1).
284
285       •   RFC 1459: The Internet Relay Chat Protocol
286
287http://www.irchelp.org/, home of fine IRC resources.
288
289
290
291perl v5.34.0                      2022-01-21                          Event(3)
Impressum