Google的Calendar API搭配Apps Script的使用如先前所介紹,非常方便...
但是如果想要透過Apps Script來建置可以提供點選後重導到特定Google Event的功能則有先天上的限制...
這是由於Google的Calendar頁面在點選Event時候,會在同一個視窗中動作
開啟Event是透過javascript的方式使用ajax非同步load Event資訊到頁面上呈現
而load這個資訊的重要關鍵資訊就是Calendar Event中的"htmlLink"欄位
如果透過之前介紹的Apps Script取出event物件來做應用的話
目前無法取出"htmlLink"欄位...
但是Google所發送的Calendar Remind信件中
卻使用了一個快速進入特定Event的方式的鏈結
下面文章在解密這個鏈結的資訊...
相信下面的信件不陌生吧
是Google Calendar提醒開會的資訊...
注意到框起來的地方了嘛...
他是一個這樣格式的URL:
https://www.google.com/calendar/event?action=VIEW&eid=ZTc0Mjk4OHV...zdUBtaXRhYy5jb20udHc
而其中紅色的地方就是目前Apps Script取不到的欄位...
如何得到htmlLink呢?可以透過Google API Explore來查詢
在API Explore中,Calendar API提供了一個event list的function
填入您的calendar id就可以查得該calendar的所有行事曆事項
而calendar id可以在calendar的設定中找到
如果是account的預設行事曆,則會是使用account email作為calendar id...
送出查詢之後會得到下面的結果...
其中可以看到items中有所有的event列表
而event中有個htmlLink可以作為行事曆事件的代表網頁
點選該Link則可以直接轉址到該行事曆事件頁面
如下所示:
至於Apps Script無法取出htmlLink部分...只好提供意見給Google參考啦...
留言
張貼留言