PEAR is archived and read-only

This mirror preserves historical PEAR package releases and metadata so existing references remain available.

Home » Networking » Net_SmartIRC

Helps you communicate with IRC networks in whatever way you might need, whether in a CLI program or as part of a web page. Also well-suited for bot development.

This package is unmaintained.

Download latest release 1.1.14 (there might be newer Composer installable version)

License: LGPL

Description

SmartIRC is your go-to library for interfacing with IRC networks. All you need is PHP 5.3 or later.

Full feature list:
-------------------------------------
- Fully object-oriented programmed
- Your bot class can be inline in the same file you call SmartIRC from, or included as an external file
- Every received IRC message is parsed into an object you can easily get information from
(containing the following info: rawmessage, from, nick, ident, host, type, params, message, channel)
- Make your bots using Action Handlers and Time Handlers, which register custom callbacks when various events happen or on time intervals, respectively – or, extend the Net_SmartIRC class to add (or override) handlers directly using individual server message types
- Flood protection which uses a send buffer with a queue that has 3 priority levels (high, medium, low) plus a bypass level (critical)
- Nick collision detection and handling
- Auto-retry during initial connection attempt
- Auto-reconnect if connection is lost, which will re-join to the channels it was in before
- Debugging/logging system with log levels (destination can be file, stdout, syslog or browserout)
- Supports PHP as old as 5.3.0
- Channel syncing (tracking of users/modes/topic etc in objects)
- Customizable CTCP VERSION reply

Documentation

Manual

Maintainers

Dependencies

Required

Releases

Bugs

IDStatusTypeVersionDateSummary
#891ClosedBug2004-02-26PEAR QA: improvement for get_class()-usage
#1466ClosedBug2004-05-21array_key_exists warning
#1708Wont fixReq2004-06-23Multiple server support
#1743ClosedBug2004-06-29declare+pcntl_signal semantics cause fatal error in Net_SmartIRC
#1950ClosedBug2004-07-22Constructor calls ignore_user_abort(true) - undocumented and not always desired
#2042ClosedBug2004-08-02examples use wrong path for include/require
#2201ClosedBug2004-08-23Bad $data infos if client is IPV6
#2309ClosedBug2004-09-10Channel list message parsing error
#2602ClosedBug2004-10-23Notice about undefined variable _usersyncing
#3064ClosedBug2004-12-30Doesn't work with php 5.0.3
#4727ClosedReq2005-07-01Regarding Examples
#5220ClosedBug2005-08-27connect() returns in some situations no false
#6525ClosedBug2006-01-19When joining empty channel channel array is wrong
#6650BogusBug1.0.02006-01-31Channel synching problem
#7321ClosedReq1.0.02006-04-06Please Add SSL support
#7349BogusBug1.0.02006-04-09whois
#9848ClosedBug1.0.02007-01-16fix for "Only variable references..." warning
#9857SpamBug1.0.02007-01-17it not functions
#10118ClosedBug1.0.02007-02-18quit command doesn't disconnect the socket
#10119ClosedReq1.0.02007-02-18CTCP version reply should be fully configurable
#12539ClosedBug1.0.02007-11-28Flaw in timeout detection.
#13056ClosedReq1.0.02008-02-04Allow multiple actionhandlers to execute
#13078DuplicateBug1.0.02008-02-06Does not support founder/admin/half-op modes
#13079ClosedBug1.0.02008-02-06Does not support founder/admin/half-op modes
#14924ClosedBug1.0.02008-10-30delayed timer with real socket
#16526BogusReq1.0.12009-08-15Colour and bold codes are not supported
#16531ClosedBug1.0.12009-08-17Nickname changes wrong
#16754DuplicateReq1.0.12009-11-01Corrected "function join" with altered code when joining multiple channels
#16755ClosedReq1.0.12009-11-01Not possible to join more than one chanel even if "$channelarray" is correctly
#17729ClosedBugSVN2010-08-17patch: Removed define_syslog_variables and avoided warning for socket blocking
#17769ClosedBug1.0.12010-08-20file included with relative path
#18025ClosedReq1.0.22010-11-03Bind IP for Net_SmartIRC_base::connect()?
#18403ClosedReq1.0.22011-03-28Bug fixes, code formatting, added features
#18586ClosedBug1.0.22011-06-04Register Action Handle only accepts one class
#18774ClosedBug1.0.22011-09-01not compatible in strict mode
#20419ClosedBug1.1.02014-10-02Need a getter for the current bot nick
#20428ClosedBug1.1.22014-10-17setBindAddress sets wrong variable
#20429ClosedReq1.1.22014-10-17IPv6 socket support
#20469ClosedBug1.1.42014-12-18Uses php 5.4 syntax, but pear dependency is 5.3.0
#20475ClosedBug1.1.52014-12-29Channel not containing nicks
#20476ClosedBug1.1.52014-12-29JOIN not correct
#20485ClosedBug1.1.52015-01-14PHP Notice: Uninitialized string offset: -1 in Net/SmartIRC.php on line 1683
#20486ClosedBugSVN2015-01-15Illegal string offset 'xxx in Net/SmartIRC.php on line 2634
#20487ClosedBugSVN2015-01-15Constant SMARTIRC_RPL_OMOTDSTART already defined
#20522ClosedBugSVN2015-03-23Bug in messagehandler.php on line 521
#20523No FeedbackBug2015-03-23Bug in messagehandler.php on line 113
#20524ClosedBugSVN2015-03-23Bug in messagehandler on line 141
#20925BogusReq1.1.72015-07-26SSL Support
#20971ClosedBug1.1.82015-10-25interal use of _delayReconnect
#20972ClosedBug1.1.82015-10-25reconnect & usermode
#20973ClosedBug1.1.82015-10-26timehandlers not called when not connected
#20974ClosedBug1.1.82015-10-26reconnect is not indefinite
#20986ClosedBug1.1.92015-11-28fix php notice
#21018ClosedBug1.1.92016-01-10ChannelSync and references
#21109ClosedBug1.1.92016-09-05IRC bot not working with Slack
#21163No FeedbackBug1.1.102017-01-15process burns cpu
#23746ClosedReq1.1.112018-05-01time handlers: need to know online state