2.2.2.3.1 ReportEventBatch
Synopsis:
This method is invoked by a client to report the occurrence of one or more software-update–related events.
-
<wsdl:operation name="ReportEventBatch" />
The SOAP operation is defined as follows.
-
<soap:operation soapAction="http://www.microsoft.com/ SoftwareDistribution/ReportEventBatch" style="document" />
Request:
-
<s:element name="ReportEventBatch"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="cookie" type="s1:Cookie" /> <s:element minOccurs="1" maxOccurs="1" name="clientTime" type="s:dateTime" /> <s:element minOccurs="0" maxOccurs="1" name="eventBatch" type="s1:ArrayOfReportingEvent" /> </s:sequence> </s:complexType> </s:element>
cookie: Specifies a cookie that MUST have been obtained from a previous call to GetCookie (section 2.2.2.2.2), GetFileLocations (section 2.2.2.2.7), or SyncUpdates (section 2.2.2.2.4). This element MUST be present.
clientTime: The current time (when this method was called) on the client in Coordinated Universal Time (UTC).
eventBatch: An array of ReportingEvents. Its format MUST be as follows.
-
<s:complexType name="ArrayOfReportingEvent"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="ReportingEvent" nillable="true" type="s1:ReportingEvent" /> </s:sequence> </s:complexType>
ReportingEvent: Specifies information of an update-related event. Its format MUST be as follows.
-
<s:complexType name="ReportingEvent"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="BasicData" type="s1:BasicData" /> <s:element minOccurs="0" maxOccurs="1" name="ExtendedData" type="s1:ExtendedData" /> <s:element minOccurs="0" maxOccurs="1" name="PrivateData" type="s1:PrivateData" /> </s:sequence> </s:complexType>
BasicData: Generic data provided for all events. Its format (BasicData) MUST be as follows.
-
<s:complexType name="BasicData"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="TargetID" type="s1:ComputerTargetIdentifier" /> <s:element minOccurs="1" maxOccurs="1" name="SequenceNumber" type="s:int" /> <s:element minOccurs="1" maxOccurs="1" name="TimeAtTarget" type="s:dateTime" /> <s:element minOccurs="1" maxOccurs="1" name="EventInstanceID" type="s2:guid" /> <s:element minOccurs="1" maxOccurs="1" name="NamespaceID" type="s:int" /> <s:element minOccurs="1" maxOccurs="1" name="EventID" type="s:short" /> <s:element minOccurs="1" maxOccurs="1" name="SourceID" type="s:short" /> <s:element minOccurs="0" maxOccurs="1" name="UpdateID" type="s1:UpdateRevisionIdentifier" /> <s:element minOccurs="1" maxOccurs="1" name="Win32Hresult" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="AppName" type="s:string" /> </s:sequence> </s:complexType>
TargetID: The identity of the client computer (same as the clientID parameter to GetAuthorizationCookie (section 2.2.2.1.1)). Its format (ComputerTargetIdentifier) MUST be as follows.
-
<s:complexType name="ComputerTargetIdentifier"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="Sid" type="s:string" /> </s:sequence> </s:complexType>
Sid: A ClientIdString that MUST match the string used as the clientId parameter to GetAuthorizationCookie (section 2.2.2.1.1).
SequenceNumber: Unused. MUST be set to 0, and MUST be ignored upon receipt.
TimeAtTarget: The time in Coordinated Universal Time (UTC) when the event was recorded by the client.
EventInstanceID: A GUID generated by the client to uniquely identify this occurrence of this event.
NamespaceID: MUST be set to 1 by all clients. The server MAY ignore events with other values.
EventID: This SHOULD be set to a numeric value that identifies the type of the event that occurred on the client. This numeric value SHOULD be one of the EventID numbers specified in the EventID Table in this section.
SourceID: Defines the subcomponent within the client that generated the event.
UpdateID: Optionally specifies the ID of the update related to this occurrence of this event, for events related to a particular update. If the event is not associated with any particular update, it MUST be specified as {00000000-0000-0000-0000-000000000000}. Its format (UpdateRevisionIdentifier) MUST be as given below.
-
<s:complexType name="UpdateRevisionIdentifier"> <s:sequence> <s:element minOccurs="1" maxOccurs="1" name="UpdateID" type="s2:guid" /> <s:element minOccurs="1" maxOccurs="1" name="RevisionNumber" type="s:int" /> </s:sequence> </s:complexType>
UpdateID: A GUID that uniquely identifies an update.
RevisionNumber: A number that specifies the version of the update identified by this revision.
Win32Hresult: Optionally specifies a Win32 HRESULT code for events that correspond to a failure. Win32 HRESULT codes are specified in [MS-ERREF].
AppName: The name of the application that triggered the client to perform the operation.
ExtendedData: Additional data associated with an event. Its format (ExtendedData) MUST be as given below.
-
<s:complexType name="ExtendedData"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="ReplacementStrings" type="s1:ArrayOfString" /> <s:element minOccurs="0" maxOccurs="1" name="MiscData" type="s1:ArrayOfString" /> <s:element minOccurs="0" maxOccurs="1" name="ComputerBrand" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="ComputerModel" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="BiosRevision" type="s:string" /> <s:element minOccurs="1" maxOccurs="1" name="ProcessorArchitecture" type="s1:ProcessorArchitecture" /> <s:element minOccurs="1" maxOccurs="1" name="OSVersion" type="s1:DetailedVersion" /> <s:element minOccurs="1" maxOccurs="1" name="OSLocaleID" type="s:int" /> <s:element minOccurs="0" maxOccurs="1" name="DeviceID" type="s:string" /> </s:sequence> </s:complexType>
ReplacementStrings: Specifies an array of strings to be used as parameters in expanding parameterized message strings. Parameterized message strings are message strings that contain placeholders into which instance-specific strings are inserted to obtain an expanded message string. Its format MUST be as follows.
-
<s:complexType name="ArrayOfString"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" /> </s:sequence> </s:complexType>
MiscData: Additional data not covered by the properties listed here. These MUST be specified in the form "x=value" where x is called a tag.<30> See the MiscData table below for information on such well-known tags.
ComputerBrand: Client computer manufacturer.
ComputerModel: Client computer model name.
BiosRevision: Client BIOS firmware revision.
ProcessorArchitecture: Client CPU architecture. The value MUST be one of those enumerated. Note that this differs from the ProcessorArchitecture element used in the RegisterComputer method, described in section 2.2.2.2.3.
-
<s:simpleType name="ProcessorArchitecture"> <s:restriction base="s:string"> <s:enumeration value="Unknown" /> <s:enumeration value="X86Compatible" /> <s:enumeration value="IA64Compatible" /> <s:enumeration value="Amd64Compatible" /> </s:restriction> </s:simpleType>
OSVersion: Client operating system version. Its format (DetailedVersion) MUST be as follows.
-
<s:complexType name="DetailedVersion"> <s:sequence> <s:element minOccurs="1" maxOccurs="1" name="Major" type="s:int" /> <s:element minOccurs="1" maxOccurs="1" name="Minor" type="s:int" /> <s:element minOccurs="1" maxOccurs="1" name="Build" type="s:int" /> <s:element minOccurs="1" maxOccurs="1" name="Revision" type="s:int" /> <s:element minOccurs="1" maxOccurs="1" name="ServicePackMajor" type="s:int" /> <s:element minOccurs="1" maxOccurs="1" name="ServicePackMinor" type="s:int" /> </s:sequence> </s:complexType>
The values provided by the client are implementation-specific.<31>
OSLocaleID: The client operating system locale.
DeviceID: An event-dependent string.
MUST be a zero-length string if the associated update is not a driver. How the client can determine if an update is a driver is specified in section 3.1.1.
If EventID indicates a download driver success/failure event, MUST be set to "1".
If EventID indicates a driver install success/failure event, MUST be set to a non-empty string whose format is opaque to the server.
Else, MUST be a zero-length string.
PrivateData: This field MUST be present and empty, and MUST be ignored upon receipt. Its format (PrivateData) is as follows.
-
<s:complexType name="PrivateData"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="ComputerDnsName" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="UserAccountName" type="s:string" /> </s:sequence> </s:complexType>
ComputerDnsName: This field MUST be a zero-length string.
UserAccountName: This field MUST be a zero-length string.
MiscData Table
This table defines the tags, their descriptions, and the events for which such tags are used by WUA to populate the MiscData element within a ReportingEvent.
Friendly Name |
Misc Data Tag |
Data Type |
Description |
Associated Event IDs |
---|---|---|---|---|
OSServicePackBuildNumber |
A |
Int |
Client operating system service pack build number. |
All events |
ByteCount |
B |
Int |
Number of bytes downloaded. |
Download success events |
RepeatFailFlag |
C |
Int |
Number of times the update has failed to install in the past. |
Install failure events |
NumberApplicable |
D |
Int |
Number of updates that were explicitly deployable, installable on the client (Needed), and deployed for install. |
Detection events |
LastError |
F |
Int |
Secondary error code when Win32HResult is not sufficient to diagnose the problem. |
Install and download events |
ClientVersion |
G |
Int |
Client version. |
All events |
ClientSamplingValue |
J |
Int |
Random number between 0 and 999 inclusive, chosen once per computer. |
All events |
BiosName |
K |
String |
Client BIOS name. |
All events |
BiosReleaseDate |
L |
DateTime |
Client BIOS release date. |
All events |
EventType |
Q |
Int |
If this is an install or download event, and the update being reported on is a bundle, then 2. Else 1. |
All events |
TargetClientVersion |
S |
String |
WUA agent version that the agent is self-updating to. |
Self-update events<32> |
InstallableUpdateIDs |
U |
List of GUIDs separated by ; |
IDs of updates that were deployed for install, uninstall, or scan, that were found to be installable (Needed). |
Status events |
InstalledUpdateIDs |
V |
List of GUIDs separated by ; |
IDs of updates that were deployed for install, uninstall, or scan, that were found to be installed. |
Status events |
InstalledPendingRebootIDs |
W |
List of GUIDs separated by ; |
IDs of updates that were deployed for install, uninstall, or scan, that were found to be installed, but require reboot before taking effect. |
Status events |
FailedUpdateIDs |
g |
List of GUIDs separated by ; |
IDs of updates that were deployed for install, uninstall, or scan, that were found to need installing or uninstalling, but the attempt to download, install, or uninstall the update has failed. |
Status events |
DownloadedUpdateIDs |
h |
List of GUIDs separated by ; |
IDs of updates that were deployed for install, that were downloaded to the client but not yet installed. |
Status events |
MSIAction |
X |
String |
A Microsoft Windows Installer (MSI) action that failed. |
MSI/MSP install failure events |
MSITransactionCode |
Y |
GUIDs |
Unique ID identifying the transaction that the update was part of. |
MSI/MSP install failure events |
MSIProductCode |
Z |
GUIDs |
Product code of the MSP. |
MSI/MSP install failure events |
MSIErrorRec |
f |
int |
Extended MSI error code. |
MSI/MSP install failure events |
SelfUpdatePackageName |
a |
String |
The name of the self-update package. |
Self-update events |
OSProductType |
c |
Int |
Client operating system ProductType. The value provided in the OSProductType tag is implementation-specific. <33> |
All events, if client is Windows Vista operating system or later |
EventID Table
This table specifies the list of events that WUA reports to a Windows Server Update Services (WSUS) server. The Name column is a friendly name for the event type, EventID is the numeric identifier used in ReportingEvent, and the English message template is the message that could be shown to the end user for this event type. Where a message template is parameterized (%1, %2, and so on), the WSUS server populates the placeholders with content from the ReplacementStrings element of the ReportingEvent. The placeholders are specified starting with %1 and are not recursively evaluated. The <ReplacementStrings> array MUST contain the same number of elements as the number of placeholders specified in the parameterized message.
Event ID |
Description |
Remarks |
English message template |
|
---|---|---|---|---|
Detection Events |
|
|
|
|
AGENT_DETECTION_STARTED |
141 |
Indicates a scan started event. |
Check for updates started. |
AGENT_DETECTION_STARTED |
AGENT_DETECTION_RETRY |
145 |
Indicates a scan retry event. |
Check for updates retry. |
AGENT_DETECTION_RETRY |
AGENT_DETECTION_CANCELED |
146 |
Indicates a scan cancel event. |
|
Check for updates canceled. |
AGENT_DETECTION_FINISHED |
147 |
Indicates a scan succeeded event. |
|
Windows Update Client successfully detected %1 updates. |
AGENT_DETECTION_FAILED |
148 |
Indicates a scan failed event. |
|
Windows Update Client failed to detect with error %1. |
AGENT_DETECTION_QOS |
150 |
Indicates quality of service (QOS) details for scan events, such as scan duration, detected updates count, and so on. |
This event is sent at the time of scan retry, scan succeeded, scan failed, and scan canceled events. |
AGENT_DETECTION_QOS |
AGENT_DETECTION_INIT_FAILED |
157 |
Indicates a scan initialization failed event. |
|
Check for updates scan initialization failed. |
AGENT_DETECTION_SERVICE_REG_FAILED |
158 |
Indicates a service registration failed event. |
|
Check for updates Service Registration failed. |
Status Events |
|
|
|
|
AU_UNABLE_TO_CONNECT |
149 |
Indicates Windows cannot connect to Automatic Update service. |
Deprecated |
Unable to Connect: Windows is unable to connect to the automatic updates service and therefore cannot download and install updates according to the set schedule. Windows will continue to try to establish a connection. |
AGENT_STATUS |
153 |
Reports status of all updates to MS-WUSP 2.0. |
Deprecated |
Reporting client status. |
AGENT_INVALID_PID |
154 |
Indicates client has an invalid Pid. |
Deprecated |
Client has an invalid Pid. |
AGENT_STATUS_30 |
156 |
Reports status of all updates to MS-WUSP 3.0. |
Deprecated. This event was new in version 3.0 of the protocol. |
Reporting client status. |
Download Events |
|
|
|
|
AGENT_DOWNLOAD_FAILED |
161 |
Indicates a download failed event. |
|
Error: Download failed. |
AGENT_DOWNLOAD_SUCCEEDED |
162 |
Indicates a download succeeded event. |
|
Download succeeded. |
AGENT_DOWNLOAD_CANCELED |
163 |
Indicates a download canceled event. |
|
Download canceled. |
AGENT_DOWNLOAD_SUCCEEDED_FROM_PEER |
164 |
Indicates a download succeeded event. |
|
Download succeeded. Some bits came from a peer and not the server. |
AGENT_DOWNLOAD_SUSPENDED |
165 |
Indicates a download paused event. |
|
Download paused. |
AGENT_DOWNLOAD_RESUMED |
166 |
Indicates a download resumed event. |
|
Download resumed. |
AGENT_DOWNLOAD_STARTED |
167 |
Indicates a download started event |
|
Download started. |
AGENT_DOWNLOAD_QUEUED |
168 |
Indicates a download queued event. |
|
Download queued. |
AGENT_DOWNLOAD_HEARTBEAT |
169 |
Indicates a download heartbeat event. |
This event details the state of the download at certain points. |
Download Heartbeat |
AGENT_DOWNLOAD_PROGRESS |
170 |
Indicates a download progress event. |
|
Download progress |
Install Events |
|
|
|
|
AGENT_INSTALLING_STARTED |
181 |
User-initiated installation started. |
|
Installation Started: Windows has started installing the following update: %1 |
AGENT_INSTALLING_FAILED |
182 |
User-initiated installation failed. |
|
Installation Failure: Windows failed to install the following update with error %1: %2. |
AGENT_INSTALLING_SUCCEEDED |
183 |
User-initiated installation succeeded. |
|
Installation Successful: Windows successfully installed the following update: %1. |
AGENT_INSTALL_COMPLETE_ WITH_REBOOT |
184 |
User-initiated installation succeeded, requires reboot. |
|
Installation successful and restart required for the following update: %1. |
AGENT_INSTALL_CANCEL |
186 |
User-initiated installation canceled. |
|
User canceled the installation. |
AGENT_INSTALL_KILLED |
187 |
User-initiated installation timed out, was terminated by the WUA. |
|
Installation killed: Installation of the following update is killed by the agent: %2. |
AU_SCHEDULED_INSTALL_READY |
188 |
Indicates updates scheduled to install. |
Deprecated |
Installation Ready: The following updates are downloaded and ready for installation. This computer is currently scheduled to install these updates on %1 at %2: %3 |
AU_UNSCHEDULED_INSTALL_READY |
189 |
Indicates updates ready to install. |
Deprecated |
Installation Ready: The following updates are downloaded and ready for installation. To install the updates, an administrator should log on to this computer and Windows will prompt with further instructions: %1 |
AU_SCHEDULED_INSTALL_SUCCESS |
190 |
Scheduled installation succeeded. |
|
Installation Successful: Windows successfully installed the following update: %1. |
AU_SCHEDULED_INSTALL _COMPLETE_WITH_REBOOT |
191 |
Scheduled installation succeeded, requires reboot. |
|
Installation successful and restart required for the following update: %1. |
AU_SCHEDULED_INSTALL_KILLED |
192 |
Scheduled installation timed out, was terminated by the WUA. |
|
Installation killed: Installation of the following update is killed by the agent: %2 |
AU_UNSCHEDULED_REBOOT_REQUIRED |
193 |
Indicates computer reboot required. |
Deprecated |
Restart Required: To complete the installation of the following updates, the computer must be restarted. Until this computer has been restarted, Windows cannot search for or download new updates: %1 |
AU_SCHEDULED_REBOOT_REQUIRED |
194 |
Indicates computer reboot scheduled. |
Deprecated |
Restart Required: To complete the installation of the following updates, the computer will be restarted within %1 minutes: %2 |
AU_SCHEDULED_INSTALL_FAILED |
195 |
Scheduled installation failed. |
|
Installation Failure: Windows failed to install the following update with error %1: %2. |
AU_SHUTDOWN_INSTALL_SUCCESS |
197 |
Install at shutdown succeeded. |
|
Installation Successful: Windows successfully installed the following update: %1. |
AU_SHUTDOWN_INSTALL_FAILED |
198 |
Install at shutdown failed. |
|
Installation Failure: Windows failed to install the following update with error %1: %2. |
AU_SHUTDOWN_INSTALL_COMPLETE _WITH_REBOOT |
199 |
Install at shutdown succeeded, requires reboot. |
|
Installation successful and restart required for the following update: %1. |
AU_SHUTDOWN_INSTALL_KILLED |
200 |
Install at shutdown timed out, was terminated by the WUA. |
|
Installation killed: Installation of the following update is killed by the agent: %2. |
AGENT_INSTALLING_FAILED _POST_REBOOT |
203 |
Post-reboot processing of an installed update failed. |
New to Windows Vista |
Installation Failure Post Reboot. |
AGENT_INSTALLING_FAILED_POST_REBOOT |
204 |
Indicates update failed to install post reboot. |
Deprecated |
Installation Failure Post Reboot. |
AGENT_UNINSTALLING_FAILED |
221 |
Uninstallation failed. |
|
Uninstallation Failure: Windows failed to uninstall the following update with error %1: %2. |
AGENT_UNINSTALLING_SUCCEEDED |
222 |
Uninstallation succeeded. |
|
Uninstallation Successful: Windows successfully uninstalled the following update: %1. |
AGENT_UNINSTALL_CANCEL |
223 |
Uninstallation canceled. |
|
User canceled the uninstall. |
AGENT_UNINSTALL_COMPLETE _WITH_REBOOT |
224 |
Uninstallation succeeded, requires reboot. |
|
Uninstallation successful and restart required for the following update: %1. |
AGENT_UNINSTALL_KILLED |
225 |
Uninstallation timed out, was terminated by the WUA. |
|
Uninstallation killed: Uninstallation of the following update is killed by the agent: %2. |
Commit Events |
|
|
|
|
AGENT_COMMIT_STARTED |
521 |
Indicates a commit started event. |
|
Commit Started: Windows has started committing the following update: %1. |
AGENT_COMMIT_FAILED |
522 |
Indicates a commit failed event. |
|
Commit Failure: Windows failed to commit the following update with error %1: %2. |
AGENT_COMMIT_SUCCEEDED |
523 |
Indicates a commit succeeded event. |
|
Commit Successful: Windows successfully committed the following update: %1. |
AGENT_COMMIT_CANCEL |
524 |
Indicates a commit canceled event. |
|
Commit cancelled by agent. |
AGENT_COMMIT_KILLED |
525 |
Indicates a commit terminated event. |
|
Commit terminated: Commit of the following update is terminated by the agent: %2. |
Revert Events |
|
|
|
|
AGENT_REVERT_FAILED |
541 |
Indicates a revert failed event. |
|
Revert Failure: Windows failed to revert the following update with error %1: %2. |
AGENT_REVERT_SUCCEEDED |
542 |
Indicates a revert succeeded event. |
|
Revert Successful: Windows successfully reverted the following update: %1. |
AGENT_REVERT_CANCEL |
543 |
Indicates a revert canceled event. |
|
User cancelled the revert. |
AGENT_REVERT_COMPLETE_WITH_REBOOT |
544 |
Indicates a revert complete event with reboot requirement. |
|
Revert successful and restart required for the following update: %1. |
AGENT_REVERT_KILLED |
545 |
Indicates a revert terminated event. |
|
Revert terminated: Revert of the following update is terminated by the agent: %2. |
AGENT_REVERT_STARTED |
546 |
Indicates a revert started event. |
|
Revert Started: Windows has started reverting the following update: %1. |
Update Hidden/Unhidden Events |
|
|
|
|
AGENT_INSTALL_HIDE |
185 |
User chose to hide the update from the UI. |
|
Hide update: user hid one update. |
AGENT_INSTALL_UNHIDE |
196 |
User chose to unhide the update from the UI. |
|
Unhide update: user unhide one update. |
Misc Events |
|
|
|
|
AGENT_INSTALLING_PENDING |
201 |
Self-update is about to begin. |
|
Installation pending. |
AU_REBOOT_COMPLETED |
202 |
Client computer has finished rebooting following an install/uninstall. |
|
Reboot completed. |
Response:
-
<s:element name="ReportEventBatchResponse"> <s:complexType> <s:sequence> <s:element minOccurs="1" maxOccurs="1" name="ReportEventBatchResult" type="s:boolean" /> </s:sequence> </s:complexType> </s:element>
ReportEventBatchResult: Upon successful completion of this operation, this MUST be returned. Its value MUST be TRUE if the events were successfully received by the server. Otherwise, it MUST be FALSE.