Beispiel #1
0
function register_all_events($alias, $privmsg = False)
{
    register_event_handler("JOIN", ":" . get_bot_nick() . " INTERNAL :{$alias} event-join %%nick%% %%params%%");
    register_event_handler("KICK", ":" . get_bot_nick() . " INTERNAL :{$alias} event-kick %%params%%");
    register_event_handler("NICK", ":" . get_bot_nick() . " INTERNAL :{$alias} event-nick %%nick%% %%trailing%%");
    register_event_handler("PART", ":" . get_bot_nick() . " INTERNAL :{$alias} event-part %%nick%% %%params%%");
    register_event_handler("QUIT", ":" . get_bot_nick() . " INTERNAL :{$alias} event-quit %%nick%%");
    if ($privmsg == True) {
        register_event_handler("PRIVMSG", ":" . get_bot_nick() . " INTERNAL :{$alias} event-privmsg %%nick%% %%dest%% %%trailing%%");
    }
}
Beispiel #2
0
function run_event_registration_test()
{
    global $passed;
    unset_bucket(TEST_BUCKET);
    $bucket_index = "<<EXEC_EVENT_HANDLERS>>";
    $test_cmd = "PRIVMSG";
    $test_data = ":%%nick%% INTERNAL %%dest%% :~event-test %%trailing%%";
    $data1 = get_bucket($bucket_index);
    if (check_handler($bucket_index, $test_cmd, $test_data) == True) {
        term_echo("run_event_registration_test failed! (1)");
        $passed = False;
    }
    register_event_handler($test_cmd, $test_data);
    if (check_handler($bucket_index, $test_cmd, $test_data) == False) {
        term_echo("run_event_registration_test failed! (2)");
        $passed = False;
    }
    set_bucket("<<SELF_TRIGGER_EVENTS_FLAG>>", "1");
    privmsg("event test message");
    sleep(2);
    $test = get_bucket(TEST_BUCKET);
    term_echo("*** TEST BUCKET => {$test}");
    if ($test != TEST_VALUE) {
        term_echo("run_event_registration_test failed! (3)");
        $passed = False;
    }
    unset_bucket(TEST_BUCKET);
    unset_bucket("<<SELF_TRIGGER_EVENTS_FLAG>>");
    delete_event_handler($test_cmd, $test_data);
    sleep(2);
    if (check_handler($bucket_index, $test_cmd, $test_data) == True) {
        term_echo("run_event_registration_test failed! (4)");
        $passed = False;
    }
    $data2 = get_bucket($bucket_index);
    if ($data1 != $data2) {
        term_echo("run_event_registration_test failed! (5)");
        $passed = False;
    }
}
Beispiel #3
0
init:~soon register-events
*/
#####################################################################################################
$trailing = trim($argv[1]);
$dest = $argv[2];
$nick = $argv[3];
$cmd = $argv[4];
if ($dest != "#irciv") {
    return;
}
ini_set("display_errors", "on");
require_once "lib.php";
require_once "soon_lib.php";
require_once "soon_test.php";
if ($trailing == "register-events") {
    register_event_handler("PRIVMSG", ":%%nick%% INTERNAL %%dest%% :~soon %%trailing%%");
    return;
}
if ($cmd == "INTERNAL") {
    # PRIVMSG event triggered
    return;
} else {
    # manually triggered
    $translations = load_translations();
    #var_dump($translations);
    #translate($translations,"hellox3");
    run_tests();
    #privmsg($code);
    return;
    /*$parts=explode(" ",$trailing);
      $action=strtolower($parts[0]);
Beispiel #4
0
- the bot could keeep track of irc comments and if you type something like
  "~comment Bytram, i think you're right" the bot could tack it to the end of Bytram's last comment posting
- if two people are having an irc discussion about tfa, and they are triggering comment posting,
  the bot would prolly just treat it like they were replying to each other's comments
- if they wanted to start a new thread it might need some kind of separate trigger
*/
#####################################################################################################
require_once "sn_lib.php";
$trailing = $argv[1];
$dest = $argv[2];
$nick = $argv[3];
$alias = $argv[4];
define("BUCKET_VERIFIER_NICK", "<<verifier_nick>>");
switch ($alias) {
    case "~sn-internal":
        register_event_handler("NICK", ":" . get_bot_nick() . " INTERNAL :~verifier-nick-change %%nick%% %%trailing%%");
        return;
    case "~uid":
        $host = "www.soylentnews.org";
        $port = 443;
        $uri = "/zoo.pl?op=max";
        $response = wget($host, $uri, $port, ICEWEASEL_UA);
        $delim1 = "<p class='bender'>";
        $delim2 = "</p>";
        $uid = extract_text($response, $delim1, $delim2);
        if ($uid !== False) {
            privmsg($uid);
        } else {
            var_dump($response);
            privmsg(" uid: an error occurred");
        }
Beispiel #5
0
*/
#####################################################################################################
# http://www.mediawiki.org/wiki/Manual:Bots
# http://en.wikipedia.org/wiki/Wikipedia:Creating_a_bot
# ~wiki edit title|section|text
# ~wiki edit title|section| (deletes section)
# instead of "~wiki login" & "~wiki get page|section" you just type [[page#section]] to get the page/section
#####################################################################################################
require_once "lib.php";
require_once "wiki_lib.php";
$trailing = trim(strip_tags($argv[1]));
$dest = $argv[2];
$nick = $argv[3];
$alias = $argv[4];
if ($trailing == "register-events") {
    register_event_handler("PRIVMSG", ":%%nick%% INTERNAL %%dest%% :~wiki-privmsg %%trailing%%");
    return;
}
if ($alias == "~wiki-privmsg") {
    if ($dest == "#wiki") {
        $cmd = ".blockuser";
        if (strtolower(substr($trailing, 0, strlen($cmd))) == $cmd) {
            wiki_blockuser($nick, $trailing);
            return;
        }
        $cmd = ".unblockuser";
        if (strtolower(substr($trailing, 0, strlen($cmd))) == $cmd) {
            wiki_unblockuser($nick, $trailing);
            return;
        }
        $cmd = ".delpage";
Beispiel #6
0
#####################################################################################################
/*
exec:~tell|10|0|0|1|*||||php scripts/tell.php %%trailing%% %%dest%% %%nick%% %%alias%% %%server%%
exec:~tell-internal|10|0|0|1|*|INTERNAL|||php scripts/tell.php %%trailing%% %%dest%% %%nick%% %%alias%% %%server%%
init:~tell-internal register-events
*/
#####################################################################################################
date_default_timezone_set("UTC");
require_once "lib.php";
$trailing = trim($argv[1]);
$dest = $argv[2];
$nick = strtolower($argv[3]);
$alias = $argv[4];
$server = $argv[5];
if ($trailing == "register-events") {
    register_event_handler("PRIVMSG", ":%%nick%% INTERNAL %%dest%% :~tell-internal %%trailing%%");
    return;
}
if ($alias == "~tell") {
    if ($trailing == "") {
        privmsg("syntax: ~tell <nick> <message>");
        return;
    }
    $parts = explode(" ", $trailing);
    $target = strtolower($parts[0]);
    array_shift($parts);
    $trailing = trim(implode(" ", $parts));
    append_array_bucket("TELL_MESSAGES_" . $server . "_" . $target, $target . ", at " . date("Y-m-d H:i:s", microtime(True)) . " (UTC), " . $nick . " left message from " . $dest . ": " . $trailing);
    privmsg("message saved");
    return;
}
Beispiel #7
0
if ($script_name != "") {
    if (isset($scripts[$script_name]["code"]) == True) {
        $code = base64_decode($scripts[$script_name]["code"]);
        if ($code != "") {
            $script_lines = explode("\n", $code);
        }
    }
}
$parts = explode(" ", $trailing);
$action = strtolower($parts[0]);
array_shift($parts);
$trailing = trim(implode(" ", $parts));
$data_changed = False;
switch ($action) {
    case "register-events":
        register_event_handler("PRIVMSG", ":" . get_bot_nick() . " INTERNAL :~x event-privmsg %%nick%% %%dest%% %%trailing%%");
        break;
    case "event-privmsg":
        # trailing = crutchy # test
        if ($global_execute != "enabled") {
            return;
        }
        $parts = explode(" ", $trailing);
        if (count($parts) > 2) {
            $nick = $parts[0];
            $dest = $parts[1];
            array_shift($parts);
            array_shift($parts);
            $trailing = trim(implode(" ", $parts));
        }
        if ($dest == get_bot_nick()) {
Beispiel #8
0
require_once "translate_lib.php";
$trailing = trim($argv[1]);
$alias = trim($argv[2]);
$dest = $argv[3];
$nick = $argv[4];
if ($nick == get_bot_nick() and $alias != "~title-internal" and $trailing != "register-events") {
    return;
}
$bucket = get_bucket("<exec_title_{$dest}>");
if ($alias == "~title-internal") {
    $parts = explode(" ", $trailing);
    $action = strtolower($parts[0]);
    array_shift($parts);
    switch ($action) {
        case "register-events":
            register_event_handler("PRIVMSG", ":%%nick%% INTERNAL %%dest%% :~title-internal event-privmsg %%nick%% %%dest%% %%trailing%%");
            return;
        case "event-privmsg":
            # trailing = <nick> <channel> <trailing>
            $nick = strtolower($parts[0]);
            $channel = strtolower($parts[1]);
            array_shift($parts);
            array_shift($parts);
            $trailing = trim(implode(" ", $parts));
            $show_rd = False;
            if (get_bucket("<exec_title_url_{$dest}>") != "") {
                $show_rd = True;
            }
            if ($bucket == "on") {
                title_privmsg($trailing, $channel, $show_rd);
            }