Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Joe.McCall last won the day on May 12

Joe.McCall had the most liked content!

Community Reputation

13 Good

My Information

  • Agent Count
    Less than 100

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Joe.McCall

    Computer Warranty Updater (HP/Dell/Lenovo)

    https://developers.hp.com/hp-product-warranty/forum/api-down Just a heads up, if you hadn't already noticed that HP warranty information was not updating, the warranty API is still offline for "retooling" (apparently since April 9).
  2. Probe templates out of sync is a known issue, it will basically always show that for any of the built-in templates once you start adding your own (ie, adding new routers/switches/etc under the existing device templates tree). Aside from some printers, most of the devices we manage had to be added via custom templates.
  3. Message LIKE '%Group Name:Administrators%' AND Message NOT LIKE '%Account Name:%$%' You will need wildcards to match on something inside the string. Testing against my db, the log entries I have are all computer accounts, so the NOT LIKE filters those out.
  4. Joe.McCall

    Automate - Patch Upgrade Guide

    Ran this patch on Tuesday and had no issues until today. Had all logins start failing abruptly this afternoon and had to reboot the Automate server to get back in.
  5. Joe.McCall

    HP driver update script...

    Attached an updated version of my BIOS update script. It uses a PowerShell function to locate the BIOS update executable instead of relying on fixed path variables, which will resolve issues with various models that unpack with different folder structures. HP SDM - BIOS Update.xml
  6. Joe.McCall

    Computer Warranty Updater (HP/Dell/Lenovo)

    https://developer.connectwise.com/Products/Manage/Developer_Guide/Authentication This part of the site has the info. You need to setup an API member in Manage. There’s a global parameter in the script that runs the API update for the base64 authentication string. It has a dummy value right now, hence the error.
  7. Joe.McCall

    Computer Warranty Updater (HP/Dell/Lenovo)

    I run a modified version of the script from this thread nightly. It executes the warranty update portion on the Automate side, then calls a function script to recurse through all computers that are missing the "Warranty Updated in Manage" EDF check. For each found computer, it executes a second function script to perform the actual API update call to push the information into Manage. You can use this method to push to other configs as well (think network devices!). The HP warranty lookup function works for printers as well as computers, with a little bit of tweaking and customization. CWA - SQL Function - Update Computer WarrantyExpiration in Manage.xml CWA - SQL Function - Update WarrantyExpiration in Manage.xml
  8. Joe.McCall

    Custom Remote Command Names

    The command is listed there, with the correct ID and whatnot. That seems to be generated automatically when the plugin is installed or the dbagent restarted. However, looking at that table pointed me in the right direction as the commands listed there did not match the commands showing in the Control Center. The Control Center description has to be manually entered into the remotecommands table.
  9. Joe.McCall

    Custom Remote Command Names

    To elaborate further, I have a remote agent command (ISvcCommand) defined in a remote agent plugin like this: public class RemoteCommands : ISvcCommand { private IServiceHost4 serviceHost; public int CommandNumber { get { return 50100; } } public void Decommision() { } public string ExecuteCommand(string parameters, ref int errorLevel) { string output="Placeholder."; return output; } public void Initialize(LabTech.Interfaces.IServiceHost2 host) { serviceHost = (IServiceHost4)host; } public object MessageFromTray(int consoleNumber, object parameters) { return null; } public string Name { get { return "Custom Remote Command"; } } } And I have an IControlCommand defined in a separate control center plugin like this: public class ControlCommand : IControlCommand { private IControlCenter _host; public int CommandNumber { get { return 50100; } } public string Name { get { return "Custom Remote Command"; } } public void Decommision() { this._host = (IControlCenter)null; } public void Initialize(IControlCenter host) { this._host = host; } } But I only ever get this in the Commands window: So I am trying to figure out if I am missing some kind of definition or declaration somewhere in the code that will translate the command name through correctly to the Control Center when the command is run.
  10. Joe.McCall

    Computer Warranty Updater (HP/Dell/Lenovo)

    I run that in an Automate script using the Execute Script function. IIRC, you can register for your API auth key/find out where to get it via (https://developer.connectwise.com) I use EDF's to track computers that have had their warranty information updated in Manage and run a nightly maintenance script that loops through the computers, gathers the Manage ID from the plugin table, then runs the powershell via a function script to push the warranty information via the API. Anything that is synced to Manage (Network Devices!) can be updated in similar fashion, as you will have the Manage ID in the associated plugin table on your Automate server.
  11. Joe.McCall

    Computer Warranty Updater (HP/Dell/Lenovo)

    I went through this with support a few months back and the official word is that the Expiration field can't be synced. You can however update it via the Manage API directly. $BaseUri = "https://@ManageURL@/v4_6_release/apis/3.0/company/configurations/@ManageId@" $ContentType = "application/json" $Headers=@{ "Authorization"="Basic @APIKey@" } $action = @" [ { "op": "replace", "path": "/warrantyExpirationDate", "value": "@WarrantyEndDate@" } ] "@ try{ $JSONResponse = Invoke-RestMethod -URI $BaseURI -Headers $Headers -Body $action -ContentType $ContentType -Method Patch -ErrorAction Stop Write-Host "Successfully updated warranty end date to" $JSONResponse.warrantyExpirationDate }catch{ write-host "Something went wrong." $_.Exception.Message }
  12. Joe.McCall

    Custom Remote Command Names

    I have a working custom remote command that always shows as "Unknown Command" in the Command tab. I was assuming that the Name public string for the class would be what returned in the results, but it appears that is not the case or I am doing something incorrectly. The plugin is based off the "Custom Remote Agent Commands" example. It's working otherwise, but it bugs me that it's not displaying the command name correctly. Any ideas?
  13. Joe.McCall

    Auto Deletion Script Help

    My recommendation would be to build a Powershell script that handles the deletion, since that can do more complex checks like when the files/folders were last modified, etc. Use your Automate script to execute the Powershell script (once a week? nightly? whenever you like, if all of the date checking is in Powershell). Have it use Write-Output to dump any relevant information to the results variable (use the Execute Script function in Automate). You could have the script run a simple powershell query first to see if there are any applicable files and exit if not, create a ticket (if desired), etc.
  14. Remote monitors are the route I went with, but here's a couple of topics for HP(E) and Dell. Nothing out of the box for this.
  15. Joe.McCall

    Computer Warranty Updater (HP/Dell/Lenovo)

    Looks like something went wrong with attaching the file, it's coming in at 0Kb.