PHP Class Phergie_Plugin_Logging, phergie

CONFIGURATION: The following configuration items are required, only 'retry' is optional: 'logging.dsn' = A PDO DSN string to connect to your database 'logging.user' = Username for your database access 'logging.pass' = Password for the same: 'logging.table' = Table name to store data in 'logging.dsn' => 'mysql:host=127.0.0.1;port=3306;dbname=test;charset=utf8', 'logging.user' => 'MyUser', 'logging.pass' => 'UserPassword', 'logging.table' => 'phergie', DATA SCHEMA: You will need to have created an appropriate database table to store these log entries. At a minimum it needs to include host, channel, type, nick, and message fields. Beyond that you can get creative. The following is an example table structure you might use: CREATE TABLE phergie_log ( id int(11) unsigned NOT NULL AUTO_INCREMENT, host varchar(265) NOT NULL, channel varchar(50) NOT NULL, type varchar(10) NOT NULL, nick varchar(50) NOT NULL, message varchar(1024) NULL, created_on timestamp DEFAULT current_timestamp NOT NULL, PRIMARY KEY (id), INDEX idx_phergie_chan (channel) ) ENGINE = innodb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Author: Eli White ([email protected])
Inheritance: extends Phergie_Plugin_Abstract
Afficher le fichier Open project: phergie/phergie

Protected Properties

Свойство Type Description
$db PDO Database connection
$failed Remembers if we've failed our database connection and given up.

Méthodes publiques

Méthode Description
onAction ( ) : void onAction
onJoin ( ) : void onJoin
onLoad ( ) : void onLoad
onPart ( ) : void onPart
onPrivmsg ( ) : void onPrivmsg
preDispatch ( ) : void preDispatch

Méthodes protégées

Méthode Description
log ( Phergie_Event_Request $event, string $nick, string $message = NULL ) : void log

Private Methods

Méthode Description
_connectDB ( ) : boolean _connectDB
_log ( Phergie_Event_Request $event, string $nick, string $message = NULL ) : boolean _log

Method Details

log() protected méthode

Wrapper method on the logging that adds in additional features, such as error handling and retrying the long living database connection in case it dropped.
Author: Eli White ([email protected])
protected log ( Phergie_Event_Request $event, string $nick, string $message = NULL ) : void
$event Phergie_Event_Request The event we are operating on
$nick string Who did this?
$message string What was said?
Résultat void

onAction() public méthode

Handler for when the bot receives a CTCP ACTION request.
Author: Eli White ([email protected])
public onAction ( ) : void
Résultat void

onJoin() public méthode

Handler for when a user joins a channel.
Author: Eli White ([email protected])
public onJoin ( ) : void
Résultat void

onLoad() public méthode

Prepare for logging
Author: Eli White ([email protected])
public onLoad ( ) : void
Résultat void

onPart() public méthode

Handler for when a user leaves a channel.
Author: Eli White ([email protected])
public onPart ( ) : void
Résultat void

onPrivmsg() public méthode

Watches for & logs any incoming messages from the channel
Author: Eli White ([email protected])
public onPrivmsg ( ) : void
Résultat void

preDispatch() public méthode

Processes events before they are dispatched and logs appropriate ones.
Author: Eli White ([email protected])
public preDispatch ( ) : void
Résultat void

Property Details

$db protected_oe property

Database connection
protected PDO $db
Résultat PDO

$failed protected_oe property

Remembers if we've failed our database connection and given up.
protected $failed