搭建消息告警模块以及跨网推送服务,支持企微,飞书,钉钉通知

This commit is contained in:
2026-09-03 14:02:35 +08:00
parent cfa8e78d33
commit 3927b0c201
40 changed files with 4360 additions and 7 deletions
+59
View File
@@ -0,0 +1,59 @@
namespace Model.Dto.Inspection
{
/// <summary>
/// 跨网发件箱拉取结果 DTO(AlertBridge 拉取到的待推送项;Payload 自包含全部推送要素)
/// </summary>
public class AlertOutboxItemDto
{
/// <summary>发件箱 Id(回写结果时使用)</summary>
public string? Id { get; set; }
/// <summary>告警消息Id</summary>
public string? AlertId { get; set; }
/// <summary>渠道Id</summary>
public string? ChannelId { get; set; }
/// <summary>完整推送报文 JSONAlertOutboxPayload 序列化)</summary>
public string? Payload { get; set; }
/// <summary>重试次数</summary>
public int RetryCount { get; set; }
}
/// <summary>
/// 发件箱推送报文(自包含:AlertBridge 无需访问数据库/配置即可推送)
/// </summary>
public class AlertOutboxPayload
{
/// <summary>渠道类型(1飞书/2钉钉/3企微)</summary>
public int ChannelType { get; set; }
/// <summary>Webhook 地址</summary>
public string? WebhookUrl { get; set; }
/// <summary>加签密钥(可空)</summary>
public string? Secret { get; set; }
/// <summary>消息标题</summary>
public string? Title { get; set; }
/// <summary>消息正文(markdown</summary>
public string? Content { get; set; }
/// <summary>@ 手机号列表</summary>
public List<string>? AtMobiles { get; set; }
}
/// <summary>
/// 发件箱结果回写 DTOAlertBridge 推送完成后回写)
/// </summary>
public class OutboxResultDto
{
/// <summary>是否成功</summary>
public bool Success { get; set; }
/// <summary>结果信息(失败原因)</summary>
public string? ResultMsg { get; set; }
}
}