クラウド型ワークフローとクラウドストレージの連携方法(Box編)

自動生成されたPDFファイルや承認されたドキュメントファイルが、自動的にクラウドストレージ Box に保存されます。

こんにちわ!矢作です!

 

私たちクエステトラのお客様(※)には、クラウドストレージも合わせて利用されていることが多いです。
※組織における業務プロセスを管理(進捗や実績を可視化)するクラウドサービス「Questetra BPM Suite」をご利用

 

そのようなお客様から、Questetra BPM Suite とクラウドストレージにファイルを自動保存する方法について多くの相談を頂きます。本記事では、代表的な企業向けクラウドストレージである Box と連携させる方法を紹介します。

 

以前は「Box とは連携できません...今のところは」という記事にもあるように、Questetra BPM Suite と Box の連携はできなかったのですが、現在はできるようになっています。

 

Questetra BPM Suite と Box の連携について、簡単に理解していただくために、Questetra BPM Suite から送信したファイルが、Box に保存されるという、シンプルな業務プロセスを対象とします。

 

questetra-box

 

説明の流れ

 

Questetra BPM Suite と Box の連携を実現する設定の方法を、次の流れで説明します。

 

1. Questetra BPM Suite 上でプロセスモデルを定義
2. OAuth 2.0 の設定
3. 動作確認

 

Questetra BPM Suite から Box の API にアクセスして、Questetra BPM Suite に登録されたファイルを Box に転送・保存します。この API にアクセスするには認可の仕組みである OAuth 2.0 を利用しなければならないので、 その設定を行います。

 

あと、本記事の読者対象は次のようなスキルをお持ちの人を対象にしています。

 

Questetra BPM Suite 上でプロセスモデルを定義

 

ここでは Questetra BPM Suite に関する設定だけです。定義するプロセスモデルは、ここからダウンロードできます。

 

プロセスモデル図は、ヒューマンタスクは「ファイル登録」の1つだけです。このタスクで登録されたファイルが、終了の一つ手前にある「ファイル送信」というメッセージ送信中間イベント(HTTP)で Box に送られます。

 

file-register-process-diagram

ファイル登録プロセス図

「ファイル登録」工程の処理画面

「ファイル登録」工程の処理画面

データ項目

データ項目

 

Box にアクセスするための API に関する情報は、Box Content API として次のページに公開されています。

https://box-content.readme.io/reference

 

Box にファイルを保存する API 仕様は次の通りです。

アクセスURL
https://upload.box.com/api/2.0/files/content
HTTP Method
POST
リクエストパラメータ
filename: ファイル
parent_id: 0 (ここではルートに保存することとしました)

このルールに基づき、「ファイル送信」メッセージ送信中間イベント(HTTP)の設定を行います。

 

「ファイル送信」メッセージ送信中間イベント(HTTP)の設定

「ファイル送信」メッセージ送信中間イベント(HTTP)の設定

OAuth 2.0 の設定

 

Questetra BPM Suite のメッセージ送信中間イベントから、Box の API 用 URL にアクセスするには、OAuth 2.0 による認可をクリアしなければなりません。

 

この設定は次の流れで行います。

  1. Questetra BPM Suite にて、コールバックURLを確認。
  2. Box アプリケーションに関する client_id と client_secret を確認。
  3. Questetra BPM Suite にて、OAuth 2.0 設定を行いトークンを取得。

 

Questetra BPM Suite にて、コールバックURLを確認

 

Questetra BPM Suite 側での作業です。

 

コールバックURLは、メッセージ送信中間イベントのプロパティ画面で確認します。「セキュリティ」タブの画面で、「OAuth 2.0 で接続する」を選択し、「設定はこちらから」をクリックします。別画面で OAuth 2.0 設定の画面が表示され、このページに書かれているコールバックURLをメモします。

 

コールバックURLの確認画面

コールバックURLの確認画面

 

Box アプリケーションに関する client_id と client_secret を確認

 

Box 側での作業です。

 

Box アプリケーション(※)の設定画面に表示される、client_id と client_secret をメモします。同時に、前項でメモした Questetra BPM Suite のコールバック URL を 同じ画面の redirect_url に登録します。
※事前に Box アプリケーションを作成しておいてください。

 

Box の設定画面

Box の設定画面

Questetra BPM Suite にて、OAuth 2.0 設定を行いトークンを取得

 

Questetra BPM Suite 側での作業です。

 

作成したプロセスモデルの「ファイル送信」メッセージ送信中間イベント(HTTP)のプロパティを開きます。

 

「セキュリティ」タブを選び、「OAuth 2.0 で接続する」を選択、「設定はこちらから」ボタンを押下すると、別画面で OAuth 2.0 設定の画面が表示されます。表示された画面で、ページ上部にある「追加」をクリックすると、OAuth 2.0 に関する詳細な設定画面が表示されますので、それぞれ次のように入力します。

名前
(任意)
Authorization Code Request URL
https://app.box.com/api/oauth2/authorize
Access Token Request URL
https://app.box.com/api/oauth2/token
Scope
(空欄)
Consumer Key
Box アプリケーションの client_id
Consumer Secret
Box アプリケーションの client_secret

 

入力が完了したら保存し、トークンを取得します。

 

動作確認

 

前節までの設定が完了したら、定義したプロセスモデルをリリースします。その後、新規開始からプロセスを開始し、唯一のヒューマンタスク「ファイル登録」を処理します。

 

file-regster-task-execution

 

file-register-on-box

 

多くの box API

 

これで、Questetra BPM Suite に登録されたファイルが、自動的に Box に保存される仕組みを構築する方法の説明は終了です。

 

Box には多くの API が用意されており、その仕様が公開されています。

 

  • Box にファイルを保存する API(今回利用したもの)
  • Box に保存されているファイルを参照、操作する API
  • Box に作られたフォルダ情報を参照する API

などなど。(他にもたくさんあります!)

 

Questetra BPM Suite から Box の API を利用することで、Box に対して保存や変更などの操作を行ったり、Box 内の情報を取得したりすることができます。

 

今回はここまで!

 


参考

YAHAGI Hajime の紹介

幸せを生み出すITを追求するクエステトラの一味です。 国産の BPM ソフト Questetra BPM Suite で日本・世界を幸せにしたい。
YAHAGI Hajime の投稿をすべて表示

あわせて読みたい
50.Questetra Tips の前の記事 承認工程を「メール返信」に置き換える方法
50.Questetra Tips の次の記事 案件削除ができないゾ!対策
YAHAGI Hajime の他の記事 Box API (Get File Info) について

アーカイブ

 RSS