bot 内のイベントは、以下の各セクションで説明するように管理します。
- イベントとは
- 外部からトリガーされるイベント
- bot にイベントを追加する
- アプリのイベントを構成する
- AppSheet データベースのイベントを構成する
- スケジュール設定イベントを構成する
- Chat のイベントを構成する
- フォームのイベントを構成する
- Gmail イベント(ベータ版)を構成する
- 既存のイベントをコピーする
- イベントを表示する
- イベントを編集する
- イベントを削除する
- 例: 特定の日付にスケジュール イベントをトリガーする
イベントとは
イベントとは、プロセスをトリガーするアクティビティまたはスケジュールを定義するものです。構成できるイベントの種類を次の表にまとめます。
イベントの種類 | このイベントの種類がトリガーされる条件 |
アプリ | アプリを通じたデータの追加、変更、削除(アプリを通じたサービス チケットのステータス変更など)。アプリのイベントを構成するをご覧ください。 |
AppSheet データベース |
AppSheet データベース内の 1 つ以上の列にあるデータの追加、変更、削除(サービス チケットのステータスが AppSheet データベース内で直接変更された場合など)。AppSheet データベースのイベントを構成するをご覧ください。 |
スケジュール設定 | イベントを特定の時刻に定期的に発生させる設定(毎週月曜日の午前 9 時など)。スケジュール設定イベントを構成するをご覧ください。 |
Google Chat 用アプリ | Chat のインタラクション。Chat スペースでのスラッシュ コマンドを使用したインタラクションや、Chat スペースでの Chat 用アプリの追加と削除などがあります。Chat のイベントを構成するをご覧ください。 |
Google フォーム | Google フォームのフォームに対する回答の受信(承認を得るための出張申請の送信など)。Google フォーム イベントを構成するをご覧ください。 |
Gmail(ベータ版) | Gmail のメール メッセージに対するラベルの追加または削除。Gmail イベント(ベータ版)を構成するをご覧ください。Gmail イベントは外部ソースによってトリガーされます。外部からトリガーされるイベントをご覧ください。 |
外部からトリガーされるイベント
ほとんどのイベントはアプリデータの変化によってトリガーされます。たとえば、Orders
テーブルの Status
列が Complete
に変わった場合などです。
一部のイベントは、アプリ外で発生するアクティビティによってトリガーされ、事前定義されたデータソースの AppSheet テーブルを利用せずにプロセスをトリガーします。たとえば、Gmail イベント(ベータ版)はメール メッセージのラベルが追加または削除されたときにプロセスをトリガーします。
外部でトリガーされるイベント:
- エディタの [Automation] タブにのみ表示される
- [データ] タブにテーブルとして表示されない
注: 外部トリガーイベントを自動化に追加すると、自動化で使用できるデータソースがアカウントに追加されますが、アプリにテーブルは追加されません。 - システムビューやアクションなどを必要としない
- テーブルのデータへのアクセスが必要な AI タスクやデータ アクション(行の削除、行の値の設定など)に対応していない
Gmail イベントの場合、アプリの既存のテーブルにアクセスしてメール コンテンツを保存できます。詳しくは、Gmail を使用して自動化を構築するをご覧ください。
スプレッドシートまたは Salesforce データソースで外部的にトリガーされるデータ変更イベントの場合は、外部構成が必要です。スプレッドシートと Salesforce をそれぞれご覧ください。
bot にイベントを追加する
bot にイベントを追加するには:
- bot を追加します。
-
中央ペインで [Configure event] をクリックします。
-
[Event name] フィールドにイベント名を入力します。
-
次のいずれかを行います。
- 既存のイベントを再利用するには、[From this App] でイベントを選択します。
詳細については、自動化コンポーネントを再利用するをご覧ください。 - 新しいイベントを作成するには、次のいずれかを行います。
- [Create a new event] をクリックします。
- [Suggestions] のリストからイベントを選択します。
AppSheet Automation はインテント対応プラットフォームです。ユーザー インテントを理解し、達成しようとしていることに沿った構成オプションを推奨します。たとえば、以下の候補を選択すると、プロセスと次の [Send an email] タスクが構成されます。
When Available record is updated, send an email
- 既存のイベントを再利用するには、[From this App] でイベントを選択します。
- 次のいずれかのイベントのソースを選択し、構成します。
-
アプリを保存します。
アプリのイベントを構成する
アプリのイベントを追加するには、以下の設定を構成します。
設定 |
説明 |
Event name |
イベントの名前。 |
Event source |
アプリを選択します。 |
Data change type |
アプリを通じて実行され、イベントをトリガーするデータ変更の種類を選択します。追加、削除、更新のオプションから 1 つ以上を選択します。 |
Table |
データ変更が生じるとイベントがトリガーされるテーブルを選択します。 選択したテーブルの構造を表示または編集するには、フィールドにカーソルを置いて |
Condition |
イベントをトリガーする前に評価する条件。 |
Bypass Security Filters? |
データソースにセキュリティ フィルタがないものとして実行するかどうかを切り替えます。この設定により、自動化されたタスクが引き続き動作します(アプリの所有者 ID で実行されます)。レポートを生成する場合や、多くの情報を必要とする他のタスクを実行する場合に有用です。 |
Event icon | [Display] セクションを開き、イベントのアイコンを選択します。 |
Descriptive comment | [Documentation] セクションを開き、イベントの目的を説明するコメントを入力します。 |
Linking |
[Linking ] パネルを開き、[Linking ] 設定を切り替えて、このコンポーネントの再利用を有効または無効にします。詳しくは、自動化コンポーネントを再利用するをご覧ください。 |
以下は、インベントリ テーブルの変更(追加、削除、更新)によってトリガーされるアプリ変更イベントの例です。
AppSheet データベースのイベントを構成する
AppSheet データベースのイベントを追加する前に、以下を行う必要があります。
- AppSheet データベースを作成する。データベースの作成とコピーをご覧ください。
- AppSheet データベースからアプリを作成する方法または AppSheet データベースを既存のアプリに追加する方法を使用して、AppSheet データベースをアプリに追加します。いずれの場合も、データソースとして [AppSheet databases] を選択し、次にデータベースに移動します。
bot にイベントを追加して、以下のように AppSheet データベースのイベント向けに設定を構成します。
設定 |
説明 |
Event name |
イベントの名前。 |
Event source |
[AppSheet database] を選択します。 |
Table |
データ変更が生じるとイベントがトリガーされるテーブルを選択します。 選択したテーブルの構造を表示または編集するには、フィールドにカーソルを置いて |
Data change type |
AppSheet データベースに対するデータ変更のうち、イベントのトリガーにつながるデータの変更の種類を選択します。追加、削除、更新の中から 1 つ以上を選択します。 |
Columns to watch for updates |
注: このフィールドは、データ変更の種類に [Updates] が選択された場合にのみ表示されます。 選択したテーブルの列のデータが更新されると、イベントがトリガーされます。プルダウンを開いて 1 つ以上の列を選択します。 例: イベントのトリガーの理由とする列のみ選択してください。たとえば、ステータスまたは期限が変更され、他の項目は変更されない場合に通知を受け取りたいとします。この場合、[Status] 列と [Due Date] 列のみを選択します。過剰な通知や不必要な通知を避けるために、他の列は選択しません。 |
Condition |
イベントがトリガーされるために満たす必要がある条件。 注: AppSheet データベースの行内で、なんらかのデータが更新された時間に基づいてイベントをトリガーするには、次のいずれかを行います。
|
Event icon | [Display] セクションを開き、イベントのアイコンを選択します。 |
Descriptive comment | [Documentation] セクションを開き、イベントの目的を説明するコメントを入力します。 |
Linking |
[Linking ] パネルを開き、[Linking ] 設定を切り替えて、このコンポーネントの再利用を有効または無効にします。詳しくは、自動化コンポーネントを再利用するをご覧ください。 |
スケジュール設定イベントを構成する
bot にイベントを追加して、スケジュール設定イベントの設定を以下のように構成します。
設定 |
説明 |
Event name |
イベントの名前。 |
Event source |
[Scheduled] を選択します。 |
Schedule |
イベントのスケジュールと時刻を設定します。 |
Time zone |
スケジュール イベントのタイムゾーンを設定します。 |
For Each Row In Table |
指定したテーブルの各行に対する操作を行うかどうかを示すフラグ。 テーブルのデータ行ごとにプロセスを実行する場合は、[For Each Row In Table] をオンにします。オンにすると、フィルタ条件を指定するオプションが表示されます。
プロセスがテーブル内のデータに依存しない場合は、[For Each Row In Table] をオフにします。オフにした場合は、プロセス内の有効なステップの種類として、[Run a data action] 以外の任意のイベントを選択できます。
どのテーブルのデータにも依存しないプロセスの場合のみ、この設定をオフにしてください。
|
Table |
注:
イベントによって参照されるテーブル。リストから既存のテーブルを選択します。 テーブルの構造を確認するには、[View definition] をクリックします。テーブルの追加の詳細については、テーブル: 基礎をご覧ください。 |
Filter Condition |
注: このフィールドは、[For Each Row In Table] が有効の場合のみ表示されます。
影響を受けるテーブルの行を特定するために使用するフィルタ条件。 |
Condition |
イベントがトリガーされるために満たす必要がある条件。 |
Bypass Security Filters? |
データソースにセキュリティ フィルタがないものとして実行するかどうかを切り替えます。 |
Event icon | [Display] セクションを開き、イベントのアイコンを選択します。 |
Descriptive comment | [Documentation] セクションを開き、イベントの目的を説明するコメントを入力します。 |
Linking |
[Linking ] パネルを開き、[Linking ] 設定を切り替えて、このコンポーネントの再利用を有効または無効にします。詳しくは、自動化コンポーネントを再利用するをご覧ください。 |
以下は、毎日午後 12 時 00 分(UTC)にトリガーされるスケジュール設定イベントの例です。
Chat のイベントを構成する
bot にイベントを追加して、Chat イベントの設定を以下のように構成します。
設定 |
説明 |
Event name |
イベントの名前。 注: この名前は、Chat に表示されます。
|
Event source |
[Chat] を選択します。 |
Chat interaction |
イベントをトリガーする Chat のインタラクション:
|
Name |
注: [Chat interaction] として [Slash command] が選択されている場合のみ有効です。 イベントをトリガーするスラッシュ コマンド。 |
説明 |
注: [Chat interaction] として [Slash command] が選択されている場合のみ有効です。 イベントをトリガーするスラッシュ コマンドの説明。 |
Event icon | [Display] セクションを開き、イベントのアイコンを選択します。 |
Descriptive comment | [Documentation] セクションを開き、イベントの目的を説明するコメントを入力します。 |
以下は Chat イベントの例です。
Google フォームのイベントを構成する
Google フォームを使用して AppSheet Automation を構築するには、Google Workspace ユーザーである必要があります。詳しくは、Google Workspace に AppSheet を追加するをご覧ください。
Google Workspace を利用されている場合は、Google フォームの使用に Google Workspace 利用規約が適用されます。それ以外の場合は、Google 利用規約をご覧ください。
Google フォーム イベントによってトリガーされるアクションが依存できるのは、読み取り専用データのみです。
Google フォーム イベントを追加する前に、以下の手順を踏む必要があります。
- Google フォームでフォームを作成します。Google フォームの使い方をご覧ください。
-
次のいずれかを行います。
- フォームからアプリを作成する
- 既存のアプリにフォームを追加する
いずれの場合も、データソースとして [Google Forms] を選択して [Select] をクリックします。
Google フォームを使用して自動化を構築するもご参照ください。
bot にイベントを追加して、Google フォーム イベントの設定を以下のように構成します。
設定 |
説明 |
Event name |
イベントの名前。 |
Event source |
[Forms] を選択します。 |
Form |
イベントをトリガーする Google フォームを選択します。 注: Google フォーム イベントでフォームを使用する前に、そのフォームがアプリにテーブルとして追加されていることを確認する必要があります。 |
Condition |
イベントがトリガーされるために満たす必要がある条件。 |
Bypass Security Filters? | Google フォーム イベントではサポートされていません。アプリの外部のイベントソースからのトリガーは、アプリオーナーとして実行可能であり、それ以外では実行できません。 |
Event icon | [Display] セクションを開き、イベントのアイコンを選択します。 |
Descriptive comment | [Documentation] セクションを開き、イベントの目的を説明するコメントを入力します。 |
以下は、出張の申請フォームの送信時にトリガーされるフォーム イベントの例です。
Gmail イベント(ベータ版)を構成する
これは、Gmail イベントを使用した自動化構築機能のベータ版リリースです。詳しくは、機能リリースを追跡、管理するをご覧ください。プレビュー版のサービスは、テスト環境のみで使用することを前提としています。本番環境用アプリでのご利用はおすすめしません。この機能について質問がある場合やサポートが必要な場合は、AppSheet サポートにお問い合わせください。
Gmail で AppSheet Automation を構築するには、Google Workspace ユーザーである必要があります。詳しくは、Google Workspace に AppSheet を追加するをご覧ください。
Google Workspace アカウントをお使いの場合は、Gmail の使用に関して Google Workspace 利用規約が適用されます。それ以外の場合は、Google 利用規約をご覧ください。
Gmail イベントは、Gmail でメール メッセージのラベルを追加または削除する際にトリガーできます。
ラベルを作成して Gmail を整理するの説明に沿って、Gmail イベントをトリガーする新しいラベルを作成します。または、デフォルトの Gmail ラベル(受信トレイ、未読、スター付きなど)のいずれかを使用することも可能です。メールのフィルタルールの作成で説明されているように、フィルタを使用して自動的にラベルを適用できます。共同メールまたは委任メールの送信元をサポートする方法もご確認ください。
Gmail イベントがトリガーされた後、利用可能なメッセージ列値を使用して、イベントに関連付けられているメール メッセージのコンテンツにアクセスできます。メール メッセージのコンテンツにアクセスする方法をご覧ください。メール メッセージのコンテンツは、すべて読み取り専用です。
注: メールスレッドのメッセージに対して Gmail イベントがトリガーされると、そのスレッドで後続の返信が行われるたびに自動化もトリガーされます。
関連情報: Gmail を使用して自動化を構築する
bot にイベントを追加して、Gmail イベントの設定を以下のように構成します。
設定 |
説明 |
Event name |
イベントの名前。 |
Event source |
[Gmail] を選択します。 |
Authorize |
承認が完了してデータソースとして接続されている Gmail アカウントがない場合は、次の手順を行います。
注: Gmail イベントはテーブルレスです。Gmail イベントを自動化に追加するときに Gmail アカウントを AppSheet アプリに接続すると、データソースとして追加されますが、アプリにテーブルは追加されません。詳しくは、テーブルレス イベントとはをご覧ください。Gmail データソースを表示または削除するには、複数のデータソースを使用するをご覧ください。 |
Account |
このイベントをトリガーするために使用する Gmail アカウントをプルダウンで選択します。新しい Gmail アカウントを承認するには、[Connect another account] を選択して、プロンプトに従います。 |
Label to watch |
イベントをトリガーするメールラベルとラベル インタラクションを定義します。
|
Event icon | [Display] セクションを開き、イベントのアイコンを選択します。 |
Descriptive comment | [Documentation] セクションを開き、イベントの目的を説明するコメントを入力します。 |
以下は、Gmail アカウント user@altostrat.com
のメール メッセージに対して、Urgent ラベルの追加または削除を行ったときにトリガーされる Gmail イベントの例です。
既存のイベントをコピーする
イベントをコピーすると、新しいイベントの名前は、デフォルトでは My Event 1 のように、現在のイベント名の後に一意の番号(1 から始まってインクリメントする)が付いたものとなります。
既存の再利用可能なイベントをコピーするには:
- エディタでアプリを開きます。
- [Automation]
> [Events] に移動します。
- コピーするイベントを [Events] パネルで選択します。
- [More]
> [Duplicate] を選択します。
アプリエディタを強化しました。
デフォルトでは新しいエディタが有効になっていますが、いつでも以前のエディタに戻すことができます。
以前のエディタを使用する場合
既存のイベントをコピーするには:
- [Automation] > [Events] を選択します。
- コピーするイベントを選択します。
- イベントの見出しで [Copy ] をクリックします。
イベントを表示する
bot 内のイベントを表示するには、[Automation] > [Bots] を選択して [Bots] パネルで bot を選択し、メインパネルでイベントをクリックします。
テーブル別にすべてのイベントを表示するには、[Automation] > [Events] を選択します。デフォルトでは、再利用可能な(リンク可能な)コンポーネントのみが表示されます。すべてのイベントを表示するには、アプリエディタの設定を構成するで説明されているように、[Show all automation components] をオンにします。
デフォルトでは新しいエディタが有効になっていますが、いつでも以前のエディタに戻すことができます。
以前のエディタを使用する場合
すべてのイベントを表示するには、[Automation] > [Events] を選択します。イベントはテーブルを基準として整理されます。
イベントが 1 つ以上の bot で使用されている場合、そのイベントを使用している bot 数を示す再利用性インジケーター(イベント名の隣に示されている数字)が表示されます。以下の例は、[Scheduled: Every day] イベントが再利用可能なコンポーネントであり、2 つの bot で使用されていることを示したものです。
イベントを使用している bot のリストを表示するには、数字をクリックします。詳細については、自動化コンポーネントを再利用するをご覧ください。
イベントを編集する
イベントを編集するには、アプリエディタでイベントを表示し、構成を編集して変更を保存します。
イベントを削除する
エディタで bot からイベントを削除するには、プルダウン メニューで [Remove] を選択します。これにより bot からは削除されますが、[Events] タブでは保持されます。
- [Automation]
> [Events] を選択します。
- 削除するイベントを [Events] パネルで選択します。
- [More]
> [Delete] を選択します。
デフォルトでは新しいエディタが有効になっていますが、いつでも以前のエディタに戻すことができます。
以前のエディタを使用する場合
再利用可能なイベントを削除するには:
- [Automation] > [Events] を選択します。
- 削除するイベントを開きます。
- イベントの見出しで [Delete] をクリックします。
例: 特定の日付にスケジュール イベントをトリガーする
アプリのデータから取得した所定の日付に、スケジュール イベントを自動的にトリガーします。これは、スケジュール設定されたレポートの Condition
設定を使用して実施できます。
たとえば、Tasks というテーブルがあるとします。このテーブルの各行は、実行しなければならないタスクに対応しており、各タスクには、そのタスクを実行する必要がある日付を格納する Date
列が用意されています。これを利用して、タスクを実行すべき日の午前 7 時に、タスクを思い出してもらうためのアラーム メッセージを自動的に送信するように、スケジュール設定されたレポートを設定できます。
これを行うには、アプリエディタで、スケジュール イベントを以下のように構成します。
設定 |
設定 |
Event name |
任意のイベント名 |
Event source |
Schedule |
Schedule |
Daily |
Time |
7:00 am |
Time zone |
実際のタイムゾーンに合わせて設定 |
For EachRowInTable |
Enable |
Table |
Tasks |
Filter Condition |
|
スケジュールの動作の流れを説明すると、毎日午前 7 時に Tasks テーブルの各タスクが確認され、タスクの日付がチェックされます。タスクの日付が当日の場合、スケジュールがトリガーされ、アラート メッセージが送信されます。
注: アプリのデータから取得した特定の時刻(時間と分)にレポートをトリガーする場合、この設計は機能しません。