コーディング レベル: 初級
所要時間: 15 分
プロジェクトの種類: 時間ベースのトリガーを使用した自動化
目標
- ソリューションの機能について理解する。
- ソリューション内での Apps Script サービスの役割を理解する。
- スクリプトを設定します。
- スクリプトを実行します。
このソリューションについて
共有の有給休暇カレンダーは、チームのコラボレーションを促進する優れたツールです。誰でも、不在の社員を一目で把握できます。このソリューションを使用すると、手動で入力することなく、同僚が不在のタイミングを確認できます。
仕組み
このソリューションは、Google グループ内の各ユーザーの個々のカレンダーに基づいて、共有の有給休暇カレンダーにデータを入力します。休暇を予約する際は、「休暇」や「不在」などのキーワードを使用して、個人の Google カレンダーに予定を追加します。
このスクリプトは 1 時間ごとにグループのメンバーのカレンダーをスキャンし、適切な予定を共有カレンダーに同期します。スクリプトが新しいイベントをスキャンする頻度を変更できます。
このソリューションは、同僚がプライバシー設定であなたに公開しているカレンダーの予定にのみアクセスします。
Apps Script サービス
このソリューションでは、次のサービスを使用します。
- グループ サービス - Google グループのメンバーを決定します。
- カレンダーの高度なサービス - Google Calendar API へのアクセスを提供し、グループ メンバーのカレンダーで予定を検索します。
前提条件
このサンプルを使用するには、次の前提条件を満たしている必要があります。
- Google アカウント(Google Workspace アカウントの場合、管理者の承認が必要となる可能性があります)。
- インターネットに接続できるウェブブラウザ。
スクリプトを設定する
チームの有給休暇カレンダーを作成する
- Google カレンダーを開きます。
- [チームの休暇] という新しいカレンダーを作成します。
- カレンダーの設定の [カレンダーの統合] で、[カレンダー ID] をコピーします。
Apps Script プロジェクトを作成する
- 次のボタンをクリックして、Vacation Calendar Apps Script プロジェクトを開きます。
プロジェクトを開く - [概要] をクリックします。
- 概要ページで、[コピーを作成]
をクリックします。
- コピーした Apps Script プロジェクトで、変数
TEAM_CALENDAR_ID
を、前に作成したカレンダーの ID に設定します。 - 変数
GROUP_EMAIL
を、チームメンバーを含む Google グループのメールアドレスに設定します。 - [サービス] の横にある [サービスを追加] をクリックします。
- [Google Calendar API] を選択し、[追加] をクリックします。
スクリプトを実行する
- コピーした Apps Script プロジェクトの関数プルダウンで、[setup] を選択します。
- [実行] をクリックします。
プロンプトが表示されたら、スクリプトを承認します。OAuth 同意画面に [このアプリは確認されていません] という警告が表示された場合は、[詳細] > [{プロジェクト名} に移動(安全でない)] を選択して続行します。
完了したら、カレンダーに戻り、チーム休暇カレンダーに予定が入力されていることを確認します。
コードを確認する
このソリューションの Apps Script コードを確認するには、下の [ソースコードを表示] をクリックします。
修正
チームの有給休暇カレンダーの自動化は、ニーズに合わせて自由に編集できます。トリガーを変更するオプションの変更は次のとおりです。
スクリプトが新しいイベントをスキャンする頻度を変更する
スクリプトの実行頻度を変更する手順は次のとおりです。
- Apps Script プロジェクトで、[トリガー] をクリックします。
- トリガーの横にある [トリガーを編集] をクリックします。
- 変更内容を選択し、[保存] をクリックします。
寄稿者
このサンプルは、Google デベロッパー エキスパートの協力を得て Google によって管理されています。