package com.ard.work.sdk.zlxd.netty.message.response;
|
|
import lombok.Data;
|
import lombok.EqualsAndHashCode;
|
import lombok.NoArgsConstructor;
|
|
import javax.xml.bind.annotation.*;
|
import java.util.List;
|
|
/**
|
* 类描述:获取设备状态响应
|
*
|
* @author lsy
|
* @since 2026/2/2 9:14
|
*/
|
@EqualsAndHashCode(callSuper = true)
|
@Data
|
@NoArgsConstructor
|
@XmlRootElement(name = "Message") // 根节点与父类一致
|
@XmlAccessorType(XmlAccessType.FIELD)
|
public class GetDeviceStateResponse extends BaseXmlResponse {
|
|
|
/**
|
* 设备参数信息
|
* 显式注解,匹配XML的<parameters>节点
|
*/
|
@XmlElement(name = "parameters")
|
private Parameters parameters;
|
|
|
|
// ===================== 公共内部实体类 =====================
|
@Data
|
@XmlAccessorType(XmlAccessType.FIELD)
|
public static class Parameters {
|
|
/**
|
* 设备ID
|
*/
|
@XmlElement(name = "puId")
|
private String puId;
|
|
/**
|
* 运行时长(秒)
|
*/
|
@XmlElement(name = "runningTime")
|
private Integer runningTime;
|
|
/**
|
* 媒体流数量
|
*/
|
@XmlElement(name = "mediaNum")
|
private Integer mediaNum;
|
|
/**
|
* 多个媒体流信息(核心:List 接收重复的 mediaInfo 节点)
|
*/
|
@XmlElement(name = "mediaInfo")
|
private List<MediaInfo> mediaInfoList;
|
|
/**
|
* 算法控制值
|
*/
|
@XmlElement(name = "algCtrl")
|
private Integer algCtrl;
|
|
/**
|
* 算法状态
|
*/
|
@XmlElement(name = "algStatus")
|
private Integer algStatus;
|
|
/**
|
* 媒体流信息内部类(对应单个 mediaInfo 节点)
|
*/
|
@Data
|
@XmlAccessorType(XmlAccessType.FIELD)
|
public static class MediaInfo {
|
/**
|
* IP地址
|
*/
|
@XmlElement(name = "IPAddress")
|
private String ipAddress;
|
|
/**
|
* 端口号
|
*/
|
@XmlElement(name = "port")
|
private Integer port;
|
|
/**
|
* 媒体类型
|
*/
|
@XmlElement(name = "mediaType")
|
private Integer mediaType;
|
|
/**
|
* 流类型
|
*/
|
@XmlElement(name = "streamType")
|
private Integer streamType;
|
|
/**
|
* 封装类型
|
*/
|
@XmlElement(name = "packType")
|
private Integer packType;
|
}
|
}
|
}
|