今回は Google カレンダーに関する自動工程について説明します。

Google カレンダーは、Google 社が提供するオンラインカレンダーです。個人での利用のほか、Google Workspace を使用していれば複数人で共用することもできます。また、API を使って各種操作を行うこともでき、今回紹介する自動工程も API を用いています。

Google カレンダーについて、詳しくは Google の公式ヘルプページをご覧ください。

Google カレンダーと連携する自動処理工程について

Google カレンダーに関する自動工程には、Advanced 以上のエディションに標準で組み込まれている「開始: Google カレンダー: 予定開始時」「Google カレンダー: 予定追加」や、Professional 以上でアドオンとして追加可能な「Google Calendar イベントリスト(予定)取得」などがあります。今回はそのうち、「開始: Google カレンダー: 予定開始時」を取り上げます。

開始: Google カレンダー: 予定開始時

Google カレンダーに登録されている、予定の開始時刻を経過すると、プロセスが開始されます。予定のタイトルや開始/終了時刻、説明等の情報をプロセスのデータ項目に保存することもできます。

開始: Google カレンダー: 予定開始時の設定画面

この自動工程を使用するには、Google カレンダーにアクセスする Google アカウントを Questetra BPM Suite のアカウント(ユーザ)と連携する必要があります。以下に示す手順で設定してください。


Google アカウント連携の設定

ワークフロー基盤の設定

この設定は、システム管理権限を持つユーザで行ってください。
システム設定のページを開き、「Google 連携」を開きます。開いたページで、お使いの Google Workspace ドメインを入力します。(既に「ドメイン」の設定が行われている場合は、スキップしてください。)

G Suiteドメインの入力画面

「保存」を押せば完了です。
これで、お使いの環境で、シングルサインオンなど Google との連携機能が使用可能になります。
アカウント設定画面に「Google 連携」の項目が現れ、アカウントの連携設定が可能になります。

アカウントの設定

まず、アカウント設定画面を開き、「Google 連携」をクリックします。

そして開いたページで、「Google カレンダー」の部分にあるボタンを確認します。そのボタンが「解除」であれば、そのアカウントは既に Google アカウントとの連携が完了しています。その場合、以降の手順は必要ありません。

ボタンが「連携設定」の場合、連携は未設定です。その場合、ボタンをクリックしてください。開いたページで、連携したい Google アカウントにログインし、続く画面で「許可」をクリックします。

Googleでの連携許可画面

これで、連携設定は完了です。Google 連携についてはこちらのページもご覧ください。

対象となる Google カレンダー

「開始: Google カレンダー: 予定開始時」は指定された(無指定の場合はプライマリー)カレンダーに登録されている予定を読み込み、プロセスを開始します。そのため、特定のアプリを開始させたい場合はそれぞれアプリに配置されたイベントごとに専用のカレンダーが必要になります。

Google カレンダーは1つのアカウントに対してデフォルトで1つのカレンダーが用意されています。これをプライマリーカレンダーといいます。このカレンダー上に他のカレンダー、例えば社内で共有されるカレンダーなどを重ねて表示することができます。さらに新たにカレンダーを作成して追加することもできます。この機能を利用して、アプリ起動専用のカレンダーを作成します。

新規カレンダーを追加するには、カレンダー画面左メニューの[他のカレンダー]から「新しカレンダーを作成」を選択します。設定画面に遷移しますのでカレンダー名を入力して[作成]します。左メニューの[マイカレンダー]に今作成したカレンダー名が追加されますので、クリックして選択してください。表示される画面の「カレンダーの統合」セクションに「カレンダーID」の文字列があります。この文字列を「開始: Google カレンダー: 予定開始時」の設定に使用します。


サンプルアプリ

開始: Google カレンダー: 予定開始時 の動作を確認するアプリです。

このアプリを作成、[リリース]してからカレンダーに予定を登録して、予定の開始時間を過ぎれば新しいプロセスが開始されていることを確認します。

データ項目はプロセス開始時に取得されるデータを保存する物を用意します。

データ項目タイプ必須[確認]工程データ項目
件名表示のみプロセスの件名です。
予定 ID文字型
(単一行)
表示のみカレンダーに登録された個々の予定の ID です。
開始時刻日時型表示のみ予定の開始時刻です。
終了時刻日時型表示のみ予定の終了時刻です。
予定のタイトル文字型
(単一行)
表示のみ予定のの件名です。
予定の説明文字型
(複数行)
表示のみ予定の説明欄の内容です。
予定のURL文字型
(単一行)
表示のみ予定を表示するためのURLです。
カレンダーにアクセスのないブラウザでも予定の内容を閲覧できます。

「開始: Google カレンダー: 予定開始時」の設定項目は以下のとおりです。

説明必須必須
C1: Google カレンダー に接続するユーザ *Google カレンダーにどのユーザで接続するか指定します。指定するユーザは Google カレンダーとの連携が設定されている必要があります。
C2: Calendar ID
監視する対象のカレンダーを、IDで 指定します。ID はカレンダー設定の対象のカレンダーの設定を参照してください 。未指定の場合はプライマリのカレンダーとなります。
C3: 予定 ID を保存するデータ項目 *予定の ID を保存するデータ項目を指定します。今回は「予定 ID 」を選択します。
C4: 予定開始時刻を保存するデータ項目予定の開始時刻を保存するデータ項目を選択します。
C5: 予定終了時刻を保存するデータ項目予定の終了時刻を保存するデータ項目を選択します。
C6: 予定タイトルを保存するデータ項目予定のタイトルを保存するデータ項目を選択します。
C7: 説明を保存するデータ項目予定の説明の内容を保存するデータ項目を選択します。
C8: 予定 URL を保存するデータ項目予定の表示 URL を保存するデータ項目を選択します。

リリースしてからしばらくすると、指定された Google カレンダーの監視(ポーリング)を始めます。初回のアクセスでは予定の取得だけが行われ、プロセスの開始は行われません。2回目以後のアクセスでは、ポーリング時に開始時間を過ぎている予定があればそれぞれについてプロセスが開始されます。
ワークフローアプリがリリースされると、「開始: Google カレンダー: 予定開始時」イベントは定期的に Google カレンダーの監視(ポーリング)を行います。ポーリングは、アプリが稼働中の間は、継続的に行われます。

工程の処理記録

プロパティ設定画面の右上の虫眼鏡アイコンをクリックすると[イベント詳細]画面が開き、当該工程の動作に関する[自動処理ログ](プロセスログ)を一覧することができます。ポーリングやプロセス開始の処理ログの詳細を確認することができます。
自動処理ログに「ポーリング失敗」と表示されている場合は設定を見直してください。

通常、プロセスログは、案件指定(プロセスIDごと)か、全業務アプリ横断で表示されますが、一部の自動処理工程では、指定の工程に関するログのみを一覧することができます。
イベント詳細画面

以下の画面キャプチャは、予定からプロセスを開始した例です。14:30開始の予定により14:36にプロセスが開始されています。予定のタイトルや説明に入力された文も、データ項目にコピーされています。
今回は以上です。


%d人のブロガーが「いいね」をつけました。