flashduty-knowledge-base 1.3.3 → 1.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -1
- package/dist/en.d.ts +2 -0
- package/dist/esm/en.js +842 -378
- package/dist/esm/zh.js +849 -368
- package/dist/iife/en.js +823 -359
- package/dist/iife/zh.js +821 -340
- package/dist/zh.d.ts +2 -0
- package/package.json +1 -1
package/dist/iife/en.js
CHANGED
|
@@ -4811,558 +4811,673 @@ Please contact Flashduty if you wish to modify this mapping.
|
|
|
4811
4811
|
|
|
4812
4812
|
</div>
|
|
4813
4813
|
`,Lark:`---
|
|
4814
|
-
title:
|
|
4815
|
-
description:
|
|
4816
|
-
|
|
4814
|
+
title: "Feishu/Lark Integration"
|
|
4815
|
+
description: "By integrating a custom Feishu/Lark application, you can receive and respond to alerts within Feishu/Lark."
|
|
4816
|
+
date: "2025-05-19T10:00:00+08:00"
|
|
4817
|
+
url: "https://docs.flashcat.cloud/en/flashduty/lark-integration-guide?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5"
|
|
4817
4818
|
---
|
|
4819
|
+
By integrating a custom Feishu/Lark application, you can receive and respond to alerts within Feishu/Lark.
|
|
4818
4820
|
|
|
4819
|
-
|
|
4820
|
-
|
|
4821
|
-
<!--
|
|
4822
|
-
## Video Tutorial
|
|
4821
|
+
## 1. Create Feishu/Lark application
|
|
4823
4822
|
---
|
|
4824
|
-
<Video src="https://download.flashcat.cloud/flashduty/video/feishu.mp4"></Video>
|
|
4825
|
-
-->
|
|
4826
4823
|
|
|
4827
|
-
|
|
4828
|
-
---
|
|
4824
|
+
### 1. Create a custom application
|
|
4829
4825
|
|
|
4830
|
-
|
|
4826
|
+
Visit [Feishu/Lark Developer Console](https://open.feishu.cn/app) and create an internal custom application. You can use the [official Flashduty icon](https://download.flashcat.cloud/flashcat_logo_circular.png) for the application icon.
|
|
4831
4827
|
|
|
4832
|
-
|
|
4828
|
+
For details, see the Feishu/Lark development documentation [Create an internal custom application](https://open.feishu.cn/document/uYjL24iN/uMTMuMTMuMTM/development-guide/step1#132c1aac).
|
|
4833
4829
|
|
|
4834
|
-
|
|
4830
|
+

|
|
4831
|
+
### 2. Copy credential information
|
|
4835
4832
|
|
|
4836
|
-
|
|
4833
|
+
Go to the **Credentials and Basic Information** page and copy the \`App ID\` and \`App Secret\` for later use.
|
|
4837
4834
|
|
|
4838
|
-
### 2. Copy Credentials
|
|
4839
4835
|
|
|
4840
|
-
|
|
4836
|
+

|
|
4841
4837
|
|
|
4842
|
-
|
|
4838
|
+
### 3. Copy the event callback Token information
|
|
4839
|
+
|
|
4840
|
+
Go to Development Configuration → Events & Callbacks → **Encryption Strategy** page, generate and copy the \`Encrypt Key\` (recommended for better security) and \`Verification Token\` for later use.
|
|
4841
|
+
|
|
4842
|
+

|
|
4843
|
+
|
|
4844
|
+
## 2. Add Feishu/Lark integration
|
|
4845
|
+
---
|
|
4843
4846
|
|
|
4844
|
-
|
|
4847
|
+
Return to the Flashduty **Integration Center** page, select IM → **Feishu/Lark**, fill in the \`Name\` and the \`App ID\`, \`App Secret\`, \`Verification Token\`, and \`Encrypt Key\` copied in the previous step, then click **Save** to complete the creation.
|
|
4845
4848
|
|
|
4846
|
-
|
|
4849
|
+
After successful creation, you will see the added Feishu/Lark integration in the list. Click its name to enter the details page, where you can view the **Web Configuration** address, **Redirect URL**, and **Message Card Request URL**, which will be used in subsequent steps.
|
|
4847
4850
|
|
|
4848
|
-
|
|
4851
|
+

|
|
4849
4852
|
|
|
4850
|
-
##
|
|
4853
|
+
## 3. Configure Feishu/Lark application
|
|
4851
4854
|
---
|
|
4852
4855
|
|
|
4853
|
-
|
|
4856
|
+
### 1. Enable and configure application capabilities
|
|
4854
4857
|
|
|
4855
|
-
|
|
4858
|
+
1. Return to the Feishu/Lark Developer Console, enter the created Feishu/Lark application, go to Add Application Capabilities → **Add by Capability** page, and enable both **Web Application** and **Bot** capabilities.
|
|
4856
4859
|
|
|
4857
|
-
|
|
4860
|
+

|
|
4858
4861
|
|
|
4859
|
-
|
|
4862
|
+
2. Go to the **Web app** page and configure the \`Desktop Homepage\` and \`Mobile Homepage\`, both using the **Web configuration** address from the integration details.
|
|
4860
4863
|
|
|
4861
|
-
|
|
4862
|
-
---
|
|
4864
|
+
For details, see the Feishu/Lark development documentation [Configure application homepage address](https://open.feishu.cn/document/uYjL24iN/uMTMuMTMuMTM/development-guide/step1#8366b844).
|
|
4863
4865
|
|
|
4864
|
-
|
|
4866
|
+

|
|
4865
4867
|
|
|
4866
|
-
|
|
4868
|
+
3. Go to Event Callbacks → **Event Configuration** page, configure the \`Request URL\` (using the **Message Card Request URL** from the integration details). Then, add the following two events:
|
|
4867
4869
|
|
|
4868
|
-
|
|
4870
|
+
- \`im.chat.disbanded_v1\`
|
|
4871
|
+
- \`im.message.receive_v1\`
|
|
4869
4872
|
|
|
4870
|
-
|
|
4873
|
+

|
|
4871
4874
|
|
|
4872
|
-
|
|
4875
|
+
4. Go to Event Callbacks → **Callback Configuration** page, configure the \`Request URL\` (using the **Message Card Request URL** from the integration details). Then, subscribe to the following two callbacks:
|
|
4873
4876
|
|
|
4874
|
-
|
|
4877
|
+
- \`card.action.trigger\`
|
|
4878
|
+
- \`card.action.trigger_v1\`
|
|
4875
4879
|
|
|
4876
|
-
|
|
4880
|
+

|
|
4877
4881
|
|
|
4878
|
-
|
|
4879
|
-
<img src="https://download.flashcat.cloud/flashduty/doc/en/feishu/feishu-9.png" alt="drawing" width="800"/>
|
|
4882
|
+
### 2. Add redirect URL to Feishu/Lark application
|
|
4880
4883
|
|
|
4881
|
-
|
|
4884
|
+
Go to the **Security Settings** page and configure the \`Redirect URL\` using the **Redirect URL** from the integration details.
|
|
4882
4885
|
|
|
4883
|
-
|
|
4886
|
+
For details, see the Feishu/Lark development documentation [Configure redirect URL](https://open.feishu.cn/document/uYjL24iN/uYjN3QjL2YzN04iN2cDN?lang=zh-CN#c863e533).
|
|
4884
4887
|
|
|
4885
|
-
|
|
4888
|
+

|
|
4886
4889
|
|
|
4887
|
-
|
|
4890
|
+
### 3. Apply for application permissions
|
|
4888
4891
|
|
|
4889
|
-
|
|
4892
|
+
Go to the **Permission Management** page and apply for the following permissions for the group application created in the previous steps:
|
|
4890
4893
|
|
|
4891
|
-
|
|
4894
|
+
- \`im:chat\`: Get and update group information
|
|
4895
|
+
- \`im:message\`: Get and send single chat and group messages
|
|
4896
|
+
- \`contact:user.id:readonly\`: Get user ID by phone number or email <span id="war-room-scope"></span>
|
|
4892
4897
|
|
|
4893
|
-
|
|
4898
|
+

|
|
4894
4899
|
|
|
4895
|
-
##
|
|
4900
|
+
## 4. Application release
|
|
4896
4901
|
---
|
|
4897
4902
|
|
|
4898
|
-
After completing the above
|
|
4899
|
-
Note: **Available Range** needs special configuration, recommended for **All Employees**.
|
|
4900
|
-
|
|
4901
|
-
<img src="https://download.flashcat.cloud/flashduty/doc/en/feishu/feishu-12.png" alt="drawing" width="800"/>
|
|
4903
|
+
After completing all the above configurations, please release the application. It can be used after administrator approval.
|
|
4902
4904
|
|
|
4903
|
-
|
|
4905
|
+
For details, see the Feishu/Lark development documentation [Application release and usage](https://open.feishu.cn/document/uYjL24iN/uMTMuMTMuMTM/development-guide/step-4).
|
|
4904
4906
|
|
|
4905
|
-
|
|
4907
|
+
> To ensure that everyone can use the application, adjust the application **visibility** to all employees before releasing the application.
|
|
4906
4908
|
|
|
4907
|
-
|
|
4908
|
-
2. PC: Access the web application through Feishu/Lark > Workspace > Search application name > Open application.
|
|
4909
|
+

|
|
4909
4910
|
|
|
4910
|
-
## V. Common Issues
|
|
4911
|
-
---
|
|
4912
4911
|
|
|
4913
|
-
|
|
4912
|
+
After the application is released, you can access it via **mobile** or **PC**. The first access requires login to link your Feishu/Lark and Flashduty accounts. Subsequent access will be login-free.
|
|
4914
4913
|
|
|
4915
|
-
|
|
4914
|
+
- **Mobile**: Access via Feishu/Lark → Workplace → Search for application name → **Open Application** to use the web application.
|
|
4915
|
+
- **PC**: Access via Feishu/Lark → Workplace → Search for application name → **Open Application** to use the web application.
|
|
4916
4916
|
|
|
4917
|
-
|
|
4917
|
+

|
|
4918
4918
|
|
|
4919
|
-
|
|
4920
|
-
- Ensure sufficient licenses are purchased. You can check license usage in Console > Billing Center
|
|
4919
|
+
## 5. Configure war room
|
|
4921
4920
|
|
|
4922
|
-
|
|
4921
|
+
> Ensure the application has been authorized with the [additional permissions](#war-room-scope) required for the war room feature.
|
|
4923
4922
|
|
|
4924
|
-
|
|
4925
|
-
- Return to the escalation rule configuration page, refresh and reselect the group chat list
|
|
4923
|
+
After completing the previous steps, in the **Enhanced Features** module of the Flashduty integration configuration page, check **Enable War Room** to enable this feature without additional configuration.
|
|
4926
4924
|
|
|
4927
|
-
|
|
4928
|
-
|
|
4925
|
+
## 6. FAQ
|
|
4926
|
+
---
|
|
4929
4927
|
|
|
4930
|
-
|
|
4928
|
+
1. **Messages cannot be delivered to individuals, and the operation log shows \`app not linked\`?**
|
|
4929
|
+
- Go to Feishu/Lark → Workplace → Search for application name → **Open Application**, complete login once to link your Feishu/Lark and Flashduty accounts, so the system can obtain user identity for message push.
|
|
4930
|
+
2. **Message card buttons are unresponsive or show errors?**
|
|
4931
|
+
- Ensure the account has been linked. You can go to Feishu/Lark → Workplace → Search for application name → **Open Application** to complete login once. If you have already logged in, try clicking the menu in the upper right corner, switch accounts, and log in again to bind the account.
|
|
4932
|
+
- Ensure you have purchased sufficient licenses. You can check the license usage in Console → **Billing Center**.
|
|
4933
|
+
3. **The Feishu/Lark group chat list in escalation rules is empty?**
|
|
4934
|
+
- Go to Feishu/Lark and add the created Flashduty bot to the specified group chat.
|
|
4935
|
+
- Return to the escalation rule configuration page, refresh and reselect the group chat list.
|
|
4931
4936
|
|
|
4932
|
-
|
|
4937
|
+

|
|
4933
4938
|
|
|
4934
|
-
|
|
4935
|
-
|
|
4936
|
-
|Basic Free Version|10,000 calls|1st of each month|
|
|
4937
|
-
|Other Versions|Unlimited|-|
|
|
4939
|
+
4. **Feishu/Lark custom application API limits?**
|
|
4940
|
+
- **Call volume limits:**
|
|
4938
4941
|
|
|
4939
|
-
|
|
4942
|
+
| **Feishu/Lark Version** | **Total Calls/Month** | **Refresh Time** |
|
|
4943
|
+
| :---: | :---: | :---: |
|
|
4944
|
+
| Basic Free | 10,000 | 1st of each month |
|
|
4945
|
+
| Other Versions | Unlimited | - |
|
|
4940
4946
|
|
|
4941
|
-
|
|
4942
|
-
| :----------: | :--: |
|
|
4943
|
-
|All APIs|Maximum 50 calls/second per application|
|
|
4944
|
-
|Message Sending API|Maximum 1000 calls/minute per application|
|
|
4945
|
-
|Group Bot Webhook|Maximum 100 calls/minute|
|
|
4946
|
-
|Sending messages to the same user or group|Maximum 5 calls/second|
|
|
4947
|
+
- **Rate limits:**
|
|
4947
4948
|
|
|
4948
|
-
|
|
4949
|
+
| **Scenario** | **Limit** |
|
|
4950
|
+
| :---: | :--- |
|
|
4951
|
+
| All APIs | Max 50 calls/second per app |
|
|
4952
|
+
| Send message APIs | Max 1000 calls/minute per app |
|
|
4953
|
+
| Group bot webhook | Max 100 calls/minute |
|
|
4954
|
+
| Send to same user or group | Max 5 calls/second |
|
|
4955
|
+
|
|
4956
|
+
> After exceeding API call limits, the Feishu/Lark application will not be able to push messages normally. It is recommended to use notification channels reasonably. See [Feishu/Lark official documentation](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/platform-updates-/custom-app-api-call-limit) for details.
|
|
4957
|
+
5. **Why is the war room feature not working as expected?**
|
|
4958
|
+
- Please check again whether you have configured the [required permissions](#war-room-scope) for the war room feature.
|
|
4959
|
+
- Please refer to the **FAQ** section of the Flashduty [War Room Introduction](https://docs.flashcat.cloud/en/flashduty/war-room?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5).`,Dingtalk:`---
|
|
4949
4960
|
title: "Dingtalk Integration"
|
|
4950
|
-
description: "
|
|
4961
|
+
description: "By integrating a custom Dingtalk application, you can receive and respond to alerts within Dingtalk."
|
|
4951
4962
|
date: "2025-05-19T10:00:00+08:00"
|
|
4952
|
-
url: "https://docs.flashcat.cloud/en/flashduty/dingtalk-integration-guide"
|
|
4963
|
+
url: "https://docs.flashcat.cloud/en/flashduty/dingtalk-integration-guide?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5"
|
|
4953
4964
|
---
|
|
4954
4965
|
|
|
4955
|
-
|
|
4966
|
+
By integrating a custom Dingtalk application, you can receive and respond to alerts within Dingtalk.
|
|
4967
|
+
|
|
4968
|
+
> This document uses the new version of the Dingtalk Open Platform as an example.
|
|
4969
|
+
|
|
4970
|
+
|
|
4971
|
+
## I. Create Dingtalk Application and Add Dingtalk Integration
|
|
4956
4972
|
|
|
4957
|
-
**(This guide uses the new version of Dingtalk Open Platform as an example)**
|
|
4958
|
-
<!--
|
|
4959
|
-
## Video Tutorial
|
|
4960
|
-
---
|
|
4961
|
-
<Video src="https://download.flashcat.cloud/flashduty/video/dingding.mp4"></Video>
|
|
4962
|
-
-->
|
|
4963
|
-
## I. Create Dingtalk Application
|
|
4964
4973
|
---
|
|
4965
4974
|
|
|
4966
|
-
### 1. Create Custom Application
|
|
4975
|
+
### 1. Create a Custom Application
|
|
4976
|
+
|
|
4977
|
+
Visit the [Dingtalk Developer Console](https://open-dev.dingtalk.com/fe/app) → Application Development → **Internal Enterprise Development** to create an application.
|
|
4967
4978
|
|
|
4968
|
-
|
|
4979
|
+
For details, please refer to the Dingtalk development documentation [Create an in-house application-H5 micro-application](https://open.dingtalk.com/document/orgapp/microapplication-creation-and-release-process#title-ovn-666-1ty).
|
|
4969
4980
|
|
|
4970
|
-
|
|
4981
|
+

|
|
4971
4982
|
|
|
4972
|
-
You can use the [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png)
|
|
4983
|
+
You can use the [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) for the application icon.
|
|
4973
4984
|
|
|
4974
|
-
### 2. Copy Enterprise CorpId
|
|
4985
|
+
### 2. Copy the Enterprise \`CorpId\`
|
|
4975
4986
|
|
|
4976
|
-
Click on the enterprise in the
|
|
4987
|
+
Click on the enterprise avatar in the top right corner of the page and copy the \`CorpId\` from the dropdown menu.
|
|
4977
4988
|
|
|
4978
|
-
|
|
4989
|
+

|
|
4979
4990
|
|
|
4980
|
-
|
|
4991
|
+
Return to the Flashduty integration configuration page and fill in the corresponding \`CorpId\` in the form.
|
|
4981
4992
|
|
|
4982
|
-
|
|
4993
|
+
### 3. Copy Application Credential Information
|
|
4983
4994
|
|
|
4984
|
-
|
|
4995
|
+
Enter the application details interface you created, go to the Application Capability → **Credentials and Basic Information** page via the left menu bar, and copy the \`AgentId\`, \`Client ID\`, and \`Client Secret\`.
|
|
4996
|
+
|
|
4997
|
+

|
|
4998
|
+
|
|
4999
|
+
Return to the Flashduty integration configuration page and fill in the corresponding \`AgentId\`, \`Client ID\`, and \`Client Secret\` in the form.
|
|
4985
5000
|
|
|
4986
5001
|
### 4. Copy Event Subscription Information
|
|
4987
5002
|
|
|
4988
|
-
Go to
|
|
5003
|
+
Go to Development Configuration → **Events and Callbacks** page. Set the push method to \`HTTP Push\`, then click the button to generate an \`Encryption aes_key\` and a \`Signature Token\`, and copy them.
|
|
4989
5004
|
|
|
4990
|
-
|
|
5005
|
+

|
|
4991
5006
|
|
|
4992
|
-
|
|
5007
|
+
Return to the Flashduty integration configuration page, fill in the corresponding \`Encryption aes_key\` and \`Signature Token\` in the form, and click the **Save** button.
|
|
4993
5008
|
|
|
4994
|
-
|
|
5009
|
+
### 5. Configure Event Subscription
|
|
4995
5010
|
|
|
4996
|
-
|
|
4997
|
-
---
|
|
5011
|
+
Go to the Development Configuration → **Event Subscription** page.
|
|
4998
5012
|
|
|
4999
|
-
|
|
5013
|
+
Configure the **Event Subscription Request URL** using the \`Event Subscription Request URL\` from the Flashduty integration details. **Save** after configuration.
|
|
5000
5014
|
|
|
5001
|
-
|
|
5015
|
+

|
|
5002
5016
|
|
|
5003
|
-
|
|
5017
|
+
Below the **Save** button, select the three group session events: \`Group chat name is changed\`, \`Install the cool application in the group\`, and \`Uninstall the cool application in the group\`. Click **Save** after configuration.
|
|
5004
5018
|
|
|
5005
|
-
|
|
5019
|
+

|
|
5006
5020
|
|
|
5007
|
-
|
|
5008
|
-
---
|
|
5021
|
+
### 6. Add Application Capabilities
|
|
5009
5022
|
|
|
5010
|
-
|
|
5011
|
-
<img src="https://download.flashcat.cloud/flashduty/doc/en/ding/ding-7.png" alt="drawing" width="500"/>
|
|
5023
|
+
Create a Cool App. Go to Development Configuration → Add Application Capability → Cool App → **Cool App List** page, click the **Create Cool App** button, and select **Extend to group sessions**.
|
|
5012
5024
|
|
|
5013
|
-
|
|
5025
|
+
Enter the **Edit Cool App** page and complete the following steps:
|
|
5014
5026
|
|
|
5015
|
-
|
|
5027
|
+
1. Fill in the basic information. You can use the [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) for the icon.
|
|
5016
5028
|
|
|
5017
|
-
|
|
5029
|
+

|
|
5018
5030
|
|
|
5019
|
-
2.
|
|
5031
|
+
2. Configure the functional design. Select **Group Quick Access** and **Message Card** on the left. You can use the [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) for the group quick access icon. For the desktop and mobile access addresses, please copy the **Cool App Web URL** from the integration details.
|
|
5020
5032
|
|
|
5021
|
-
|
|
5033
|
+

|
|
5022
5034
|
|
|
5023
|
-
|
|
5035
|
+
3. Skip the third step of functional development, proceed to the fourth step **Preview & Release**, click the **Release** button and confirm.
|
|
5024
5036
|
|
|
5025
|
-
|
|
5037
|
+
### 7. Configure Bot and Message Push
|
|
5026
5038
|
|
|
5027
|
-
|
|
5039
|
+
Go to the Application Capability → **Bot** page, enable the bot configuration, fill in the name and upload an icon, then click **Save**. You can use the [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) for the icon.
|
|
5028
5040
|
|
|
5029
|
-
|
|
5041
|
+

|
|
5030
5042
|
|
|
5031
|
-
|
|
5043
|
+
### 8. Configure Application URLs
|
|
5032
5044
|
|
|
5033
|
-
|
|
5045
|
+
Go to the Application Capability → **Web Application** page.
|
|
5034
5046
|
|
|
5035
|
-
|
|
5047
|
+
Configure the **Application Homepage URL** and **PC Homepage URL** with the \`Application Homepage URL\` and \`PC Homepage URL\` from the Flashduty integration details. Click **Save** when done.
|
|
5036
5048
|
|
|
5037
|
-
|
|
5049
|
+

|
|
5038
5050
|
|
|
5039
|
-
|
|
5051
|
+
### 9. Apply for Application Permissions
|
|
5040
5052
|
|
|
5041
|
-
|
|
5053
|
+
Go to the Development Configuration → **Permissions** page and apply for the following permissions for the group application created in the previous steps:
|
|
5042
5054
|
|
|
5043
|
-
|
|
5055
|
+
- \`qyapi_chat_manage\`: Get group chat information
|
|
5056
|
+
- \`qyapi_robot_sendmsg\`: Send messages to group chats or individuals
|
|
5044
5057
|
|
|
5045
|
-
|
|
5058
|
+

|
|
5046
5059
|
|
|
5047
|
-
|
|
5060
|
+
## II. Configure War Room
|
|
5048
5061
|
|
|
5049
|
-
|
|
5062
|
+
> If you do not need to configure the War Room feature, you can skip this step and proceed directly to [**Application Release and Usage**](#publish).
|
|
5050
5063
|
|
|
5051
|
-
|
|
5064
|
+
<span id="war-room-scope"></span>
|
|
5052
5065
|
|
|
5053
|
-
|
|
5066
|
+
### 1. Apply for Application Permissions
|
|
5054
5067
|
|
|
5055
|
-
|
|
5068
|
+
Go to the Development Configuration → **Permissions** page and apply for the following permissions for the group application created in the previous steps:
|
|
5056
5069
|
|
|
5057
|
-
|
|
5070
|
+
- \`qyapi_chat_read\`: Get group chat information
|
|
5071
|
+
- \`qyapi_chat_base_read\`: Get group chat information
|
|
5072
|
+
- \`qyapi_get_member_by_mobile\`: Allows the current application to get Dingtalk user information based on mobile numbers to invite users to join group chats
|
|
5058
5073
|
|
|
5059
|
-
|
|
5074
|
+

|
|
5060
5075
|
|
|
5061
|
-
|
|
5062
|
-
|
|
5076
|
+
### 2. Configure Group Template
|
|
5077
|
+
|
|
5078
|
+
Go to Open Capability → **Scene Group** from the top menu bar of the Dingtalk Open Platform.
|
|
5079
|
+
|
|
5080
|
+
1. Configure **Group Bot**. Select **Bot** from the left menu bar, then click **Create group bot**.
|
|
5081
|
+
|
|
5082
|
+
> The **Group Bot** configured in this step and the **Application Bot** are two different concepts. The group bot is used to automatically create a group bot when a group chat is generated. The group bot and the application bot have different **Bot IDs**. To enable the War Room feature for Dingtalk, you must configure an additional **Group Bot**.
|
|
5083
|
+
|
|
5084
|
+
Fill in the group bot configuration. The **Message Callback URL**, **Message Callback Token**, and **Information Source Website** configurations have no practical effect in Flashduty's application scenario; you can configure them with any values that meet the requirements.
|
|
5085
|
+
|
|
5086
|
+
**Example Configuration**:
|
|
5087
|
+
|
|
5088
|
+
| **Configuration Item** | **Value** |
|
|
5089
|
+
| -------------- | --------------------------------------------------------------------------------- |
|
|
5090
|
+
| Bot Name | Flashduty |
|
|
5091
|
+
| Bot Avatar | [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) |
|
|
5092
|
+
| Introduction | Flashduty |
|
|
5093
|
+
| Message Preview Image | [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) |
|
|
5094
|
+
| Detailed Description | Flashduty message push bot. |
|
|
5095
|
+
| Message Callback URL | \`https://flashcat.cloud/\` |
|
|
5096
|
+
| Message Callback Token | \`token\` |
|
|
5097
|
+
| Information Source Website | \`https://flashcat.cloud/\` |
|
|
5098
|
+
|
|
5099
|
+
After completing the configuration, click **Create**, then click **Approve**. After the "Submission successful" pop-up appears in the top right corner, Dingtalk has automatically completed the approval of the group bot.
|
|
5063
5100
|
|
|
5064
|
-
|
|
5101
|
+

|
|
5065
5102
|
|
|
5066
|
-
|
|
5067
|
-
<img src="https://download.flashcat.cloud/flashduty/doc/en/ding/ding-17.png" alt="drawing" width="500"/>
|
|
5103
|
+
2. Configure **Group Template**. Select **Group Template** from the left menu bar, and click **Create group template**.
|
|
5068
5104
|
|
|
5069
|
-
|
|
5105
|
+
Set the **Enterprise Type** to \`Internal Enterprise\` and the **Optional Application** to the custom application created in the previous steps. Then, fill in the template information in the next step.
|
|
5070
5106
|
|
|
5071
|
-
|
|
5072
|
-
|
|
5107
|
+
Introductory information such as **Template Name**, **Icon**, **Description**, **Copywriting Introduction**, **Template Description**, and **Image Introduction** will not affect the use of the group template feature; you can configure them with any values that meet the requirements.
|
|
5108
|
+
|
|
5109
|
+
**Example Configuration**:
|
|
5110
|
+
|
|
5111
|
+
| **Configuration Item** | **Value** |
|
|
5112
|
+
| ---------- | --------------------------------------------------------------------------------- |
|
|
5113
|
+
| Template Name | Flashduty War Room |
|
|
5114
|
+
| Icon | [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) |
|
|
5115
|
+
| Description | Create a war room for active incidents with one click. |
|
|
5116
|
+
| Copywriting Introduction | Create a war room for active incidents with one click. |
|
|
5117
|
+
| Template Description | Create a war room for active incidents with one click. |
|
|
5118
|
+
| Image Introduction | [Flashduty official icon](https://download.flashcat.cloud/flashcat_logo_circular.png) |
|
|
5119
|
+
|
|
5120
|
+
In the **Select Bot** configuration item, click **Select created bot** and choose the group bot created in the previous step. Keep other configuration items at their default settings. Finally, click **Save Edit**.
|
|
5121
|
+
|
|
5122
|
+

|
|
5123
|
+

|
|
5124
|
+
|
|
5125
|
+
In the **Fill in grayscale group** step, click **Create grayscale group**, then click **Publish grayscale**.
|
|
5126
|
+
|
|
5127
|
+
Finally, click **Group Template** in the left menu bar again, then click to enter the group template you just created. Click **Submit for Review**, and after Dingtalk automatically approves it, finally click **Publish**.
|
|
5128
|
+
|
|
5129
|
+
3. In the published group template details page, copy the **Template ID** and **Bot ID**.
|
|
5130
|
+
|
|
5131
|
+

|
|
5132
|
+
|
|
5133
|
+
Return to the Flashduty integration configuration page, fill in the corresponding \`Template ID\` and \`Bot ID\` in the form, and click the **Save** button.
|
|
5134
|
+
|
|
5135
|
+
<span id="publish"></span>
|
|
5136
|
+
|
|
5137
|
+
## III. Application Release and Usage
|
|
5073
5138
|
|
|
5074
|
-
## V. Common Issues
|
|
5075
5139
|
---
|
|
5076
|
-
1. **Cannot deliver messages to individuals**, operation record shows \`Application Not Associated\`?
|
|
5077
5140
|
|
|
5078
|
-
|
|
5141
|
+
After completing the above steps, go to Application Release → **Version Management and Release**, create a new version, and publish it.
|
|
5142
|
+
|
|
5143
|
+
> To ensure that everyone can use the application, you need to adjust the **Visible Scope** of the application to all employees before publishing.
|
|
5079
5144
|
|
|
5080
|
-
|
|
5145
|
+

|
|
5146
|
+
|
|
5147
|
+
After the application is published, you can access it via the **mobile client** or **PC client**. The first time you access it, you need to log in and associate your Dingtalk and Flashduty accounts. Subsequent uses will be login-free.
|
|
5148
|
+
|
|
5149
|
+
- **Mobile Client**: Access the web application through Dingtalk → Workbench → Search for application name → **Open Application**.
|
|
5150
|
+
- **PC Client**: Access the web application through Dingtalk → Workbench → Search for application name → **Open Application**.
|
|
5151
|
+
|
|
5152
|
+
## IV. FAQ
|
|
5081
5153
|
|
|
5082
|
-
|
|
5083
|
-
- Ensure you have purchased sufficient licenses. You can check license usage in Console > Billing Center
|
|
5154
|
+
---
|
|
5084
5155
|
|
|
5085
|
-
|
|
5156
|
+
1. **Why can't messages be delivered to individuals, and the operation record shows \`app not linked\`?**
|
|
5157
|
+
- Go to Dingtalk → Workbench → Search for application name → **Open Application**, and complete a login to associate your Dingtalk and Flashduty accounts. The system needs to obtain your user identity to push messages.
|
|
5158
|
+
2. **Why are the message card buttons not working or showing an error?**
|
|
5159
|
+
- Go to Dingtalk → Workbench → Search for application name → **Open Application**, and complete a login to associate your Dingtalk and Flashduty accounts. If you have already logged in, try clicking the menu in the upper right corner, switching accounts, and logging in again to bind your account.
|
|
5160
|
+
- Ensure you have purchased enough licenses. You can check your used license status in Console → [**Billing Center**](https://console.flashcat.cloud/wallet).
|
|
5161
|
+
3. **Why is the Dingtalk group chat list in the escalation rule empty?**
|
|
5162
|
+
- Go to Dingtalk, select a group chat session, and install the Cool App. Otherwise, the group chat list cannot be obtained.
|
|
5086
5163
|
|
|
5087
|
-
|
|
5088
|
-
|
|
5089
|
-
- If still unable to get the group chat list, try uninstalling the Cool App from the group and repeat the above steps. If it still doesn't work, please contact customer or dedicated technical support
|
|
5164
|
+

|
|
5165
|
+

|
|
5090
5166
|
|
|
5091
|
-
|
|
5167
|
+
- Return to the escalation rule configuration page, refresh, and reselect the group chat list.
|
|
5168
|
+
- If you still cannot get the group chat list, try uninstalling the Cool App in the group and then repeating the above steps. If the problem persists, please contact customer or dedicated technical support.
|
|
5092
5169
|
|
|
5093
|
-
|
|
5170
|
+
4. **Why is the War Room feature not working as expected?**
|
|
5171
|
+
- Please double-check if you have configured the [required permissions](#war-room-scope) for the application's War Room feature.
|
|
5172
|
+
- Please refer to the **FAQ** section of the Flashduty [War Room Introduction](https://docs.flashcat.cloud/en/flashduty/war-room?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5) document.
|
|
5094
5173
|
|
|
5095
|
-
|
|
5174
|
+
5. **Dingtalk Custom Application API Call Limits**
|
|
5096
5175
|
|
|
5097
|
-
|
|
|
5098
|
-
| :----------: |
|
|
5099
|
-
|Standard|10,000|20|1st of each month|
|
|
5100
|
-
|Professional|500,000|40|1st of each month|
|
|
5101
|
-
|
|
|
5176
|
+
| **Dingtalk Version** | **Total Calls/Month** | **QPS** | **Refresh Time** |
|
|
5177
|
+
| :----------: | :-------------: | :-----: | :----------: |
|
|
5178
|
+
| Standard | 10,000 | 20 | 1st of each month |
|
|
5179
|
+
| Professional | 500,000 | 40 | 1st of each month |
|
|
5180
|
+
| Exclusive | 5,500,000 | 60 | 1st of each month |
|
|
5102
5181
|
|
|
5103
|
-
|
|
5104
|
-
`,Wecom:`---
|
|
5182
|
+
> After exceeding the API call limit, the Dingtalk application will not be able to push messages normally. It is recommended to use notification channels reasonably. For details, see the [official Dingtalk documentation](https://open.dingtalk.com/document/orgapp/descriptions-about-adjusting-limit-and-frequency-of-api-calls?spm=ding_open_doc.document.0.0.6f6b21d9WtkxJI).`,Wecom:`---
|
|
5105
5183
|
title: "WeCom Integration"
|
|
5106
|
-
description: "
|
|
5184
|
+
description: "By integrating a WeCom application, you can receive and respond to alerts within WeCom."
|
|
5107
5185
|
date: "2025-05-19T10:00:00+08:00"
|
|
5108
|
-
url: "https://docs.flashcat.cloud/en/flashduty/wecom-integration-guide"
|
|
5186
|
+
url: "https://docs.flashcat.cloud/en/flashduty/wecom-integration-guide?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5"
|
|
5109
5187
|
---
|
|
5110
5188
|
|
|
5111
|
-
|
|
5189
|
+
By integrating a WeCom application, you can receive and respond to alerts within WeCom.
|
|
5112
5190
|
|
|
5113
|
-
|
|
5114
|
-
## Video Guide
|
|
5115
|
-
---
|
|
5116
|
-
<Video src="https://download.flashcat.cloud/flashduty/video/wechat.mp4"></Video>
|
|
5117
|
-
-->
|
|
5191
|
+
This document supports both [integrating third-party applications](#third-party) and [integrating custom enterprise applications](#self).
|
|
5118
5192
|
|
|
5119
|
-
## I. Install the Application
|
|
5120
|
-
---
|
|
5121
5193
|
|
|
5122
|
-
|
|
5194
|
+
> You only need to configure one of the two methods: **Integrate third-party application** or **Integrate custom application**.
|
|
5123
5195
|
|
|
5124
|
-
<
|
|
5196
|
+
<span id="third-party"></span>
|
|
5125
5197
|
|
|
5126
|
-
|
|
5198
|
+
## 1. Integrate third-party application
|
|
5127
5199
|
|
|
5128
|
-
|
|
5200
|
+
---
|
|
5129
5201
|
|
|
5130
|
-
|
|
5202
|
+
> As a WeCom service provider, Flashduty offers a long-term free version of the Flashduty application. This application requires WeCom API permissions to function (passwordless login + message sending).
|
|
5203
|
+
>
|
|
5204
|
+
> This license currently supports **up to 60 days** free of charge. After exceeding this usage period, Flashduty needs to purchase a WeCom license for you to continue using it.
|
|
5131
5205
|
|
|
5132
|
-
|
|
5206
|
+
1. Visit [WeCom Admin Console](https://work.weixin.qq.com/wework_admin/frame#apps), go to Application Management → **Applications** page, and click **Add Third-party Application**.
|
|
5133
5207
|
|
|
5134
|
-
|
|
5208
|
+

|
|
5135
5209
|
|
|
5136
|
-
|
|
5210
|
+
2. Enter \`Flashduty\` in the search bar, and click the **Add** button after finding the application.
|
|
5137
5211
|
|
|
5138
|
-
|
|
5212
|
+

|
|
5139
5213
|
|
|
5140
|
-
|
|
5141
|
-
---
|
|
5214
|
+
3. Modify the application **visibility range**. It is recommended to select all employees or specific department nodes to avoid needing to modify when new enterprise members are added. Then click **Agree to the above authorization and add** to complete the installation.
|
|
5142
5215
|
|
|
5143
|
-
|
|
5216
|
+

|
|
5144
5217
|
|
|
5145
|
-
|
|
5146
|
-
- Verify if you've correctly configured the \`Corp ID\`
|
|
5218
|
+
4. Visit [WeCom Admin Console](https://work.weixin.qq.com/wework_admin/frame#apps), go to **My Enterprise** page, and obtain the \`Enterprise ID\`.
|
|
5147
5219
|
|
|
5148
|
-
|
|
5220
|
+

|
|
5149
5221
|
|
|
5150
|
-
|
|
5151
|
-
- First-time access requires login, choose member account - password or SSO, successful login completes account linking between \`Flashduty\` and \`WeCom\`
|
|
5152
|
-
- Subsequent access will be passwordless
|
|
5222
|
+
5. Return to the Flashduty integration configuration page, fill in the \`Enterprise ID\` obtained in the previous step, and click **Save** to complete the integration.
|
|
5153
5223
|
|
|
5154
|
-
|
|
5224
|
+
<span id="self"></span>
|
|
5155
5225
|
|
|
5156
|
-
|
|
5157
|
-
- Go to channel details page - escalation rule, select WeCom integration in personal channels to complete notification setup
|
|
5158
|
-
- Supports customizing WeCom notification content through template management page. Note: **Custom area supports maximum 8 lines**, excess content will be truncated by WeCom
|
|
5226
|
+
## 2. Integrate custom enterprise application
|
|
5159
5227
|
|
|
5160
|
-
|
|
5228
|
+
---
|
|
5161
5229
|
|
|
5162
|
-
|
|
5230
|
+
1. Visit [WeCom Admin Console](https://work.weixin.qq.com/wework_admin/frame#apps), go to Application Management → **Applications** page, and click **Create Application**.
|
|
5163
5231
|
|
|
5164
|
-
-
|
|
5165
|
-
- Click \`Start Processing\` to set alert status to \`In Progress\`
|
|
5166
|
-
- Click \`Close Directly\` to set alert status to \`Closed\`
|
|
5167
|
-
- Click \`Snooze 2h\` to snooze the alert for 2 hours, click \`...\` in top-right corner for more snooze options
|
|
5232
|
+

|
|
5168
5233
|
|
|
5169
|
-
|
|
5234
|
+
2. Configure **Application Logo**, **Application Name**, and **Application Visibility Range**.
|
|
5170
5235
|
|
|
5171
|
-
-
|
|
5172
|
-
- Flashduty requests card content updates when alert status changes
|
|
5173
|
-
- When alert status changes frequently, updates might fail due to update limit, use refresh button for one additional update opportunity
|
|
5236
|
+

|
|
5174
5237
|
|
|
5175
|
-
|
|
5238
|
+
3. Return to the Flashduty integration configuration page and select whether WeCom is a \`non-private deployment version\` based on your actual situation.
|
|
5176
5239
|
|
|
5177
|
-
|
|
5178
|
-
- Try keyboard shortcut \`ctrl\` + \`command\` + \`shift\` + \`d\` to enable debug mode, then select \`Debug - Browser & WebView Related - Open in System Browser\` to change link opening behavior. Use the same shortcut to exit debug mode and retain settings
|
|
5240
|
+
If your WeCom is a private deployment version, you need to fill in the \`Endpoint\` in the configuration page. This address needs to be accessible by the Flashduty service. You may consider setting up **whitelist authorization** for it.
|
|
5179
5241
|
|
|
5180
|
-
|
|
5242
|
+
4. Visit [WeCom Admin Console](https://work.weixin.qq.com/wework_admin/frame#apps), go to **My Enterprise** page, obtain the \`Enterprise ID\`, and fill it in the Flashduty integration configuration page.
|
|
5181
5243
|
|
|
5182
|
-
|
|
5183
|
-
`,Slack:`---
|
|
5184
|
-
title: "Slack Integration"
|
|
5185
|
-
description: "Integrate with Slack to receive and respond to alerts within Slack"
|
|
5186
|
-
date: "2025-05-19T10:00:00+08:00"
|
|
5187
|
-
url: "https://docs.flashcat.cloud/en/flashduty/slack-integration-guide"
|
|
5188
|
-
---
|
|
5244
|
+
5. Return to [WeCom Admin Console](https://work.weixin.qq.com/wework_admin/frame#apps), go to **Application Management** page, click on the application you created to enter the details page. Obtain the \`AgentId\` from the page and fill it in the Flashduty integration configuration page.
|
|
5189
5245
|
|
|
5190
|
-
|
|
5246
|
+
6. On the application details page, obtain the \`Secret\` and fill it in the Flashduty integration configuration page.
|
|
5191
5247
|
|
|
5192
|
-
|
|
5193
|
-
---
|
|
5248
|
+
7. On the application details page, go to **Web Authorization and JS-SDK** page, click **Set Trusted Domain**, and configure **Callback domain for application OAuth 2.0 web authorization** as required.
|
|
5194
5249
|
|
|
5195
|
-
|
|
5250
|
+
> The trusted domain needs to point to Flashduty's backend address \`{api_host}\` (can be achieved through CNAME or proxy forwarding).
|
|
5251
|
+
>
|
|
5252
|
+
> For trusted domain requirements, see the official WeCom documentation [《Internal Development Domain Configuration Guide》](https://open.work.weixin.qq.com/wwopen/common/readDocument/40754).
|
|
5196
5253
|
|
|
5197
|
-
|
|
5254
|
+

|
|
5198
5255
|
|
|
5199
|
-
|
|
5256
|
+
Return to the Flashduty integration configuration page, fill in this domain, and complete the verification.
|
|
5200
5257
|
|
|
5201
|
-
|
|
5258
|
+
8. On the application details page, go to **Receive Messages** page and **Set API Reception**. Click **Random Generation** for both \`Token\` and \`EncodingAESKey\`, then copy and save the generated values.
|
|
5202
5259
|
|
|
5260
|
+

|
|
5203
5261
|
|
|
5204
|
-
|
|
5205
|
-
---
|
|
5262
|
+
Return to the Flashduty integration configuration page, fill in the saved \`Token\` and \`EncodingAESKey\`, and click **Save** to complete the integration.
|
|
5206
5263
|
|
|
5207
|
-
|
|
5208
|
-
- Adding the app to a channel requires Step 1 \`Install App\` to complete without errors
|
|
5209
|
-
- In the Slack channel, run \`/invite @FlashDuty\`. A message saying \`has joined\` or \`has been added by xx to xxx\` indicates successful addition
|
|
5264
|
+
9. Copy the \`Callback Address\` from the Flashduty integration details page, return to the **Receive Messages** page in WeCom. In the **API Reception** settings, fill in the \`Callback Address\` and the \`Token\` and \`EncodingAESKey\` saved in the previous step, then click **Save**.
|
|
5210
5265
|
|
|
5211
|
-
|
|
5212
|
-
- Add the app authorizer to the public channel
|
|
5213
|
-
- Or follow \`Common Issue 1\` to add the app to the channel
|
|
5266
|
+

|
|
5214
5267
|
|
|
5215
|
-
|
|
5216
|
-
- Try again, as there might be communication issues between the server and Slack causing authorization problems. Return to the add integration page and retry
|
|
5217
|
-
- If the error persists, contact customer support
|
|
5268
|
+
10. Company's Trusted IP : 47.94.95.118; 123.56.8.183; 47.94.193.81; 1.13.19.96
|
|
5218
5269
|
|
|
5219
|
-
|
|
5220
|
-
- Try again, as there might be communication issues when FlashDuty attempts to obtain the permanent authorization code. Return to the add integration page and retry
|
|
5221
|
-
- If the error persists, contact customer support
|
|
5270
|
+

|
|
5222
5271
|
|
|
5223
|
-
|
|
5224
|
-
- Try again, as there might be issues with Slack service
|
|
5225
|
-
- If the error persists, contact customer support
|
|
5272
|
+
## 3. Configure war room
|
|
5226
5273
|
|
|
5227
|
-
|
|
5228
|
-
- Try again, as there might be communication timeout issues between the server and Slack
|
|
5229
|
-
- If the error persists, contact customer support
|
|
5274
|
+
---
|
|
5230
5275
|
|
|
5231
|
-
|
|
5232
|
-
- Try again, as there might be server errors, such as the integration being disabled
|
|
5233
|
-
- If the error persists, contact customer support
|
|
5276
|
+
> The war room feature is only supported when **custom enterprise application** mode is enabled.
|
|
5234
5277
|
|
|
5235
|
-
|
|
5236
|
-
|
|
5237
|
-
|
|
5238
|
-
|
|
5239
|
-
|
|
5278
|
+
After completing the previous steps, in the **Enhanced Features** module of the Flashduty integration configuration page, check **Enable War Room** to enable this feature without additional configuration.
|
|
5279
|
+
|
|
5280
|
+
## 4. FAQ
|
|
5281
|
+
|
|
5282
|
+
---
|
|
5283
|
+
|
|
5284
|
+
1. **After clicking the integration save button, the system reports \`authorize app first\`?**
|
|
5285
|
+
- Please check if you have completed the application installation steps. For example, can you see the Flashduty application in the WeCom workplace?
|
|
5286
|
+
- Please check if you have correctly configured the \`Corp ID\`.
|
|
5287
|
+
2. **How to complete account linking or message sending prompts \`app not linked\`?**
|
|
5288
|
+
- Log in to the WeCom client (both desktop and mobile are acceptable), go to **Workplace**, find and open the Flashduty application.
|
|
5289
|
+
- The first time you enter the application, you need to log in. Select your member account and log in successfully through password or single sign-on to complete the linking of your Flashduty account and WeCom account.
|
|
5290
|
+
- Subsequent entries to the application will automatically log in without a password.
|
|
5291
|
+
3. **How to send incident notifications?**
|
|
5292
|
+
- Before sending notifications, you must complete account linking as described in the previous question.
|
|
5293
|
+
- Enter the specified channel, navigate to \`Escalation Rules\` → **Personal Channels**, and select \`WeCom\` as the notification method.
|
|
5294
|
+
- Flashduty supports customizing WeCom notification content. You can go to the **Template Management** page to set custom templates. **The custom area can display up to 8 lines**, and excess content will be truncated by WeCom.
|
|
5295
|
+

|
|
5296
|
+
4. **How to handle alerts within WeCom?**
|
|
5297
|
+
- Click on the card message to directly enter the alert details page.
|
|
5298
|
+
- Click **Start Processing** to directly set the alert to \`Processing\` status.
|
|
5299
|
+
- Click **Close Directly** to directly set the alert to \`Closed\` status.
|
|
5300
|
+
- Click **Snooze for 2 hours** to directly snooze the alert for 2 hours. If you want to snooze for longer, click the \`...\` in the upper right corner of the card to see more snooze options.
|
|
5301
|
+
5. **Why does the card message provide a \`Status Refresh\` button?**
|
|
5302
|
+
- According to WeCom's restrictions, after one card interaction, it can only be updated once within 72 hours. Each button operation is considered an interaction.
|
|
5303
|
+
- When the alert status changes, Flashduty will request to update the card content.
|
|
5304
|
+
- When the alert status changes frequently, the card may not be updated in real-time due to exceeding the update limit. At this time, you can click the **Refresh** button to manually get a chance to update the card status.
|
|
5305
|
+
6. **On Mac desktop, how to set clicking card messages to open with the \`system default browser\`?**
|
|
5306
|
+
- Mac desktop uses WeCom's built-in browser to open links by default.
|
|
5307
|
+
- You can try using the shortcut \`ctrl\` + \`command\` + \`shift\` + \`d\` to enable debug mode, then select **Debug** → **Browser, WebView Related** → **Open Web Page with System Browser** to change how links are opened. Use the same shortcut to close debug mode, and the settings will be retained.
|
|
5308
|
+
7. **Incident notification failed with prompt \`WeCom license not activated\`?**
|
|
5309
|
+
- Please contact Flashduty customer service or your dedicated technical support to purchase and activate the license for you.
|
|
5310
|
+
8. **Why is the war room feature not working as expected?**
|
|
5311
|
+
- Please refer to the **FAQ** section of the Flashduty [War Room Introduction](https://docs.flashcat.cloud/en/flashduty/war-room?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5).`,Slack:`---
|
|
5312
|
+
title: "Slack Integration"
|
|
5313
|
+
description: "By integrating the Slack third-party application, you can receive and respond to alerts within Slack."
|
|
5240
5314
|
date: "2025-05-19T10:00:00+08:00"
|
|
5241
|
-
url: "https://docs.flashcat.cloud/en/flashduty/
|
|
5315
|
+
url: "https://docs.flashcat.cloud/en/flashduty/slack-integration-guide?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5"
|
|
5242
5316
|
---
|
|
5243
5317
|
|
|
5244
|
-
|
|
5318
|
+
By integrating the Slack third-party application, you can receive and respond to alerts within Slack.
|
|
5245
5319
|
|
|
5246
|
-
|
|
5247
|
-
---
|
|
5320
|
+
<span id="install-app"></span>
|
|
5248
5321
|
|
|
5249
|
-
|
|
5322
|
+
## 1. Install application
|
|
5250
5323
|
|
|
5251
|
-
|
|
5252
|
-
These steps must be completed by a Microsoft Teams administrator
|
|
5253
|
-
:::
|
|
5324
|
+
---
|
|
5254
5325
|
|
|
5255
|
-
|
|
5256
|
-
|
|
5326
|
+
1. Visit Flashduty Integration Center → IM → **Slack**, and click **Add**.
|
|
5327
|
+
2. On the redirected Slack page, select **Workspace** in the upper right corner, then click **Allow**.
|
|
5328
|
+

|
|
5329
|
+
3. Enter the data source name and click **Save**.
|
|
5257
5330
|
|
|
5258
|
-
|
|
5259
|
-
Go to **Microsoft Teams, navigate to [+Apps] - [Manage your apps] - [Upload an app] - [Upload an app to your org's app catalog]** and upload the FlashDutyBot.zip package
|
|
5331
|
+
## 2. Configure war room
|
|
5260
5332
|
|
|
5261
|
-
|
|
5333
|
+
After completing the previous steps, in the **Enhanced Features** module of the Flashduty integration configuration page, check **Enable War Room** to enable this feature without additional configuration.
|
|
5262
5334
|
|
|
5263
|
-
|
|
5264
|
-
Go to [Microsoft Teams Admin Center](https://admin.teams.microsoft.com/policies/manage-apps), find the FlashDuty application, and adjust the application visibility to everyone (or your custom scope)
|
|
5335
|
+
## 3. FAQ
|
|
5265
5336
|
|
|
5266
|
-
|
|
5267
|
-
|
|
5268
|
-
|
|
5269
|
-
|
|
5337
|
+
---
|
|
5338
|
+
|
|
5339
|
+
1. **The private channel I want is not in the group chat list of escalation rules?**
|
|
5340
|
+
- Ensure the [**Install Application**](#install-app) step has been completed successfully without errors.
|
|
5341
|
+
- Enter the relevant Slack channel and execute the \`/invite @Flashduty\` command. When you see the prompt \`has joined\` or \`has been added by xxx to xxx\`, it means the addition was successful.
|
|
5342
|
+
2. **The public channel I want is not in the group chat list of escalation rules?**
|
|
5343
|
+
- Add the application authorizer to the public channel.
|
|
5344
|
+
- Refer to the method in **Question 1** to add the application to the channel.
|
|
5345
|
+
3. **Error after clicking the \`Allow\` button in installation step 2?**
|
|
5346
|
+
- Please retry. This may be due to abnormal communication between the server and Slack causing authorization failure. Please return to the add data source page and try again.
|
|
5347
|
+
- If the error persists after retrying, please contact customer service.
|
|
5348
|
+
4. **Error after clicking the \`Save\` button in installation step 3?**
|
|
5349
|
+
- Please retry. This may be due to abnormal communication between the Flashduty server and Slack when obtaining the permanent authorization code. Please return to the add data source page and try again.
|
|
5350
|
+
- If the error persists after retrying, please contact customer service.
|
|
5351
|
+
5. **Slack App prompts \`not_authed\` error?**
|
|
5352
|
+
- Please retry, this may be a temporary issue with Slack service.
|
|
5353
|
+
- If the error persists after retrying, please contact customer service.
|
|
5354
|
+
6. **Slack App prompts \`Operation timed out\` error?**
|
|
5355
|
+
- Please retry. This may be due to communication timeout between the server and Slack.
|
|
5356
|
+
- If the error persists after retrying, please contact customer service.
|
|
5357
|
+
7. **Slack App prompts \`This app responded with Status Code 500\` error?**
|
|
5358
|
+
- Please retry. This may be an error on the Flashduty server side (for example, the data source is closed).
|
|
5359
|
+
- If the error persists after retrying, please contact customer service.
|
|
5360
|
+
8. **Slack App prompts other unknown errors?**
|
|
5361
|
+
- Please retry.
|
|
5362
|
+
- If the error persists after retrying, please contact customer service to record and resolve new issues.
|
|
5363
|
+
9. **Why is the war room feature not working as expected?**
|
|
5364
|
+
- For previously authorized Slack IM integrations, you need to manually reauthorize Slack in the Flashduty integration configuration page to grant the application the additional permissions required for the war room feature.
|
|
5365
|
+
- Please refer to the **FAQ** section of the Flashduty [War Room Introduction](https://docs.flashcat.cloud/en/flashduty/war-room?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5).`,MicrosoftTeams:`---
|
|
5366
|
+
title: "Microsoft Teams Integration"
|
|
5367
|
+
description: "By integrating the Microsoft Teams third-party application, you can receive and respond to alerts within Microsoft Teams."
|
|
5368
|
+
date: "2025-05-19T10:00:00+08:00"
|
|
5369
|
+
url: "https://docs.flashcat.cloud/en/flashduty/microsoft-teams-integration-guide?nav=01JCQ7A4N4WRWNXW8EWEHXCMF5"
|
|
5370
|
+
---
|
|
5371
|
+
By integrating the Microsoft Teams third-party application, you can receive and respond to alerts within Microsoft Teams.
|
|
5270
5372
|
|
|
5271
|
-
|
|
5272
|
-
|
|
5373
|
+
## 1. Install and update application
|
|
5374
|
+
---
|
|
5273
5375
|
|
|
5274
|
-
|
|
5376
|
+
The Microsoft Teams integration is currently in Beta. You need to complete the following operations before linking.
|
|
5275
5377
|
|
|
5276
|
-
### 3. Update Application
|
|
5277
5378
|
::: caution
|
|
5278
|
-
|
|
5379
|
+
This step needs to be completed by a Microsoft Teams administrator.
|
|
5279
5380
|
:::
|
|
5280
5381
|
|
|
5281
|
-
|
|
5282
|
-
|
|
5283
|
-

|
|
5284
|
-
|
|
5285
|
-
Upload the new version FlashdutyBot.zip
|
|
5382
|
+
### 1. Download application
|
|
5383
|
+
Download [FlashDutyBot-v1.0.3.zip](https://flashduty-docs.oss-cn-beijing.aliyuncs.com/docs/FlashdutyBot-v1.0.3.zip) to your local device.
|
|
5286
5384
|
|
|
5287
|
-
|
|
5385
|
+
### 2. Install application
|
|
5386
|
+
In Microsoft Teams, navigate to +Apps → Manage your apps → Upload an app → **Upload an app to your org's app catalog**, then upload the application package \`FlashDutyBot.zip\`.
|
|
5288
5387
|
|
|
5289
|
-
|
|
5388
|
+

|
|
5290
5389
|
|
|
5291
|
-
|
|
5390
|
+
#### Configure application visibility
|
|
5391
|
+
Go to [Microsoft Teams Admin Center](https://admin.teams.microsoft.com/policies/manage-apps), find the Flashduty application, and adjust the application visibility to everyone or your specified scope.
|
|
5292
5392
|
|
|
5293
|
-
|
|
5393
|
+
::: tip
|
|
5394
|
+
If the application status is "Blocked", please wait a moment and refresh the page or manually modify it.
|
|
5395
|
+
:::
|
|
5396
|
+

|
|
5294
5397
|
|
|
5295
|
-
### 1. Add FlashDuty Application to Target Team
|
|
5296
5398
|
|
|
5297
|
-
####
|
|
5298
|
-
|
|
5399
|
+
#### Check if successfully added
|
|
5400
|
+
After waiting a few minutes, organization members can find this application in +Apps → **Built for your org**.
|
|
5299
5401
|
|
|
5300
|
-

|
|
5301
5403
|
|
|
5302
|
-
|
|
5404
|
+
### 3. Update application
|
|
5303
5405
|
::: caution
|
|
5304
|
-
|
|
5406
|
+
If your installed application version is lower than 1.0.3, please follow this process to update.
|
|
5305
5407
|
:::
|
|
5306
5408
|
|
|
5307
|
-
|
|
5409
|
+
1. Go to [Microsoft Teams Admin Center](https://admin.teams.microsoft.com/policies/manage-apps), find and enter the Flashduty application details page.
|
|
5410
|
+

|
|
5308
5411
|
|
|
5309
|
-
|
|
5310
|
-
|
|
5412
|
+
2. Upload the new version \`FlashdutyBot.zip\`.
|
|
5413
|
+

|
|
5311
5414
|
|
|
5312
|
-
|
|
5415
|
+
3. Wait for the application version to update in the client (may take tens of minutes).
|
|
5416
|
+

|
|
5313
5417
|
|
|
5314
|
-
##
|
|
5418
|
+
## 2. Link Team
|
|
5419
|
+
---
|
|
5420
|
+
### 1. Add Flashduty application
|
|
5421
|
+
1. Find the Flashduty application in the app marketplace.
|
|
5422
|
+
> If there is no application, please contact your Microsoft Teams organization administrator.
|
|
5315
5423
|
|
|
5316
|
-
|
|
5424
|
+

|
|
5317
5425
|
|
|
5318
|
-
|
|
5319
|
-
|
|
5426
|
+
2. Add the application to the target Team.
|
|
5427
|
+
::: caution
|
|
5428
|
+
This step must select the General Channel of the target Team, otherwise incidents cannot be sent to the Team.
|
|
5429
|
+
:::
|
|
5320
5430
|
|
|
5321
|
-

|
|
5322
5432
|
|
|
5323
|
-
|
|
5433
|
+
### 2. Send link command
|
|
5434
|
+
In the Team, @Flashduty and send the command \`linkTeam {ID}\`, then click **Link Now**.
|
|
5324
5435
|
|
|
5325
|
-

|
|
5326
5437
|
|
|
5327
|
-
|
|
5328
|
-
|
|
5438
|
+
## 3. Link Chat
|
|
5439
|
+
---
|
|
5440
|
+
### 1. Add Flashduty application
|
|
5441
|
+
1. Find the Flashduty application in the app marketplace.
|
|
5442
|
+
> If there is no application, please contact your Microsoft Teams organization administrator.
|
|
5329
5443
|
|
|
5330
|
-

|
|
5331
5445
|
|
|
5332
|
-
|
|
5446
|
+
2. Add the application to the target Chat.
|
|
5333
5447
|
|
|
5334
|
-
|
|
5448
|
+

|
|
5335
5449
|
|
|
5336
|
-
|
|
5337
|
-
|
|
5450
|
+
### 2. Send link command
|
|
5451
|
+
In the Chat, @Flashduty and send the command \`linkChat {ID} {ChatName}\`, then click **Link Now**.
|
|
5338
5452
|
|
|
5339
|
-

|
|
5340
5454
|
|
|
5341
|
-
|
|
5342
|
-
|
|
5455
|
+
## 4. Link user
|
|
5456
|
+
---
|
|
5457
|
+
### 1. Add Flashduty application
|
|
5458
|
+
1. Find the Flashduty application in the app marketplace.
|
|
5459
|
+
> If there is no application, please contact your Microsoft Teams organization administrator.
|
|
5343
5460
|
|
|
5344
|
-
|
|
5345
|
-
Copy the command: linkUser {} and send it to the chat, then click Associate Now
|
|
5461
|
+

|
|
5346
5462
|
|
|
5347
|
-
|
|
5463
|
+
2. Click **Open Application**.
|
|
5348
5464
|
|
|
5349
|
-
|
|
5350
|
-
<details>
|
|
5351
|
-
<summary>Team or individual not receiving messages</summary>
|
|
5352
|
-
Please check if the teams and users are successfully associated in Integration Center => Instant Messaging => Microsoft Teams
|
|
5353
|
-
</details>
|
|
5465
|
+

|
|
5354
5466
|
|
|
5355
|
-
|
|
5356
|
-
|
|
5357
|
-
Please check in Integration Center => Instant Messaging => Microsoft Teams under Associated Teams and Associated Users
|
|
5358
|
-
</details>
|
|
5467
|
+
### 2. Send link command
|
|
5468
|
+
Copy and send the command \`linkUser {}\` to the chat, then click **Link Now**.
|
|
5359
5469
|
|
|
5360
|
-
|
|
5361
|
-
|
|
5362
|
-
|
|
5363
|
-
|
|
5470
|
+

|
|
5471
|
+
|
|
5472
|
+
## 5. FAQ
|
|
5473
|
+
---
|
|
5364
5474
|
|
|
5365
|
-
|
|
5475
|
+
1. **Team or individual cannot receive messages?**
|
|
5476
|
+
- Please go to Integration Center → IM → **Microsoft Teams** to check if teams and users have been successfully linked.
|
|
5477
|
+
2. **How to view linked teams and users?**
|
|
5478
|
+
- Please go to Integration Center → IM → **Microsoft Teams** to view in **Linked Teams** and **Linked Users**.
|
|
5479
|
+
3. **How to cancel linked teams and users?**
|
|
5480
|
+
- This feature is not currently supported.`,AlertWebhook:`Configure alert webhooks to receive HTTP callbacks at your specified URL when alerts have specific actions (such as triggering or closing). The callback content includes the latest key information about the alert, allowing integration with your custom tools.
|
|
5366
5481
|
|
|
5367
5482
|
<span id="EventTypes"></span>
|
|
5368
5483
|
|
|
@@ -6233,7 +6348,36 @@ CloseTime | int64 | No | Close time, EndTime is alert recovery time, CloseTime i
|
|
|
6233
6348
|
{{jsonGet .Labels.rule_note "#(userId==7777)#.instanceId" }}
|
|
6234
6349
|
|
|
6235
6350
|
\`\`\`
|
|
6236
|
-
|
|
6351
|
+
|
|
6352
|
+
10. **How to Retrieve the Image URL via the Src Attribute of [Image](#Image)**
|
|
6353
|
+
- The imageSrcToURL function can be implemented, accepting parameters: $root and Src
|
|
6354
|
+
- If Src is an image_key from the Image Upload API, it should be converted into a short-term accessible URL
|
|
6355
|
+
- If Src is an accessible http/https address, the address should be returned directly
|
|
6356
|
+
- Dingtalk/Slack Apps employ this method to render images
|
|
6357
|
+
\`\`\`go
|
|
6358
|
+
{{ $root := . }}
|
|
6359
|
+
{{ range $i, $v := .Images }}
|
|
6360
|
+
{{ $imageURL := imageSrcToURL $root $v.Src }}
|
|
6361
|
+
{{ if $imageURL }}{{ end }}{{end}}
|
|
6362
|
+
\`\`\`
|
|
6363
|
+
|
|
6364
|
+
11. **How to Convert and Upload Images to a Third-Party Notification Platform**
|
|
6365
|
+
- The transferImage function can be implemented, accepting parameters: $root and Src
|
|
6366
|
+
- Src can be an image_key from the Image Upload API or an accessible http/https image URL
|
|
6367
|
+
- Image size must not exceed 10 MB
|
|
6368
|
+
- Supported image formats include JPG, JPEG, PNG, WEBP, GIF, BMP, ICO, TIFF, HEIC
|
|
6369
|
+
- Requires enabling the application permission to access and upload image or file resources
|
|
6370
|
+
- Lark/Feishu Apps employ this method to render images
|
|
6371
|
+
|
|
6372
|
+
\`\`\`go
|
|
6373
|
+
{{ $root := . }}
|
|
6374
|
+
{{ range $i, $v := .Images }}
|
|
6375
|
+
{{ $transferURL := transferImage $root $v.Src }}
|
|
6376
|
+
{{ if $transferURL }}{{ end }}
|
|
6377
|
+
{{ end }}
|
|
6378
|
+
\`\`\`
|
|
6379
|
+
|
|
6380
|
+
12. **How to use logical AND, OR, and other conditions for conditional rendering/content display judgment?**
|
|
6237
6381
|
|
|
6238
6382
|
\`\`\`
|
|
6239
6383
|
# Supported functions
|
|
@@ -6266,7 +6410,7 @@ CloseTime | int64 | No | Close time, EndTime is alert recovery time, CloseTime i
|
|
|
6266
6410
|
|
|
6267
6411
|
\`\`\`
|
|
6268
6412
|
|
|
6269
|
-
|
|
6413
|
+
13. **How do I find more functions and their usage examples?**
|
|
6270
6414
|
- Function list: https://github.com/flashcatcloud/sprig/blob/master/functions.go#L97
|
|
6271
6415
|
- Usage examples: Check corresponding _test.go files, e.g., date function test cases at https://github.com/flashcatcloud/sprig/blob/master/date_test.go
|
|
6272
6416
|
|
|
@@ -6279,10 +6423,15 @@ Below are specific instructions for each notification channel.
|
|
|
6279
6423
|
You need to configure \`Integration Center-Instant Message-Feishu\` integration first to send message cards. If custom content is not set, the system default template will be used, rendering all label information:
|
|
6280
6424
|
|
|
6281
6425
|
\`\`\`go
|
|
6282
|
-
{{if .
|
|
6283
|
-
{{if .Labels.resource}}**resource** : {{
|
|
6426
|
+
{{if .Labels.body_text}}{{.Labels.body_text}}{{else if .Description}}{{.Description}}{{end}}
|
|
6427
|
+
{{if .Labels.resource}}**resource** : {{(joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6284
6428
|
{{range $k, $v := .Labels}}
|
|
6285
|
-
{{if not (in $k "resource" "body_text")}}**{{$k}}** : {{
|
|
6429
|
+
{{if not (in $k "resource" "body_text" "body_text_with_table")}}**{{$k}}** : {{$v}}{{end}}{{end}}
|
|
6430
|
+
{{ $root := . }}
|
|
6431
|
+
{{ range $i, $v := .Images }}
|
|
6432
|
+
{{ $transferURL := transferImage $root $v.Src }}
|
|
6433
|
+
{{ if $transferURL }}{{ end }}
|
|
6434
|
+
{{ end }}
|
|
6286
6435
|
\`\`\`
|
|
6287
6436
|
|
|
6288
6437
|
As shown below:
|
|
@@ -6329,6 +6478,10 @@ You need to configure \`Integration Center-Instant Message-Dingtalk\` integratio
|
|
|
6329
6478
|
{{if .Labels.resource}}**resource** : {{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6330
6479
|
{{range $k, $v := .Labels}}
|
|
6331
6480
|
{{if not (in $k "resource" "body_text")}}**{{$k}}** : {{toHtml $v}}{{end}}{{end}}
|
|
6481
|
+
{{ $root := . }}
|
|
6482
|
+
{{ range $i, $v := .Images }}
|
|
6483
|
+
{{ $imageURL := imageSrcToURL $root $v.Src }}
|
|
6484
|
+
{{ if $imageURL }}{{ end }}{{ end }}
|
|
6332
6485
|
\`\`\`
|
|
6333
6486
|
|
|
6334
6487
|
As shown below:
|
|
@@ -6407,13 +6560,22 @@ As shown below:
|
|
|
6407
6560
|
|
|
6408
6561
|
## Slack App
|
|
6409
6562
|
---
|
|
6563
|
+
|
|
6410
6564
|
You need to configure \`Integration Center-Instant Message-Slack\` integration first to send message cards. If custom content is not set, the system default template will be used, rendering only common label information:
|
|
6411
6565
|
|
|
6412
6566
|
\`\`\`go
|
|
6413
|
-
{{if .
|
|
6414
|
-
{{if .Labels.resource}}*resource* : {{
|
|
6567
|
+
{{if .Labels.body_text}}{{.Labels.body_text}}{{else if .Description}}{{.Description}}{{end}}
|
|
6568
|
+
{{if .Labels.resource}}*resource* : {{(joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6415
6569
|
{{range $k, $v := .Labels}}
|
|
6416
|
-
{{if not (in $k "resource" "body_text")}}*{{$k}}* : {{
|
|
6570
|
+
{{if not (in $k "resource" "body_text" "body_text_with_table")}}*{{$k}}* : {{$v}}{{end}}{{end}}
|
|
6571
|
+
{{ $root := . }}
|
|
6572
|
+
{{ range $i, $v := .Images }}
|
|
6573
|
+
{{ $imageURL := imageSrcToURL $root $v.Src }}
|
|
6574
|
+
{{ if $imageURL }}
|
|
6575
|
+
---
|
|
6576
|
+

|
|
6577
|
+
{{ end }}
|
|
6578
|
+
{{ end }}
|
|
6417
6579
|
\`\`\`
|
|
6418
6580
|
|
|
6419
6581
|
As shown below:
|
|
@@ -6425,6 +6587,7 @@ If you want to display only key label information, you can refer to the code seg
|
|
|
6425
6587
|
- We've listed some common labels, you can add or remove as needed
|
|
6426
6588
|
- Messages can be around 15000 characters long, content beyond this will be truncated
|
|
6427
6589
|
- In Slack app, the system will automatically remove empty rendered lines (due to non-existent labels), so you can configure freely
|
|
6590
|
+
- To display images, use three consecutive hyphens \`---\` to separate it from other content. The image syntax must begin with \`
|
|
7912
8081
|
|
|
7913
8082
|
1. On the user list page, find the newly created \`flashduty\` user and go to the configuration page.
|
|
7914
8083
|
2. In the edit page, click \`Set Password\` to set a password.
|
|
7915
|
-
3. Click \`Roles\` to add **
|
|
8084
|
+
3. Click \`Roles\` to add **personalize_dictionary and itil** roles (If custom field mapping configuration is not required, the personalize_dictionary permission does not need to be retained).
|
|
7916
8085
|
4. Click \`Update\` to update the configuration.
|
|
7917
8086
|
|
|
7918
|
-
|
|
8087
|
+

|
|
8088
|
+

|
|
7919
8089
|
|
|
7920
8090
|
## In Flashduty
|
|
7921
8091
|
|
|
@@ -7927,14 +8097,27 @@ Enter the username/password and instance name configured above into the integrat
|
|
|
7927
8097
|
- **Management Team:** When a management team is selected, only team members and tenant administrators can edit this integration.
|
|
7928
8098
|
- **Channel:** Select the channel where this integration takes effect.
|
|
7929
8099
|
- **Sync Direction:**
|
|
8100
|
+
|
|
7930
8101
|
- To_ServiceNow: Sync Flashduty incidents to ServiceNow.
|
|
7931
8102
|
- From_ServiceNow: Sync ServiceNow Incidents to Flashduty.
|
|
7932
8103
|
- Two-way: Bidirectional sync between Flashduty and ServiceNow.
|
|
7933
|
-
|
|
8104
|
+
|
|
8105
|
+
- **Trigger Mode:**
|
|
8106
|
+
|
|
7934
8107
|
- Auto Trigger: Requires configuration of corresponding conditions, Flashduty will automatically sync incidents that meet the conditions to ServiceNow.
|
|
7935
8108
|
- Manual Trigger: Requires manual triggering of ServiceNow sync in the More Actions section of the incident details page (the integration configuration name is the trigger name).
|
|
7936
|
-
|
|
7937
|
-
- **
|
|
8109
|
+
|
|
8110
|
+
- **Severity Mapping:**
|
|
8111
|
+
- ServiceNow's Priority is determined by the combined values of Impact and Urgency, so you can refer to ServiceNow's \`Priority Lookup Rules\` for configuration.
|
|
8112
|
+
- Only when the Urgency of a ServiceNow Incident changes will it trigger an update to the Flashduty incident severity.
|
|
8113
|
+
- Since Flashduty cannot obtain ServiceNow's Impact and Urgency lists while following the principle of least privilege, only default values are provided. If you need to customize the mapping relationship, please contact technical support.
|
|
8114
|
+
|
|
8115
|
+
- **Custom Field Mapping:** You can map tags or custom fields from incidents to corresponding text fields in ServiceNow tickets, enabling automatic information filling. This feature supports synchronizing common contextual information (such as service name, instance address, metric name, etc.) to ServiceNow for easier subsequent troubleshooting and tracking.
|
|
8116
|
+
|
|
8117
|
+
- Only supports target fields of single-line text or multi-line text types.
|
|
8118
|
+
- Supports extracting values from incident tags (such as service, instance) or custom attributes.
|
|
8119
|
+
- If the source field is empty, the target field will also remain empty and will not overwrite existing content.
|
|
8120
|
+
- Mapping configurations are managed centrally in integration settings, eliminating the need for manual entry each time.
|
|
7938
8121
|
|
|
7939
8122
|
## In ServiceNow
|
|
7940
8123
|
|
|
@@ -8142,23 +8325,23 @@ Note: The body configures default receiving fields. If you have custom fields th
|
|
|
8142
8325
|
|
|
8143
8326
|
| ServiceNow | Flashduty | Notes |
|
|
8144
8327
|
| ------------------- | ------------- | ----- |
|
|
8145
|
-
| Short_description | Title |
|
|
8146
|
-
| Description | Description |
|
|
8147
|
-
| Additional comments | Comments |
|
|
8148
|
-
| State | Progress |
|
|
8149
|
-
| Urgency | Severity |
|
|
8150
|
-
| Others | Custom Fields |
|
|
8328
|
+
| Short_description | Title | Title |
|
|
8329
|
+
| Description | Description | Description |
|
|
8330
|
+
| Additional comments | Comments | Comments |
|
|
8331
|
+
| State | Progress | Progress |
|
|
8332
|
+
| Urgency | Severity | Severity |
|
|
8333
|
+
| Others | Custom Fields | Custom Fields |
|
|
8151
8334
|
|
|
8152
8335
|
### Status Mapping
|
|
8153
8336
|
|
|
8154
8337
|
| ServiceNow | Flashduty | Notes |
|
|
8155
8338
|
| ----------- | ---------- | ---------------------- |
|
|
8156
|
-
| New | Trigger |
|
|
8157
|
-
| In Progress | Processing |
|
|
8339
|
+
| New | Trigger | Trigger |
|
|
8340
|
+
| In Progress | Processing | Processing |
|
|
8158
8341
|
| On Hold | Snoozed | Default snooze 2 hours |
|
|
8159
|
-
| Resolved | CLosed |
|
|
8160
|
-
| Closed | CLosed |
|
|
8161
|
-
| Canceled | CLosed |
|
|
8342
|
+
| Resolved | CLosed | CLosed |
|
|
8343
|
+
| Closed | CLosed | CLosed |
|
|
8344
|
+
| Canceled | CLosed | CLosed |
|
|
8162
8345
|
|
|
8163
8346
|
### Priority Mapping
|
|
8164
8347
|
|
|
@@ -8166,10 +8349,22 @@ Only when ServiceNow's Urgency value changes will it affect Flashduty's Severity
|
|
|
8166
8349
|
|
|
8167
8350
|
| ServiceNow | Flashduty | Notes |
|
|
8168
8351
|
| ---------- | --------- | ----- |
|
|
8169
|
-
| Low | Info |
|
|
8170
|
-
| Medium | Warning |
|
|
8171
|
-
| High | Critical |
|
|
8172
|
-
|
|
8352
|
+
| Low | Info | Info |
|
|
8353
|
+
| Medium | Warning | Warning |
|
|
8354
|
+
| High | Critical | Critical |
|
|
8355
|
+
|
|
8356
|
+
|
|
8357
|
+
## QA
|
|
8358
|
+
|
|
8359
|
+
<details>
|
|
8360
|
+
<summary>Can the UserID be customized when creating a new ServiceNow user?</summary>
|
|
8361
|
+
Yes, it can be customized. The documentation uses "flashduty" as the UserID to better identify that this user is used for Incident synchronization.
|
|
8362
|
+
</details>
|
|
8363
|
+
|
|
8364
|
+
<details>
|
|
8365
|
+
<summary>Getting 401 error when configuring integration</summary>
|
|
8366
|
+
A 401 error is generally caused by an incorrect password. Please check if the password is correct, or reset a new password (when setting the password, do not check the "Password needs reset" option).
|
|
8367
|
+
</details>`,Monit:`---
|
|
8173
8368
|
title: "Monit Alert Integration"
|
|
8174
8369
|
description: "Flashduty Monit alert integration, Monit service reports alerts through this integration"
|
|
8175
8370
|
date: "2025-05-19T10:00:00+08:00"
|
|
@@ -8280,4 +8475,273 @@ Currently, all alerts pushed to Flashduty through the Cloudflare integration are
|
|
|
8280
8475
|
|
|
8281
8476
|
</div>
|
|
8282
8477
|
|
|
8478
|
+
`,WecomAlert:`---
|
|
8479
|
+
title: "Wecom Alert Integration"
|
|
8480
|
+
description: "Generate a unique Wecom robot address in Flashduty, and synchronize the occurrence and recovery of alerts through Wecom"
|
|
8481
|
+
date: "2025-05-19T10:00:00+08:00"
|
|
8482
|
+
url: "https://docs.flashcat.cloud/en/flashduty/Wecom-alert-integration-guide"
|
|
8483
|
+
---
|
|
8484
|
+
|
|
8485
|
+
Generate a unique Wecom robot address in Flashduty, and synchronize the occurrence and recovery of alerts through Wecom.
|
|
8486
|
+
|
|
8487
|
+
<div class="hide">
|
|
8488
|
+
|
|
8489
|
+
## Operation Steps
|
|
8490
|
+
---
|
|
8491
|
+
|
|
8492
|
+
### Create Wecom Alert Integration
|
|
8493
|
+
|
|
8494
|
+
You can obtain a Wecom alert integration address through either of these two methods:
|
|
8495
|
+
|
|
8496
|
+
#### Using Dedicated Integration
|
|
8497
|
+
|
|
8498
|
+
Choose this method when you don't need to route alert events to different channels. It's simpler and recommended.
|
|
8499
|
+
|
|
8500
|
+
<details>
|
|
8501
|
+
<summary>Expand</summary>
|
|
8502
|
+
|
|
8503
|
+
1. Go to the Flashduty console, select **Channel**, and enter a specific channel's details page
|
|
8504
|
+
2. Select the **Integration** tab, click **Add Integration** to enter the integration page
|
|
8505
|
+
3. Choose **Wecom Alert** integration and click **Save** to generate a card
|
|
8506
|
+
4. Click the generated card to view the **Wecom Alert Integration URL**, copy it for later use, and you're done
|
|
8507
|
+
|
|
8508
|
+
</details>
|
|
8509
|
+
|
|
8510
|
+
#### Using Shared Integration
|
|
8511
|
+
|
|
8512
|
+
Choose this method when you need to route alerts to different channels based on the alert event's payload information.
|
|
8513
|
+
|
|
8514
|
+
<details>
|
|
8515
|
+
<summary>Expand</summary>
|
|
8516
|
+
|
|
8517
|
+
1. Go to the Flashduty console, select **Integration Center => Alert Events** to enter the integration selection page
|
|
8518
|
+
2. Select **Wecom Alert** integration:
|
|
8519
|
+
- **Integration Name**: Define a name for the current integration
|
|
8520
|
+
- **Message Type**: Select Wecom alert message type, currently only Text and Markdown are supported
|
|
8521
|
+
- **Push Mode**: Choose when to trigger or recover alerts for Wecom notifications
|
|
8522
|
+
3. Copy the **Wecom Alert Integration URL** for later use
|
|
8523
|
+
4. Configure the default route and select the corresponding channel (after integration creation, you can go to \`Routes\` to configure more routing rules)
|
|
8524
|
+
5. Done
|
|
8525
|
+
|
|
8526
|
+
</details>
|
|
8527
|
+
</div>
|
|
8528
|
+
|
|
8529
|
+
### Customize Wecom Alert Integration
|
|
8530
|
+
|
|
8531
|
+
#### Wecom Alert Integration URL
|
|
8532
|
+
|
|
8533
|
+
The system will generate a unique Wecom alert integration URL for you. This URL is compatible with Wecom robot message protocol. When platforms only support Wecom robot channels, you can use this URL to receive corresponding messages.
|
|
8534
|
+
|
|
8535
|
+
#### Push Mode
|
|
8536
|
+
|
|
8537
|
+
By default, the system always creates new alerts for each message, but you can switch to these modes:
|
|
8538
|
+
|
|
8539
|
+
**Trigger or Close Alert Based on Rules**: In this mode, when receiving a new message, the system matches messages according to your rules and triggers new alerts or closes existing alerts based on the matching results.
|
|
8540
|
+
|
|
8541
|
+
- You need to fill in at least one **trigger** rule
|
|
8542
|
+
- You must set up regex extraction rules for Alert Key. The system uses this field to find historical alerts for updates or closure. **If regex extraction fails, the system will use the random to generate an Alert Key** to ensure alerts won't be lost due to configuration errors
|
|
8543
|
+
- You can choose whether to discard messages when none of the rules match
|
|
8544
|
+
|
|
8545
|
+
Configuration example:
|
|
8546
|
+
|
|
8547
|
+
- Receive all messages, close the alert when the message content contains **RESOLVED**, otherwise trigger a new alert
|
|
8548
|
+
- Extract Alert Key from messages using the rule **/(.*)/**.
|
|
8549
|
+
|
|
8550
|
+
|
|
8551
|
+
### Notes
|
|
8552
|
+
- Wecom alert integration URL only supports Text and Markdown message types; other message types cannot be received
|
|
8553
|
+
- Flashduty will generate a default alert title: "Wecom robot Alert , If you need to change the title, you can customize it using the [alert pipeline](https://docs.flashcat.cloud/en/flashduty/alert-pipelines)"
|
|
8554
|
+
|
|
8555
|
+
## Severity Mapping
|
|
8556
|
+
---
|
|
8557
|
+
|
|
8558
|
+
Currently, all alerts pushed to Flashduty through the Wecom integration are set to Warning severity. However, you can customize the severity using the [alert pipeline](https://docs.flashcat.cloud/en/flashduty/alert-pipelines).`,ServiceDeskPlusSync:`---
|
|
8559
|
+
title: "ServiceDesk Plus Sync"
|
|
8560
|
+
description: "Sync incidents with ServiceDesk Plus requests through ServiceDesk Plus sync webhook."
|
|
8561
|
+
date: "2025-05-19T10:00:00+08:00"
|
|
8562
|
+
url: "https://docs.flashcat.cloud/en/flashduty/servicedesk-plus-sync"
|
|
8563
|
+
---
|
|
8564
|
+
|
|
8565
|
+
Through ServiceDesk Plus sync webhook, Flashduty incidents are associated and synchronized with ServiceDesk Plus requests to achieve integration between Flashduty and ServiceDesk Plus.
|
|
8566
|
+
|
|
8567
|
+
This integration is based on the official v3 API protocol provided by ServiceDesk Plus and is compatible with its interface specifications. If you are using an on-premises deployment version, please confirm whether its API supports the v3 version. Additionally, there are differences in authorization configuration between the cloud and on-premises of ServiceDesk Plus. Please refer to the relevant documentation for specific configurations.
|
|
8568
|
+
|
|
8569
|
+
- [Cloud](#cloud-version)
|
|
8570
|
+
- [On-premises](#on-premises)
|
|
8571
|
+
|
|
8572
|
+
When configuring this integration, if you choose the sync direction as From_ServiceDesk_Plus, you can skip the authorization-related configuration and directly refer to [Configure Sync](#configure-sync).
|
|
8573
|
+
|
|
8574
|
+
## Cloud <span id="cloud-version"></span>
|
|
8575
|
+
|
|
8576
|
+
### In ServiceDesk Plus
|
|
8577
|
+
#### Step 1 Create Authorization Application
|
|
8578
|
+
Please select the corresponding Developer Console address according to your ServiceDesk Plus service region: [Data Centres](https://www.manageengine.com/products/service-desk/sdpod-v3-api/getting-started/data-centers.html)
|
|
8579
|
+
|
|
8580
|
+
1. Log in to the Developer Console, select \`Self Client\` type Client and create it.
|
|
8581
|
+
2. Click \`Generate Code\`, fill in the \`Scope\`: **SDPOnDemand.requests.ALL,SDPOnDemand.setup.READ,SDPOnDemand.custommodule.READ**. Refer to [official documentation](https://www.manageengine.com/products/service-desk/sdpod-v3-api/getting-started/oauth-2.0.html#scopes) for permission scope.
|
|
8582
|
+
|
|
8583
|
+
3. Select the maximum **10 minutes** for \`Time Duration\`, fill in the \`Scope Description\` as customizable, for example: For Flashduty sync use, and create.
|
|
8584
|
+
4. Copy the generated **Code**, **Client ID** and **Client Secret** for backup.
|
|
8585
|
+
|
|
8586
|
+

|
|
8587
|
+

|
|
8588
|
+
|
|
8589
|
+
###### Note: The Code is only valid for 10 minutes and can only be used once, so after obtaining the Code, please complete the [Integration Authorization](#integration-authorization) as soon as possible within the validity period.
|
|
8590
|
+
|
|
8591
|
+
### In Flashduty
|
|
8592
|
+
#### Step 2 Integration Authorization <span id="integration-authorization"></span>
|
|
8593
|
+
Please select the corresponding API Endpoint and Accounts Server URL according to your ServiceDesk Plus service region: [Data Centres](https://www.manageengine.com/products/service-desk/sdpod-v3-api/getting-started/data-centers.html)
|
|
8594
|
+
|
|
8595
|
+
1. Select **Cloud** for \`Platform Type\`, fill in \`API Endpoint\` and \`Accounts Server URL\`.
|
|
8596
|
+
2. Fill in the \`Code\`, \`Client ID\` and \`Client Secret\` generated in the **Create Authorization Application** step into the corresponding edit boxes and click Next to complete [Integration Configuration](#integration-configuration) (if an error occurs, please re-obtain the Code or contact technical support to troubleshoot the problem).
|
|
8597
|
+
|
|
8598
|
+
## On-premises <span id="on-premises"></span>
|
|
8599
|
+
### In ServiceDesk Plus
|
|
8600
|
+
#### Step 1 Generate API Key
|
|
8601
|
+
1. Log in to the ServiceDesk Plus console, click \`Generate API Key\` in the personal center.
|
|
8602
|
+
2. Select **Never Expires** for \`Token Expiration Time\`, copy the generated **Token** for backup, and complete [Integration Authorization](#on-premises-integration-authorization).
|
|
8603
|
+
|
|
8604
|
+
###### Note: The user who generates the API key needs to have relevant permissions, such as create/update requests, obtain template/priority/custom field lists and other permissions. If the permissions are insufficient, it will cause the integration configuration to fail. It is recommended to use an administrator role to generate.
|
|
8605
|
+
|
|
8606
|
+
### In Flashduty
|
|
8607
|
+
#### Step 2 Integration Authorization <span id="on-premises-integration-authorization"></span>
|
|
8608
|
+
1. Select **On-premises** for \`Platform Type\`, fill in \`API Endpoint\`.
|
|
8609
|
+
2. Fill in the generated **Token** into the corresponding edit box and click Next to complete [Integration Configuration](#integration-configuration).
|
|
8610
|
+
|
|
8611
|
+
|
|
8612
|
+
## General Configuration
|
|
8613
|
+
|
|
8614
|
+
### In Flashduty
|
|
8615
|
+
#### Step 1 Integration Configuration <span id="integration-configuration"></span>
|
|
8616
|
+
|
|
8617
|
+
1. **Integration Name:** Define a name for the current integration.
|
|
8618
|
+
2. **Management Team:** When a management team is selected, only team members and tenant administrators can edit this integration.
|
|
8619
|
+
3. **Sync Direction:**
|
|
8620
|
+
|
|
8621
|
+
- To_ServiceDesk_Plus: Sync Flashduty incidents to ServiceDesk Plus.
|
|
8622
|
+
- From_ServiceDesk_Plus: Sync ServiceDesk Plus requests to Flashduty.
|
|
8623
|
+
- Two-way: Bidirectional sync between Flashduty and ServiceDesk Plus.
|
|
8624
|
+
|
|
8625
|
+
4. **Trigger Mode**:
|
|
8626
|
+
- Auto Trigger: Requires configuration of corresponding conditions, Flashduty will automatically sync incidents that meet the conditions to ServiceDesk Plus.
|
|
8627
|
+
- Manual Trigger: Requires manual triggering of ServiceDesk Plus sync in the More Actions section of the incident details page (the integration configuration name is the trigger name).
|
|
8628
|
+
|
|
8629
|
+
5. **Channel:** Select the channel where this integration takes effect.
|
|
8630
|
+
6. **Request Template:** Select the template to use when creating requests.
|
|
8631
|
+
7. **Severity Mapping:** The mapping relationship between Flashduty severity and ServiceDesk Plus priority. For default mapping relationship, please refer to [Priority Mapping](#priority-mapping).
|
|
8632
|
+
8. **Custom Field Mapping:** You can map labels or custom fields in incidents to corresponding text fields in ServiceDesk Plus tickets to achieve automatic information filling. This feature supports syncing common context information (such as service name, instance address, metric name, etc.) to ServiceDesk Plus for subsequent troubleshooting and tracking.
|
|
8633
|
+
- Only supports target fields of single-line text or multi-line text type.
|
|
8634
|
+
- Supports extracting values from incident labels (such as service, instance) or custom attributes.
|
|
8635
|
+
- If the source field is empty, the target field will also remain empty and will not overwrite existing content.
|
|
8636
|
+
- Mapping configuration is managed uniformly in integration settings without manual filling each time.
|
|
8637
|
+
|
|
8638
|
+
9. **Assignee Mapping:** When Flashduty incidents are synced to ServiceDesk Plus and need to be automatically assigned to Technician or Group, you can get the value of Flashduty incident labels as the assignee (if the corresponding assignee does not exist, it will cause sync failure, please choose carefully).
|
|
8639
|
+
|
|
8640
|
+
10. Click \`Save\` to complete the configuration.
|
|
8641
|
+
|
|
8642
|
+
### In ServiceDesk Plus
|
|
8643
|
+
#### Step 2 Create Requester
|
|
8644
|
+
When Flashduty incidents are synced to ServiceDesk Plus, the Requester automatically set by the system
|
|
8645
|
+
|
|
8646
|
+
1. Log in to the ServiceDesk Plus console and find the \`Setup\` configuration page.
|
|
8647
|
+
2. Select \`Users & Permissions\`, then enter the \`Users\` creation page and select \`New Requester\`.
|
|
8648
|
+
3. Fill in **flashduty** for \`Name (Display Name)\` and \`First Name\`, fill in **flashduty-sync@flashcat.cloud** for \`Email\`.
|
|
8649
|
+
4. Other settings can be configured as needed, click \`Save\` to save the configuration.
|
|
8650
|
+
|
|
8651
|
+

|
|
8652
|
+
|
|
8653
|
+
#### Step 3 Configure Sync <span id="configure-sync"></span>
|
|
8654
|
+
To achieve synchronization of ServiceDesk Plus requests to Flashduty, please refer to this configuration item. **Note:** Different versions may have slightly different paths, but the configuration method is the same.
|
|
8655
|
+
##### Create Webhook
|
|
8656
|
+
1. Log in to the ServiceDesk Plus console and find the \`Setup\` configuration page.
|
|
8657
|
+
2. Select \`Automation\`, then enter the \`Custom Actions\` page and select \`Webhooks\`.
|
|
8658
|
+
3. Click \`New Webhook\`, fill in **to_Flashduty** for \`Webhook Name\` in the edit page.
|
|
8659
|
+
4. Fill in the integration's <span class='integration_url'>push URL</span> for \`URL\`.
|
|
8660
|
+
5. Select **Requests** for \`Applies to\`, select **POST** for \`Method\`, fill in **Content-Type application/json** in \`Headers\`.
|
|
8661
|
+
6. Select **JSON** for \`Message Body\` Type and fill in the following content:
|
|
8662
|
+
|
|
8663
|
+
\`\`\`
|
|
8664
|
+
# Cloud
|
|
8665
|
+
{
|
|
8666
|
+
"subject":"\${subject}",
|
|
8667
|
+
"request_id":"\${id}",
|
|
8668
|
+
"description":"\${udf_fields.txt_destination}",
|
|
8669
|
+
"priority":"\${priority.name}",
|
|
8670
|
+
"status":"\${status.name}",
|
|
8671
|
+
"txt_test_field":"\${udf_fields.txt_test_field}"
|
|
8672
|
+
|
|
8673
|
+
}
|
|
8674
|
+
\`\`\`
|
|
8675
|
+
|
|
8676
|
+
\`\`\`
|
|
8677
|
+
# On-premises
|
|
8678
|
+
{
|
|
8679
|
+
"suject":"\${{request.subject}}",
|
|
8680
|
+
"request_id":"\${{request.id}}",
|
|
8681
|
+
"description":"\${{request.description}}",
|
|
8682
|
+
"status":"\${{request.status.name}}",
|
|
8683
|
+
"priority":"\${{request.priority.name}}",
|
|
8684
|
+
"udf_sline_301":"\${{request.udf_fields.udf_sline_301}}"
|
|
8685
|
+
}
|
|
8686
|
+
|
|
8687
|
+
\`\`\`
|
|
8688
|
+
7. Click \`Save\` to complete the configuration.
|
|
8689
|
+
|
|
8690
|
+

|
|
8691
|
+
|
|
8692
|
+
##### Create Trigger
|
|
8693
|
+
1. Log in to the ServiceDesk Plus console and find the \`Setup\` configuration page.
|
|
8694
|
+
2. Select \`Automation\`, then enter the \`Triggers\` page and select \`Request\`.
|
|
8695
|
+
3. Click \`New Trigger\`, fill in **to_Flashduty** for \`Name\` in the edit page.
|
|
8696
|
+
4. Select **Request** for \`Trigger applies to\`, check **Create and Edited** for \`Execute when a request is\`.
|
|
8697
|
+
5. Select **Any time** for \`Execute during\` and check **Enable Trigger**.
|
|
8698
|
+
6. Select \`Without condition\` for \`Conditions\` or configure according to actual needs.
|
|
8699
|
+
7. Select **Webhook** in \`Actions\` and check **to_Flashduty** channel.
|
|
8700
|
+
8. Click \`Save\` to complete the configuration.
|
|
8701
|
+
|
|
8702
|
+

|
|
8703
|
+
|
|
8704
|
+
|
|
8705
|
+
## Sync Information
|
|
8706
|
+
|
|
8707
|
+
### Form Fields
|
|
8708
|
+
|
|
8709
|
+
| ServiceDesk Plus | Flashduty | Notes |
|
|
8710
|
+
| ------------------- | ------------- | ----- |
|
|
8711
|
+
| Subject | Title | |
|
|
8712
|
+
| Description | Description | |
|
|
8713
|
+
| Status | Progress | |
|
|
8714
|
+
| Priority | Severity | |
|
|
8715
|
+
| Others | Custom Fields | |
|
|
8716
|
+
|
|
8717
|
+
### Status Mapping
|
|
8718
|
+
|
|
8719
|
+
| ServiceDesk Plus | Flashduty | Notes |
|
|
8720
|
+
| ----------- | ---------- | ---------------------- |
|
|
8721
|
+
| Open | Trigger | |
|
|
8722
|
+
| In Progress | Processing | |
|
|
8723
|
+
| Assigned | Processing | |
|
|
8724
|
+
| Pending Verification | Processing | |
|
|
8725
|
+
| Staging | Processing | |
|
|
8726
|
+
| On Hold | Snoozed | Default snooze 2 hours |
|
|
8727
|
+
| Resolved | CLosed | |
|
|
8728
|
+
| Closed | CLosed | |
|
|
8729
|
+
| Canceled | CLosed | |
|
|
8730
|
+
| Rejected | CLosed | |
|
|
8731
|
+
|
|
8732
|
+
### Priority Mapping <span id="priority-mapping"></span>
|
|
8733
|
+
|
|
8734
|
+
| ServiceDesk Plus | Flashduty | Notes |
|
|
8735
|
+
| ---------- | --------- | ----- |
|
|
8736
|
+
| Low | Info | |
|
|
8737
|
+
| Medium | Warning | |
|
|
8738
|
+
| High | Critical | |
|
|
8739
|
+
|
|
8740
|
+
|
|
8741
|
+
## FAQ
|
|
8742
|
+
|
|
8743
|
+
<details>
|
|
8744
|
+
<summary> Can the Scope be changed</summary>
|
|
8745
|
+
No, the Scope currently used is already the smallest unit. Flashduty needs to perform get/create/update operations when syncing requests with ServiceDesk Plus, and needs to obtain priority/custom field lists when configuring integration, so corresponding permission support is required.
|
|
8746
|
+
</details>
|
|
8283
8747
|
`};n.FlashDocsEn=h})(window);
|