allow configurable poll interval override when hub is used
This commit is contained in:
parent
ddec422de6
commit
5b1fde8b0f
2 changed files with 27 additions and 10 deletions
|
@ -43,17 +43,31 @@
|
||||||
|
|
||||||
if($contact['priority'] || $contact['subhub']) {
|
if($contact['priority'] || $contact['subhub']) {
|
||||||
|
|
||||||
$update = false;
|
$hub_update = true;
|
||||||
|
$update = false;
|
||||||
// We should be getting everything via a hub. But just to be sure, let's check once a day.
|
|
||||||
// This also lets us update our subscription to the hub, and add or replace hubs in case it
|
|
||||||
// changed.
|
|
||||||
|
|
||||||
if($contact['subhub'])
|
|
||||||
$contact['priority'] = 3;
|
|
||||||
|
|
||||||
$t = $contact['last-update'];
|
$t = $contact['last-update'];
|
||||||
|
|
||||||
|
// We should be getting everything via a hub. But just to be sure, let's check once a day.
|
||||||
|
// (You can make this more or less frequent if desired by setting 'pushpoll_frequency' appropriately)
|
||||||
|
// This also lets us update our subscription to the hub, and add or replace hubs in case it
|
||||||
|
// changed. We will only update hubs once a day, regardless of 'pushpoll_frequency'.
|
||||||
|
|
||||||
|
|
||||||
|
if($contact['subhub']) {
|
||||||
|
$interval = get_config('system','pushpoll_frequency');
|
||||||
|
$contact['priority'] = (($interval !== false) ? intval($interval) : 3);
|
||||||
|
$hub_update = false;
|
||||||
|
|
||||||
|
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 day"))
|
||||||
|
$hub_update = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Based on $contact['priority'], should we poll this site now? Or later?
|
||||||
|
*/
|
||||||
|
|
||||||
switch ($contact['priority']) {
|
switch ($contact['priority']) {
|
||||||
case 5:
|
case 5:
|
||||||
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 month"))
|
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 month"))
|
||||||
|
@ -218,7 +232,8 @@
|
||||||
consume_feed($xml,$importer,$contact,$hub);
|
consume_feed($xml,$importer,$contact,$hub);
|
||||||
|
|
||||||
|
|
||||||
if((strlen($hub)) && (($contact['rel'] == REL_BUD) || (($contact['network'] === 'stat') && (! $contact['readonly'])))) {
|
if((strlen($hub)) && ($hub_update)
|
||||||
|
&& (($contact['rel'] == REL_BUD) || (($contact['network'] === 'stat') && (! $contact['readonly'])))) {
|
||||||
logger('poller: subscribing to hub(s) : ' . $hub . ' contact name : ' . $contact['name'] . ' local user : ' . $importer['name']);
|
logger('poller: subscribing to hub(s) : ' . $hub . ' contact name : ' . $contact['name'] . ' local user : ' . $importer['name']);
|
||||||
$hubs = explode(',', $hub);
|
$hubs = explode(',', $hub);
|
||||||
if(count($hubs)) {
|
if(count($hubs)) {
|
||||||
|
|
|
@ -61,8 +61,10 @@ $db = new dba($db_host, $db_user, $db_pass, $db_data, $install);
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if(! $install)
|
if(! $install) {
|
||||||
require_once("session.php");
|
require_once("session.php");
|
||||||
|
load_hooks();
|
||||||
|
}
|
||||||
|
|
||||||
require_once("datetime.php");
|
require_once("datetime.php");
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue