UserPromptLoggedOffAction=2 does not execute the job immediately starting version 14.5 CU6
search cancel

UserPromptLoggedOffAction=2 does not execute the job immediately starting version 14.5 CU6

book

Article ID: 391403

calendar_today

Updated On:

Products

CA Client Automation - IT Client Manager CA Client Automation

Issue/Introduction

Parameter DSM/Software Delivery/Agent/User Prompt: Timeout action when user is logged off is set to 2 (UserPromptLoggedOffAction)

 2 = now (runs the job)

With this settings, when a SD Job with User Prompt is sent to a computer and nobody is logged on the computer, the SD Job is executed immediately.
But Starting 14.5 CU6, the SD Job is executed after a delay of 5 minutes.

In TRC_USD_SDAGENT*.log there are these lines :

SDAgent | |sdjecontainerif.cpp |002545|NOTIFY | Users are logged off
SDAgent | |sdjecontainerif.cpp |002554|NOTIFY | RunContainer : No Users are logged-in to machine. Waiting for 300 seconds

SDAgent | |sdjecontainerif.cpp |002571|NOTIFY | RunContainer : Configured Prompt Timeout 300 seconds completed

Why this behavior has changed in CU6 ?

Environment

Client Automation 14.5 CU7

Cause

Starting 14.5 CU6, when user is logged off and a SD Job with user prompt is received, there is a wait delay before executing the action defined in UserPromptLoggedOffAction

The wait delay used is the delay defined in this parameter DSM/Software Delivery/Agent/User Prompt: Timeout
By default this value is set to 5 (5 minutes).

This new behavior is introduced in CU6 : Software Delivery - UserPrompt Timeout for No-users Logged-on case

Software Delivery - UserPrompt Timeout for No-users Logged-on case
When a deployment job is created with the “Prompt User” option, and there are no users who are currently logged on to the target machine, the "UserPromptTimeout" feature comes into effect. This timeout setting applies to the initial job that has the "User Prompt" option enabled. Subsequent jobs within the same job container will not wait for this timeout to expire. In case a user logs in during the timeout period, an additional instance of the SD agent will be launched. This new instance displays the "User Prompt" to allow the newly logged-in user to take the necessary actions.


Example : 

If we have set this on the Agents :

DSM/Software Delivery/Agent/User Prompt: Timeout action when user is logged off=2
DSM/Software Delivery/Agent/User Prompt: Timeout=5

When a new SD Job with User Prompt is sent and user is logged off :
- SD Agent is executed but waits for 5 minutes
- After 5 minutes, the action defined in UserPromptLoggedOffAction is executed. As it is 2, the SD Job is executed.

Resolution

Fix T533402 introduces a new parameter :

DSM/Software Delivery/Agent/UsersLoggedoffTimeout

"Identifies the number of minutes to wait when no users are logged-in before performing the UserPromptLoggedOffAction. Minimum is no wait 0 and maximun is 60 minutes"

 

With this fix the wait time value is retrieved from UsersLoggedoffTimeout and no more from UserPromptTimeout
The default value is 0 (no wait).

Open a case to Broadcom Technical Support to request the fix T533402

It provides the file sd_jexec.exe :

Size = 818 936 bytes
Modified Date = 10/03/2025
Version = 14.5.7.633

Install the fix T533402 on the Agent 14.5 CU7

Additional Information

If fix T533402 is installed on the agent 14.5 CU7, as parameter UsersLoggedoffTimeout does not exist in comstore, the default value of 0 is used and there is no delay.
SD Jobs are executed immediately when no user is logged and if UserPromptLoggedOffAction=2

 

To manage the value of UsersLoggedoffTimeout centrally from configuration policy do this on the Domain Manager :

  1. On Domain Manager copy the file UsersLoggedoffTimeout.xml from fix T533402 and execute this in a cmd with Administrative privileges :

    ccnfregdb  -f UsersLoggedoffTimeout.xml -e -s -cr -o



  2. Open DSM Explorer and set the value for UsersLoggedoffTimeout on the configuration policy applied on the Agents :

    Example for a delay of 1 minute :



Example :

If following settings are set on the Agents :

DSM/Software Delivery/Agent/User Prompt: Timeout action when user is logged off=2
DSM/Software Delivery/Agent/User Prompt: UserLoggedOffTimeout=1

When a new SD Job with User Prompt is sent and user is logged off :
- SD Agent is executed but wait for 1 minute
- After 1 minute, the action defined in UserPromptLoggedOffAction is executed. As it is 2, the SD Job is executed.

And there are these lines in TRC_USD_SDAGENT*.log :

SDAgent ||sdjecontainerif.cpp |002555|NOTIFY | Users are logged off
SDAgent |CcnfAgentApi |CCcnfAgentApi.cpp   |001751|DETAIL | API call: GetParameterValueInt(itrm/usd/agent, usersloggedofftimeout, <piParameterValue>, NULL)
SDAgent |CcnfAgentApi |CCcnfAgentApi.cpp   |001804|DETAIL | GetParameterValueInt(itrm/usd/agent, usersloggedofftimeout, ..., NULL) successfully completed. Parameter value: 1

SDAgent ||sdjecontainerif.cpp |002564|NOTIFY | RunContainer : No Users are logged-in to machine. Waiting for 60 seconds
SDAgent ||sdjecontainerif.cpp |002582|NOTIFY | RunContainer : Configured Prompt Timeout 60 seconds completed

 

With this settings there is no wait delay :

DSM/Software Delivery/Agent/User Prompt: UserLoggedOffTimeout=0