邀請使用者參加活動

建立事件

如果您有主辦人 Google 日曆的寫入權限,可以使用 Events: insert 方法新增活動。

這個方法會直接將活動新增至主辦人的日曆,不受新增邀請設定影響。

新增與會者

使用這個方法時,您也可以將參與者的電子郵件地址新增至活動的 attendees 屬性,將參與者新增至同一場活動。活動發起人日後對活動所做的任何變更,都會傳播給參與者。

與會者會收到發起人電子郵件地址傳送的邀請。Google 日曆使用者會透過電子郵件和/或日曆收到邀請,具體取決於 Google 日曆設定中的活動設定:

  • 如果對方已啟用 From everyone 設定,活動會直接新增到他們的日曆
  • 如果對方已啟用 Only if the sender is known 設定,且先前曾與發起人互動、發起人與對方隸屬相同機構,或發起人是對方 Google 聯絡人,系統就會直接將活動新增到對方的日曆。如果邀請對象不認識主辦人,可以點按「新增至日曆」,或點按邀請電子郵件中的「是」或「不確定」回覆。活動就會新增到對方的日曆。
  • 如果使用者啟用 When I respond in email 設定,系統會等到使用者點選邀請電子郵件中的「是」、「不確定」或「否」回覆邀請後,才將邀請新增到日曆。

如要進一步瞭解邀請如何新增至 Google 日曆,請參閱「管理 Google 日曆邀請」。

直接在與會者的日曆中顯示活動

如要讓 Google 日曆直接在受邀者的日曆中顯示活動,無論受邀者採用哪種設定,您都可以設定受邀者的敬請回覆狀態,或直接將活動副本匯入受邀者的日曆。無論使用哪種方法,您都需要具備與會者日曆的寫入權限。如果沒有,請考慮將主辦人新增至與會者的聯絡人,這可能需要與會者聯絡人的寫入權限。

設定出席者的回覆狀態

如要設定活動參與者的回覆狀態,請按照下列步驟操作:

  1. 在 Google 日曆主辦者的日曆中建立活動,並新增出席者 (請參閱上文)。
  2. 使用 Events: update 方法,將出席者的回覆狀態設為 acceptedtentative。你必須具備與會者日曆的寫入權限。活動可能需要過一段時間才會顯示在與會者的日曆中。進一步瞭解如何使用 Events: update 方法

這個方法會將活動新增至與會者的日曆,但與會者可能仍會在電子郵件中看到橫幅,指出邀請是從他們先前不認識的地址傳送。

直接在參與者的日曆中匯入活動副本

如要將活動副本匯入參與者的日曆,請按照下列步驟操作:

  1. 如果您有主辦人的 Google 日曆寫入權限,請使用 Events: import 方法匯入活動副本。
  2. 使用 Events: import,在與會者的日曆中匯入同一活動的另一個副本。 你必須擁有與會者日曆的寫入權限。主辦者和參與者的副本應使用相同的活動 ID (iCalUID),並確保在參與者的副本中指定主辦者。

使用這種方法時,受邀者可以在日曆中看到活動,但不會收到 Google 日曆的邀請電子郵件。

將主辦人新增至出席者的聯絡人

如果沒有與會者的憑證,可以請與會者或其所屬機構預先將主辦者的電子郵件地址新增至 Google 聯絡人,這樣活動就會直接顯示在他們的日曆中。新建立的聯絡人可能需要過一段時間才會生效。

  • 請 Google 日曆使用者將主辦人新增至 Google 聯絡人
  • 如果與會者屬於某個機構,您可以請該機構的管理員以程式輔助方式,將電子郵件地址新增至使用者的聯絡人。請管理員啟用網域範圍的委派,模擬使用者並使用 People: createContact 方法為每位使用者建立聯絡人,確保日後來自這些電子郵件地址的邀請會自動顯示在使用者日曆中。
  • 如果您有權存取與會者的聯絡人,也可以使用 People: createContact 方法,將主辦者的電子郵件地址新增至與會者的聯絡人。

透過電子郵件地址邀請使用者

如果您沒有主辦人 Google 日曆的寫入權限,或不想公開主辦人的電子郵件地址,請使用 iCalendar 協定 (RFC-5545) 透過 .ICS 檔案邀請使用者。

如果受邀者是 Google 日曆使用者,且已啟用這項設定,但他們先前未曾與您互動,或未將您的地址記錄為已知地址,則必須點選「新增至日曆」或回覆活動邀請,系統才會將邀請新增至他們的日曆。Only if the sender is known

或者,如果想讓 Google 日曆使用者輕鬆新增一次性活動,不必持續更新,可以提供預先填入活動資訊的連結,讓使用者自行新增。這個方法會在使用者日曆中建立獨立活動,除非您有權存取使用者日曆,否則無法更新活動。

請使用下列連結範本:


https://calendar.google.com/calendar/r/eventedit?action=TEMPLATE&dates=20230325T224500Z%2F20230326T001500Z&stz=Europe/Brussels&etz=Europe/Brussels&details=EVENT_DESCRIPTION_HERE&location=EVENT_LOCATION_HERE&text=EVENT_TITLE_HERE

更新下列資訊:

  • 開始和結束日期與時間:請使用 ISO 8601 格式。在上述範例中,請替換 20230325T224500Z20230326T001500Z
  • 開始和結束時區:格式為 IANA 時區資料庫名稱。 將時區放在 stzetz 欄位中。
  • 事件說明:必須經過網址編碼。
  • 活動地點:必須經過網址編碼。
  • 活動標題:必須經過網址編碼。

範例

以建立預約服務為例,協助使用者向商家預約。使用者預約服務時,您希望服務在預約者和商家 Google 日曆中新增活動。

為提供最佳使用者體驗,建議商家授予日曆的寫入權限,這樣您就能直接在商家的日曆中新增活動 (建立活動),並邀請預約者參加該活動 (新增出席者)。為確保預訂者會在日曆中看到活動並收到提醒,請告知他們在預訂後立即檢查電子郵件,並回覆「是」。他們回覆活動邀請後,系統會根據通知設定,透過 Google 日曆傳送活動通知

如要直接將活動新增至預訂者的日曆,請告知預訂者將收到邀請的電子郵件地址新增至聯絡人。或者,請預訂者授予行事曆的寫入權限,以便代表他們以程式輔助方式回覆 (設定出席者的回覆狀態),並傳送電子郵件通知,告知預訂已確認。

如果商家不想公開電子郵件地址,請使用使用者專屬的電子郵件地址,透過電子郵件將活動傳送給預約者 (透過電子郵件地址邀請使用者)。

事件傳播

下圖說明瞭動態。首先,Jack 在自己的主要日曆中建立活動 (因此擁有主辦人副本)。接著,他邀請大提琴課程群組次要日曆和 Susan (活動設定為 Only if the sender is known)。系統會在 Cello lesson 群組次要日曆中建立出席者的副本,如果 Susan 認識 Jack,也會在她的日曆中建立副本;否則,系統會在 Susan 回覆或表示認識 Jack 時建立副本。Susan 回覆後,系統會將回覆狀態變更傳回給主辦人,並更新主辦人副本中的 Susan 回覆狀態。系統會將發起人副本的變更傳播給其他參與者。

圖表:顯示活動/參與者動態

共用事件屬性

建立活動的日曆是主辦人日曆。這個日曆擁有共用的活動資訊,包括 ID、開始和結束時間、摘要和說明。當主辦者在日曆上更新這項資訊時,系統會將變更內容傳播給與會者副本。

私人活動屬性

並非所有活動副本都會共用所有資訊。部分屬性為私有屬性,例如提醒事項、colorId、透明度或 extendedProperties.private 屬性。這些屬性由與會者的設定控管,而非主辦者的日曆。

參與者也可以變更活動的共用屬性。不過,這些變更只會反映在自己的副本上,如果主辦人進行變更,這些變更可能會遺失。

從參與者傳播回主辦者的唯一活動變更,是參與者的回覆狀態,儲存在 attendees[].responseStatus 屬性中。