Large List of Feature Requests

Hi Team,

Sorry in advance for putting all the feature requests in a single post, but I don’t have the time to create 20+ posts! Hope you understand :slight_smile:

• Assets
	○ "Assets & RMM" tab - small drop-down arrow to the right of the tab to allow us to go directly to a saved search
	○ Show performance stats on each asset as graphs over time (eg, last 1/4/12 hours, 1 week): CPU, RAM, Disk IO for system drive
	○ "Uninstall" button next to each app in the Installed Apps tab
	○ Restrict which clients technicians can see
• Policy Inheritance
	○ Policy Bread Crumbs on asset page under Overview
• Scripting
	○ Capacity to run scripts against asset fields without requiring the asset to be on
	○ Capacity to run scripts on user logon
	○ Optional delay in minutes field when running a script, for example if an asset is offline and I want to delay the script by 15 mins after it comes online if it's a user script
	○ Calling other scripts from scripts:
		§ Some scripts require both System and User level scripting to work so end up as multiple scripts
		§ Other times I just need to run multiple different scripts and currently have to remember to run them all and in the correct order each time
	○ Some way of giving extended visibility on previous scripts run, if I have a script that runs every 15 mins it consumes all of the script history, perhaps via
		§ Collapsible  script summaries, which show 1 instance of each script recently run and the last time they were run, but could then be expanded to see other previous runs of that script
		§ Option in scheduled scripts to only show the last run time of the script
	○ Global client script storage fields
		§ For example a custom field for the client that the scripts can access and update that is tied to the client rather than each individual asset
	○ Increased upload file size for script files from 200MB to 1GB, installer file sizes these days are often large
	○ Folder hierarchy for script files so they're not in 1 giant pool, this will help with organisation and clarity, but will also allow for multiple files with the same name (eg setup.exe)
	○ Confirmation prompt when deleting script files, including the name of the file deleting
• Splashtop
	○ Completely disable audio from relaying to tech, so Teams/Zoom calls don't have an echo
	○ Automatically reconnect remote session after restart if the Splashtop session window is left open
• Background tools
	○ Task Manager
		§ Would be great if we could filter here
	○ File System
		§ Revamp the upload function, currently VERY slow and doesn't seem to update when finished, forcing me to use the Spalshtop file transfer at the moment
		§ Unlimited upload/download file size, the file size limit often limits me from working in the background and I have to call them, log in via Splashtop and upload via the Spalshtop file transfer
	○ Terminal
		§ Option to kill the terminal session, so if I enter a command that prompts for information I can end the terminal and start a new one
• Tabs
	○ New Tab: Renewal Management
		§ SSL Certificates
		§ Domain names
		§ Licensing
	○ Capacity to restrict tabs techs can see based on group
	○Capacity for techs to reorder their tabs themselves
3 Likes

Many of these have been asked for so I won’t touch any all of them. I’ve seen the scripts calling on other scripts before, we used it a lot in CWA and Kaseya, but Syncro uses PS which downloads a PS1 file and runs it. It’s not like the other two that run each line from the agent, so it can bounce between many different scripts. Syncro would need a way to start a PS1, open another PS1, go back to the original PS1, etc. Not sure how doable that is in PS. I do miss folders on scripts, they gave us categories but I don’t find that as useful as having folders to tidy things up. Splashtop can be scripted to remove audio, ST has a page of registry entries that can be scripted. Automatic reconnect works on the business version, but not RMM, so it’s a limitation with the RMM product. I wish ST would fix this. The Renewal Management may never be in Syncro, there’s platforms that already do this well, and they integrate in with Syncro.

For this Once script calling another script, I’d like to see Syncro allow attaching a script just like an uploaded file. Then you could just include the scripts you want syncro to download for you to run with the one you’re actually triggering.

1 Like

Some neat new Ideas in there. Would probably be worth breaking out into a bunch of different feature requests since it’s a little hard to have a conversation around such a big list.

For me the 3 biggest reasons for scripts calling other Syncro scripts are:

  1. All users are locked down with no local admin rights, so there are times I need to run 1 script as System to install software on the asset then a 2nd script that is required to run as the end user to configure the said software. Being able to build this into the initial script means I don’t need to build documentation on how to run a script, it just works through to completion
  2. Being able to check for prerequisites in my script and if missing run appropriate script for the prerequisite to be installed. Kinda like policy inheritance :wink:
  3. Profiling builds, so that I can run a single script to deploy all the relevant software/configs/doco/etc for the specific asset, rather than having to manually add in 20 scripts in the right order each time I build that type of asset
1 Like

On 3 i’d suggest you do this through your polices. We put setup scripts on polices to install what’s needed on the machine. Put in the correct folder and you’ve run all the scripts you need in order.

As far as running one script from another. I wish this was in syncro too. But one work around I’ve found is I push the ps1 file down myself as a file on the script i run through syncro, and then call that script from the syncro script. It’s very doable, but requires a good script developer. :slight_smile:

Clever workaround :+1:
I use Syncro field data heavily with my scripts though so would need them to be run via Syncro itself

Even if your using Syncro variables heavily you can still do what jbaynes is talking about. You just put all the variables for all of the scripts in one, and then use the vars the other scripts need as params for those scripts.

Hi Jimmie

Just curious what product you refer to for Renewal Management. With the NCE changes our renewal admin overhead is increasing so need to look at this option please?

Specifically to the author’s comments about Renewal Management, we use IT Glue which can track those sort of things.

@jbaynes I’ve just recalled the other issue I mentioned that can’t be resolved by pushing the ps1 files down to the device is some scripts require both System and User processes to run in that order, so I’ve got 2 scripts for 1 process. For example, staff obviously don’t have local admin rights, so the deployment of a piece of software needs to be completed via System, but then the activation and settings import need to be done at the user level.

Perhaps another way Syncro could handle this would be to add the functionality inside a script to call either System or User level commands. Not sure how they would do this, perhaps inside the script any commands between specific tags would change under which user the command is run.

For example if a script were set to run under System:

Import-Module $env:SyncroModule
C:\Temp\InstallSomeApp.exe /s

Syncro-StartUserMode
"C:\Program Files\SomeApp\Activate.exe"
# Import registry into HKCU etc
Display-Alert -Message "SomeApp has been installed and is ready for use"
Syncro-StopUserMode # or perhaps Syncro-StartSystemMode

Del C:\Temp\InstallSomeApp.exe /f /q
1 Like

I use the following in the script to run anything needed as logged-in user within the script. You can then run the entire script as System, but the needed user part will run as it should. Just a workaround I have found.

# Get the RunAsUser Module if not installed
if (Get-Module -ListAvailable -Name RunAsUser) {
        
        Write-Host "RunAsUser Module is already installed. Continuing...."
        Import-Module RunAsUser 
    } else {
        Write-Host "RunAsUser was not installed. Installing it now."
    	Install-Module RunAsUser -Force
		Import-Module RunAsUser
	}

Update-Module RunAsUser

$scriptblock = {
    """"""SOME COOL STUFF IN HERE""""""
}

Write-Host "Doing something cool now...."
Invoke-ascurrentuser -scriptblock $scriptblock
2 Likes