予定にユーザーを招待する

予定を作成する

主催者の 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 メソッドを使用する 「 参加者の出欠確認 accepted または tentative に変更します。参加者のスペースに カレンダー。なお、 アクセスできます。 Events: update メソッドの使用方法の詳細

この方法では、参加者のカレンダーに予定が追加されますが、 招待がアドレスから送信したことを示すバナーがメールに表示される 認識できなかったためです

参加者のカレンダーに予定のコピーを直接インポートする

予定のコピーを参加者のカレンダーにインポートする手順は次のとおりです。 手順:

  1. 主催者の Google カレンダーへの書き込み権限がある場合は、Events: import メソッドを使用して予定のコピーをインポートします。
  2. 同じ予定の別のコピーを参加者の Events: import を使用します。 参加者のカレンダーへの書き込みアクセス権が必要です。主催者と参加者のコピーに同じイベント ID(iCalUID)を使用し、参加者のコピーに主催者を指定します。

この方法では、参加者は自分のカレンダーで予定を表示できますが、 Google カレンダーから招待メールが届きます。

主催者を参加者の連絡先に追加する

参加者の認証情報がわからない場合は、 組織で Google コンタクトに主催者のメールアドレスを追加するよう依頼した場合 カレンダーに直接予定を表示できます。一部の商品については 新しく作成された連絡先が有効になるまでにわずかな遅延が発生します。

  • Google カレンダー ユーザーに、Google コンタクトに主催者を追加するよう依頼します。
  • 参加者が組織に所属している場合は、その組織の 管理者がプログラムでユーザーのメールアドレスを できます。ドメイン全体の委任を有効にして、ユーザーの権限を借用し、People: createContact メソッドを使用して各ユーザーの連絡先を作成するよう、管理者に依頼します。これにより、これらのメールアドレスからの今後の招待状がユーザーのカレンダーに自動的に表示されるようにします。
  • 参加者の連絡先にアクセスできる場合は、 参加者の連絡先に主催者のメールアドレスを People: createContact メソッドを使用します。

メールアドレスからユーザーを招待する

主催者の Google カレンダーへの書き込みアクセス権がない場合、または 主催者のメールアドレスを公開したくない場合は、iCalendar を使用してください。 プロトコル (RFC-5545)。 .ICS ファイルを使用してメールでユーザーを招待できます。

参加者が Only if the sender is known 設定の Google カレンダー ユーザーであり、以前にこのアドレスを操作または記録したことがない場合 招待状はカレンダーに追加され、 カレンダーに追加するか、ゲストが予定への出欠確認を行います。

また、Google カレンダーのユーザーが簡単にカレンダーを イベントを 1 回限りのイベントとして自動更新する場合は、 ユーザーが自身を追加するための事前入力済みイベントです。この方法では、 ユーザーのカレンダーの予定を、手動で更新することはできません。 ユーザーのカレンダーへのアクセス権を取得します。

次のリンク テンプレートを使用します。


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 タイムゾーン データベース名の形式で指定します。stz フィールドと etz フィールドにタイムゾーンを入力します。
  • イベントの説明: URL エンコードが必要。
  • イベントの場所: URL エンコードが必要です。
  • イベントのタイトル: URL エンコードする必要があります。

ユーザーがビジネスの予約を簡単にできるように、予約サービスを作る例について考えてみましょう。ユーザーが予定を予約すると 予約したユーザーとビジネスの Google サービスにイベントを追加するよう、 カレンダー。

最適なユーザー エクスペリエンスを実現するには、ビジネスに書き込みアクセス権を付与することをおすすめします。 ゲストのカレンダーに予定を追加して、その予定を カレンダー([予定を作成])を選択し、予約者をその予定に招待します。 (参加者を追加)。予約した相手が Google Meet のビデオ会議内で その予定を知らせるリマインダーを受け取ったら、メールや 予約を取ったらすぐにイベントに対して [はい] と回答します。相手が出欠確認を イベントとともに Google カレンダーのイベント通知機能 通知を受け取ることができます

予約者のカレンダーに予定を直接追加する場合は、予約者に通知してください 連絡先に追加する 招待状を受け取るメールアドレスまたは 予約者にカレンダーへの書き込みアクセス権を要求し、 参加者の出欠確認を設定し、参加者にメールを送信します。 確認済みの予約に関する通知を受け取ります。

メールアドレスを公開したくない場合は、ユーザー固有の メールアドレスを使用して予約者に予定を送信します。 (メールアドレスからユーザーを招待する)。

イベントの伝播

次の図は、このダイナミクスを示しています。まず Jack はイベントを作成し、 メイン カレンダーである(そのため、主催者用のコピーが所有している)。次に、チェロ レッスン グループのセカンダリ カレンダーと、イベント設定が Only if the sender is known のスーザンを招待します。参加者のコピーは、チェロ レッスン グループの予備カレンダーに作成されます。また、スーザンがジャックを知っている場合はスーザンのカレンダーに、そうでない場合はスーザンが RSVP を送信したとき、またはジャックを知っていることを示すときに作成されます。スーザンが返信すると、RSVP の変更が主催者に反映され、主催者のコピーがスーザンの返信で更新されます。主催者が作成した予定のコピーに対してこれらの変更を行うと、 他の参加者にも反映されます。

イベント/参加者の動向を示す図

共有イベントのプロパティ

予定が作成されるカレンダーは、主催者のカレンダーです。この カレンダーは共有された予定情報を所有します。この情報には、ID、開始時間と終了時間、 概要、説明です。主催者の情報が更新された場合 変更内容は参加者のコピーに反映されます。

非公開イベントのプロパティ

予定のコピー間ですべての情報が共有されるわけではありません。一部のプロパティは たとえば、リマインダー、colorId、透明性、 extendedProperties.private プロパティ。これらのプロパティは、主催者のカレンダーではなく、参加者の設定によって制御されます。

参加者は、予定の共有プロパティを変更することもできます。ただし、これらの変更は自分のコピーにのみ反映され、主催者が変更を加えると失われる可能性があります。

参加者から主催者に送信される予定の変更は、 参加者の応答ステータスが表示されます。このステータスは、 attendees[].responseStatus プロパティです。