]> git.mxchange.org Git - friendica.git/blobdiff - src/Worker/APDelivery.php
Remove unused BBCode::scaleExternalImage parameters
[friendica.git] / src / Worker / APDelivery.php
index 798a9b49a1802fd732d4a0d49e4abf12a38a12b7..7ac1dfacafad78ff483b49a74d6738d68cdaf08d 100644 (file)
@@ -4,15 +4,13 @@
  */
 namespace Friendica\Worker;
 
-use Friendica\BaseObject;
 use Friendica\Core\Logger;
 use Friendica\Core\Worker;
 use Friendica\Model\ItemDeliveryData;
 use Friendica\Protocol\ActivityPub;
-use Friendica\Model\Item;
 use Friendica\Util\HTTPSignature;
 
-class APDelivery extends BaseObject
+class APDelivery
 {
        /**
         * @brief Delivers ActivityPub messages
@@ -31,9 +29,16 @@ class APDelivery extends BaseObject
                $success = true;
 
                if ($cmd == Delivery::MAIL) {
+                       $data = ActivityPub\Transmitter::createActivityFromMail($target_id);
+                       if (!empty($data)) {
+                               $success = HTTPSignature::transmit($data, $inbox, $uid);
+                       }
                } elseif ($cmd == Delivery::SUGGESTION) {
                        $success = ActivityPub\Transmitter::sendContactSuggestion($uid, $inbox, $target_id);
                } elseif ($cmd == Delivery::RELOCATION) {
+                       // @todo Implementation pending
+               } elseif ($cmd == Delivery::POKE) {
+                       // Implementation not planned
                } elseif ($cmd == Delivery::REMOVAL) {
                        $success = ActivityPub\Transmitter::sendProfileDeletion($uid, $inbox);
                } elseif ($cmd == Delivery::PROFILEUPDATE) {
@@ -43,14 +48,12 @@ class APDelivery extends BaseObject
                        if (!empty($data)) {
                                $success = HTTPSignature::transmit($data, $inbox, $uid);
                        }
-
-                       if ($success && in_array($cmd, [Delivery::POST, Delivery::COMMENT])) {
-                               ItemDeliveryData::incrementQueueDone($target_id);
-                       }
                }
 
-               if (!$success) {
-                       Worker::defer();
+               if (!$success && !Worker::defer() && in_array($cmd, [Delivery::POST])) {
+                       ItemDeliveryData::incrementQueueFailed($target_id);
+               } elseif ($success && in_array($cmd, [Delivery::POST])) {
+                       ItemDeliveryData::incrementQueueDone($target_id, ItemDeliveryData::ACTIVITYPUB);
                }
        }
 }