Defer and set reinstall at 12pm

Loving PSAppDeployToolkit, use it to deliver large CAD applications (1GB+) that would otherwise be installed manually. Keep up the good work, saves me loads of time!

Now for my question:
I use Show-InstallationWelcome, with only 2 buttons, defer or continue, and a countdown timer of 5 minutes. Users are allowed to defer 3 times. Since we use Intune to distribute apps, we have little control over time of installation. With large CAD applications, which our users use all day, waiting for half an hour for an installation to finish can be pretty annoying. So the keep clicking defer.

What I would like to do is provide an extra button that says ‘install at 12pm (lunchtime)’. This button should then quit the prompt, and call a Powershell script that creates a scheduled task set to go off at 12pm, restarting the Intune service, and thereby invoking an install. Because no-one is behind the desk at that time, the countdown will pass, and start the installation. User comes back from lunch, install finished.

Is this possible?

I tried Show-InstallationPrompt but then I can’t use -closeapps etc. Ideally the button should only be available if the scheduled task does not exist.

1 Like

Delayed installation through a button is not implemented yet. I would understand adding it in but this usually adds more problems than it solves. Since most of deployment environments verify whether the installation was successful and retry if it was not, we would not really be able to do this without closing the toolkit, because if we setup a task, we have to close the toolkit and return an exit code. If we return 0, then the detection method will be checked which will fail and so the installation will be considered a fail. If we return an nonzero exit code, the installation will also be considered a fail. If we write detection and return 0, we would have to make sure the task runs somehow which we cant. From the point of view of the SCCM/Intune console, the application is installed even though it might be waiting for installation. That could cause problems if someone bases their application on this one or this application is superseded. It would require another exit code and SCCM admins would have to add it.

Also, you can set up deployments as available and send them an email that they should it install it asap when they have time, otherwise it will be installed by deadline.

TL DR: Not currently possible. Not sure if it should be in the future.

1 Like

Thanks for the reply.
It’s not possible to add an action to the ‘defer’ button? If I could run a Powershell script upon defer that sets the Intune service to restart at 12pm, that would effectively install the application again at that time.

I’ve developed a working defer solution for (mostly) what you’re asking and put it into the toolkit. It should be simple to modify for your needs I would think. It works fine in our environment and I deploy to 12,000+ devices. It has the option for them to defer for 30 minutes up to 24hrs but you could really do anything you want with the time options. Let me know if you’re interested. @luki1412 @Knuppel My screenshot:
DeferSample2

6 Likes

Hi @FoldZan1 ,

we have same requirement. I would like to give it a try. Could you share the toolkit to me.

Hi @FoldZan1,

this sounds awesome. Is it possible to share the code for an evaluation?

Coming back on this. I’ve created my own solution as well. Put an ‘if between time’ statement in the deployment, and had it create a scheduled task at 12m daily, that removes Intune package traces from registry, and then restarts the Intune service to trigger install. If the install is succesful the scheduled task is removed. All using Powershell. Our install is 2GB’s in size, so installing it during lunch break for us is the most elegant solution. (where users won’t impatiently shutdown their device so they can go home)

It would be great if you can share the code with me!

@FoldZan1
Just thought about tagging you in case you didn’t get the reply notification

Hi @FoldZan1 → would you be willing to share your added function because we are facing a similar requirement. Thanks

Hey, where did you change the text for the button from Continue to install now? I like that better than continue.

Hello @FoldZan1 , could I please get your code as well? It would really help me out. Thank you!

@FoldZan1 Very interesting. Would love if you could share the code. Management has just opened up to the idea of allowing limited deferrals.

I wish they allowed me upload zip files to the site here…

I wish they allowed me upload zip files to the site here… do you have somewhere I could upload it?

I can create a public OneDrive folder that you can upload the script to if you are ok with that

Sure, I think I have all my private content removed so I’ll upload it. Let me know.

Awesome! thanks a lot!

You can upload it here if:

Done. It’s not the cleanest scripting in the world but it works.

2 Likes

HI do you have the code with you, can you please share it with me.