use Friendica\Protocol\DFRN;
use Friendica\Protocol\Diaspora;
use Friendica\Protocol\Email;
+use Friendica\Protocol\Activity;
use Friendica\Util\Strings;
use Friendica\Util\Network;
use Friendica\Core\Worker;
*/
private static function deliverDFRN($cmd, $contact, $owner, $items, $target_item, $public_message, $top_level, $followup)
{
+ // Transmit Diaspora reshares via Diaspora if the Friendica contact support Diaspora
+ if (Diaspora::isReshare($target_item['body']) && !empty(Diaspora::personByHandle($contact['addr'], false))) {
+ Logger::info('Reshare will be transmitted via Diaspora', ['url' => $contact['url'], 'guid' => ($target_item['guid'] ?? '') ?: $target_item['id']]);
+ self::deliverDiaspora($cmd, $contact, $owner, $items, $target_item, $public_message, $top_level, $followup);
+ return;
+ }
+
Logger::info('Deliver ' . (($target_item['guid'] ?? '') ?: $target_item['id']) . ' via DFRN to ' . (($contact['addr'] ?? '') ?: $contact['url']));
if ($cmd == self::MAIL) {
return;
}
+ if ($target_item['verb'] != Activity::POST) {
+ return;
+ }
+
if (!empty($thr_parent['object'])) {
$data = json_decode($thr_parent['object'], true);
if (!empty($data['reply_to'])) {