﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
612	WebHookの機能拡張	yasunaka		"WebHookでPOSTするデータをテンプレートを使ってカスタマイズできるようにし、WebHookからEDITROOMなどのWeb APIを呼び出す場合に外部のサービスを経由しないで直接呼出しが出来るようにします。

WebHookを利用するにはライセンスが必要です。ライセンスがある場合、admintoolのタスク設定画面にWebhookの設定画面が表示されます。

以下のような設定画面からWebhookの設定ができます。

[[Image(Webhookの設定.png,97%)]]

== テンプレートの仕様
* ファイルが複数ある場合、ファイル数だけ繰り返してWeb APIを実行するか、それともまとめて1回で実行するかを選べるようにする。
* 変数
 * $(id), $(companyId), $(projectId), $(date)
 * $(属性キーワード) ... generateで指定された属性キーワード
 * $(shareBox) ... Shareからの場合
 * 以下の変数はファイル数だけ繰り返す場合に利用可能
  * $(action), $(apisUri), $(nodeId), $(filePath) $(documentStatus)
  * $(exportType), $(secureUrl), $(publicUrl)はEDITROOMからの出力の場合のみ利用可能。またpublicUrlは公開設定となっているファイルの場合のみセットされる。
  * $(num) ... 0, 1, 2, ...のようにファイルのインデックス番号を示す
 * まとめて1回で実行する場合にファイル数だけくり返す部分を指定する方法。
{{{
   ${ここの中はファイル数だけ繰り返す$$区切り文字$}
}}}
  * この場合、中の変数にはファイル数だけ繰り返す場合のものを使うことができる。
  * 下の例ではurlを""""でくくり、,で繋げている
{{{
   ${""$(url)""$$,$}
}}}
  * ネストは不可
 * 指定した変数が定義されている場合のみ出力する場合
{{{
   $!(変数名){ここに内容を書く$!}
}}}
  * 下の例は、boxが定義されている場合のみ、""box"" : ""ほにゃらら""; と出力する例
{{{
   $!(box){""box"" : ""$(box)"";$!}
}}}
  * ネストは不可

* 各変数の意味は以下の通り
|| 変数名 || 対象のAction || 意味 ||
|| $(id) || 常に利用可 || WebHookのユニークID、またはbw_publisherのrequestId ||
|| $(companyId) || 常に利用可 || テナント(会社)のID ||
|| $(projectId) || 常に利用可 || projectのID ||
|| $(date) || 常に利用可 || 発生日時 ||
|| $(shareBox) || ADD_FILE,UPDATE_FILE,DELETE_FILE || インポートしたShareのBOX名 ||
|| $(action) || 常に利用可 || WebhookのAction ||
|| $(apisUri) || BW_PUBLISHER_VALIDATE_ERROR以外 || 生成されたドキュメントのApisURI ||
|| $(nodeId) || BW_PUBLISHER_VALIDATE_ERROR以外 || 生成されたドキュメントのID ||
|| $(filePath) || BW_PUBLISHER_VALIDATE_ERROR以外 || 生成されたドキュメントのパス ||
|| $(documentStatus) || UPDATE_DOCUMENT_STATUS || ドキュメントステータス ||
|| $(exportType) || BW_PUBLISHER_COMPLETED || 生成ドキュメントの種別 ||
|| $(secureUrl) || BW_PUBLISHER_COMPLETED  || 生成ドキュメントへのURL(要API Key) ||
|| $(publicUrl) || BW_PUBLISHER_COMPLETED  || 生成ドキュメントへの公開URL ||
|| $(num) || - || ファイルのインデックス番号 ||

"	enhancement	closed	major	ver 2.1.3	crossnote	ver 2.1.3	fixed	#8029	
