SubscribeEventResponse message in XML format
<SubscribeEventResponse> <id><!--req, xs:integer, subscription ID--></id> <FailedEventList> <!--opt, list of subscription failed events. When subscription failed, it should be returned, and the upper layer can check whether all event/alarm subscriptions are succeeded via the existence of node FailedEventList--> <Event> <type> <!--req, xs:string, refer to Supported Alarm/Event Types for details--> </type> <minorAlarm> <!--opt, xs:string, minor alarm type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type. This node is required when type is "AccessControllerEvent"--> </minorAlarm> <minorException> <!--opt, xs:string, minor exception type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type. This node is required when type is "AccessControllerEvent"--> </minorException> <minorOperation> <!--opt, xs:string, minor operation type: "0x400,0x401,0x402,0x403", see details in Access Control Event Type. This node is required when type is "AccessControllerEvent"--> </minorOperation> <minorEvent> <!--opt, xs:string, minor event type: "0x01,0x02,0x03,0x04", see details in Access Control Event Type. This node is required when type is "AccessControllerEvent"--> </minorEvent> <pictureURLType> <!--opt,xs:string, opt="binary,localURL,cloudStorageURL", alarm picture transmission mode: "binary"-binary, "localURL"-device local URL, "cloudStorageURL"-cloud storage URL--> </pictureURLType> <channels> <!--opt, xs:string, "1,2,3,4…", event related channel ID, supports multiple channels, and the channel ID is separated by commas--> </channels> <subStatusCode> <!--req, string, subscription failure error code--> </subStatusCode> </Event> </FailedEventList> </SubscribeEventResponse>