2.5.4.14 IdleSettings

If present, the IdleSettings field specifies that the task can run only when the machine has been idle for the value of the Duration subfield.

 <!-- IdleSettings -->
 <xs:complexType name="idleSettingsType">
    <xs:all>
       <xs:element name= "Duration " default= "PT10M " minOccurs= "0 ">
          <xs:simpleType>
              <xs:restriction base= "xs:duration ">
                 <xs:minInclusive value= "PT1M "/>
              </xs:restriction>
          </xs:simpleType>
       </xs:element>
       <xs:element name= "WaitTimeout " default= "PT1H " 
       minOccurs= "0 ">
          <xs:simpleType>
              <xs:restriction base= "xs:duration ">
                 <xs:minInclusive value= "PT1M "/>
              </xs:restriction>
          </xs:simpleType>
       </xs:element>
       <xs:element name= "StopOnIdleEnd " type= "xs:boolean " 
       default= "true " minOccurs= "0 "/>
       <xs:element name="RestartOnIdle" type="xs:boolean" 
       default="false" minOccurs="0"/>
    </xs:all>
 </xs:complexType>

Duration: If present, this subfield contains a time duration of at least 1 minute (between 1 minute and 31 days, inclusive). The format is as specified in section 2.5.1.1. The task can have a delayed start until the specified Duration has elapsed from the time that the machine became idle. For example, if a task with idle duration of 15 minutes is triggered at a time when the machine was already idle for 10 minutes, the task is to start after 5 more minutes.<28>

WaitTimeout: If present, this subfield contains a time duration of at least 1 minute (between 1 minute and 31 days, inclusive). The format MUST be as specified in section 2.5.1.1. The task, if triggered, will wait for the computer to become Idle for at most WaitTimeout minutes.<29>

StopOnIdleEnd: If present and set to TRUE, this subfield specifies that the task stops when the idle condition ceases to be true. If not present, or if present and set to FALSE, the task continues when the idle condition ceases to be true.<30>

RestartOnIdle: If present and set to TRUE, this subfield specifies that the task restarts when the machine returns to idle state. If present and set to FALSE, the task continues running when the server returns to idle state.<31>