2014-11-04 68 views
3

我使用Google日曆同步我的CRM系統。爲此,我要求我的用戶Google日曆中的push notifications加入我的系統。 我已成功創建手錶,並將到期時間設置爲2030年,但是當我收到手錶事件的響應時,它會顯示手錶的到期時間設置爲一個月。谷歌日曆手錶超過一個月的過期時間?

問題:

  1. 這是否意味着我每個月需要刷新每個用戶的日曆的手錶在我的系統?
  2. 有沒有辦法讓手錶無限制?

我的代碼:

$channel = new Google_Service_Calendar_Channel($client); 
$uuid = gen_uuid(); 
$channel->setId($uuid); 
$channel->setType('web_hook'); 
$channel->setExpiration('1919995862000'); 
$address = $sugar_config['site_url'] . "/index.php?entryPoint=updateFromCal"; 
$channel->setAddress($address); 
$watchEvent = $service->events->watch($bean->google_cal_id_c, $channel); 

響應:

[address] => 
    [expiration] => 1417667348000 
    [id] => 87453668-b1fd-4468-beca-xxxxxxxxxxxx 
    [kind] => api#channel 
    [params] => 
    [payload] => 
    [resourceId] => xxxxxxxxx-xxxxxxxxxxx 
    [resourceUri] => https://www.googleapis.com/calendar/v3/calendars/[email protected]/events?key=xxxxxxxxxxxxxxxxxxxxWHxxxxxxalt=json 
    [token] => 
    [type] => 
    [modelData:protected] => Array 

回答

1

通知信道可以具有期滿時間,其中或者通過您的請求或通過任何谷歌日曆API內部確定的值限制或默認值(使用更嚴格的值)。目前沒有自動更新通知渠道的方法。當頻道接近其到期時,您必須通過調用watch方法創建一個新頻道。有關通知渠道的更多文檔,請參閱link