Google Workspace アドオンのトリガー

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

トリガーが起動すると、イベント オブジェクトが作成されます。この JSON 構造には、発生したイベントの詳細が含まれています。イベント オブジェクト構造の情報は、トリガータイプに基づいて異なる方法で整理されます。

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

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

マニフェスト トリガー

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

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

  • アドオンのホームページをビルドして表示するホームページ トリガー
  • カレンダーの予定を開くトリガー。カレンダーの予定が開かれたときに新しいカードを表示したり、他のアクションを実行したりします。
  • ユーザーがカレンダーの予定を編集して保存したときに、新しいカードを表示したり、他のアクションを実行したりするカレンダーの予定の更新トリガー
  • ユーザーがドライブで 1 つ以上のファイルまたはフォルダを選択したときに、新しいカードを表示したり、他のアクションを実行したりする Drive onItemsSelected トリガー
  • Gmail 作成トリガー。ユーザーが Gmail 作成ウィンドウでアドオンを開いたときにアドオンカードを表示します。
  • ユーザーが Gmail メッセージを開いたときに新しいカードを表示したり、他のアクションを実行したりする Gmail コンテキスト トリガー
  • ユーザーが現在のエディタ ドキュメントで drive.file OAuth スコープの承認を付与したときに新しいカードを表示する、エディタの onFileScopeGranted トリガー

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

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

制限事項

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

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