Use SMN notifications for most accounts. AOM webhook data subscription is not generally available and should only be used when Huawei Cloud has enabled it for your account.
Create an integration in Flashduty On-call
Use either of the following methods to obtain an integration push URL.Use a dedicated integration
Use this method when you do not need to route alerts to different channels.Expand
Expand
- In the Flashduty console, select Channels and open the target channel.
- Select Integrations and click Add integration.
- Select Huawei Cloud AOM and click Save.
- Open the generated integration card and copy the push URL.
Use a shared integration
Use this method when you need to route alerts to different channels based on their payload.Expand
Expand
- In the Flashduty console, select Integration Center > Alert events.
- Select Huawei Cloud AOM and enter an integration name.
- Configure the default route and select a channel. You can add more routing rules under Routes after creating the integration.
- Click Save and copy the generated push URL.
Prerequisites
- You have created a Huawei Cloud AOM integration in Flashduty and obtained its HTTPS push URL.
- You have created or prepared an AOM alarm rule.
- To use SMN, your Huawei Cloud account can create topics, subscribe endpoints, and list topics.
- The alarm rule sends notifications for both alarm triggered and alarm recovered.
Method 1: Use SMN
Create an SMN topic and subscription
1
Create an SMN topic
- Sign in to the Huawei Cloud console and open Simple Message Notification (SMN).
- Select Topic Management > Topics and click Create Topic.
-
Set the topic name to Flashduty and save it.

2
Add an HTTPS subscription
- Open the Flashduty topic and click Add Subscription.
- Select HTTPS as the protocol.
-
Enter the Flashduty AOM integration push URL as the endpoint and save the subscription.
Flashduty verifies the SMN confirmation request and automatically visits the Huawei Cloud confirmation URL. SMN starts sending alerts after the subscription status changes to Confirmed.

Configure an AOM message template
In the AOM 2.0 console, go to Alarm Center > Alarm Notifications > Message Templates. In some console versions, the path is Alarms > Alarm Action Rules > Message Templates. When creating the template, select HTTP/HTTPS as the notification method. Flashduty supports the following content formats:- HTML
- JSON
HTML templates can be in Chinese or English. Add the report type as the first line so that Flashduty can reliably distinguish triggered and recovered alerts.Chinese templateEnglish template
Create an alarm notification rule
1
Associate the SMN topic and message template
- In the AOM 2.0 console, go to Alarm Center > Alarm Notifications.
- Under Notification Rule Management, create an alarm notification rule.
- Select the Flashduty SMN topic and the AOM message template created earlier.
2
Send triggered and recovered notifications
Enable notifications in the AOM alarm rule and make sure that the notification scenarios include both alarm triggered and alarm recovered.
3
Verify the integration
Trigger a test alert and then recover it. In Flashduty, verify that the integration’s latest event time has changed and that the alert details contain the expected severity, resource, and recovery status.
Method 2: Use an AOM webhook data subscription
If Huawei Cloud has enabled this feature for your account, go to Settings > Global Settings > Data Subscription in the AOM 2.0 console. Create a webhook alarm subscription and set its destination to the same Flashduty AOM integration push URL. The webhook request must use the official AOM structured event format:id, starts_at, and all six required metadata fields.
Correlate triggered and recovered alerts
Flashduty detects recovery in the following order:
For Huawei Cloud message templates, the Chinese
clear_type values are 触发 and 恢复, and the English values are generated and cleared. Flashduty uses these values first to distinguish triggered and recovered alerts.
If an SMN HTML message does not contain a recognized report type, a subject containing
恢复, _resolved, _recovered, or _clear is treated as a recovery.-
metadata.event_type -
metadata.event_name -
metadata.resource_provider -
metadata.resource_type -
metadata.resource_id
id is stored as a label but does not participate in correlation, so triggered and recovered notifications may have different IDs.
If two independent alerts have identical values for all five fields, Flashduty treats them as the same alert. Make sure that metadata.event_name or metadata.resource_id distinguishes alerts that must be handled separately.
Field and severity mappings
Common AOM fields are converted into Flashduty labels:
Severity mapping:
Troubleshooting
Why does the SMN subscription remain unconfirmed?
Why does the SMN subscription remain unconfirmed?
Make sure that the endpoint is the complete HTTPS integration push URL and that its
integration_key has not been changed. Flashduty only visits valid Huawei Cloud HTTPS confirmation URLs.Why does a manually replayed SMN request fail signature verification?
Why does a manually replayed SMN request fail signature verification?
The SMN
signature is bound to the message body, message ID, subject, topic, timestamp, and message type. Changing any of these fields invalidates the original signature. Send a real test notification through AOM and SMN instead of modifying a historical request.Why did the recovery not close the alert?
Why did the recovery not close the alert?
Make sure that the alarm rule sends recovery notifications. Add
${clear_type} to an HTML template. For SMN JSON, Flashduty first checks for an ends_at value greater than 0 and falls back to the subject when the value is missing, empty, or 0. A webhook data subscription must provide an ends_at value greater than 0. Also verify that the five correlation fields are identical in the triggered and recovered events.What is the difference between SMN JSON and a webhook data subscription?
What is the difference between SMN JSON and a webhook data subscription?
SMN JSON is carried in the
message field of an SMN notification, whose outer object still contains a signature and subject. A webhook data subscription directly sends an {“events”:[…]} object without SMN fields. Do not combine both outer formats in one request.