Apps Script トリガーは、指定されたイベントが発生するたびに、指定されたスクリプト関数(トリガー関数)を実行します。トリガーを起動できるのは特定のイベントのみで、各 Google Workspace アプリケーションは異なるイベントのセットをサポートしています。
トリガーが起動すると、イベント オブジェクトが作成されます。この JSON 構造には、発生したイベントの詳細が含まれています。イベント オブジェクト構造の情報は、トリガータイプに基づいて異なる方法で整理されます。
イベント オブジェクトが作成されると、Apps Script はそれをパラメータとしてトリガー関数に渡します。トリガー関数は、イベントに応答するために適切なアクションを実行するコールバック関数であり、ユーザーが自分で実装する必要があります。たとえば、Gmail を拡張する Google Workspace アドオンでは、ユーザーがメッセージ スレッドを開いたときに新しいカード インターフェースを作成するトリガーを定義できます。この場合、コンテキスト コールバック関数を実装して、イベント オブジェクトで渡されたデータを使用して新しい UI を構成するカードを作成します。
このページでは、Google Workspace アドオン プロジェクトでトリガーを使用する際のガイドラインについて説明します。
マニフェスト トリガー
エディタ アドオンとは異なり、Google Workspace アドオンでは Google Apps Script のシンプルなトリガーを使用できません。代わりに、Google Workspace アドオン専用に設計されたトリガー(マニフェスト トリガー)を使用します。
マニフェスト トリガーは、Google Workspace アドオンのマニフェストで定義されます。次に例を示します。
- アドオンのホームページをビルドして表示するホームページ トリガー。
- Google カレンダーの予定を開くトリガー。予定が開かれたときに新しいカードを表示したり、他のアクションを実行したりします。
- ユーザーが予定を編集して保存したときに新しいカードを表示したり、他のアクションを実行したりするカレンダーの eventUpdate トリガー。
- Google ドライブの onItemsSelected トリガー。ユーザーがファイルやフォルダを選択したときに、新しいカードを表示したり、他のアクションを実行したりします。
- ユーザーが作成ウィンドウでアドオンを開いたときにアドオンカードを表示する Gmail 作成トリガー。
- ユーザーがメッセージを開いたときに新しいカードを表示したり、他のアクションを実行したりする Gmail コンテキスト トリガー。
- ユーザーがドキュメントで
drive.fileOAuth スコープの承認を付与したときに新しいカードを表示する Editor onFileScopeGranted トリガー。
リストの中で、コンテキストを必要としないのはホームページのトリガーのみで、それ以外はコンテキストを必要とします。マニフェスト トリガーの定義の詳細については、マニフェストをご覧ください。
マニフェスト トリガーに加えて、Google Workspace アドオンでは Apps Script のインストール可能なトリガーを使用できます。
制限事項
マニフェスト トリガーの使用には、一定の制限があります。
- これらのトリガーは、Google Workspace アドオン プロジェクトでのみ使用されます。
- これらはコードではなくアドオン マニフェストで定義されているため、Apps Script の
Scriptサービスを使用して作成または変更することはできません。 - Gmail のコンテキスト トリガーは、コンテンツに関係なく、すべてのメール メッセージで起動します。
- 各アドオンで設定できるトリガーは、ユーザーごと、ドキュメントごとに、各タイプ 1 つのみです。