月 の 上

サイボウズOfficeのスケジュールをGoogleカレンダーに同期する奴つくった

休暇の予定入れようとしてサイボウズOffice開いたらMTGの予定入ってた……Googleカレンダーに入ってないから気付かなかった…… そんな悲しみを乗り越えるために作りました。

github.com

サイボウズでも、Garoonってやつ?なんかナウいやつはGoogleカレンダーに同期するツールがあるみたいだけど、サイボウズOfficeだとちょっと見当たらなかった。 のでPrettierでガガっと書きました。

インストール

npm i -g @fand/cybozu-to-google

使い方

サイボウズのログイン情報やGoogleAPIキーなどを ~/.config/c2g に置きます:

{
  "cybozuUrl": "https://XXXXXXX.cybozu.com/",
  "username": "YOUR_USERNAME_OF_CYBOZU",
  "password": "YOUR_PASSWORD_OF_CYBOZU",
  "calendar": {
    "key": "GOOGLE_SERVICE_ACCOUND_PRIVATE_KEY",
    "serviceAcctId": "<GOOGLE_SERVICE_ACCOUNT_ID>.iam.gserviceaccount.com",
    "calendarId": {
      "primary": "<GOOGLE_CALENDAR_ID>@group.calendar.google.com"
    },
    "timezone": "UTF+09:00"
  }
}

この辺の設定ムズイので、Garoon用のツールの導入記事とか見ていい感じになってください

developer.cybozu.io

あとはターミナルで c2g するだけでGoogleカレンダーに同期されます。

例えば、サイボウズOfficeでこういう予定を作成して……

f:id:amagitakayosi:20180815214416p:plain

ターミナルで c2g を実行すると……???

f:id:amagitakayosi:20180815214458p:plain

Googleカレンダーに同期されてる!!!!ヤッターーーー!!!!!!!!!!

f:id:amagitakayosi:20180815214550p:plain

定期的に実行したい方はcronとかlaunchdとかでどうぞ。 僕はbitbarで毎時実行して、かつログも見れるようにしました。

f:id:amagitakayosi:20180815214833p:plain

来年こそ山に登ろうな……