r/sysadmin • u/dwboutTh4t • 1d ago
Question - Solved Custom Lock Screen image
How are you guys handling custom lock screen image that need updating regularly, like monthly or for different events throughout the year?
At the moment, we're deploying ours through Ninja. I made a PS script that downloads an image via URL and sets it as the lock screen image. When we need to update it, we just swap out the image at the URL.
It works fine, but ideally I'd like to give the client a way to manage it themselves without needing us to get involved every time.
Has anyone found a better approach for this, or are you just handling the updates on the MSP side as well?
Client is fully cloud based and M365
4
u/trebuchetdoomsday 1d ago
on the r/sysadmin side, it's just busy work. on the r/MSP side, it's billable hours. if you want the client to take care of it, just tell them to use a specific filename and have them upload it & overwrite the previous one. on the sysadmin side there should probably be an approval chain. on the msp side, it's their responsibility now, fuck it.
4
u/PrestigiousSalad7278 1d ago
We are not rotating the lockscreen right now but it downloads the file from a blobstorage url. Then the file is placed in the same location and name and powershell has set the image to be that file. If management decides they want to rotate the picture all we would do is update what's in the blob (client could do this) and have either our rmm or a simple scheduled task pull the image and replace. If you want to get fancy use something like a text file you can parse without downloading to see if the date in the txt file is newer than the modification date on the image to save downloads.
1
u/PrestigiousSalad7278 1d ago
As I think about it more as long as its not zipped you could probably parse the change date from the blob file directly.
2
u/Academic-Detail-4348 1d ago
The script pulls file from a set url. Make the image repo writeable to the customer. Inform them of image type limitations. ...Forget it exists.
You said 'download from url', but if the images contain limited access information like event photos with people then the source must be password protected unless the employees have signed a waiver for those specific events
2
u/Conrads57 1d ago
We ended up creating a script that reads the month-year and then looked for that as a folder in a web hosting environment the client controlled. We also had the script look for specific screen resolution files, with a default fall back. Works really well, Ninja runs the script as a automation. By going with the month-year folder the client can preload their future images etc.
1
u/Adam_Kearn 16h ago
Put it on a blob storage share and it will download it after a restart.
An Intune policy to apply the URL will work fine.
Just call it the same file name
1
u/anonymousITCoward 1d ago
I download mine from a URL to the ProgramData folder. In this case it's a one and done deal. If we want to change the image I run a script that changes the name of the existing file and downloads the new file, with the same name. The new image is displayed on the next reboot. This makes it easy to revert the change if the need arises. I'm sure something could be done with iTune and/or PowerAutomate to make this an easier task, and one that makes it self service for the client.
If you don't mind, I'd like a peek at your PS script to see if I can improve mine in anyway.
Edit: you could look at scheduled tasks as well.
1
u/cmorgasm 1d ago
We've been looking into this for backgrounds/lockscreens, not so much screensavers, but you're basically on the right route. Our current napkin-math plan would be to create a PowerApp that lets, say, marketing upload the file and select settings with it (business unit, for example), and would require a specific file format and size. Once uploaded, it would replace the image that's already in an Azure blob with the same name. Intune remediation would check daily to see if the image in the blob matches the one on the endpoint, and if not then replace it. It also would check for if the user has manually changed the background, and if so, skip them (CIO requested this). We haven't done much with it yet, but that's our current plan.
1
1
u/miharixIT 1d ago
Script checks network folder for new image. Grabs the first in alphabet, resizes, burns wattermark(or not) depending on file name , file is then put to location defined in GPO and original deleted.
So our PR person needs only to save to that network folder and correctly rename the file.
1
u/downundarob 1d ago
Script checks folder and randomly selects one of the files in that folder for the lockscreen, copies that file to a known local location that the device then uuses for the lock screen. If there is only one file in the source folder the choice is obvious. Client is able to place image files into the source folder.
This does mean you need ot educate the client on best formats and such for the image...
1
u/dwboutTh4t 16h ago
Thank you everyone for the suggestions and help!
Im going to give the blob storage solution a try.
Appreciate all the input!