We are no longer offering accounts on this server. Consider https://gitlab.freedesktop.org/ as a place to host projects.

Commit c5cf2c4c authored by Evan Prodromou's avatar Evan Prodromou

Merge branch '0.8.x' into testing

parents e3a53251 fd53fba1
...@@ -75,6 +75,7 @@ class QueueHandler extends Daemon ...@@ -75,6 +75,7 @@ class QueueHandler extends Daemon
function run() function run()
{ {
if (!$this->start()) { if (!$this->start()) {
$this->log(LOG_WARNING, 'failed to start');
return false; return false;
} }
...@@ -87,9 +88,15 @@ class QueueHandler extends Daemon ...@@ -87,9 +88,15 @@ class QueueHandler extends Daemon
$qm->service($queue, $this); $qm->service($queue, $this);
$this->log(LOG_INFO, 'finished servicing the queue');
if (!$this->finish()) { if (!$this->finish()) {
$this->log(LOG_WARNING, 'failed to clean up');
return false; return false;
} }
$this->log(LOG_INFO, 'terminating normally');
return true; return true;
} }
......
...@@ -38,14 +38,20 @@ class XmppQueueHandler extends QueueHandler ...@@ -38,14 +38,20 @@ class XmppQueueHandler extends QueueHandler
function start() function start()
{ {
# Low priority; we don't want to receive messages # Low priority; we don't want to receive messages
$this->log(LOG_INFO, "INITIALIZE"); $this->log(LOG_INFO, "INITIALIZE");
$this->conn = jabber_connect($this->_id.$this->transport()); $this->conn = jabber_connect($this->_id.$this->transport());
if ($this->conn) {
$this->conn->addEventHandler('message', 'forward_message', $this); if (empty($this->conn)) {
$this->conn->addEventHandler('reconnect', 'handle_reconnect', $this); $this->log(LOG_ERR, "Couldn't connect to server.");
$this->conn->setReconnectTimeout(600); return false;
jabber_send_presence("Send me a message to post a notice", 'available', null, 'available', -1);
} }
$this->conn->addEventHandler('message', 'forward_message', $this);
$this->conn->addEventHandler('reconnect', 'handle_reconnect', $this);
$this->conn->setReconnectTimeout(600);
jabber_send_presence("Send me a message to post a notice", 'available', null, 'available', -1);
return !is_null($this->conn); return !is_null($this->conn);
} }
...@@ -56,6 +62,8 @@ class XmppQueueHandler extends QueueHandler ...@@ -56,6 +62,8 @@ class XmppQueueHandler extends QueueHandler
function handle_reconnect(&$pl) function handle_reconnect(&$pl)
{ {
$this->log(LOG_NOTICE, 'reconnected');
$this->conn->processUntil('session_start'); $this->conn->processUntil('session_start');
$this->conn->presence(null, 'available', null, 'available', -1); $this->conn->presence(null, 'available', null, 'available', -1);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment