summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xscripts/xmppdaemon.php41
1 files changed, 21 insertions, 20 deletions
diff --git a/scripts/xmppdaemon.php b/scripts/xmppdaemon.php
index 0f98becda..661631937 100755
--- a/scripts/xmppdaemon.php
+++ b/scripts/xmppdaemon.php
@@ -18,25 +18,23 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-# 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);
-// Preset the server at the command line
+$shortoptions = 'r::';
+$longoptions = array('resource::');
+
+$helptext = <<<END_OF_XMPP_HELP
+Daemon script for receiving new notices from Jabber users.
-$server = ($argc > 2) ? $argv[2] : null;
-$path = ($argc > 3) ? $argv[3] : null;
+ -r --resource Jabber Resource ID (default to config)
-require_once(INSTALLDIR . '/lib/common.php');
-require_once(INSTALLDIR . '/lib/jabber.php');
-require_once(INSTALLDIR . '/lib/daemon.php');
+END_OF_XMPP_HELP;
-set_error_handler('common_error_handler');
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+require_once INSTALLDIR . '/lib/common.php';
+require_once INSTALLDIR . '/lib/jabber.php';
+require_once INSTALLDIR . '/lib/daemon.php';
# This is kind of clunky; we create a class to call the global functions
# in jabber.php, which create a new XMPP class. A more elegant (?) solution
@@ -325,12 +323,15 @@ if (common_config('xmpp','enabled')==false) {
exit();
}
-ini_set("max_execution_time", "0");
-ini_set("max_input_time", "0");
-set_time_limit(0);
-mb_internal_encoding('UTF-8');
-
-$resource = ($argc > 1) ? $argv[1] : (common_config('xmpp','resource') . '-listen');
+if (have_option('r')) {
+ $resource = get_option_value('r');
+} else if (have_option('--resource')) {
+ $resource = get_option_value('--resource');
+} else if (count($args) > 0) {
+ $resource = $args[0];
+} else {
+ $resource = null;
+}
$daemon = new XMPPDaemon($resource);