Jump to content
View in the app

A better way to browse. Learn more.

Pulseway

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
  • Search By Tags

    Search will match any tag entered
  • Search By Author

Content Type

Forums

  • Pulseway
    • News & Announcements
    • Installation & Configuration
    • General
    • Automation
    • Applications
    • Current Features & Server Modules
    • API
    • Feature Requests
    • Bugs
  • Pulseway On-Premise Server
    • Installation & Configuration
  • Pulseway PSA
    • General

Calendars

  • Development and Releases

Find results in

Find results that contain...

Date Created

  • Start

    End

Last Updated

  • Start

    End


Filter by number of...

  • Minimum number of comments

  • Minimum number of replies

  • Minimum number of reviews

  • Minimum number of views

Found 436 results

  1. Hey @Rhatake - Thanks for reaching out! Yes, you can use custom script include Sysinternals Handle.exe (from Microsoft) via PowerShell to identify and log. Next you can create a PowerShell script under Automation > Automation hub > User Defined > Create Script. Either you can create a Task in the same page to schedule the script or run manually on multiple machines from Device > Device management > Selecting the machines > Action > Run Script. Refer to images😊
  2. For remote troubleshooting and logging in Pulseway, is there a good PowerShell method to first identify and log the specific process (or processes) that are currently holding a file handle on a drive before the eject command is run?
  3. Hey @Lix1 - Thanks for reaching out! Yes, this can be done by workflows. Once created, run/schedule the workflow. Refer to image.
  4. Does Pulseway RMM specifically offer a built-in 'Run as Logged-in User' or 'Run with Impersonation' feature that would allow the script to directly target the HKCU hive of the currently active user, thus avoiding the need for complex registry path modifications?
  5. Say goodbye to click fatigue. This release is all about speed and simplicity, making sure you get to what matters faster, without all the extra steps🚀 Top Features in this release: Device Management Shortcuts Quick-launch remote desktop, PowerShell/Terminal, and shortcuts right from the Device Management page. No more hunting through menus, jump straight into action. Registry Viewer Direct access to the Windows Registry from the Device Card, no remote desktop session needed. Navigate, view values, and keep your flow without bugging the end user. Automation Hub A unified content management page for all your scripts, tasks, workflows, and managed files. Organized, searchable, and streamlined in one place. 📖 Want the full scoop? Read all about it here.
  6. If I have a file in C:\tmp\somefile.bat and I have a (Powershell) script in Pulseway that simply contains "Start-Process "C:\tmp\somefile.bat" will that .bat file run in a shell for the current logged in user, or for the System account that Pulseway uses? Cheers,
  7. Hi I am experimenting with Bitdefender distribution. At our company, Bitdefender packages are protected against unauthorized uninstallation by a password. When I initiate uninstallation via the Pulseway portal, it fails. I would still like to automate this process. What would be the best way to do this? A powershell script with an integrated password, or is there a possibility via workflow? Many thanks in advance. Best regards, Geko
  8. Hey @josheld_65 - Thanks for reaching out! To enable Legacy Mode, run the below Powershell script and open Pulseway manager. Set-ItemProperty -Path "HKLM:\Software\MMSOFT Design\PC Monitor\" AgentLegacyMode -Value 1 Hope this helps 😊
  9. I found a PowerShell script that checks if the machine can run Windows 11. I can see the output in Pulseway after it runs when I click on the execution option. But I would like to run it for all of the customers machines and get the output all at once. Is there an easy way to do this in Pulseway automation?
  10. Hi everyone, I wanted to share a simple PowerShell script that you can use within Pulseway Automation to remotely eject any USB storage devices connected to a system. This can be helpful for security-conscious environments or in scenarios where USB usage needs to be tightly controlled. Works well in combination with the Disable USB Storage Access script in the built in category. The script uses Shell.Application to trigger the native "Eject" action for removable drives (DriveType = 2). Here's the version that loops through all mounted USB volumes: ✅ Works great in Pulseway automation tasks 💡 You can modify it to eject a specific drive letter if needed powershell # Eject all USB volumes using Shell.Application COM object $Eject = New-Object -ComObject Shell.Application # Get all removable (DriveType = 2) volumes with drive letters $volumes = Get-WmiObject -Class Win32_Volume | Where-Object { $_.DriveType -eq 2 -and $_.DriveLetter } foreach ($vol in $volumes) { Write-Host "Ejecting drive $($vol.DriveLetter)..." $Eject.NameSpace(17).ParseName($vol.DriveLetter).InvokeVerb("Eject") } Notes: During my testing, I've seen that USB devices will not be removed if a process is running from the disks in question. In other words, if there is a write/read process running, the disk is not ejected. Let me know if you have questions or enhancements!
  11. Hello Pulseway Support, I am currently using the Pulseway Task module to execute PowerShell scripts. My scripts require PowerShell 7 (pwsh.exe) to function properly, as certain modules like HuduAPI are not supported in PowerShell 5.1. However, when I attempt to run scripts that rely on PowerShell 7 functionality, they default to PowerShell 5.1, resulting in compatibility issues and failures. I would like to request guidance on how to: Configure Pulseway to explicitly run scripts using PowerShell 7 (pwsh.exe). Verify if the Pulseway PowerShell module supports PowerShell 7, and if not, what workaround or timeline is available to ensure compatibility. Please let me know how I can resolve this issue or if Pulseway tasks can be configured to execute PowerShell 7 scripts ( Powershell 7 is installed at the endpoints and the script executes as expected locally). Thank you for your support. Best regards,
  12. Hi Guys, I've cobbled together a workflow using Powershell that looks at membership of the local Administrators group and that output is emailed to me. That's gone without issue but I want to refine it and that's where I'm struggling. So I know that in our case, every machine's local admin group has some membership, i.e. the local admin account and our domain admins group. I want to filter these machines out and have email results for only those where there's anything more than those "defaults". Get-LocalGroupMember -Group 'Administrators' | Where-Object {$_.PrincipalSource -ne 'Local' -and $_.Name -ne 'MyDomain\Administrator' -and $_.Name -ne 'MyDomain\Domain Admins'} | Select-Object -Property 'Name','PrincipalSource' This code works locally and using Pulseway's remote Powershell function. What I was hoping to do was to basically skip a system if the output of the code was blank or null. For systems where I haven't received any output back when using Pulseway's Powershell, I guess I don't know if the output is actually completely empty or not. I also don't know if using Pulseway's variable function is considered separately to the Powershell environment the code gets run in, if that makes sense? When I try to run the workflow on a single machine I always get emailed the results, even when the return from the Powershell is blank. I'm not brilliant with Powershell so have been searching around for alternatives. I was wondering about return codes perhaps but could I also put these into a Pulseway workflow?
  13. After changing the internal IP on a client's network, I can no longer connect to the workstations using the Remote Control. I still can connect through the command prompt and PowerShell. All those machines are Windows 10/11. However, I can still Remote Control the Windows Server 2019 server. Always getting this error: Any ideas?
  14. Your script writes to "Current Users," but the Pulseway agent runs as a local system account, not a specific user. When testing in PowerShell ISE, it's run under a user account, which is why the script works differently when executed via Pulseway. If the script runs successfully through Pulseway, the registry keys will be placed in the "Computer\HKEY_USERS\.DEFAULT\..." location instead of the intended user-specific location. For more https://ssoidloginportal.in/
  15. Check the script here posted by Jason Slobotski https://stackoverflow.com/questions/18192746/powershell-log-off-remote-session
  16. It is vital to comprehend the difference in execution context between testing in Powershell ISE and using the Pulseway agent. While testing with Powershell ISE is done under a specific user account, Pulseway runs scripts as Local System. This variation may cause keys to be written to the physical registry location for Current Users after successful execution.sso login
  17. I looked at this script, and it will always return "Operating system is not supported" because in the script $major and $minor are strings, I was able to confirm that with the commands: $major.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object $minor.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object I recommend updating the script to this, and I highlighted the changes: $version = (Get-WmiObject Win32_OperatingSystem).Version [int]$major = $version.split(".")[0] [int]$minor = $version.split(".")[1] if ($major -gt 6 -or ($major -eq 6 -and $minor -gt 1)) { Optimize-Volume -driveletter $pwd.drive.name -Analyze -verbos } Else { Write-Output "Operating system is not supported." } Here is the original script: $version = (Get-WmiObject Win32_OperatingSystem).Version $major = $version.split(".")[0] $minor = $version.split(".")[1] if ($major -gt 6 -or ($major -eq 6 -and $minor -gt 1)) { Optimize-Volume $pwd.drive.name -Analyze -verbos } Else { Write-Output "Operating system is not supported." } REF: https://learn.microsoft.com/en-us/powershell/module/storage/optimize-volume?view=windowsserver2022-ps REF: https://lazyadmin.nl/powershell/if-else-statements/ REF: https://theitbros.com/powershell-convert-string-to-int/
  18. This script below runs find when ran locally. When I use it in pulseway it doesnt work. This is what I get as an error message. Can someone help me please. Thanks, Output At C:\Program Files\Pulseway\automation_6d035661_a3a3_4e34_b6c2_8e997a18878a.ps1:5 char:149 + ... owsdesktop-runtime-6.0.24-win-x64.exe" -wait -ArgumentList '/S /v/qn' + ~ You must provide a value expression following the '/' operator. At C:\Program Files\Pulseway\automation_6d035661_a3a3_4e34_b6c2_8e997a18878a.ps1:5 char:149 + ... owsdesktop-runtime-6.0.24-win-x64.exe" -wait -ArgumentList '/S /v/qn' + ~ Unexpected token 'S' in expression or statement. At C:\Program Files\Pulseway\automation_6d035661_a3a3_4e34_b6c2_8e997a18878a.ps1:17 char:212 + ... portAssistConfiguration.mst" DEPLOYMENTKEY="855asd$#" /norestart /qn' + ~ The string is missing the terminator: '. + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId : ExpectedValueExpression #Runs file from Fileserv01 if it can $folder = '\\Fileserv01\Public\IT\Software\DellSupport For Business\SupportAssist.bat if (Test-Path -Path $folder) { PowerShell.exe -ExecutionPolicy Bypass -File "\\Fileserv01\Public\IT\Software\DellSupport For Business\SupportAssistCleanup.ps1" Start-Process -FilePath "\\Fileserv01\Public\IT\Software\DellSupport For Business\windowsdesktop-runtime-6.0.24-win-x64.exe" -wait -ArgumentList '/S /v/qn' Start-Process msiexec -wait -argumentlist '/i "\\Fileserv01\Public\IT\Software\DellSupport For Business\SupportAssistInstaller-x64.msi" TRANSFORMS="\\Fileserv01\Public\IT\Software\DellSupport For Business\SupportAssistConfiguration.mst" DEPLOYMENTKEY="855asd$#" /norestart /qn' } else { New-Item -path "C:\Temp\SupportBusiness -Itemtype Directory Invoke-WebRequest -Uri "https://www.dropbox.com/scl/fi/nxdsz42jkcu5ss4tpdsvf/SupportAssistCleanup.ps1?rlkey=lidz0ms8aatgwhiv8dtvxr6dw&dl=1" -Destination "c:\temp\SupportBusiness\SupportAssistCleanup.ps1" Invoke-WebRequest -Uri "https://www.dropbox.com/scl/fi/j75w4oqajfbjpw2sdrpxg/SupportAssistConfiguration.mst?rlkey=he4shs9vzts47reav8d5ziv6x&dl=1" -Destination "c:\temp\SupportBusiness\SupportAssistConfiguration.mst" Invoke-WebRequest -Uri "https://www.dropbox.com/scl/fi/cuyvomxuui4z29bpk9x2r/SupportAssistInstaller-x64.msi?rlkey=g1lmxvprpb0nv1wxvtefwizii&dl=1" -Destination "c:\temp\SupportBusiness\SupportAssistInstaller-x64.msi" Invoke-WebRequest -Uri "https://www.dropbox.com/scl/fi/p7ctmo837kv9cnsyi6779/windowsdesktop-runtime-6.0.24-win-x64.exe?rlkey=e0ehydmwf1t86bu461b3xp1t9&dl=1" -Destination "c:\temp\SupportBusiness\windowsdesktop-runtime-6.0.24-win-x64.exe" PowerShell.exe -ExecutionPolicy Bypass -File "c:\temp\SupportBusiness\SupportAssistCleanup.ps1" Start-Process -FilePath "\\Fileserv01\Public\IT\Software\DellSupport For Business\windowsdesktop-runtime-6.0.24-win-x64.exe" -wait -ArgumentList '/S /v/qn' Start-Process -FilePath "c:\temp\SupportBusiness\windowsdesktop-runtime-6.0.24-win-x64.exe" -wait -ArgumentList '/S /v/qn' Start-Process msiexec -wait -argumentlist '/i "c:\temp\SupportBusiness\SupportAssistInstaller-x64.msi" TRANSFORMS="c:\temp\SupportBusiness\SupportAssistConfiguration.mst" DEPLOYMENTKEY="855asd$#" /norestart /qn' #Removes Folder after install Remove-Item "c:\temp\SupportBusiness" -recurse }
  19. Hey @R.Rupert There are a number of ways to do it, When running anything through Pulseway, it will default to running as the system account. So trying to run those commands through Pulseway, you're opening the program (if it even supports non-interactive) as the system account, and no user will see it. You could check processes to confirm that though. You would need to run it under user context and right now, Pulseway only has that ability to do this if you log onto the machine in question, open Pulseway Manager, go to Settings - Runtime and scroll to the bottom to Enable PowerShell User Impersonation. This will run scripts through Pulseway as the user you entered. Here is a link to the article for more info - LINK I hope this helps and if you need any more help please let me know! Thanks, Stefan
  20. Hey @techNOW Thanks fro reaching out, you can of course execute this it would just be via a script: <# ============================================================================================================================================ Script Name: Audit: Computers: Uptime In Days Description: Part of the Extended Audit Content Pack for Servers and Computers delivered by Pulseway. Usage: Scheduled to execute in the Task "Extended Audit For Computers - Weekly" tied to the Scope "All Windows 10/11 Computers". Additional notes: This script is write protected and is meant to be used "as is" for Extended Auditing purposes. Vendor: Pulseway Lastest version: 2023-01-27 ============================================================================================================================================ Required variable inputs: None Required variable outputs: Name: "OutputUptimeIndays" Default Type: "Number" Default Value: "0" Associated Custom Field: "Audit: System: Uptime In Days" #> # Please note, this script is write protected and is meant to be used "as is" for Extended Auditing purposes. Function Get-Uptime { $OS = Get-WmiObject win32_operatingsystem $Uptime = (Get-Date) - ($OS.ConvertToDateTime($OS.LastBootUptime)) $Display = + $Uptime.Days Write-Output $Display } $OutputUptimeIndays = Get-Uptime Write-Output "Extended Audit: System: Uptime In Days: $OutputUptimeIndays" # This step writes back the Powershell result to the associated Custom Field. Start-Process -FilePath "$env:RMM_HOME\CLI.exe" -ArgumentList ("setVariable OutputUptimeIndays ""$OutputUptimeIndays""") -Wait You can use just the the Output variable, no Custom Field is required for this to work. Then make a condition based on the output variable being higher than X days in a Workflow. You will need to run it as a script for it to become a Number type variable as currently the Workflow Action "Execute PowerShell Command" only produce Text type variables. So that won't work for the condition. I hope this helps and if you need any more assistance lease let me know Thanks, Stefan
  21. Hey @Leon from AIOI Thanks for reaching out. So in response to your first question please enable PowerShell impersonation. Open Pulseway Manager head to settings > Runtime and Enable PowerShell impersonation then you should be able to enter the credential and run the scripts. Let me know if that works and if not I will raise a ticket for you with support Thanks, Stefan
  22. Hi, I am new to pulseway. Have written the following PowerShell script which works fine on my test machine. Clear-RecycleBin -Force However when run from pulse way it reports the script has run successfully but nothing is deleted from the recycle bin. The following error is shown in execution details: Clear-RecycleBin : The system cannot find the path specified At C:\Program Files\Pulseway\automation_b6682084_076f_4d67_80a0_0200e70e0897.ps1:1 char:1 + Clear-RecycleBin -Force + ~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (RecycleBin:String) [Clear-RecycleBin], Win32Exception + FullyQualifiedErrorId : FailedToClearRecycleBin,Microsoft.PowerShell.Commands.ClearRecycleBinCommand I have tried: cd \ Clear-RecycleBin -Force But same results. Is this a permission issue, that does not allow the script to run ?
  23. Hello All, I am attempting to install puslway by using a powershell script. what i am trying to acomplish is being able to have a way to run a script against a windows machine either via intune or A provisioning package to install pulsway during New deivce provisioning. I have a way to do the install using an MSI file but im worried about the installer expiring, so i was trying to find a way to install pulsway using the installer link which does not expire. Thanks for any help you can provide.
  24. Hi There, Here is my removal script. Hope it works for you ## Powershell Teamviewer Uninstall Script ## Scott Pepper ## Careys Freight Lines ## 6th November 2023 if(Get-Service Teamviewer) { Stop-Service TeamViewer Set-Service Teamviewer -StartupType Disabled Write-Host "Teamviewer is installed" if ([System.IO.File]::Exists("C:\Program Files\Teamviewer\uninstall.exe")) { $process = start-process "C:\Program Files\Teamviewer\uninstall.exe" -windowstyle Hidden -ArgumentList "`/S" -PassThru -Wait exit $process.ExitCode } elseif ([System.IO.File]::Exists("C:\Program Files (x86)\Teamviewer\uninstall.exe")) { $process = start-process "C:\Program Files (x86)\Teamviewer\uninstall.exe" -windowstyle Hidden -ArgumentList "`/S" -PassThru -Wait exit $process.ExitCode } else { write-host ("Teamviewer does not appear installed.") } } exit 0
  25. Hi @techtedg, You can definitely do this through an automation script. You can create a custom field called "AssignedUser" and make it be of system scope. Then assign the custom field to the systems you want to name (you don't have to do it for all systems, the script I have built below will only overwrite the computer name for systems that have a custom field value assigned). Then you will need to create a powershell automation script, add an input variable that is bound to the custom field you've just created and use the powershell script below: $AssignedUser = ''; # this will get automatically generated for you when you create the input variable, you don't need to add this line if ([string]::IsNullOrEmpty($AssignedUser)) { Write-Output "Missing AssignedUser custom field value, aborting..."; exit 0; } $newComputerName = "$AssignedUser $env:COMPUTERNAME"; Set-ItemProperty -Path 'HKLM:\SOFTWARE\MMSOFT Design\PC Monitor' -Name 'ComputerName' -Value $newComputerName; Write-Output "Computer display name changed to '$newComputerName'."; exit 0; Let me know how it goes -Paul

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.