use Friendica\Core\Protocol;
use Friendica\Model\APContact;
use Friendica\Model\User;
+use Friendica\Protocol\ActivityPub\FetchQueue;
use Friendica\Util\HTTPSignature;
use Friendica\Util\JsonLD;
*
* @return bool is it AP?
*/
- public static function isRequest()
+ public static function isRequest(): bool
{
$isrequest = stristr($_SERVER['HTTP_ACCEPT'] ?? '', 'application/activity+json') ||
stristr($_SERVER['HTTP_ACCEPT'] ?? '', 'application/json') ||
*
* @param string $url
* @param integer $uid User ID
+ * @return void
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
public static function fetchOutbox(string $url, int $uid)
$items = [];
}
+ $fetchQueue = new FetchQueue();
+
foreach ($items as $activity) {
$ldactivity = JsonLD::compact($activity);
- ActivityPub\Receiver::processActivity($ldactivity, '', $uid, true);
+ ActivityPub\Receiver::processActivity($fetchQueue, $ldactivity, '', $uid, true);
}
+
+ $fetchQueue->process();
}
/**
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
- public static function isSupportedByContactUrl(string $url, $update = null)
+ public static function isSupportedByContactUrl(string $url, $update = null): bool
{
return !empty(APContact::getByURL($url, $update));
}