* In a multi-site queuedaemon.php run, one connection will be instantiated
* for each site being handled by the current process that has XMPP enabled.
*/
-
class XmppManager extends IoManager
{
protected $site = null;
$this->conn->addEventHandler('reconnect', 'handle_reconnect', $this);
$this->conn->setReconnectTimeout(600);
+ // @todo Needs i18n?
jabber_send_presence("Send me a message to post a notice", 'available', null, 'available', 100);
return !is_null($this->conn);
$this->conn->processTime(0);
return true;
} else {
+ common_log(LOG_ERR, __METHOD__ . ' failed: 0 bytes sent');
return false;
}
} else {
// Can't send right now...
+ common_log(LOG_ERR, __METHOD__ . ' failed: XMPP server connection currently down');
return false;
}
}
$_cur = $user;
if (!$user) {
- $this->from_site($from, 'Unknown user; go to ' .
- common_local_url('imsettings') .
- ' to add your address to your account');
+ // TRANS: %s is the URL to the StatusNet site's Instant Messaging settings.
+ $this->from_site($from, sprintf(_('Unknown user. Go to %s ' .
+ 'to add your address to your account'),common_local_url('imsettings')));
$this->log(LOG_WARNING, 'Message from unknown user ' . $from);
return;
}
unset($pl);
}
-
function is_self($from)
{
return preg_match('/^'.strtolower(jabber_daemon_address()).'/', strtolower($from));
function add_notice(&$user, &$pl)
{
$body = trim($pl['body']);
- $content_shortened = common_shorten_links($body);
+ $content_shortened = $user->shortenLinks($body);
if (Notice::contentTooLong($content_shortened)) {
$from = jabber_normalize_jid($pl['from']);
- $this->from_site($from, sprintf(_('Message too long - maximum is %1$d characters, you sent %2$d.'),
+ // TRANS: Response to XMPP source when it sent too long a message.
+ // TRANS: %1$d the maximum number of allowed characters (used for plural), %2$d is the sent number.
+ $this->from_site($from, sprintf(_m('Message too long. Maximum is %1$d character, you sent %2$d.',
+ 'Message too long. Maximum is %1$d characters, you sent %2$d.',
+ Notice::maxContent()),
Notice::maxContent(),
mb_strlen($content_shortened)));
return;