Skip to main content

OEM Update With Prompt

Overview

This is a Datto implementation of the agnostic Invoke-OEMUpdateWithPrompt

The script prompts logged-in users before BIOS and firmware updates, allows postponement for a configured number of cycles, and then enforces the update. It is designed for a single deployment from Datto RMM, then continues through scheduled task re-runs on the endpoint.

Dependencies

Implementation

  1. Download the component OEM Update With Prompt from the attachments.

  2. After downloading the attached file, click on the Import button

  3. Select the component just downloaded and add it to the Datto RMM interface.

    Image 1

Sample Run

To execute the OEM Update With Prompt over a specific machine, follow these steps:

  1. Select the machine you want to run the OEM Update With Prompt on from the Datto RMM.

  2. Click on the Quick Job button.

    Image 2

  3. Search the component OEM Update With Prompt and click on Select

    Image 3

Examples

Scenario 1: OEMScriptParametersOverride

Custom parameter string passed to the vendor update script, replacing the default parameter set for the detected manufacturer.

Image 52

  • For PSWindowsUpdate, set OEMScriptParametersOverride = -Category 'Drivers','Tools' -AllowReboot
  • For Dell DCU, set OEMScriptParametersOverride = /applyUpdates -updateType=bios -silent

Scenario 2: UsePsWindowsUpdate

Run with user parameter UsePsWindowsUpdate = True.

Expected output:

  • Update execution path uses Install-WindowsUpdates flow.
  • This runs Windows update instead of vendor-specific updates

Scenario 3: IfNotLoggedIn

Run with user parameter IfNotLoggedIn = True.

Expected output:

  • If no user session is active, update starts without prompting.
  • If a user is logged in, normal prompt workflow continues.

Scenario 4: HandleBitLocker

Run with user parameter HandleBitLocker = True.

Expected output:

  • BitLocker is suspended before update execution for one reboot cycle.
  • If no reboot is needed, BitLocker is resumed at completion.

Scenario 5: Force

Run with user parameter Force = True.

Expected output:

  • Existing OEM prompt scheduled tasks are removed.
  • Stored prompt state is reset.
  • Prompt workflow starts again from the beginning.

Scenario 6: SkipWeekends

Run with user parameter SkipWeekends = True.

Expected output:

  • There will be no popup get generated on the users machine during weekend.
  • Will is usefull as user will not miss any popup during weekends.

Sample Prompts

The First prompt that will get generated on the user machine.
Image 1

This prompt is shown while the update needs to be schedule on particular time.
Image 2

The prompt shows the confirmation that update is scheduled and will start on the particular time and need aknowledgement.
Image 3

The prompt shows the confirmation that update has been completed and reboot is required.
Image 4

Datto Variables

Variable NameDefaultTypeDescription
MaxPostpone5StringMaximum number of times the upgrade can be postponed before the final prompt is shown. Total prompts = MaxPostpone + 1 (final).
IntervalMinutes240StringMinutes between each prompt. After postpone or miss, a SYSTEM scheduled task re-runs the script at this interval.
RegularPromptTimeout600StringSeconds before a regular prompt auto-closes and counts as missed.
FinalPromptTimeout900StringSeconds before the final prompt times out and the upgrade is forced.
DelayAfterFinalPrompt600StringSeconds to wait before forcing the upgrade after the final prompt times out or user picks a time < 15 min away.
SkipWeekendsFalseBooleanPrevents prompts on Saturdays and Sundays.
IfNotLoggedInFalseBooleanRuns the upgrade immediately without prompting if no user is logged in.
ForceFalseBooleanClears all scheduled tasks and stored state, restarting the prompt cycle from 0.
UsePsWindowsUpdateFalseBooleanUses the PSWindowsUpdate module instead of OEM-specific scripts (Dell/HP/Lenovo).
HandleBitLockerFalseBooleanSuspends BitLocker protection on the OS drive for one reboot cycle before OEM updates run. If no reboot is required after the update, BitLocker protection is automatically resumed.
SuppressPopupTimeWindowsStringTime window (24-hour format, e.g., 1800-0900) during which prompts are suppressed.
IconStringURL or local file path for the icon displayed in the prompt dialog (e.g., https://example.com/icon.png or C:\Icons\icon.png).
HeaderImageStringURL or local file path for the header image displayed at the top of the prompt dialog (e.g., https://example.com/header.png or C:\Images\header.png).
OEMScriptParametersOverrideStringCustom parameter string passed to the vendor update script, replacing the default parameter set for the detected manufacturer (e.g., '/applyUpdates -updateType=bios -silent' for Dell DCU or -Category 'Drivers','Tools' -AllowReboot for PSWindowsUpdate).

Output

Activity Log

Attachments

OEM Update With Prompt

Changelog

2026-06-01

  • Initial version of the document