メインコンテンツへ移動

メッセージ連携の有効化方法

シングルサインオン(SSO)が統合されていることを前提とします(WeCom、DingTalk、WeLink、Feishu 連携、もしくは組織構造同期APIによるSSO相当の統合が完了している場合)。
HAPシステムは、アプリケーションメッセージを外部システムへプッシュ通知することができます。HAPチームによるカスタム開発も対応可能です(※カスタム開発には追加費用が発生します)。

HAPからアプリケーションメッセージを受信するには、以下の手順に沿って設定してください。


1. 事前設定ファイルのマウント(特定SSO方式以外の場合)​

WeCom、DingTalk、WeLink、Feishu、もしくは組織構造同期API連携以外の場合、以下の設定ファイルを事前にマウントする必要があります。

/data/mingdao/script/volume/sso/extend.json:

{
"relation": true
}

docker-compose.yaml の対象マイクロサービスアプリケーションのvolumesに次の内容を追加してください。

- ./volume/sso/extend.json:/usr/local/MDPrivateDeployment/sso/extend.json

2. アプリケーションメッセージ受信用の設定ファイル作成​

下記ファイルを作成します。

/data/mingdao/script/volume/integrate/appextensions.json:

{
"WebhookUrl": "https://api.yourdomain.com/message/webhook",
"FinishTodoWebhookUrl": "https://api.yourdomain.com/finish/webhook",
"WebhookHeaders": {}
}
  • WebhookUrl:必須。メッセージ受信用APIのアドレス。
  • FinishTodoWebhookUrl:任意。ToDoメッセージ受信用APIのアドレス。ToDo状態の同期が不要な場合は設定不要です。
  • WebhookHeaders:任意。認証などに使用するカスタムリクエストヘッダー。
複数Webhookの設定

v7.4.4以降で対応しています。

{
"WebhookConfigs": [
{
"WebhookUrl": "https://api.yourdomain.com/message/webhook1",
"FinishTodoWebhookUrl": "https://api.yourdomain.com/finish/webhook1",
"WebhookHeaders": {},
"AllowMessageTypes": [
12,
13
]
},
{
"WebhookUrl": "https://api.yourdomain.com/message/webhook2",
"FinishTodoWebhookUrl": "https://api.yourdomain.com/finish/webhook2",
"WebhookHeaders": {},
"AllowMessageTypes": [
14,
15
]
}
]
}

AllowMessageTypes は任意です(値は messageTypeV2 に対応)。送信対象のメッセージ種類を絞り込めます。


3. メッセージのフォーマット​

アプリケーションメッセージ送信時(POST application/json)

{
"messageId": "メッセージID",
"message": "メッセージ内容",
"messageType": 11,
"messageTypeV2": 11,
"appId": "アプリID",
"appName": "アプリ名",
"attachments": ["添付ファイルURL|添付ファイル名"],
"redirectUrl": "HAPシステム内の対応画面URL",
"targets": ["ユーザーID"],
"projectId": "組織ID",
"createUserId": "作成者",
"processId": "プロセスID"
}
フィールド説明
messageType11: ワークシートシステム通知, 12: ワークシートディスカッションのメンション, 13: ディスカッションへの返信, 14: ワークフローToDo(入力・承認、送信記録ありのシステムメッセージ), 15: ワークフロー送信記録なしのシステム通知
messageTypeV211: ワークシートシステム通知, 12: ディスカッションのメンション, 13: 返信, 14: ワークフローToDo(入力・承認), 15: ワークフロー送信記録なし通知, 16: ワークフロー送信記録あり通知
attachments画像ファイルは直接利用可、ドキュメントなどは添付数表示のみ(直接ダウンロード不可)
targetsSSO統合時のサードパーティユーザーID
createUserIdSSO統合時のサードパーティユーザーID。システム通知の場合は空欄
processIdワークフローメッセージのみ値を保持
redirectUrlHAPシステム内のメッセージ処理画面のURL
ToDo完了メッセージのフォーマット(POST application/json)
{
"messageId": "メッセージID",
"projectId": "組織ID",
"userId": "操作者", // SSO統合時のサードパーティユーザーID
"processId": "プロセスID",
"operationType": "操作タイプ"
}
フィールド説明対応バージョン
operationType操作タイプ
1:送信
2:転送
3:表示
4:承認
5:否決
8:承認の転送
9:承認者を追加
10:削除された
13:申請を取り消す
14:委託を撤回
16:承認前に承認者を追加
17:申請を承認して承認者を追加
18:申請内容を変更
19:申請を変更して再送信
22:承認不要
v7.4.4以降

4. 設定ファイルのマウント​

docker-compose.yamlの対象マイクロサービスアプリケーションのvolumesに下記を追加します。

- ./volume/integrate/appextensions.json:/usr/local/MDPrivateDeployment/integrate/appextensions.json

5. HAPマイクロサービスアプリケーションの再起動​

アプリケーションの設定反映のため、HAPマイクロサービスアプリケーションを再起動してください。