App Monitors
Octory can monitor applications and packages installed via Jamf, AirWatch (Workspace ONE), Intune, Munki, Scripts, and via VPP (or other services that use the App Store). To ask Octory to monitor an application or package installation, you add an item in the Monitors
array in the configuration file.
To use Munki monitoring, set the Monitor Installer
key as AirWatch
and specify the paths to the corresponding Munki log files (located in /Library/Managed Installs/Logs/Install.log & /Library/Managed Installs/Logs/ManagedSoftwareUpdate.log) in the keys AirWatchInstallLogPath
and AirWatchManagedSoftwareUpdateLogPath
.
To see the monitoring in action, add an AppMonitor
component to a container. You can find examples in the Webview fullscreen presets.
Keys
Name | Type | Possible values | Required |
---|---|---|---|
Type | String | Application | Required |
Name | String | - | Required |
Installer | String | Jamf , AirWatch , Intune , System , Managed | Required |
Detail | String | - | |
DisplayName | String | - | |
GenerateVariable | Boolean | - | |
IconURL | String | - | |
Identifier | String | - | |
IsMandatory | Boolean | - | |
PolicyID | String | - | |
Condition PRO | String | - |
Detail
Type Required
Type: String
Possible values: Application
Explanation: Monitor type has to be Application
.
Name Required
Type: String
Explanation: The name of the application or package as it will appear in the MDM log or in the /Applications folder for App Store downloads. You have to ensure that the value of this key is contained in the name of the installed package or application.
Installer Required
Type: String
Possible values: Jamf
, AirWatch
, Intune
, System
, Managed
Explanation: This key details the options for indicating the installation method of an application. If Jamf or AirWatch is used for direct installation, select either the "Jamf" or "AirWatch" option, respectively. For installations via the App Store, such as those using the Volume Purchase Program (VPP), select the "System" option. To inform Octory that the installation states will be managed and updated by the octo-notifier, choose the "Managed" option. It should be noted that the "Intune" key is specifically designed to monitor installations of applications using the macOS app (DMG) or macOS app (PKG) type.
Detail
Type: String
Explanation: Description text displayed under the name or display name in the AppMonitoring
component.
DisplayName
Type: String
Explanation: The name which will be displayed to the user in the AppMonitoring component. Otherwise, it’s the Name
key which is displayed, or the Identifier
key if specified.
GenerateVariable
Type: Boolean
Explanation: If set to true
, the application will generate a variable for this monitor, associated to its current installation state. This variable can then be used as any other in a action or to be watched in the logs. The format is [NAME]_INSTALLATION_STATE
and thus can take 4 values “Installing”, “Installed”, “Not installed”, “Installation failed”.
For example with “Microsoft_Teams” for the Name
key, this could give: MICROSOFT_TEAMS_INSTALLATION_STATE
: Installing
IconURL
Type: String
Explanation: Let you specify a local or online URL for the icon to be shown in the AppMonitoring
component. Octory will use a generic icon image if not specified.
Identifier
Type: String
Explanation: The bundle identifier used by the system to download an application from the Mac App Store. Useful only when installing VPP applications which are not downloaded directly in the /Applications folder (like Microsoft applications for example). Example: com.microsoft.Word
IsMandatory
Type: Boolean
Default: true
Explanation: When set to false
, the app monitor will be displayed in the AppMonitoring
component but will not prevent the overall installation to be marked as complete and thus the app to be terminated when not all app monitors are installed.
PolicyID
Type: String
Explanation: This key is specifically applicable for scenarios where the Installer key is set to Intune. In such cases, instead of utilizing the Name key to monitor app installation processes, the PolicyID will be employed as the primary tracking identifier.
The PolicyID of an application can be found in the URL.
Condition PRO
Type: String
Explanation: Conditions to display which app installation should be shown in AppMonitoring
component. When the condition evolves, an animation occurs in the AppMonitoring
component to insert or remove the component. More information on conditions.
Example
Monitor for the application Things, installed via VPP. The App Store identifies the application as Things3 so it’s the one written here. The name displayed to the user is Things.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- ... -->
<key>Monitoring</key>
<dict>
<key>Monitors</key>
<array>
<dict>
<key>Type</key>
<string>Application</string>
<key>Name</key>
<string>Things3</string>
<key>DisplayName</key>
<string>Things</string>
<key>Detail</key>
<string>Your soon favorite To-do list</string>
<key>Installer</key>
<string>System</string>
</dict>
</array>
</dict>
<!-- ... -->
</dict>
</plist>
Monitor for the application VMware Fusion, installed via Jamf. A placeholder is used to address the icon path.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- ... -->
<key>Monitoring</key>
<dict>
<key>Monitors</key>
<array>
<dict>
<key>Type</key>
<string>Application</string>
<key>Name</key>
<string>VMWareFusion</string>
<key>DisplayName</key>
<string>VMware Fusion</string>
<key>Installer</key>
<string>Jamf</string>
<key>IconURL</key>
<string>${AppIconsFolderPath}/VMWare.png</string>
</dict>
</array>
</dict>
<!-- ... -->
</dict>
</plist>
Monitor for the application Gimp, installed via AirWatch. The app name and the version are strictly identified by the Identifier
key. The IconURL
key addresses Wikipedia.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- ... -->
<key>Monitoring</key>
<dict>
<key>Monitors</key>
<array>
<dict>
<key>Type</key>
<string>Application</string>
<key>Identifier</key>
<string>Gimp-v2.10.4.pkg</string>
<key>DisplayName</key>
<string>Gimp</string>
<key>Detail</key>
<string>Less boring meetings</string>
<key>IconURL</key>
<string>https://upload.wikimedia.org/wikipedia/commons/thumb/4/45/The_GIMP_icon_-_gnome.svg/1024px-The_GIMP_icon_-_gnome.svg.png</string>
<key>Installer</key>
<string>AirWatch</string>
</dict>
</array>
</dict>
<!-- ... -->
</dict>
</plist>