XML message about status of a single terminal
<TerminalState> <id><!--required, terminal ID--></id> <serialNo><!--optional, xs:string, terminal serial No.--></serialNo> <terminalName><!--read-only, required, xs:string, terminal name--></terminalName> <PlayerState><!--dependent, player status--> <BasicInfo><!--required, basic information--> <version><!--required, xs:string, terminal software version--></version> <hardwareVersion><!--required, xs:string, terminal hardware version--></hardwareVersion> <systemVersion><!--required, xs:string, terminal system version--></systemVersion> <dspVersion><!--required, xs:string, terminal DSP version--></dspVersion> <characteristicCode><!--optional, xs:string, terminal attribute code--></characteristicCode> <registerTime><!--required, xs:time, terminal registration time (ISO 8601 format)--></registerTime> </BasicInfo> <WorkState><!--required, terminal running status--> <TerminalAddress><!--required, terminal address information--> <addressingFormatType opt="ipaddress,hostname"><!--required, xs:string, terminal address type:IP address, domain name--></addressingFormatType> <hostName><!--dependent, xs:string, domain name--></hostName> <IpAddress><!--dependent--> <ipVersion opt="v4,v6,dual"><!--required, xs:string, IP address version: IPv4, IPv6--></ipVersion> <ipAddress><!--dependent, xs:string, IP address--></ipAddress> <ipv6Address><!--dependent, xs:string, IPv6 address--></ipv6Address> </IpAddress> </TerminalAddress> <port><!--optional, xs:integer, port No.--></port> <macAddress><!--read-only, required, xs:string, terminal MAC address--></macAddress> <macAddress1><!--read-only, optional, xs:string, terminal MAC address1, no more than 2 NIC is supported--></macAddress1> <distributeServerUrl><!--read-only, required, xs:string, distributor URL--></distributeServerUrl> <onlineState><!--read-only, required, xs:string, online status: online, offline--></onlineState> <abnormalState><!--read-only, required, xs:string, abnormal status: normal, abnormal--></abnormalState> <CPUList><!--optional, CPU utilization list--> <CPU> <cpuDescription><!--required, xs:string, CPU description--></cpuDescription> <cpuUtilization><!--required, xs:integer, percentage, range: [0,100]--></cpuUtilization> </CPU> </CPUList> <MemoryList><!--optional, memory utilization--> <Memory> <memoryDescription><!--required, xs:string, memory description--></memoryDescription> <memoryUsage><!--required, xs:float, used memory, unit: MB--></memoryUsage> <memoryAvailable><!--required, xs:float, available memory, unit: MB--></memoryAvailable> </Memory> </MemoryList> <DiskList><!--optional, disk utilization--> <Disk> <diskDescription><!--required, xs:string, disk description--></diskDescription> <diskUsage><!--required, xs:float, used disk, unit: MB--></diskUsage> <diskAvailable><!--required, xs:float, available disk, unit: MB--></diskAvailable> </Disk> </DiskList> <temperature><!--optional, xs:integer, working temperature, unit: ℃ --></temperature> </WorkState> <PlayInfo><!--optional, playing information--> <scheduleNo><!--optional, xs:integer, program schedule ID--></scheduleNo> <scheduleName><!--optional, xs:string, program schedule name--></scheduleName> <playState><!--optional, xs:string, playing status: "invalid" (invalid status),"hdmi" (HDMI status), "vga" (VGA status), "schedulePlay", "scheduleStop", "screenOff", "faceAttendance", "otherApp"--></playState> <insertState><!--optional, xs:string, cut-in status: "invalid" (invalid cut-in), "insertEnd" (cut-in has completed), "insertPublish" (sending data to the terminal), "insertStart" (cut-in has started), "insertFail" (cut-in failed)--></insertState> </PlayInfo> <TimingPlan><!--optional, enabled state of schedules--> <SwitchPlan><!--optional, enabled state of startup and shutdown schedule--> <enabled><!--required, xs:boolean, whether the startup and shutdown schedule is enabled--></enabled> </SwitchPlan> <VolumePlan><!--optional, enabled state of volume adjustment schedule --> <enabled><!--required, xs:boolean, whether the volume adjustment schedule is enabled--></enabled> </VolumePlan> </TimingPlan> </PlayerState> <IPCStateList> <IPCState> <id><!--required, xs:integer, terminal ID--></id> <onlineState><!--read-only, required, xs:string, online status: online, offline--></onlineState> </IPCState> </IPCStateList> <installType><!--optional, xs:string, screen direction: landscape, portrait--></installType> <Resolution><!--optional, resolution --> <width><!--required, xs:integer, width--></width> <height><!--required, xs:integer, height--></height> </Resolution> <terminalType><!--optional, xs:string, terminal type: normal, decode, touch---></terminalType> </TerminalState>