Google Calendar API の利用
当院では休日・休診情報を Google Calendar で管理して,ホームページ上で公開している。 OpenDolphin のカレンダーでも休日・休診情報を表示できるようにカスタマイズしていたが,表示データはプログラム内にハードコーディングであった。これを Google Calendar から情報を読み込めるようにして,データを Google Calendar で一元管理できるようにしてみた。
Google Calendar には Calendar API というのが用意されており,利用しやすいように主要言語のチュートリアルまで用意されている。そこに出ている java のサンプルを参考にしてプログラムした。Calendar API の認証にはブラウザが必要になるのだが,当院のサーバは CUI でブラウザは使えない。そこで,診察室のクライアントでデータを取込み,それをサーバに保存して,そのデータを全クライアントで利用するという方式にした。
CalendarSettingPanel で Calendar API からデータを取り込み,それをサーバに保存する。サーバ側ではわざわざ Entity を作るのも面倒なので,PnsServiceImpl の Preferences に保存するという素人丸出しの方法を使った。保存したカレンダー情報は,各クライアントが起動時にサーバから読み込む。