ホームページは Google Workspace の新しいアドオン機能です コンテキストに依存しないカードを 1 つ以上定義できます。 コンテキストに依存しないカードは、ユーザーが Google Chat を使用しているときに ユーザーが自分の Gmail の受信トレイを表示しているときなど、特定のコンテキスト メッセージや下書きを開いていません。
ホームページでは、 Google アプリを クイック アクセス サイドパネル (Keep、カレンダー、ToDo リスト)。トップページでは、 ユーザーが初めてアドオンを開いたときに表示される画面です。 新規ユーザーにアドオンの操作方法を通知します
アドオンのホームページは、プロジェクトで指定することで定義できます
1 つ以上の homepageTrigger
関数を実装します(参照:
ホームページの設定)。
アドオンが対象とするホスト アプリケーションごとに 1 つずつ、複数のホームページを持つことができます あります。デフォルトのホームページを 1 つ定義して、 カスタム ホームページを指定していないホストで使用されます。
次のいずれかの条件が満たされると、アドオンのホームページが表示されます。
- アドオンがホストで最初に開かれたとき(承認後)。
- ユーザーがコンテキスト コンテキストから非コンテキスト コンテキストに切り替えたとき 表示されます。たとえば、カレンダーの予定の編集から できます。
- ユーザーが [戻る] ボタンを 内部スタックから他のカードをすべて取り除きます。
- コンテキストのないカードで UI 操作を行うと、
Navigation.popToRoot()
あります。
ホームページのデザインは必須ではありませんが、強く推奨されています。特に定義しない場合は、汎用の その名前が含まれるパスは、ユーザーが他の方法で ホームページに移動します
ホームページの設定
Google Workspace アドオンは
addOns.common.homepageTrigger
フィールドを使用して、デフォルトのホームページ(コンテンツ ベースではない)アドオン コンテンツを
すべてのホスト アプリケーション
manifest:
{
// ...
"addOns": {
// ...
"common": {
// ...
"homepageTrigger": {
"runFunction": "myFunction",
"enabled": true
}
}
}
}
runFunction
: 実行する Apps Script 関数の名前 Google Workspace アドオン フレームワークが呼び出して、ホームページのアドオンカードをレンダリングします。 これはホームページ トリガー関数です。この関数は、Card
の配列を返します。 ホームページ UI を構成するオブジェクトです。複数のカードが返された場合、 ホスト アプリケーションがカードヘッダーをリストに表示します。ユーザーはこのヘッダーを選択できます。 取得元(参照: 複数のカードを返品する場合)。enabled
: このスコープでホームページ カードを有効にするかどうか。この フィールドは省略可能で、デフォルトはtrue
です。これをfalse
に設定すると、 すべてのホストに対してホームページ カードを無効にする(オーバーライドしない限り) host;下記をご覧ください)。
一般的な構成のほかに、Terraform 構成が
ホストごとのオーバーライドを使用して、各ホスト アプリケーションの
config、addOns.gmail.homepageTrigger
、addOns.calendar.homepageTrigger
、
といった具合です。
{
...
"addOns": {
...
"common": {
// By default, call 'buildHomePage' to render homepage content
// in all hosts. Since calendar.homepageTrigger below overrides
// this in Calendar and Drive and the homepageTrigger is disabled
// for Gmail, this homepage function never executes.
"homepageTrigger": { "runFunction": "buildHomePage" }
},
"calendar": {
// Show customized homepage content for Calendar only.
"homepageTrigger": { "runFunction": "buildCalendarHomepage" }
},
"drive": {
// Show customized homepage content for Drive only.
"homepageTrigger": { "runFunction": "buildDriveHomepage" }
}
"gmail": {
// Disable homepage add-on content in Gmail.
"homepageTrigger": { "enabled": false }
},
...
}
}
これは、次のマニフェスト抜粋と同じです。
{
...
"addOns": {
...
"common": { /* ... */ }, // Omitted a default homepageTrigger specification.
"calendar": {
// Show customized homepage content for Calendar only.
"homepageTrigger": { "runFunction": "myCalendarFunction" }
},
"drive": {
// Show customized homepage content for Drive only.
"homepageTrigger": { "runFunction": "myDriveFunction" }
}
"gmail": { /* ... */ },
...
}
}
homepageTrigger
セクションはいずれも必須ではありません。ただし、この UI は
どのホスト プロダクトのアドオンも、どのホスト プロダクトに
関連するマニフェスト フィールドの有無を
homepageTrigger
。次の例は、どのアドオン トリガーが機能するのかを示しています。
実行され(存在する場合)、異なるマニフェスト用のホームページ UI が作成されます。
構成:
ホームページ イベント オブジェクト
呼び出されると、上記のホームページ トリガー関数(runFunction
)が
イベント オブジェクトが渡される
呼び出しコンテキストのデータを含む
ホームページ イベント オブジェクトには、ウィジェットやコンテキスト情報は含まれません。 渡される情報は、 共通イベント オブジェクト フィールド:
commonEventObject.clientPlatform
commonEventObject.hostApp
commonEventObject.userLocale
とcommonEventObject.userTimezone
(ただし、 ユーザーの言語 / 地域とタイムゾーンにアクセスするをご覧ください。 をご覧ください)。
詳しくは、イベント オブジェクトをご覧ください。
その他のコンテキストに依存しないカード
アドオン UI には、コンテキストに基づいていない別のカードを含めることができます。 できますたとえば、ホームページに [設定]ユーザーがアドオン設定( はほとんどの場合、コンテキストとは無関係であるため、コンテキストに依存しないものになります)。
コンテキストに依存しないカードは、他のカードと同様に作成されます。唯一の違いは カードが生成して表示するアクションやイベント。詳しくは、 ナビゲーション メソッド カード間の切り替え効果を作成する方法をご確認ください。