Seems like you have some pretty specific requirements. I've only done Office with the Microsoft supported method, which is to use the OCT (Office Customization Tool) to build the installer. Run the setup.exe with the /admin flag to invoke it.
I don't know if this applies to the 365 version. I use the VL version.
I'm not sure it's possible to accomplish your specific workflow for the reasons below.
1. You'd have to use a metapackage composed of subpackages. Each subpackage can only be run under a single user context. Any package run under the system account set context does not interact with the current logged in user account's desktop.
2. Any dialogs to be displayed to a logged in user must be triggered by a package run as the current logged-in user. However, if that's the case the same package cannot uninstall your package unless the current logged-in user is also an admin user.
3. The the restart option for a metapackage overrides the restart option for all subpackages.
Thanks for the reply back... What if I was to include psexec within a cmd script for the meta package payload that runs with the user context to display the install screen of an software package and also a popup/message?
For example the cmd script for the payload of the meta package/package would include the following line...
------ install.cmd -------------------
psexec -accepteula -s -i -h cmd /c "setup.exe /configure install.xml"
--- end of script ----------------------
The psexec's -s syntax would run the command with system account, even though the meta package/ package is configured to run with the user context and the -I and -h syntax would run the specified application interactively in the logged in user's desktop so the software package install status is seen and with elevated privileges.
Would this possibly work?
I don't know why you would want that specific workflow, but I can tell you how I Upgrade from Office 365 2013 (Or the regular 2010) to Office 365 2016.
There is a Microsoft Fixit (might be you offscrub - not so sure about that) to completely remove an existing Office Version, it works for multiple Installation Versions. After that, you can install the new Office without reboot and just reboot after Installation (but even that is not really necessary).
As it all runs without reboot, within a single Meta-Package there is no further User-Information involved. They see the installation status and just have to wait.
If you do want to inform your users about the activity, you'd need to run a VBScript in user context that will not halt your installation progress as part of a meta package. Invoke it via cmd /c start yourscript.vbs and have it display a message box with whatever you want to communicate. You could even have the script check the existence of the following process by using the wmi process list, and act accordingly. But I personally think that would go a little too far.
The office installation has to go silent if the user has no admin permissions, so I'd suggest to just rely on the LanRev progressbar.