X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FWorker%2FAPDelivery.php;h=a25977372a3a2edd3168c0d2d2fe427d5c7c6123;hb=e4e9a20ac8a8a7896c3d2e4136237d399c664dd6;hp=60752896fc64b05c224504ecd78c355c4a8114dc;hpb=13a10b8f20ac7c5927c39d9e80e1a7d515385736;p=friendica.git diff --git a/src/Worker/APDelivery.php b/src/Worker/APDelivery.php index 60752896fc..a25977372a 100644 --- a/src/Worker/APDelivery.php +++ b/src/Worker/APDelivery.php @@ -23,7 +23,8 @@ namespace Friendica\Worker; use Friendica\Core\Logger; use Friendica\Core\Worker; -use Friendica\Model\ItemDeliveryData; +use Friendica\Model\Item; +use Friendica\Model\Post; use Friendica\Protocol\ActivityPub; use Friendica\Util\HTTPSignature; @@ -41,7 +42,16 @@ class APDelivery */ public static function execute($cmd, $target_id, $inbox, $uid) { - Logger::log('Invoked: ' . $cmd . ': ' . $target_id . ' to ' . $inbox, Logger::DEBUG); + if (ActivityPub\Transmitter::archivedInbox($inbox)) { + Logger::info('Inbox is archived', ['cmd' => $cmd, 'inbox' => $inbox, 'id' => $target_id, 'uid' => $uid]); + if (in_array($cmd, [Delivery::POST])) { + $item = Item::selectFirst(['uri-id'], ['id' => $target_id]); + Post\DeliveryData::incrementQueueFailed($item['uri-id'] ?? 0); + } + return; + } + + Logger::info('Invoked', ['cmd' => $cmd, 'inbox' => $inbox, 'id' => $target_id, 'uid' => $uid]); $success = true; @@ -67,10 +77,14 @@ class APDelivery } } + // This should never fail and is temporariy (until the move to the "post" structure) + $item = Item::selectFirst(['uri-id'], ['id' => $target_id]); + $uriid = $item['uri-id'] ?? 0; + if (!$success && !Worker::defer() && in_array($cmd, [Delivery::POST])) { - ItemDeliveryData::incrementQueueFailed($target_id); + Post\DeliveryData::incrementQueueFailed($uriid); } elseif ($success && in_array($cmd, [Delivery::POST])) { - ItemDeliveryData::incrementQueueDone($target_id, ItemDeliveryData::ACTIVITYPUB); + Post\DeliveryData::incrementQueueDone($uriid, Post\DeliveryData::ACTIVITYPUB); } } }