X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FProtocol%2FActivityPub.php;h=fa63c44d574bcb9b8f2f6af54707f3cd721f6229;hb=8a0c568fe103e2e7ef832a623bfb6be6c54e300a;hp=c7c2623558da2981a935f18fd969ed74e83952cb;hpb=81e81bd8c8c01389a11a268407c15e56c36d9db3;p=friendica.git diff --git a/src/Protocol/ActivityPub.php b/src/Protocol/ActivityPub.php index c7c2623558..fa63c44d57 100644 --- a/src/Protocol/ActivityPub.php +++ b/src/Protocol/ActivityPub.php @@ -4,6 +4,7 @@ */ namespace Friendica\Protocol; +use Friendica\Util\JsonLD; use Friendica\Util\Network; use Friendica\Core\Protocol; use Friendica\Model\APContact; @@ -43,13 +44,15 @@ class ActivityPub ['vcard' => 'http://www.w3.org/2006/vcard/ns#', 'dfrn' => 'http://purl.org/macgirvin/dfrn/1.0/', 'diaspora' => 'https://diasporafoundation.org/ns/', + 'litepub' => 'http://litepub.social/ns#', 'manuallyApprovesFollowers' => 'as:manuallyApprovesFollowers', - 'sensitive' => 'as:sensitive', 'Hashtag' => 'as:Hashtag']]; + 'sensitive' => 'as:sensitive', 'Hashtag' => 'as:Hashtag', + 'directMessage' => 'litepub:directMessage']]; const ACCOUNT_TYPES = ['Person', 'Organization', 'Service', 'Group', 'Application']; /** * Checks if the web request is done for the AP protocol * - * @return is it AP? + * @return bool is it AP? */ public static function isRequest() { @@ -63,6 +66,7 @@ class ActivityPub * @param string $url content url * @param integer $uid User ID for the signature * @return array + * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ public static function fetchContent($url, $uid = 0) { @@ -87,12 +91,15 @@ class ActivityPub /** * Fetches a profile from the given url into an array that is compatible to Probe::uri * - * @param string $url profile url + * @param string $url profile url + * @param boolean $update Update the profile * @return array + * @throws \Friendica\Network\HTTPException\InternalServerErrorException + * @throws \ImagickException */ - public static function probeProfile($url) + public static function probeProfile($url, $update = true) { - $apcontact = APContact::getByURL($url, true); + $apcontact = APContact::getByURL($url, $update); if (empty($apcontact)) { return false; } @@ -128,8 +135,9 @@ class ActivityPub /** * Fetches activities from the outbox of a given profile and processes it * - * @param string $url + * @param string $url * @param integer $uid User ID + * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ public static function fetchOutbox($url, $uid) {