告警接收代码示例
一. C# 告警接收示例
查看!
using System;
using System.Collections.Generic;
using System.Globalization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
public partial class MateAlarmTab
{
[JsonProperty("ackTime")]
public DateTimeOffset? AckTime { get; set; }
/// <summary>
/// 告警ID
/// </summary>
[JsonProperty("AlarmID")]
public long? AlarmId { get; set; }
/// <summary>
/// 告警等级
/// </summary>
[JsonProperty("AlarmLevelID")]
public long? AlarmLevelId { get; set; }
/// <summary>
/// 告警类型
/// </summary>
[JsonProperty("AlarmType")]
public string AlarmType { get; set; }
[JsonProperty("CalibrationID")]
public long? CalibrationId { get; set; }
/// <summary>
/// 告警编号,主键
/// </summary>
[JsonProperty("DBAlarmID")]
public long? DbAlarmId { get; set; }
[JsonProperty("DescribeInfo")]
public string DescribeInfo { get; set; }
[JsonProperty("DVUID")]
public long? Dvuid { get; set; }
[JsonProperty("IntellexAlarmID")]
public string IntellexAlarmId { get; set; }
/// <summary>
/// 告警录像地址
/// </summary>
[JsonProperty("JPBPath")]
public string JpbPath { get; set; }
/// <summary>
/// 告警发生时间
/// </summary>
[JsonProperty("ManagerAlarmTime")]
public DateTimeOffset? ManagerAlarmTime { get; set; }
/// <summary>
/// 告警结束时间
/// </summary>
[JsonProperty("ManagerEndTime")]
public DateTimeOffset? ManagerEndTime { get; set; }
/// <summary>
/// 告警开始时间
/// </summary>
[JsonProperty("ManagerStartTime")]
public DateTimeOffset? ManagerStartTime { get; set; }
[JsonProperty("PTZNumber")]
public long? PtzNumber { get; set; }
/// <summary>
/// 算法名称
/// </summary>
[JsonProperty("ruleName")]
public string RuleName { get; set; }
/// <summary>
/// 告警名称
/// </summary>
[JsonProperty("RuleNameStr")]
public string RuleNameStr { get; set; }
[JsonProperty("ScannerAlarmID")]
public long? ScannerAlarmId { get; set; }
/// <summary>
/// 设备号
/// </summary>
[JsonProperty("ScannerCustomerNumber")]
public long? ScannerCustomerNumber { get; set; }
/// <summary>
/// 通道号
/// </summary>
[JsonProperty("ScannerFeedNumber")]
public long? ScannerFeedNumber { get; set; }
/// <summary>
/// 分析服务IP
/// </summary>
[JsonProperty("ScannerIP")]
public string ScannerIp { get; set; }
/// <summary>
/// 分析服务名
/// </summary>
[JsonProperty("ScannerName")]
public string ScannerName { get; set; }
[JsonProperty("spareInt1")]
public long? SpareInt1 { get; set; }
[JsonProperty("spareInt2")]
public long? SpareInt2 { get; set; }
/// <summary>
/// 处理状态 1:已处理 0:未处理
/// </summary>
[JsonProperty("spareInt3")]
public long? SpareInt3 { get; set; }
[JsonProperty("spareStr32_1")]
public string SpareStr321 { get; set; }
[JsonProperty("spareStr32_2")]
public string SpareStr322 { get; set; }
/// <summary>
/// 相机名称
/// </summary>
[JsonProperty("spareStr64_1")]
public string SpareStr641 { get; set; }
/// <summary>
/// 分类告警目标信息,json字符串
/// </summary>
[JsonProperty("spareStr64_2")]
public string SpareStr642 { get; set; }
[JsonProperty("SpeciesID")]
public long? SpeciesId { get; set; }
/// <summary>
/// base64图片
/// </summary>
[JsonProperty("Thumbnail")]
public string Thumbnail { get; set; }
[JsonProperty("ThumbnailCols")]
public long? ThumbnailCols { get; set; }
/// <summary>
/// 告警图片http地址
/// </summary>
[JsonProperty("ThumbnailPath")]
public string ThumbnailPath { get; set; }
[JsonProperty("ThumbnailRows")]
public long? ThumbnailRows { get; set; }
[JsonProperty("ThumbnailSize")]
public long? ThumbnailSize { get; set; }
/// <summary>
/// 用户ID
/// </summary>
[JsonProperty("UserID")]
public long? UserId { get; set; }
/// <summary>
/// VcaServer 编号
/// </summary>
[JsonProperty("VcaServerID")]
public string VcaServerId { get; set; }
[JsonProperty("VideoSourceAlarmEndTime")]
public long? VideoSourceAlarmEndTime { get; set; }
[JsonProperty("VideoSourceAlarmStartTime")]
public long? VideoSourceAlarmStartTime { get; set; }
[JsonProperty("VideoSourceAlarmTime")]
public long? VideoSourceAlarmTime { get; set; }
[JsonProperty("VideoSourceChannelID")]
public long? VideoSourceChannelId { get; set; }
[JsonProperty("VideoSourceSystemID")]
public string VideoSourceSystemId { get; set; }
}
/// <summary>
/// 告警推送接收示例
/// </summary>
/// <param name="data">告警数据对象</param>
/// <returns></returns>
[HttpPost]
[Route("receiveAlarmData")]
public TData receiveAlarmData([FromBody] MateAlarmTab data)
{
return new TData { code = 0, message = "接收数据成功", data = data };
}
二.Java告警接收示例
查看!
import java.time.OffsetDateTime;
public class MateAlarmTab {
private OffsetDateTime ackTime;
/**
* 告警ID
*/
private Long alarmID;
/**
* 告警等级
*/
private Long alarmLevelID;
/**
* 告警类型
*/
private String alarmType;
private Long calibrationID;
/**
* 告警编号,主键
*/
private Long dbAlarmID;
private String describeInfo;
private Long dvuid;
private String intellexAlarmID;
/**
* 告警录像地址
*/
private String jpbPath;
/**
* 告警发生时间
*/
private OffsetDateTime managerAlarmTime;
/**
* 告警结束时间
*/
private OffsetDateTime managerEndTime;
/**
* 告警开始时间
*/
private OffsetDateTime managerStartTime;
private Long ptzNumber;
/**
* 算法名称
*/
private String ruleName;
/**
* 告警名称
*/
private String ruleNameStr;
private Long scannerAlarmID;
/**
* 设备号
*/
private Long scannerCustomerNumber;
/**
* 通道号
*/
private Long scannerFeedNumber;
/**
* 分析服务IP
*/
private String scannerIP;
/**
* 分析服务名
*/
private String scannerName;
private Long spareInt1;
private Long spareInt2;
/**
* 处理状态 1:已处理 0:未处理
*/
private Long spareInt3;
private String spareStr321;
private String spareStr322;
/**
* 相机名称
*/
private String spareStr641;
/**
* 分类告警目标信息
*/
private String spareStr642;
private Long speciesID;
/**
* base64图片
*/
private String thumbnail;
private Long thumbnailCols;
/**
* 告警图片地址
*/
private String thumbnailPath;
private Long thumbnailRows;
private Long thumbnailSize;
/**
* 用户ID
*/
private Long userID;
/**
* VcaServer 编号
*/
private String vcaServerID;
private Long videoSourceAlarmEndTime;
private Long videoSourceAlarmStartTime;
private Long videoSourceAlarmTime;
private Long videoSourceChannelID;
private String videoSourceSystemID;
public OffsetDateTime getackTime() { return ackTime; }
public void setackTime(OffsetDateTime value) { this.ackTime = value; }
public Long getAlarmID() { return alarmID; }
public void setAlarmID(Long value) { this.alarmID = value; }
public Long getAlarmLevelID() { return alarmLevelID; }
public void setAlarmLevelID(Long value) { this.alarmLevelID = value; }
public String getAlarmType() { return alarmType; }
public void setAlarmType(String value) { this.alarmType = value; }
public Long getCalibrationID() { return calibrationID; }
public void setCalibrationID(Long value) { this.calibrationID = value; }
public Long getdbAlarmID() { return dbAlarmID; }
public void setdbAlarmID(Long value) { this.dbAlarmID = value; }
public String getDescribeInfo() { return describeInfo; }
public void setDescribeInfo(String value) { this.describeInfo = value; }
public Long getDvuid() { return dvuid; }
public void setDvuid(Long value) { this.dvuid = value; }
public String getIntellexAlarmID() { return intellexAlarmID; }
public void setIntellexAlarmID(String value) { this.intellexAlarmID = value; }
public String getJpbPath() { return jpbPath; }
public void setJpbPath(String value) { this.jpbPath = value; }
public OffsetDateTime getManagerAlarmTime() { return managerAlarmTime; }
public void setManagerAlarmTime(OffsetDateTime value) { this.managerAlarmTime = value; }
public OffsetDateTime getManagerEndTime() { return managerEndTime; }
public void setManagerEndTime(OffsetDateTime value) { this.managerEndTime = value; }
public OffsetDateTime getManagerStartTime() { return managerStartTime; }
public void setManagerStartTime(OffsetDateTime value) { this.managerStartTime = value; }
public Long getPtzNumber() { return ptzNumber; }
public void setPtzNumber(Long value) { this.ptzNumber = value; }
public String getRuleName() { return ruleName; }
public void setRuleName(String value) { this.ruleName = value; }
public String getRuleNameStr() { return ruleNameStr; }
public void setRuleNameStr(String value) { this.ruleNameStr = value; }
public Long getScannerAlarmID() { return scannerAlarmID; }
public void setScannerAlarmID(Long value) { this.scannerAlarmID = value; }
public Long getScannerCustomerNumber() { return scannerCustomerNumber; }
public void setScannerCustomerNumber(Long value) { this.scannerCustomerNumber = value; }
public Long getScannerFeedNumber() { return scannerFeedNumber; }
public void setScannerFeedNumber(Long value) { this.scannerFeedNumber = value; }
public String getScannerIP() { return scannerIP; }
public void setScannerIP(String value) { this.scannerIP = value; }
public String getScannerName() { return scannerName; }
public void setScannerName(String value) { this.scannerName = value; }
public Long getSpareInt1() { return spareInt1; }
public void setSpareInt1(Long value) { this.spareInt1 = value; }
public Long getSpareInt2() { return spareInt2; }
public void setSpareInt2(Long value) { this.spareInt2 = value; }
public Long getSpareInt3() { return spareInt3; }
public void setSpareInt3(Long value) { this.spareInt3 = value; }
public String getSpareStr321() { return spareStr321; }
public void setSpareStr321(String value) { this.spareStr321 = value; }
public String getSpareStr322() { return spareStr322; }
public void setSpareStr322(String value) { this.spareStr322 = value; }
public String getSpareStr641() { return spareStr641; }
public void setSpareStr641(String value) { this.spareStr641 = value; }
public String getSpareStr642() { return spareStr642; }
public void setSpareStr642(String value) { this.spareStr642 = value; }
public Long getSpeciesID() { return speciesID; }
public void setSpeciesID(Long value) { this.speciesID = value; }
public String getThumbnail() { return thumbnail; }
public void setThumbnail(String value) { this.thumbnail = value; }
public Long getThumbnailCols() { return thumbnailCols; }
public void setThumbnailCols(Long value) { this.thumbnailCols = value; }
public String getThumbnailPath() { return thumbnailPath; }
public void setThumbnailPath(String value) { this.thumbnailPath = value; }
public Long getThumbnailRows() { return thumbnailRows; }
public void setThumbnailRows(Long value) { this.thumbnailRows = value; }
public Long getThumbnailSize() { return thumbnailSize; }
public void setThumbnailSize(Long value) { this.thumbnailSize = value; }
public Long getUserID() { return userID; }
public void setUserID(Long value) { this.userID = value; }
public String getVcaServerID() { return vcaServerID; }
public void setVcaServerID(String value) { this.vcaServerID = value; }
public Long getVideoSourceAlarmEndTime() { return videoSourceAlarmEndTime; }
public void setVideoSourceAlarmEndTime(Long value) { this.videoSourceAlarmEndTime = value; }
public Long getVideoSourceAlarmStartTime() { return videoSourceAlarmStartTime; }
public void setVideoSourceAlarmStartTime(Long value) { this.videoSourceAlarmStartTime = value; }
public Long getVideoSourceAlarmTime() { return videoSourceAlarmTime; }
public void setVideoSourceAlarmTime(Long value) { this.videoSourceAlarmTime = value; }
public Long getVideoSourceChannelID() { return videoSourceChannelID; }
public void setVideoSourceChannelID(Long value) { this.videoSourceChannelID = value; }
public String getVideoSourceSystemID() { return videoSourceSystemID; }
public void setVideoSourceSystemID(String value) { this.videoSourceSystemID = value; }
}
/**
* 告警推送接收示例
*
* @param data 告警数据对象
* @return TData对象
*/
@PostMapping("receiveAlarmData")
public TData receiveAlarmData(@RequestBody MateAlarmTab data) {
return new TData(0, "接收数据成功", data);
}
三.python告警接收示例
查看!
from flask import Flask, request, jsonify
app = Flask(__name__)
class TData:
def __init__(self, code, message, data):
self.code = code
self.message = message
self.data = data
def to_dict(self):
return {
'code': self.code,
'message': self.message,
'data': self.data
}
class MateAlarmTab:
ack_time: Optional[datetime]
"""告警ID"""
alarm_id: Optional[int]
"""告警等级"""
alarm_level_id: Optional[int]
"""告警类型"""
alarm_type: Optional[str]
calibration_id: Optional[int]
"""告警编号,主键"""
db_alarm_id: Optional[int]
describe_info: Optional[str]
dvuid: Optional[int]
intellex_alarm_id: Optional[str]
"""告警录像地址"""
jpb_path: Optional[str]
"""告警发生时间"""
manager_alarm_time: Optional[datetime]
"""告警结束时间"""
manager_end_time: Optional[datetime]
"""告警开始时间"""
manager_start_time: Optional[datetime]
ptz_number: Optional[int]
"""算法名称"""
rule_name: Optional[str]
"""告警名称"""
rule_name_str: Optional[str]
scanner_alarm_id: Optional[int]
"""设备号"""
scanner_customer_number: Optional[int]
"""通道号"""
scanner_feed_number: Optional[int]
"""分析服务IP"""
scanner_ip: Optional[str]
"""分析服务名"""
scanner_name: Optional[str]
spare_int1: Optional[int]
spare_int2: Optional[int]
"""处理状态 1:已处理 0:未处理"""
spare_int3: Optional[int]
spare_str32_1: Optional[str]
spare_str32_2: Optional[str]
"""相机名称"""
spare_str64_1: Optional[str]
"""分类告警目标信息,json字符串"""
spare_str64_2: Optional[str]
species_id: Optional[int]
"""base64图片"""
thumbnail: Optional[str]
thumbnail_cols: Optional[int]
"""告警图片http地址"""
thumbnail_path: Optional[str]
thumbnail_rows: Optional[int]
thumbnail_size: Optional[int]
"""用户ID"""
user_id: Optional[int]
"""VcaServer 编号"""
vca_server_id: Optional[str]
video_source_alarm_end_time: Optional[int]
video_source_alarm_start_time: Optional[int]
video_source_alarm_time: Optional[int]
video_source_channel_id: Optional[int]
video_source_system_id: Optional[str]
def __init__(self, ack_time: Optional[datetime], alarm_id: Optional[int], alarm_level_id: Optional[int], alarm_type: Optional[str], calibration_id: Optional[int], db_alarm_id: Optional[int], describe_info: Optional[str], dvuid: Optional[int], intellex_alarm_id: Optional[str], jpb_path: Optional[str], manager_alarm_time: Optional[datetime], manager_end_time: Optional[datetime], manager_start_time: Optional[datetime], ptz_number: Optional[int], rule_name: Optional[str], rule_name_str: Optional[str], scanner_alarm_id: Optional[int], scanner_customer_number: Optional[int], scanner_feed_number: Optional[int], scanner_ip: Optional[str], scanner_name: Optional[str], spare_int1: Optional[int], spare_int2: Optional[int], spare_int3: Optional[int], spare_str32_1: Optional[str], spare_str32_2: Optional[str], spare_str64_1: Optional[str], spare_str64_2: Optional[str], species_id: Optional[int], thumbnail: Optional[str], thumbnail_cols: Optional[int], thumbnail_path: Optional[str], thumbnail_rows: Optional[int], thumbnail_size: Optional[int], user_id: Optional[int], vca_server_id: Optional[str], video_source_alarm_end_time: Optional[int], video_source_alarm_start_time: Optional[int], video_source_alarm_time: Optional[int], video_source_channel_id: Optional[int], video_source_system_id: Optional[str]) -> None:
self.ack_time = ack_time
self.alarm_id = alarm_id
self.alarm_level_id = alarm_level_id
self.alarm_type = alarm_type
self.calibration_id = calibration_id
self.db_alarm_id = db_alarm_id
self.describe_info = describe_info
self.dvuid = dvuid
self.intellex_alarm_id = intellex_alarm_id
self.jpb_path = jpb_path
self.manager_alarm_time = manager_alarm_time
self.manager_end_time = manager_end_time
self.manager_start_time = manager_start_time
self.ptz_number = ptz_number
self.rule_name = rule_name
self.rule_name_str = rule_name_str
self.scanner_alarm_id = scanner_alarm_id
self.scanner_customer_number = scanner_customer_number
self.scanner_feed_number = scanner_feed_number
self.scanner_ip = scanner_ip
self.scanner_name = scanner_name
self.spare_int1 = spare_int1
self.spare_int2 = spare_int2
self.spare_int3 = spare_int3
self.spare_str32_1 = spare_str32_1
self.spare_str32_2 = spare_str32_2
self.spare_str64_1 = spare_str64_1
self.spare_str64_2 = spare_str64_2
self.species_id = species_id
self.thumbnail = thumbnail
self.thumbnail_cols = thumbnail_cols
self.thumbnail_path = thumbnail_path
self.thumbnail_rows = thumbnail_rows
self.thumbnail_size = thumbnail_size
self.user_id = user_id
self.vca_server_id = vca_server_id
self.video_source_alarm_end_time = video_source_alarm_end_time
self.video_source_alarm_start_time = video_source_alarm_start_time
self.video_source_alarm_time = video_source_alarm_time
self.video_source_channel_id = video_source_channel_id
self.video_source_system_id = video_source_system_id
pass
@app.route('/receiveAlarmData', methods=['POST'])
def receive_alarm_data():
data = request.json # 假设请求体是JSON格式
mate_alarm_tab = MateAlarmTab()
t_data = TData(code=0, message="接收数据成功", data=mate_alarm_tab)
return jsonify(t_data.to_dict())
if __name__ == '__main__':
app.run(debug=True)
四.PHP告警接收示例
查看!
// This is a autogenerated file:MateAlarmTab class MateAlarmTab { private DateTime $ackTime; // json:ackTime Optional private ?int $alarmID; // json:AlarmID Optional private ?int $alarmLevelID; // json:AlarmLevelID Optional private ?string $alarmType; // json:AlarmType Optional private ?int $calibrationID; // json:CalibrationID Optional private ?int $dbAlarmID; // json:DBAlarmID Optional private ?string $describeInfo; // json:DescribeInfo Optional private ?int $dvuid; // json:DVUID Optional private ?string $intellexAlarmID; // json:IntellexAlarmID Optional private ?string $jpbPath; // json:JPBPath Optional private DateTime $managerAlarmTime; // json:ManagerAlarmTime Optional private DateTime $managerEndTime; // json:ManagerEndTime Optional private DateTime $managerStartTime; // json:ManagerStartTime Optional private ?int $ptzNumber; // json:PTZNumber Optional private ?string $ruleName; // json:ruleName Optional private ?string $ruleNameStr; // json:RuleNameStr Optional private ?int $scannerAlarmID; // json:ScannerAlarmID Optional private ?int $scannerCustomerNumber; // json:ScannerCustomerNumber Optional private ?int $scannerFeedNumber; // json:ScannerFeedNumber Optional private ?string $scannerIP; // json:ScannerIP Optional private ?string $scannerName; // json:ScannerName Optional private ?int $spareInt1; // json:spareInt1 Optional private ?int $spareInt2; // json:spareInt2 Optional private ?int $spareInt3; // json:spareInt3 Optional private ?string $spareStr321; // json:spareStr32_1 Optional private ?string $spareStr322; // json:spareStr32_2 Optional private ?string $spareStr641; // json:spareStr64_1 Optional private ?string $spareStr642; // json:spareStr64_2 Optional private ?int $speciesID; // json:SpeciesID Optional private ?string $thumbnail; // json:Thumbnail Optional private ?int $thumbnailCols; // json:ThumbnailCols Optional private ?string $thumbnailPath; // json:ThumbnailPath Optional private ?int $thumbnailRows; // json:ThumbnailRows Optional private ?int $thumbnailSize; // json:ThumbnailSize Optional private ?int $userID; // json:UserID Optional private ?string $vcaServerID; // json:VcaServerID Optional private ?int $videoSourceAlarmEndTime; // json:VideoSourceAlarmEndTime Optional private ?int $videoSourceAlarmStartTime; // json:VideoSourceAlarmStartTime Optional private ?int $videoSourceAlarmTime; // json:VideoSourceAlarmTime Optional private ?int $videoSourceChannelID; // json:VideoSourceChannelID Optional private ?string $videoSourceSystemID; // json:VideoSourceSystemID Optional /** * @param DateTime $ackTime * @param int|null $alarmID * @param int|null $alarmLevelID * @param string|null $alarmType * @param int|null $calibrationID * @param int|null $dbAlarmID * @param string|null $describeInfo * @param int|null $dvuid * @param string|null $intellexAlarmID * @param string|null $jpbPath * @param DateTime $managerAlarmTime * @param DateTime $managerEndTime * @param DateTime $managerStartTime * @param int|null $ptzNumber * @param string|null $ruleName * @param string|null $ruleNameStr * @param int|null $scannerAlarmID * @param int|null $scannerCustomerNumber * @param int|null $scannerFeedNumber * @param string|null $scannerIP * @param string|null $scannerName * @param int|null $spareInt1 * @param int|null $spareInt2 * @param int|null $spareInt3 * @param string|null $spareStr321 * @param string|null $spareStr322 * @param string|null $spareStr641 * @param string|null $spareStr642 * @param int|null $speciesID * @param string|null $thumbnail * @param int|null $thumbnailCols * @param string|null $thumbnailPath * @param int|null $thumbnailRows * @param int|null $thumbnailSize * @param int|null $userID * @param string|null $vcaServerID * @param int|null $videoSourceAlarmEndTime * @param int|null $videoSourceAlarmStartTime * @param int|null $videoSourceAlarmTime * @param int|null $videoSourceChannelID * @param string|null $videoSourceSystemID */ public function __construct(DateTime $ackTime, ?int $alarmID, ?int $alarmLevelID, ?string $alarmType, ?int $calibrationID, ?int $dbAlarmID, ?string $describeInfo, ?int $dvuid, ?string $intellexAlarmID, ?string $jpbPath, DateTime $managerAlarmTime, DateTime $managerEndTime, DateTime $managerStartTime, ?int $ptzNumber, ?string $ruleName, ?string $ruleNameStr, ?int $scannerAlarmID, ?int $scannerCustomerNumber, ?int $scannerFeedNumber, ?string $scannerIP, ?string $scannerName, ?int $spareInt1, ?int $spareInt2, ?int $spareInt3, ?string $spareStr321, ?string $spareStr322, ?string $spareStr641, ?string $spareStr642, ?int $speciesID, ?string $thumbnail, ?int $thumbnailCols, ?string $thumbnailPath, ?int $thumbnailRows, ?int $thumbnailSize, ?int $userID, ?string $vcaServerID, ?int $videoSourceAlarmEndTime, ?int $videoSourceAlarmStartTime, ?int $videoSourceAla
接口文档地址:https://apifox.com/apidoc/shared-f468ac50-1e4a-4abe-bf28-7852c2b6c7c0
修改于 2024-08-07 05:25:43