4
4
# Irc library
5
5
Irc = require ' irc'
6
6
7
+ Log = require (' log' )
8
+ logger = new Log process .env .HUBOT_LOG_LEVEL or ' info'
9
+
7
10
class IrcBot extends Adapter
8
11
send : (envelope , strings ... ) ->
9
12
# Use @notice if SEND_NOTICE_MODE is set
@@ -12,7 +15,7 @@ class IrcBot extends Adapter
12
15
target = @ _getTargetFromEnvelope envelope
13
16
14
17
unless target
15
- return console . log " ERROR: Not sure who to send to. envelope=" , envelope
18
+ return logger . error " ERROR: Not sure who to send to. envelope=" , envelope
16
19
17
20
for str in strings
18
21
@bot .say target, str
@@ -29,7 +32,7 @@ class IrcBot extends Adapter
29
32
target = @ _getTargetFromEnvelope envelope
30
33
31
34
unless target
32
- return console . log " ERROR: Not sure who to send to. envelope=" , envelope
35
+ return logger . error " ERROR: Not sure who to send to. envelope=" , envelope
33
36
34
37
for str in strings
35
38
@bot .action target, str
@@ -38,7 +41,7 @@ class IrcBot extends Adapter
38
41
target = @ _getTargetFromEnvelope envelope
39
42
40
43
unless target
41
- return console . log " Notice: no target found" , envelope
44
+ return logger . warn " Notice: no target found" , envelope
42
45
43
46
# Flatten out strings from send
44
47
flattened = []
@@ -61,15 +64,15 @@ class IrcBot extends Adapter
61
64
join : (channel ) ->
62
65
self = @
63
66
@bot .join channel, () ->
64
- console . log (' joined %s' , channel)
67
+ logger . info (' joined %s' , channel)
65
68
66
69
selfUser = self .getUserFromName self .robot .name
67
70
self .receive new EnterMessage (selfUser)
68
71
69
72
part : (channel ) ->
70
73
self = @
71
74
@bot .part channel, () ->
72
- console . log (' left %s' , channel)
75
+ logger . info (' left %s' , channel)
73
76
74
77
selfUser = self .getUserFromName self .robot .name
75
78
self .receive new LeaveMessage (selfUser)
@@ -199,11 +202,11 @@ class IrcBot extends Adapter
199
202
200
203
bot .addListener ' notice' , (from , to , message ) ->
201
204
if from in options .ignoreUsers
202
- console . log (' Ignoring user: %s' , from )
205
+ logger . info (' Ignoring user: %s' , from )
203
206
# we'll ignore this message if it's from someone we want to ignore
204
207
return
205
208
206
- console . log " NOTICE from #{ from } to #{ to} : #{ message} "
209
+ logger . info " NOTICE from #{ from } to #{ to} : #{ message} "
207
210
208
211
user = self .createUser to, from
209
212
self .receive new TextMessage (user, message)
@@ -214,49 +217,49 @@ class IrcBot extends Adapter
214
217
return
215
218
216
219
if from in options .ignoreUsers
217
- console . log (' Ignoring user: %s' , from )
220
+ logger . info (' Ignoring user: %s' , from )
218
221
# we'll ignore this message if it's from someone we want to ignore
219
222
return
220
223
221
- console . log " From #{ from } to #{ to} : #{ message} "
224
+ logger . debug " From #{ from } to #{ to} : #{ message} "
222
225
223
226
user = self .createUser to, from
224
227
if user .room
225
- console . log " #{ to} <#{ from } > #{ message} "
228
+ logger . info " #{ to} <#{ from } > #{ message} "
226
229
else
227
230
unless message .indexOf (to) == 0
228
231
message = " #{ to} : #{ message} "
229
- console . log " msg <#{ from } > #{ message} "
232
+ logger . debug " msg <#{ from } > #{ message} "
230
233
231
234
self .receive new TextMessage (user, message)
232
235
233
236
bot .addListener ' action' , (from , to , message ) ->
234
- console . log " * From #{ from } to #{ to} : #{ message} "
237
+ logger . debug " * From #{ from } to #{ to} : #{ message} "
235
238
236
239
if from in options .ignoreUsers
237
- console . log (' Ignoring user: %s' , from )
240
+ logger . info (' Ignoring user: %s' , from )
238
241
# we'll ignore this message if it's from someone we want to ignore
239
242
return
240
243
241
244
user = self .createUser to, from
242
245
if user .room
243
- console . log " #{ to} * #{ from } #{ message} "
246
+ logger . debug " #{ to} * #{ from } #{ message} "
244
247
else
245
- console . log " msg <#{ from } > #{ message} "
248
+ logger . debug " msg <#{ from } > #{ message} "
246
249
247
250
self .receive new TextMessage (user, message)
248
251
249
252
bot .addListener ' error' , (message ) ->
250
- console .error (' ERROR: %s: %s' , message .command , message .args .join (' ' ))
253
+ logger .error (' ERROR: %s: %s' , message .command , message .args .join (' ' ))
251
254
252
255
bot .addListener ' pm' , (nick , message ) ->
253
- console . log (' Got private message from %s: %s' , nick, message)
256
+ logger . info (' Got private message from %s: %s' , nick, message)
254
257
255
258
if process .env .HUBOT_IRC_PRIVATE
256
259
return
257
260
258
261
if nick in options .ignoreUsers
259
- console . log (' Ignoring user: %s' , nick)
262
+ logger . info (' Ignoring user: %s' , nick)
260
263
# we'll ignore this message if it's from someone we want to ignore
261
264
return
262
265
@@ -267,25 +270,25 @@ class IrcBot extends Adapter
267
270
self .receive new TextMessage ({reply_to : nick, name : nick}, message)
268
271
269
272
bot .addListener ' join' , (channel , who ) ->
270
- console . log (' %s has joined %s' , who, channel)
273
+ logger . info (' %s has joined %s' , who, channel)
271
274
user = self .createUser channel, who
272
275
user .room = channel
273
276
self .receive new EnterMessage (user)
274
277
275
278
bot .addListener ' part' , (channel , who , reason ) ->
276
- console . log (' %s has left %s: %s' , who, channel, reason)
279
+ logger . info (' %s has left %s: %s' , who, channel, reason)
277
280
user = self .createUser ' ' , who
278
281
user .room = channel
279
282
self .receive new LeaveMessage (user)
280
283
281
284
bot .addListener ' kick' , (channel , who , _by , reason ) ->
282
- console . log (' %s was kicked from %s by %s: %s' , who, channel, _by, reason)
285
+ logger . info (' %s was kicked from %s by %s: %s' , who, channel, _by, reason)
283
286
284
287
bot .addListener ' invite' , (channel , from ) ->
285
- console . log (' %s invited you to join %s' , from , channel)
288
+ logger . info (' %s invited you to join %s' , from , channel)
286
289
287
290
if from in options .ignoreUsers
288
- console . log (' Ignoring user: %s' , from )
291
+ logger . info (' Ignoring user: %s' , from )
289
292
# we'll ignore this message if it's from someone we want to ignore
290
293
return
291
294
0 commit comments