Don't add already queued items from Diaspora to the queue again

This commit is contained in:
Michael 2018-02-08 11:26:24 +00:00
parent af55cd57f3
commit 0093f863fd
7 changed files with 19 additions and 25 deletions

View file

@ -66,7 +66,7 @@ class Queue
* @param string $msg message
* @param boolean $batch batch, default false
*/
public static function add($cid, $network, $msg, $batch = false)
public static function add($cid, $network, $msg, $batch = false, $guid = '')
{
$max_queue = Config::get('system', 'max_contact_queue');
@ -86,10 +86,10 @@ class Queue
if (DBM::is_result($r)) {
if ($batch && ($r[0]['total'] > $batch_queue)) {
logger('add_to_queue: too many queued items for batch server ' . $cid . ' - discarding message');
logger('too many queued items for batch server ' . $cid . ' - discarding message');
return;
} elseif ((! $batch) && ($r[0]['total'] > $max_queue)) {
logger('add_to_queue: too many queued items for contact ' . $cid . ' - discarding message');
logger('too many queued items for contact ' . $cid . ' - discarding message');
return;
}
}
@ -97,10 +97,12 @@ class Queue
dba::insert('queue', [
'cid' => $cid,
'network' => $network,
'guid' => $guid,
'created' => DateTimeFormat::utcNow(),
'last' => DateTimeFormat::utcNow(),
'content' => $msg,
'batch' =>($batch) ? 1 : 0
]);
logger('Added item ' . $guid . ' for ' . $cid);
}
}