Linux コンソール上でGoogle カレンダーを管理出来る『gcalcli』

以前から、LinuxのコンソールでWEBサービスを利用する方法について記述してきたが、今回はGoogleカレンダーをコンソール上で管理する方法についてを紹介する。
『gcalcli』という、Python製のプログラムを利用する事で、Google カレンダーをLinuxコンソールで利用する事が出来る。

それでは、早速利用してみよう。

1.インストール

まずは『gcalcli』のインストールから。
以下のようにpipコマンドからインストールするか、ソースからセットアップを行う。

pipでインストールする場合

pip install gcacli

ソースからセットアップする場合

git clone https://github.com/insanum/gcalcli.git
cd gcalcli
python setup.py install

もしくは、Ubuntuの場合はapt-getでインストールできる。

sudo apt-get install gcalcli

2.設定

インストールが完了したら、次はログイン設定を行う。
gcalcliでは、ログインにOAuth2を利用している。コマンドの初回利用時にURLが表示されるので、そのアドレスにアクセスして認証を行う。
キーファイルは「\~/.gcalcli_oauth」に記録される。

なお、コマンド実行時には「--noauth_local_webserver」を指定すると良いだろう。

gcalcli --noauth_local_webserver list

表示されるURLにアクセスすると認証キーが表示されるので、そのキーをコンソール上で入力すれば認証設定が完了する。
これで、gcalcliコマンドでGoogleカレンダーを管理できるようになった。

ただ、今のままだとコマンド実行時に日本語の認識がされず、正常に動作しない。
このため、以下のようにコマンドを実行し、日本語を認識させるファイルを設置する。

cat << EOF > /usr/lib/python2.7/site-packages/sitecustomize.py
import sys
sys.setdefaultencoding("utf-8")
EOF

3.実際に管理をする

それでは、実際にgcalcliからGoogle カレンダーにアクセスしてみよう。
まずは、以下のようにコマンドを実行して2週分のカレンダーを取得してみる。

gcalcli calw 2

週で取得する場合は「calw」、月で取得する場合は「calm」を利用する。

gcalcli calm

イベントを追加する場合は「add」、削除する場合は「delete」、編集する場合は「edit」を指定する。

gcalcli --title 'TEST' \
        --where '新宿' \
        --when '06/02/2015 20:00' \
        --duration 60 \
        --description 'テスト' \
        --reminder 30 \
        add

削除、編集する場合は、タイトル名を検索する形で指定する。