Quick BI のボットチャネルは、さまざまなメッセージチャネルを管理することにより、企業のコミュニケーションを効率化します。 このサービスでは、外部ポートを設定して、複数チャネルのアラート情報と承認通知を受信できます。 このトピックでは、カスタムチャネルの設定方法について説明します。
カスタムチャネルの作成
Quick BI コンソール にログオンします。
下の図に示すように、Quick BI 製品のホームページからカスタムチャンネル作成ページに移動します。

[カスタムチャネルの作成] ダイアログボックスで、次のパラメーターを設定します。

パラメーター
説明
名前
カスタムチャネルの名前を入力します。
プッシュアドレス
メッセージプッシュを受信するターゲットカスタムチャネルのインターフェースアドレスを入力します。
設定されたインターフェースアドレスは、
POSTリクエストメソッドをサポートしている必要があります。リクエスト追加キー
リクエスト署名を検証するために、ターゲットカスタムチャネルの署名キーを入力します。
キーを手動で入力するか、[キーを自動生成] をクリックして、キーを自動的に生成し、Quick BI に入力します。
ビジネス側は、受信したコンテンツの署名を検証する必要があります。
[保存してテスト] をクリックします。
正常に保存されると、新しいカスタムチャネルがボットチャネルリストに表示されます。

サブスクリプション受信時のカスタムチャネルの設定
サブスクリプションを設定する際は、アラートメソッドの設定にカスタムチャネルを含めます。
以下に示すように、Quick BI ホームページからサブスクリプション管理ページにアクセスします。

サブスクリプションタスクの作成中に、受信方法として カスタムチャネルを選択すると、受信チャネルにカスタムチャネルが表示されます。

詳細については、「サブスクリプションタスクの作成」をご参照ください。
カスタムチャネルへのサブスクリプション通知のメッセージ形式は次のとおりです。
{ "schema":"1.0", "header":{ "organizationId":"b5fb3d10xx", // 組織 ID "eventId":"bc679418-9e7xx", // 一意のイベント ID "createTime":"1705398011696", "eventType":"SUBSCRIBE" // イベントタイプ、サブスクライブ。ビジネスロジックの決定に使用されます }, "event":{ "createTime":"1705397830000", "customParams":"{\"param\":\"this is a test\"}", // サブスクリプションのカスタムパラメーター。JSON 形式、キー構造。 "customReceiveGroups":"xxx", // カスタム受信グループ "customReceiveUsers":[ // カスタム受信者。 { "nick":"Zhang San", // ニックネーム "accountId":"cQUPAaY81L", // Quick BI に保存されているサードパーティアカウント ID "accountType":4, // アカウントタイプ。 "userId":"053da9" // Quick BI userId } ], "worksInfo":{ // レポート関連情報 "components":[ // コンポーネント情報 { "componentId":"123", "componentName":"クロス表", "componentType":4 } ], "worksId":"0458e831-0250-486", // レポート ID "worksName":"ランキングリスト", // レポート名 "worksType":"PAGE", "workspaceName":"Li Si リソースプランインポート", // ワークスペース名 "workspaceId":"3e60ee7f-a99f-4231-913", // ワークスペース ID "worksUrl":"https://baidu.com/xxxx" // レポートプレビュー URL }, "subscribeId":"73a1d0b2420", // サブスクリプション ID "taskId": "4899407788885930938", // サブスクリプションタスク ID "ownerId":"fec0741443204", // サブスクリプションタスク所有者 "title":"カスタム Webhook プッシュチャネル", // サブスクリプションタスクタイトル "subject":"カスタム", // サブスクリプションタスク件名 "content":{ // サブスクリプションタスクテキスト "head":"<p style=\";\">カスタム Webhook プッシュチャネル</p>", "tail":"<p style=\";\">カスタム Webhook プッシュチャネル</p>" }, "snapshot":{ "images":[ // スクリーンショット添付ファイル { "name":"2467699471858258259-1.jpeg", "url":"https://qbi-dev.cn-shanghai.aliyuncs.com/xxxx" } ], "pdfs":[ // PDF 添付ファイル { "name":"2467699471858258259-1.pdf", "url":"https://qbi-dev.cn-shanghai.aliyuncs.com/xxxx" } ], "excels":[ // Excel 添付ファイル { "name":"2467699471858258259-1.xlsx", "url":"https://qbi-dev.cn-shanghai.aliyuncs.com/xxxx" } ] } } }
アラート受信時のカスタムチャネルの設定
メトリックを監視する際に、アラートメソッドの設定にカスタムチャネルを追加します。
下の図に示すように、Quick BI ホームページからメトリック監視ページに移動します。

[モニターアラート設定] ダイアログボックスで、[カスタムチャンネル] をアラートメソッドとして選択し、[カスタムチャンネル] のカスタムチャンネルを表示します。 ダイアログボックスで、アラートメソッドとして を選択すると、 にカスタムチャネルが表示されます。
詳細については、「モニタリングの設定」をご参照ください。
レポートタスク発行におけるカスタムチャネルの設定
データレポートの レポートタスク発行を設定する際に、カスタムチャネルを選択します。

カスタムチャネルへのレポートタスク通知のメッセージ形式は次のとおりです。
{ "deadlineTime": "2024-07-26 20:00:00", // 報告期限 "taskUrl": "https://bi.aliyun.com/xxx", // 報告リンク "taskTitle": "レポートタスク名", // レポートタスク名 "sendTime": "2024-07-04 19:19:20", // レポートタスク発行時間 "dashboardName": "Wang Wu のレポート" // レポート名 }
外部承認 Electron ストリームにおけるカスタムチャネルの設定
組織管理者は、カスタムチャネルを外部承認プロセスに統合できます。
下の図に示すように、設定管理ページでカスタムチャネルを作成します。

下の図に示すように、コラボレーション設定ページでカスタム承認チャネルを有効にします。

これで、ユーザーが Quick BI リソースへのアクセスをリクエストすると、カスタムチャネルもアプリケーション通知を受信します。
カスタムチャネルへの Quick BI 承認通知のメッセージ形式は次のとおりです。
{ "authPointsValue":3, # 権限ポイント。 "resourceId":"b8b5392b-bb44-4bd8-e9642787e8d", # 権限がリクエストされたリソースの ID。 "resourceName":"20 widgets on the first screen (8 on the mobile client's first screen)", # レポートリソース名。 "approverId":"e52b777a1dde4bfb94f91e18128bcfb0", # 承認者の UID。 "roleId":0, "applyReason":"123123", # リクエストの理由。 "extInfo": [ # 拡張情報。リソースタイプが dataFormInsertData の場合、このフィールドにはユーザーが送信したフォーム内の各コントロールの名前、タイプ、および送信された情報が表示されます。 { "data": { # コントロールのデータ入力情報。 "63912418-e311-4573-84be-1f732ffd9f35": 20, # コントロール ID とその送信値。 "f9a46753-98a1-4709-9327-949c6a03af08": "test", "ffe8327a-9de8-4699-a23a-097088a22d2e": "test1" }, "dataId": null, # データレコード ID。 "dataWithComponent": { # コントロールの詳細。 "63912418-e311-4573-84be-1f732ffd9f35": { # コントロール ID。 "componentType": "number", # コントロールタイプ。 "data": 20, # このコントロールでユーザーが送信した値。 "label": "Age" # コントロール名。 }, "f9a46753-98a1-4709-9327-949c6a03af08": { "componentType": "text", "data": "test", "label": "Remarks" }, "ffe8327a-9de8-4699-a23a-097088a22d2e": { "componentType": "text", "data": "test1", "label": "Name" } } } ], "resources": [ # メニュー情報。このフィールドは BI ポータルでのみ利用可能です。 { "resourceId": "a8d78c04-df99-42c3-a0a2-dbe7350b077c", # メニュー ID。 "resourceName": "Level-3 menu", # メニュー名。 "resourceType": "0" # メニュータイプ。 } ], "applicantName":"Mr. Zhang", # リクエスト者のニックネーム。 "gmtCreate":1705399339000, # 作成時間。 "approverName":"Ms. Wang", # 承認者のニックネーム。 "expireDate":1708077734000, # 権限の有効期間。 "workspaceName":"Quick BI Assessment Workspace", # ワークスペース名。 "applicantId":"e9a40c524ef8471faefbd", # リクエスト者の UID。 "applicationId":"b31c8cf5-aa31-42f7-927a-da3cb2feefd4", # 承認 ID。 "resourceType":"dashboard" # リソースタイプ。 }注 1: メニュー情報を含む resources フィールドは、BI ポータルの承認でのみ利用可能です。resources の resourceType は、次のタイプのみをサポートします:
resources の resourceType は、次のタイプのみをサポートします:
0: ダッシュボード
2: ワークブック
5: データ入力
6: ダウンロード
7: アドホック分析
8: データダッシュボード
注 2: 次の表は、リソースタイプについて説明しています。リソースタイプでは大文字と小文字は区別されません。
dataProduct: BI ポータル
portal_menu: BI ポータルメニュー
dashboard: ダッシュボード
screen: データダッシュボード
report: ワークブック
ANALYSIS: アドホック分析
dashboardOfflineQuery: ダウンロード
dataForm: データ入力
cube: データセット
datasource: データソース
dataFormInsertData: ストレージへのデータ入力
注 3: 次の表は、各リソースタイプの authPointsValue 権限ポイントについて説明しています。
リソースタイプ
authPointsValue 権限ポイントの説明
データ入力
1: データの送信
9: 自身のデータの管理
10: すべてのデータの管理
11: 編集
データセット、データソース、データ準備
1: 使用
11: 編集
データダッシュボード、ワークブック、ダッシュボード、ダウンロード
1: 表示のみ
2: エクスポート
3: 表示とエクスポート
11: 編集
BI ポータル
BI ポータルの権限
11: 編集
メニューコンテンツの権限
上記と同じ
- 重要
注: データ入力の場合、自身のデータを管理するための値は 3 です。
付録: 外部システムの受信と署名検証方法
Quick BI は、コンテンツ配信に POST メソッドを使用し、リクエストに次の詳細を追加します。 コンテンツを受信すると、ユーザーシステムは必要に応じて sign 値を検証して署名認証を行うことができます。
リクエストヘッダー:
X-TaskId は一意のタスク ID で、ユーザーはタスクリクエストを 1 回確認し、再生防止チェックを実行したり、トラブルシューティングのために Quick BI サポートに提供したりできます。
リクエストパラメータ:
timestamp: タイムスタンプnonce: ランダムな文字列sign: 署名情報
これらのリクエストパラメーターはセキュリティのために設計されており、ユーザーシステムは再生防止チェックと改ざん防止チェックを実行できます。 署名を生成する方法は次のとおりです。
sign = SHA256.digest(timestamp + nonce + token)token値は、チャネル作成時に生成された [リクエスト追加キー] です。 受信者は、signを期待値と照合して検証する必要があります。webhook 送信のタイムアウト制限は 30 秒であるため、再試行や失敗を防ぐために、受信後にメッセージを非同期で処理することをお勧めします。 Quick BI は、受信の確認として、HTTP ステータスコード 200 と空でないテキストのみを必要とします。