Update Mitel Phone Manager via GPO

Since Covid hit I have been looking at ways to improve our home working offering. I trialled using our existing Mitel Phone Manager as a softphone with a handful of users and it is a great success, however there were some small annoyances that are to be resolved by upgrading us to the latest version.

Side Note – I’ve had this on the to-do list for like a year when trying to integrate this into my MDT task sequences. However I’ve never been able to spend the entire day with out distractions working on it. I always get distracted then have to spend time retracing my steps, or procrastinating entirely.

So our telephony partner upgraded the server side software, and left me to do the client side. The client is forward compatible luckily, but with the ‘go-live’ date looming I had to come up with a way to automate it.

I’m a big believer in Group Policy and Active Directory and if I can use them to achieve my goals then why not?

My very first test was “Can I do an in-place upgrade and keep user information?”. This was basically just running the .exe and clicking next a handful of times. Turns out I can! So I know this plan is a go.

I started by extracting the MSI from the EXE using the commands provided by Mitel in the MiVoice Help. If you haven’t used it it’s fantastic, highly recommend! In an elevated command prompt I ran the following against the EXE. (Don’t use PowerShell, it will not work.)

This places a setup.msi into the folder specified. (I did this for both 32-bit and 64-bit and then put them into their own folders). Then place the files onto a shared folder on the network.

I ran the MSI manually again to make sure that the in-place upgrade still worked. (It does!) As a test I ran it with /qn from a CMD window to see if it still works… and it does! A silent upgrade!

Now seeing as all it takes is the /qn switch to do a silent update and as Group Policy uses this when installing software creating the policy was simple. I created a new policy called C_Mitel Phone Manager Update. Then I created a new assigned package leaving everything as default.

I have machines that I do not want the phone manager to be installed on, and my OU’s are not set up to allow me to filter on those alone, so I need a WMI filter.

I created a WMI filter to only apply the upgrade to computers that had the Phone Manager installed and was on the previous version (5.0.11 in my case), and ignore any other machine. I used the Get-WmiObject Powershell module to find out the Name and Version of the software I need to filter for:

Then using the information created the following filter. (Note the version number is different to what the product version is.)

Applying this to the C_Mitel Phone Manager Update GPO meant that if the old Phone Manager was installed it will effectively do an In-place Upgrade to the latest version, retaining the user settings. If the software isn’t found or is the updated version then it won’t run at all.

Related Post

Leave a Reply