<?php
/**
- * @copyright Copyright (C) 2020, Friendica
+ * @copyright Copyright (C) 2010-2021, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Model\Item;
+use Friendica\Model\Post;
use Friendica\Model\User;
+use Friendica\Network\HTTPClientOptions;
use Friendica\Protocol\Activity;
use Friendica\Protocol\ActivityPub;
use Friendica\Protocol\Email;
return;
}
- if ($contact['network'] != Protocol::MAIL) {
+ // We never probe mail contacts since their probing demands a mail from the contact in the inbox.
+ // We don't probe feed accounts by default since they are polled in a higher frequency, but forced probes are okay.
+ if ($force && ($contact['network'] == Protocol::FEED)) {
$success = Contact::updateFromProbe($contact_id);
} else {
$success = true;
}
$cookiejar = tempnam(get_temppath(), 'cookiejar-onepoll-');
- $curlResult = DI::httpRequest()->get($contact['poll'], ['cookiejar' => $cookiejar]);
+ $curlResult = DI::httpClient()->get($contact['poll'], [HTTPClientOptions::COOKIEJAR => $cookiejar]);
unlink($cookiejar);
if ($curlResult->isTimeout()) {
$datarray['network'] = Protocol::MAIL;
// $meta = Email::messageMeta($mbox, $msg_uid);
- $datarray['uri'] = Email::msgid2iri(trim($meta->message_id, '<>'));
+ $datarray['thr-parent'] = $datarray['uri'] = Email::msgid2iri(trim($meta->message_id, '<>'));
// Have we seen it before?
$fields = ['deleted', 'id'];
$condition = ['uid' => $importer_uid, 'uri' => $datarray['uri']];
- $item = Item::selectFirst($fields, $condition);
+ $item = Post::selectFirst($fields, $condition);
if (DBA::isResult($item)) {
Logger::log("Mail: Seen before ".$msg_uid." for ".$mailconf['user']." UID: ".$importer_uid." URI: ".$datarray['uri'],Logger::DEBUG);
}
}
$condition = ['uri' => $refs_arr, 'uid' => $importer_uid];
- $parent = Item::selectFirst(['uri'], $condition);
+ $parent = Post::selectFirst(['uri'], $condition);
if (DBA::isResult($parent)) {
$datarray['thr-parent'] = $parent['uri'];
}
if (empty($datarray['thr-parent']) && $reply) {
$condition = ['title' => $datarray['title'], 'uid' => $importer_uid, 'network' => Protocol::MAIL];
$params = ['order' => ['created' => true]];
- $parent = Item::selectFirst(['uri'], $condition, $params);
+ $parent = Post::selectFirst(['uri'], $condition, $params);
if (DBA::isResult($parent)) {
$datarray['thr-parent'] = $parent['uri'];
}
DBA::update('contact', ['hub-verify' => $verify_token], ['id' => $contact['id']]);
}
- $postResult = DI::httpRequest()->post($url, $params);
+ $postResult = DI::httpClient()->post($url, $params);
Logger::info('Hub subscription done', ['result' => $postResult->getReturnCode()]);