PEAR is discontinued

This is a static archive preserving historical releases and metadata. No new packages or updates will be published. For updates to existing packages, or to publish new packages, please use Composer and Packagist.

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