Skip to content

複数のGoogleカレンダー上の予定を集約して,一つの共有用カレンダーを作成します.

Notifications You must be signed in to change notification settings

musan6363/Auto-Update-of-Shared-GCal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Auto-Update-of-Shared-GCal

複数のGoogleカレンダー上の予定を集約して,一つの共有用カレンダーを作成します.
保存していたカレンダー単位で新たに共有用の名前をつけて公開することができます.
公開したくない予定,特定の名前で公開する予定など,様々なカスタマイズが可能です.
->
(自分が記入したカレンダー) -> (アプリが出力するカレンダー)

使い方

よく理解した上でご利用ください.本プログラムの利用に伴うトラブルについて一切の責任を負いかねます.

  1. Google ドライブにアクセス
  2. 任意のフォルダを作成/移動し,新規 > その他 > Google Apps Script を作成・IDEの起動
  3. main.jsの内容を貼り付け
  4. 共有するカレンダーの設定を行う
    1. Google Calendarにアクセス
    2. 共有するカレンダーを作成
    3. 共有するカレンダーの設定欄から,Calender IDを確認して,main.jsOUT_CAL_IDに貼り付け
      const OUT_CAL_ID = "[email protected]";  // 共有用

      自分で作成したカレンダーは<記号列>@group.calendar.google.comというIDが自動的に割り振られる.
    4. 同様に共有元となるカレンダーの設定欄から,Calender IDを確認して,main.jsIN_CAL_IDに貼り付け
      const IN_CAL_ID = [
          "[email protected]",  // メインのカレンダー
          "[email protected]",  // 仕事のカレンダー
          "[email protected]"  // 家族との共有カレンダー
      ];
      アカウント標準カレンダーのCalender IDはGMailアドレスに一致する
      アクセス権限があれば,自分以外のアカウントのカレンダーも参照可能
    5. main.jsIN_CAL_NAMESに各カレンダーの公開名を入力.順番はCalender IDの順番と一致させる
    6. (Optional) 必要であればmain.jsIGNORE_EVENTS_TITLEに共有対象にしないイベント名を記入
    7. (Optional) 必要であればmain.jsdecide_new_event_titleに特別な置換ルールを記入
  5. IDE上の実行ボタンをクリック
  6. ポップアップ上の「権限を確認」をクリックし,スクリプトを作成中のGoogleアカウントでログイン
  7. 自作のスクリプトのため警告が表示される.左下の「詳細」から「{プロジェクト名}(安全ではないページ)に移動」をクリック
  8. カレンダーの権限を承認
  9. 再度「実行」をクリック
  10. カレンダーに移動して反映を確認
  11. 共有用カレンダーを適宜共有する
  12. (Optinonal) トリガーの追加ページから,毎日決まった時間に実行 / カレンダーに変更があれば実行 など自動実行を設定

    ※GASは1日あたりの実行数制限があるので要注意
    (例)私のトリガー

    - 各カレンダーが変更されたらon_cal_changedを実行
    - 1日に1回,daily_runを実行(実行失敗した処理があるとカレンダーが乱れているため)

コード解説

そのうちします.

参考リンク

About

複数のGoogleカレンダー上の予定を集約して,一つの共有用カレンダーを作成します.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published