PuSH 0.4: No outgoing 'sync' verifications. Feed renewal script. No auto-renewal.
Among other things (such as permanent subscriptions), Pubsubhubbub 0.4 removed the "sync" verification method. This means that any incoming PuSH subscription requests that follow the 0.4 spec won't really _require_that we handle it as a background process, but if we were to try direct verification of the subscription - and fail - there's no way we could pick up the ball again. So _essentially_ we require background processing with retries. This means we must implement something like the "poorman cron" or similar, so background processing can be handled on-demand/on-site-visit. This is how Friendica, Drupal etc. handles it and is necessary for environments where we can't run separate queue daemons. When the poorman-cron-ish thing is implemented, auto-renewal will work for all users. PuSH 0.4 spec: https://pubsubhubbub.googlecode.com/git/pubsubhubbub-core-0.4.html More on PuSH 0.4 release (incl. breaking changes): https://groups.google.com/forum/#!msg/pubsubhubbub/7RPlYMds4RI/2mIHQTdV3aoJ
This commit is contained in:
@@ -114,7 +114,7 @@ class HubSub extends Managed_DataObject
|
||||
}
|
||||
$data = array('sub' => clone($this),
|
||||
'mode' => $mode,
|
||||
'token' => $token,
|
||||
'token' => $token, // let's put it in there if remote uses PuSH <0.4
|
||||
'retries' => $retries);
|
||||
$qm = QueueManager::get();
|
||||
$qm->enqueue($data, 'hubconf');
|
||||
@@ -139,8 +139,8 @@ class HubSub extends Managed_DataObject
|
||||
if ($mode == 'subscribe') {
|
||||
$params['hub.lease_seconds'] = $this->lease;
|
||||
}
|
||||
if ($token !== null) {
|
||||
$params['hub.verify_token'] = $token;
|
||||
if ($token !== null) { // TODO: deprecated in PuSH 0.4
|
||||
$params['hub.verify_token'] = $token; // let's put it in there if remote uses PuSH <0.4
|
||||
}
|
||||
|
||||
// Any existing query string parameters must be preserved
|
||||
|
Reference in New Issue
Block a user