X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=scripts%2Fombqueuehandler.php;h=be33b9821801f63b2e2a12b2da9fdcc5a2b9fe1f;hb=db9bc253cb3da1af41894f073e8aeebc265c876b;hp=1df816d1403e2b49566313a8b57a048623a9ce1f;hpb=aed0fff4ea668de83405a4457fe238cf36c78d8f;p=quix0rs-gnu-social.git diff --git a/scripts/ombqueuehandler.php b/scripts/ombqueuehandler.php index 1df816d140..be33b98218 100755 --- a/scripts/ombqueuehandler.php +++ b/scripts/ombqueuehandler.php @@ -1,8 +1,8 @@ #!/usr/bin/env php . */ -# Abort if called from a web server -if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { - print "This script must be run from the command line\n"; - exit(); -} - define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); -define('LACONICA', true); -require_once(INSTALLDIR . '/lib/common.php'); -require_once(INSTALLDIR . '/lib/omb.php'); -require_once(INSTALLDIR . '/lib/queuehandler.php'); +$shortoptions = 'i::'; +$longoptions = array('id::'); + +$helptext = <<log(LOG_INFO, "INITIALIZE"); - return true; - } - - function handle_notice($notice) { - if ($this->is_remote($notice)) { - $this->log(LOG_DEBUG, 'Ignoring remote notice ' . $notice->id); - return true; - } else { - return omb_broadcast_remote_subscribers($notice); - } - } - - function finish() { - } - - function is_remote($notice) { - $user = User::staticGet($notice->profile_id); - return is_null($user); - } -} +class OmbQueueHandler extends QueueHandler +{ + + function transport() + { + return 'omb'; + } + + function start() + { + $this->log(LOG_INFO, "INITIALIZE"); + return true; + } + + function handle_notice($notice) + { + if ($this->is_remote($notice)) { + $this->log(LOG_DEBUG, 'Ignoring remote notice ' . $notice->id); + return true; + } else { + return omb_broadcast_notice($notice); + } + } -ini_set("max_execution_time", "0"); -ini_set("max_input_time", "0"); -set_time_limit(0); -mb_internal_encoding('UTF-8'); + function finish() + { + } -$id = ($argc > 1) ? $argv[1] : NULL; + function is_remote($notice) + { + $user = User::staticGet($notice->profile_id); + return is_null($user); + } +} + +if (have_option('i')) { + $id = get_option_value('i'); +} else if (have_option('--id')) { + $id = get_option_value('--id'); +} else if (count($args) > 0) { + $id = $args[0]; +} else { + $id = null; +} $handler = new OmbQueueHandler($id);