diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/onepoll.php | 13 | ||||
-rw-r--r-- | include/socgraph.php | 17 |
2 files changed, 23 insertions, 7 deletions
diff --git a/include/onepoll.php b/include/onepoll.php index 99c6df998..5bc7742d1 100644 --- a/include/onepoll.php +++ b/include/onepoll.php @@ -4,6 +4,8 @@ require_once('boot.php'); require_once('include/cli_startup.php'); require_once('include/zot.php'); require_once('include/socgraph.php'); +require_once('include/Contact.php'); + function onepoll_run($argv, $argc){ @@ -68,7 +70,7 @@ function onepoll_run($argv, $argc){ logger("onepoll: poll: ({$contact['id']}) IMPORTER: {$importer['xchan_name']}, CONTACT: {$contact['xchan_name']}"); - $last_update = (($contact['last_update'] === '0000-00-00 00:00:00') + $last_update = (($contact['abook_updated'] === '0000-00-00 00:00:00') ? datetime_convert('UTC','UTC','now - 7 days') : datetime_convert('UTC','UTC',$contact['abook_updated']) ); @@ -77,20 +79,27 @@ function onepoll_run($argv, $argc){ $x = zot_refresh($contact,$importer); + $responded = false; + if(! $x) { // mark for death } else { - q("update abook set abook_updated = '%s' where abook_id = %d limit 1", + q("update abook set abook_updated = '%s', abook_connected = '%s' where abook_id = %d limit 1", + dbesc(datetime_convert()), dbesc(datetime_convert()), intval($contact['abook_id']) ); + $responded = true; // if marked for death, reset } + if(! $responded) + return; + if($contact['xchan_connurl']) { $feedurl = str_replace('/poco/','/zotfeed/',$channel['xchan_connurl']); diff --git a/include/socgraph.php b/include/socgraph.php index 081927dcc..dd7fa90d4 100644 --- a/include/socgraph.php +++ b/include/socgraph.php @@ -31,8 +31,10 @@ function poco_load($xchan = null,$url = null) { } } - if(! $url) + if(! $url) { + logger('poco_load: no url'); return; + } $url = $url . '?fields=displayName,hash,urls,photos' ; @@ -41,17 +43,20 @@ function poco_load($xchan = null,$url = null) { $s = z_fetch_url($url); - logger('poco_load: returns ' . print_r($s,true), LOGGER_DATA); - if(! $s['success']) + if(! $s['success']) { + logger('poco_load: returns ' . print_r($s,true)); return; + } $j = json_decode($s['body'],true); logger('poco_load: ' . print_r($j,true),LOGGER_DATA); - if(! x($j,'entry') && is_array($j['entry'])) + if(! ((x($j,'entry')) && (is_array($j['entry'])))) { + logger('poco_load: no entries'); return; + } $total = 0; foreach($j['entry'] as $entry) { @@ -87,8 +92,10 @@ function poco_load($xchan = null,$url = null) { } } - if((! $name) || (! $profile_url) || (! $profile_photo) || (! $hash) || (! $address)) + if((! $name) || (! $profile_url) || (! $profile_photo) || (! $hash) || (! $address)) { + logger('poco_load: missing data'); continue; + } $x = q("select xchan_hash from xchan where xchan_hash = '%s' limit 1", dbesc($hash) |