Google Workspace アドオンのトリガー

Apps Script トリガーは、指定されたイベントが発生するたびに、指定されたスクリプト関数(トリガー関数)を実行します。特定のイベントだけがトリガーを発生させることができ、Google Workspace の各アプリケーションは異なるイベントセットをサポートします。

トリガーが発生すると、イベント オブジェクトが作成されます。この JSON 構造には、発生したイベントの詳細が含まれています。イベント オブジェクト構造内の情報は、トリガータイプに応じて異なります。

イベント オブジェクトが作成されると、Apps Script によってパラメータとしてトリガー関数に渡されます。トリガー関数はコールバック 関数です。これを実装することで、イベントに応答するアクションを実行できます。たとえば、Gmail を拡張する Google Workspace アドオンの場合、ユーザーがメッセージ スレッドを開いたときに新しいカード インターフェースを作成するトリガーを定義できます。この場合、コンテキスト コールバック関数を実装して、イベント オブジェクトで渡されたデータを使用して、新しい UI を構成するカードを作成します。

このページでは、Google Workspace アドオン プロジェクトでトリガーを使用する際のガイドラインを説明します。

マニフェスト トリガー

現在のところ、エディタ アドオンとは異なり、Google Workspace アドオンは Apps Script のシンプルなトリガーを使用できません。代わりに、Google Workspace アドオン用に設計されたトリガー(マニフェスト トリガー)を使用します。

マニフェスト トリガーは、Google Workspace アドオンのマニフェストで完全に定義されます。マニフェスト トリガーの例を次に示します。

  • ホームページ トリガー: アドオンのホームページを作成して表示します。
  • Calendar eventOpen トリガー。カレンダーの予定が開かれたときに新しいカードやその他のアクションを実行します。
  • Calendar eventUpdate トリガー。ユーザーがカレンダーの予定を編集および保存したときに、新しいカードやその他のアクションを実行します。
  • Drive onItemsSelected トリガー: ユーザーがドライブで 1 つ以上のファイルまたはフォルダを選択したときに、新しいカードを表示するなどの操作を行います。
  • ユーザーが Gmail の作成ウィンドウでアドオンを開いたときに、Gmail の作成トリガーによってアドオンカードが表示される。
  • Gmail のコンテキスト トリガー: ユーザーが Gmail のメールを開いたときに、新しいカードやその他のアクションを実行。
  • 現在のエディタ ドキュメントでユーザーが drive.file OAuth スコープの権限を付与したときに新しいカードを表示する Editor onFileScopeGranted トリガー

上記のリストでは、ホームページ トリガーのみがコンテキスト別であり、残りはコンテキスト トリガーです。マニフェスト トリガーの定義の詳細については、マニフェストをご覧ください。

Google Workspace アドオンは、マニフェスト トリガーに加えて、Apps Script のインストール可能なトリガーを使用することもできます。

制限事項

マニフェスト トリガーには一定の制限があります。

  • これらのトリガーは Google Workspace アドオン プロジェクトでのみ使用され、他のアプリケーションには使用しません。
  • これらのトリガーは、コードではなくアドオン マニフェストで定義されているため、Apps Script Script サービスを使用してこれらのトリガーを作成または変更することはできません。
  • 現在、Gmail のコンテキスト トリガーに設定できるのは unconditional 条件のみです。これにより、コンテンツに関係なく、すべてのメール メッセージでコンテキスト トリガーが配信されます。
  • 各アドオンでトリガーできるトリガーは、ドキュメント、ユーザー、種類ごとに 1 つずつです。