status = $status; } /** * Execute the job. * * @return void */ public function handle() { $status = $this->status; if (! $status) { Log::info('StatusLocalUpdateActivityPubDeliverPipeline: Status no longer exists, skipping job'); return; } $profile = $status->profile; if (! $profile) { Log::info("StatusLocalUpdateActivityPubDeliverPipeline: Profile no longer exists for status {$status->id}, skipping job"); return; } if ($status->local == false || $status->url || $status->uri) { return; } $audience = $status->profile->getAudienceInbox(); if (empty($audience) || ! in_array($status->scope, ['public', 'unlisted', 'private'])) { return; } switch ($status->type) { case 'poll': return; default: $activitypubObject = new UpdateNote; break; } $activity = FractalService::item($status, $activitypubObject); ActivityPubDeliveryService::pool($profile, $audience, $activity); } }