auf den documentation Basierend:
Derzeit gibt es keine automatische Möglichkeit, einen Benachrichtigungskanal zu erneuern. Wenn ein Kanal kurz vor seinem Ablauf steht, müssen Sie einen neuen erstellen, indem Sie die Methode watch
aufrufen. Wie immer müssen Sie für die Eigenschaft des neuen Kanals einen eindeutigen Wert für die id
Eigenschaft verwenden. Beachten Sie, dass es wahrscheinlich eine "Überlappung" -Zeitspanne gibt, wenn die zwei Benachrichtigungskanäle für dieselbe Ressource aktiv sind.
X-Goog-Channel-Expiration
können im Kopfteil der Benachrichtigung (manchmal vorhanden) gefunden werden.
POST https://sampleurl.com/notifications // Your receiving URL.
Content-Type: application/json; utf-8
Content-Length: 0
X-Goog-Channel-ID: 4ba78bf0-6a47-11e2-bcfd-0800200c9a66
X-Goog-Channel-Token: 398348u3tu83ut8uu38
X-Goog-Channel-Expiration: Tue, 19 Nov 2013 01:13:52 GMT
X-Goog-Resource-ID: ret08u3rv24htgh289g
X-Goog-Resource-URI: https://www.googleapis.com/calendar/v3/calendars/[email protected]/events
X-Goog-Resource-State: exists
X-Goog-Message-Number: 10
Ich habe einen Zusammenhang SO post gefunden, dass Sie den Ablauf bei der Anforderung eine Uhr Verfahren einstellen. Hier ist der Code:
$service = new Google_Service_Calendar($client);
$channel = new Google_Service_Calendar_Channel($service);
$channel->setId($uniqueID);
$channel->setType('web_hook');
$channel->setAddress('https://sample.net/notificationCallBack.php');
$timetoExpire = time()+3600000;
$optParams = array('ttl' => $timetoExpire);
$channel->setParams($optParams);
$watchEvent = $service->events->watch($calendarID, $channel);
Jetzt, wo Sie das Ablaufdatum festgelegt haben, können Sie nun den Kopfteil überprüfen und X-Goog-Channel-Expiration
sehen.
Die Verfallszeit des Kanals ist, falls vorhanden, als Unix-Zeitstempel (in ms) in den von der Überwachungsmethode zurückgegebenen Informationen enthalten.
Hoffe das hilft.