if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
-require_once INSTALLDIR . '/plugins/TwitterBridge/twitter.php';
+require_once dirname(__DIR__) . '/twitter.php';
/**
* Queue handler to deal with incoming Twitter status updates, as retrieved by
$importer = new TwitterImport();
$notice = $importer->importStatus($status);
if ($notice instanceof Notice) {
- $flink = Foreign_link::getByForeignID($receiver, TWITTER_SERVICE);
- if ($flink instanceof Foreign_link) {
+ try {
+ $flink = Foreign_link::getByForeignID($receiver, TWITTER_SERVICE);
common_log(LOG_DEBUG, "TweetInQueueHandler - Got flink so add notice ".
- $notice->id." to inbox ".$flink->user_id);
- // FIXME: How should a Twitter user get their Inbox filled with foreign tweets?
- } else {
+ $notice->id." to attentions for user ".$flink->user_id);
+ try {
+ Attention::saveNew($notice, $flink->getProfile());
+ } catch (Exception $e) {
+ // Log the exception, but make sure we don't bail out, we
+ // still have a queue item to remove here-after.
+ common_log(LOG_ERR, "Failed adding notice {$notice->id} to attentions for user {$flink->user_id}: " .
+ $e->getMessage());
+ }
+ } catch (NoResultException $e) {
common_log(LOG_DEBUG, "TweetInQueueHandler - No flink found for foreign user ".$receiver);
}
}