Commit Graph

121 Commits

Author SHA1 Message Date
ian%hixie.ch
0db25f5b1d Better Unload handling for modules that need it. Introduce a way for modules to monitor pipes continuously (e.g. to watch the serial port or a socket). Better handling for when messages are repeated a lot in a row. Update documentation and modules to match. 2005-05-03 18:38:43 +00:00
ian%hixie.ch
59864662c9 Admin Told sub was returning the wrong thing in many cases (removes some console error messages.) 2004-09-04 18:48:28 +00:00
ian%hixie.ch
4141f5183c Fixing bug caused by buggy Net::IRC 0.75 code. See bug 245424. Thanks to mh for the hint of where to look. 2004-09-04 17:43:58 +00:00
ian%hixie.ch
bea143cbe1 Minor tweak so as to ensure changes to the nick variables are always saved. Shouldn't fix anything anyone was seeing. 2004-03-15 13:24:28 +00:00
ian%hixie.ch
c9f35a8e9e Oops. A long-standing error. The Admin module should be in all channels, it just shouldn't respond to commands in channels if allowChannelAdmin is 0. This fixes the join/part issue for people with allowChannelAdmin set to 0. 2004-02-18 16:08:45 +00:00
ian%hixie.ch
d545d32f9e Reset lastNick at reconnect so that nick collisions on reconnect are handled correctly. (Also clean up a long line or two since I'm using a small monitor right now...) 2004-02-08 22:21:04 +00:00
ian%hixie.ch
a91a367173 Revamp of the way we handle nick problems. 2004-02-01 14:29:43 +00:00
ian%hixie.ch
f24ed6ab8d Oops, reality did not match the documentation. Fix reality. (once a module returns 0, stop using the handlers. Hopefully this won't break any modules.) 2004-01-28 13:02:49 +00:00
ian%hixie.ch
cb26702f03 * Add more comments (especially XXX ones!).
* Rework how Parting, Quitting, and Kicking work:
* Fix bug 133965 (SpottedQuit and SpottedPart not sent for self) for SpottedPart.
  SpottedQuit part of the fix is more involved and is WONTFIX for now; I've added XXX comments where the fixes would have to go.
* Fixed the part message when leaving a channel through the 'part' command.
* Parting and Joining no longer ensure that they were (not already) in the channel before doing the /part of /join command.
* Admin module's Kicked is no longer called for the 'part' command, only when kicked.
* PartedChannel is now where the channel gets removed from the config, so if the server doesn't let the bot part, it won't remember that it has parted.
2004-01-27 01:28:18 +00:00
ian%hixie.ch
617f195c21 Comment about possible bug in Kicked method 2004-01-26 23:25:37 +00:00
ian%hixie.ch
07c133f1c6 Handle exceptions being raised in the Schedule() handler. Before, they would cause the bot to crash on startup and to say stupid things during module loading. 2004-01-25 13:49:54 +00:00
ian%hixie.ch
d4f15faacd Don't send PASS unless there is a password. Make some debug messages a little clearer. Report PASS errors. And most importantly: Correctly handle NICK changes. We will now only change our internal memory of our nick when the server tells us what are nick is. As part of this, stop using the Net::IRC concept of the Current Nick, since that is completely broken. Handles invalid nicks much more gracefully. 2004-01-25 02:48:32 +00:00
ian%hixie.ch
cdfee27e24 Remove excessive trailing spaces. Fix a bug where I was setting the wrong variable (duh), this should make the username/identd stuff actually work. Make the mail regarding the server being down actually show the right values. Split some debug lines onto two for clarity. 2004-01-25 01:12:34 +00:00
ian%hixie.ch
f545615f80 Oops, need double quotes to interpolate... 2004-01-25 01:03:45 +00:00
ian%hixie.ch
9f0e341e1a Some more drastic auto-fixing code for really annoying servers. 2004-01-25 00:53:50 +00:00
ian%hixie.ch
8d471be1bb Make mozbot try to use a valid username if it thinks it needs to (this is untested; what do servers normally complain about when the identd isn't valid? I've seen this happen but I forget the actual string they send back). Also, fix an undefined variable warning in the wordWrap method. 2004-01-25 00:45:38 +00:00
ian%hixie.ch
330e5c37e8 Improve the documentation for people troubleshooting connection problems. 2003-10-19 17:32:39 +00:00
ian%hixie.ch
b94cd9ee21 Undocumented (for now) feature: let the user override the bot's username from the config file by setting the 'username' configuration option to a true value (defaults to 0). 2003-10-19 17:02:07 +00:00
ian%hixie.ch
f746e27ec1 Support password protected servers. bug 222129. 2003-10-16 21:17:39 +00:00
ian%hixie.ch
ed9b436ee6 reap children correctly (attempt number 77281). Correct misspellings in comments. Remove some redundant output. 2003-10-05 20:15:05 +00:00
ian%hixie.ch
6dc1c0ef41 Updating credits for last checkin. 2003-10-04 12:13:31 +00:00
ian%hixie.ch
b06ad40bcd Bug 159567: improvements to user management. Based on a patch by Adam Di Carlo. Improvements include: 'deleteuser' admin command. 'changepassword' admin command. Better error messages when the two new passwords don't match. Edits to the INSTALL file. Also removes the recently added 'sleep' statement on quit since it wasn't helping. 2003-10-04 12:09:38 +00:00
ian%hixie.ch
884f6797f0 Minor fixes: check that we can actually resolve the server (Net::IRC was being remarkably unhelpful in that regard), make the helpline a bit shorter (servers were cropping it), make us sleep when we quit (not sure it'll help, but maybe it'll help with the problem of us not always getting our /quit message across) 2003-10-04 00:23:57 +00:00
ian%hixie.ch
501a7510d5 Bug 215848: Cope with servers that don't like our IRC name. This is basically untested. 2003-10-04 00:06:46 +00:00
ian%hixie.ch
cc100f9da1 Bug 134600: Add some more modules to the default set. 2003-10-03 23:46:54 +00:00
ian%hixie.ch
31f4b76fbd Implement incoming Notice support in the BotModule APL. Bug 169882. Largely based on a patch by Ken Coar. 2003-10-03 23:35:49 +00:00
ian%hixie.ch
0f67329225 More diagnostics for localAddr users. (check the version of Net::IRC) 2003-10-03 23:03:52 +00:00
ian%hixie.ch
9103b2e742 Bug 131324: Stop the bot from saying the same thing n times in a row. 2003-10-03 21:01:48 +00:00
ian%hixie.ch
d80d23f8f1 Bug 124748: Stop time drift once and for all by using a globally initialised time() value. This was done as a pretty blind search-and-replace, so may have caused regressions and may be non-optimal. Please file bugs if you spot problems. This adds the entry 'time' to the event object. 2003-10-03 15:47:35 +00:00
ian%hixie.ch
37514d30b5 Make all instances of the time function have brackets, to make them easier to find. 2003-10-03 15:19:12 +00:00
ian%hixie.ch
af90e48a89 Bug 134617: Let users tell the bot to shut up. Adds a 'getMessageQueue' function to the bot API. Also fixes some unrelated minor issues in the developer documentation and makes a tiny optimisation in drainmsgqueue. 2003-10-03 15:08:42 +00:00
ian%hixie.ch
b5920883b6 Upgrade ignoredUsers and implement ignoredTargets. Fixes bug 133067, adds a bunch of documentation. Other very minor typographical fixes. 2003-09-20 21:10:28 +00:00
ian%hixie.ch
22e3d1ab3b 'IGNORE' doesn't seem to work on all platforms. Let's go back to our old reaping code. It still seems to fix the bug. Also, fix another instance of the '/bin/bash might be tainted' problem. 2003-09-20 18:17:53 +00:00
ian%hixie.ch
0f42189a5d Change our child process handling behaviour to be more proactive and hopefully less likely to hang. This in theory fixes bug 111987, but who knows. Feel free to reopen that bug if it doesn't help or if it makes things worse (e.g. if you start seeing zombie processes everywhere). It seemed to work for me on Debian. 2003-09-20 17:27:09 +00:00
ian%hixie.ch
b4135edf15 Fix a minor warning 2003-08-09 13:48:22 +00:00
ian%hixie.ch
e30b8ac746 Fix a typo which confused older Perls, and fix a big error in the handling of uppercase channel names. b=MasterTLH (thanks dude), p=Hixie, r=justdave,bbaetz 2002-07-10 13:56:22 +00:00
ian%hixie.ch
57e468fbbe Makes mozbot only mark joins as joined on a successful attempt. b=112049, r=kerz.
Implements getHelpLine and getModules API functions and updates documentation to match. b=130532, r=imajes.

Adds a notice() method to the mozbot API. Updates the documentation to reflect this. (Also updates the version and corrects a typo in the docs.) b=72960, r=timeless.

Fixes the problem whereby if a module doesn't load, it's not removed from the @modulenames list, which causes problems for modules that walk the @modulenames list to get each module in turn. b=133148, r=kerz.

The Log event for the Told event doesn't have the prefix text that made the event a Told event in the first place. This adds a field 'fulldata' to the event hash which will let loggers log the whole thing. Also updates documentation. b=133509, r=kerz.

Log events were not generated for events generated by the bot. This removes redundant checks to prevent that from happening (redundant since the server never sent us the messages in the first place) and then adds code to synthesise the relevant Log events. Updates the documentation to match. b=16226, r=kerz.

The Initialise handler was needlessly within the scope of an undef'd $/. This scopes the cause of this problem. b=131483, p=Robin Berjon, r=kerz, a=hixie.

Makes ctcpSend() send messages to the target, not the originator. This makes it work like say(). b=133140, r=caillion.

Adds a way to make the auth command not give confirmation feedback (quiet auth). b=134342, r=caillon.
2002-04-01 03:46:06 +00:00
ian%hixie.ch
0d0352ed11 More fallout from the General.bm split. Change the IRC name to r=imajes. 2002-03-08 19:40:27 +00:00
ian%hixie.ch
c8fba971f8 Hack workaround to make the General module autojoin all channels the first time the bot is run. This will be removed and fixed correctly for 2.4, see bug 112049. 2002-03-08 19:15:55 +00:00
ian%hixie.ch
13d001e9b3 Fix typo in the previous checkin that was making virgin installations not load the General module. 2002-03-08 18:39:39 +00:00
ian%hixie.ch
293e551f9c Updating various version strings to 2.2. 2002-03-08 15:43:31 +00:00
ian%hixie.ch
d6728b8554 Split out the General module into its own file. This removes any version number dependence in mozbot.pl, which means that future updates will not automatically require mozbots to be restarted. b=124662, r=imajes 2002-03-08 15:39:47 +00:00
ian%hixie.ch
4ea280ea56 Add the custom library files to the list of files to check for changes. This will make upgrading mozbot easier. r=kerz 2002-02-19 21:33:23 +00:00
ian%hixie.ch
0532498703 Fixing regression introduced by the CTCP patch: long lines no longer get wrapped. Also includes minor cleanup. r=kerz 2002-02-13 02:20:01 +00:00
ian%hixie.ch
4795f7e93e Added support for running mozbot on multi-homed boxes (requires Net::IRC 0.71). b=93186 r=kiko 2002-02-13 00:49:37 +00:00
ian%hixie.ch
c50b3c77fe * Implement CTCP Ping, Version and Source as BotModule Event
* Added ctcpSend(), ctcpReply() APIs
* Implemented CTCP Version in the general module
* Updated devel docs
b=117625 r=Jake

* Remove brackets around grep() in mozbot.pl
b=111831 r=Jake
2002-02-12 14:51:59 +00:00
ian%hixie.ch
7ec6984494 Add support for keyed channels to mozbot. A lot of work, like it said in the INSTALL file. :-) b=112955 r=timeless 2001-11-30 23:38:21 +00:00
timeless%mac.com
51a4520c4a Bugzilla Bug 107823 change nsIFile
to use 'Modified' instead of 'Modification'
r=akkana sr=brendan
2001-11-26 08:05:05 +00:00
ian%hixie.ch
ae454984a5 mkdir requires the second argument in perl 5.005. b=111730, r=daniele 2001-11-25 14:17:19 +00:00
ian%hixie.ch
cfc5246ba6 Fixing various typos and spelling mistakes spotted by timeless. There shouldn't be any code level changes here. moa=hixie 2001-04-29 08:35:29 +00:00