各ツールについて
- zapier:300以上の Web アプリケーションと連携可能なデータ連携ツール。似たサービスとしてはifttt、yahoo! pipes
- Evernote:(有名なので割愛)
- Questetra BPM Suite:クラウド型の BPM ワークフローツール
今回実現したこと
実現した仕組みの概要
設定の詳細
さて、本題となる zaier の設定としては、大きく分けると以下の2つ
Questetra BPM Suite と接続するための「App」の作成
- フッタのメニューの「Developer Platform」に入る
- 「Apps」の一覧画面に切り替わるので、「Add New App」をクリック
- 「Tilte」に「Questetra BPM Suite」と入れ、「Description」には適当に説明を入れて「Save」クリック
- その「App」の設定画面に切り替わるので、アイコン画像を設定したい場合は「Edit Title, Image and Description」に入って設定
- 今回のトリガは Evernote 側になるので、アクションだけを設定する。「Actions」の「Add Your First Action」をクリック
- 「Name」に「new process start」、「Key」に「action_process_start」と入れ、「Description」には適当に説明を入れて「Save & Next」をクリック
- 「Action Fields」の設定画面に切り替わるので、以下の5項目を設定して「Next」をクリック(以下は左から「Label」「Key」「Type」で各項目は「Done」で保存)
・start URL、start_url、Unicode
・start processModelInfoId、start_process_model_info_id、Integer
・start nodeNumber、start_node_number、Integer
・start key、start_key、Unicode
・data title、data_title、Unicode
・data0 value、data_0_value、Unicode -
「Where To Send Data」の設定画面に切り替わるので、「URL Route」に「http://api.example.com/v2/clients.json」を設定して「Save」クリック
※「URL Route」は必要としていないのでごまかしている -
「Scripting API」の「Exit Code」をクリック
-
添付のスクリプトをコピペして「Save」クリックし、「Quick links」から「Back to app」をクリック
※パラメータを増やす場合にはAction Fieldsの追加とスクリプトの11行目あたりを増やす必要あり
スクリプトは以下
>>
var Zap = {
action_process_start_pre_write: function(bundle) {
var request = {
method: 'POST',
url: bundle.action_fields_full.start_url,
params: {
processModelInfoId: bundle.action_fields_full.start_process_model_info_id,
nodeNumber: bundle.action_fields_full.start_node_number,
key: bundle.action_fields_full.start_key,
title: bundle.action_fields_full.data_title,
'data[0].input': bundle.action_fields_full.data_0_value,
},
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': 'application/x-www-form-urlencoded'
},
auth: null,
data: null
};
return {
url: request.url,
method: request.method,
auth: request.auth,
headers: request.headers,
params: request.params,
data: request.data
};
}
};
<<
その「App」を使った「Zap」の作成
- 「Dashboard」に戻って「Make a New Zap」をクリック
- 「1 Choose a trigger and action」で、「Choose a Trigger app」で「Evernote」を、「Choose a Trigger」で「New Note」を選択。「Choose an Action app」で「Questetra BPM Suite」を、「Choose an Action」で「new process start」を選択。「Continue」をクリック
- 「2 Select a Evernote account」で、連携させたい「Evernote」アカウントを選択して「Continue」をクリック
- 「3 Select a Questetra BPM Suite account」では、特に設定がないので「Continue」をクリック
- 「4 Filter Evernote triggers」で、監視対象とする「Notebook」を指定して、「Continue」をクリック
- 「5 Match up Evernote Note to Questetra BPM Suite process start」で、「start URL」から「start key」には、Questetra BPM Suite 側の「メッセージ送信中間イベント(HTTP)」の設定を入力。「data title」には、「Insert field」から「Evernote」の「Title」を選択して、「data0 value」には、「Insert field」から「Evernote」の「URL」を選択して、「Continue」をクリック
- 「6 Test this Zap」で、「Test Evernote Trigger」をクリックし、サンプルを選択して「Test Zap with this sample」クリック。テストがうまくいけば「Continue」をクリック
- 「7 Name and turn this Zap on」で、「Name」に適当に名前を入れて、「Turn Zap On」をクリック
これで、連携設定が完了。Evernote 側でノートが増えれば、Questetra BPM Suite のプロセスが開始されるはず。