X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FPushSubscriber.php;h=f6839307249c67542e605e71389e26279828fc2a;hb=2efd4a7eb7d7183875e5a608ad944dab1320d199;hp=44495daeefb4b1b66c251326bf4d8813f325a68b;hpb=2f28c2ebbfd8f66093d7081d40b1d48f65fcff20;p=friendica.git diff --git a/src/Model/PushSubscriber.php b/src/Model/PushSubscriber.php index 44495daeef..f683930724 100644 --- a/src/Model/PushSubscriber.php +++ b/src/Model/PushSubscriber.php @@ -1,23 +1,40 @@ . + * */ + namespace Friendica\Model; use Friendica\Core\Logger; use Friendica\Core\Worker; use Friendica\Database\DBA; use Friendica\Util\DateTimeFormat; - -require_once 'include/dba.php'; +use Friendica\Util\Network; class PushSubscriber { /** - * @brief Send subscription notifications for the given user + * Send subscription notifications for the given user * - * @param integer $uid User ID - * @param string $priority Priority for push workers + * @param integer $uid User ID + * @param int $default_priority + * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ public static function publishFeed($uid, $default_priority = PRIORITY_HIGH) { @@ -28,9 +45,10 @@ class PushSubscriber } /** - * @brief start workers to transmit the feed data + * start workers to transmit the feed data * - * @param string $priority Priority for push workers + * @param int $default_priority + * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ public static function requeue($default_priority = PRIORITY_HIGH) { @@ -54,7 +72,7 @@ class PushSubscriber } /** - * @brief Renew the feed subscription + * Renew the feed subscription * * @param integer $uid User ID * @param string $nick Priority for push workers @@ -62,6 +80,7 @@ class PushSubscriber * @param string $hub_callback Callback address * @param string $hub_topic Feed topic * @param string $hub_secret Subscription secret + * @throws \Exception */ public static function renew($uid, $nick, $subscribe, $hub_callback, $hub_topic, $hub_secret) { @@ -97,9 +116,10 @@ class PushSubscriber } /** - * @brief Delay the push subscriber + * Delay the push subscriber * * @param integer $id Subscriber ID + * @throws \Exception */ public static function delay($id) { @@ -134,10 +154,11 @@ class PushSubscriber } /** - * @brief Reset the push subscriber + * Reset the push subscriber * * @param integer $id Subscriber ID - * @param date $last_update Date of last transmitted item + * @param string $last_update Date of last transmitted item + * @throws \Exception */ public static function reset($id, $last_update) { @@ -150,5 +171,13 @@ class PushSubscriber $fields = ['push' => 0, 'next_try' => DBA::NULL_DATETIME, 'last_update' => $last_update]; DBA::update('push_subscriber', $fields, ['id' => $id]); Logger::log('Subscriber ' . $subscriber['callback_url'] . ' for ' . $subscriber['nickname'] . ' is marked as vital', Logger::DEBUG); + + $parts = parse_url($subscriber['callback_url']); + unset($parts['path']); + $server_url = Network::unparseURL($parts); + $gsid = GServer::getID($server_url, true); + if (!empty($gsid)) { + GServer::setProtocol($gsid, Post\DeliveryData::OSTATUS); + } } }