-
-
Notifications
You must be signed in to change notification settings - Fork 9
Configuration
Tobias Almén edited this page Jan 7, 2025
·
19 revisions
Support Companion supports a wide range of configurations through MDM Profiles.
Key | Type | Default | Required | Description |
---|---|---|---|---|
BrandName |
String | Support Companion | False | Configures the brand name shown in the menu |
AccentColor |
String | User primary accent color | False | Configures the brand color shown in the app, specify in hex format |
BrandLogo |
String | None | False | Configures the brand logo shown in the apps side menu. Specify a base64 string |
BrandLogoLight |
String | None | False | Configures the brand logo shown in the apps side menu when light theme is used. Specify a base64 string |
SupportPageUrl |
String | None | False | Configures the URL to open when the user clicks on the Get Support button |
ChangePasswordUrl |
String | None | False | Configures the URL to open when the user clicks on the Change Password button |
ChangePasswordMode |
String | local | False | Configures the mode for the Change Password button, available modes are: local , SSOExtension , url
|
SupportEmail |
String | None | False | Configures the email address shown when the user clicks on the Support Info button |
SupportPhone |
String | None | False | Configures the phone number shown when the user clicks on the Support Info button |
HiddenCards |
Array | None | False | Configures which widgets to hide, available widgets are: DeviceInformation , Evergreen , Battery , Actions , ApplicationInstallProgress , Storage , DeviceManagement , PendingAppUpdates
|
HiddenActions |
Array | None | False | Configures which actions to hide, available actions are: ChangePassword , Reboot , OpenManagementApp , GetSupport , GatherLogs , SoftwareUpdates , RestartIntuneAgent
|
NotificationInterval |
Integer | 4 | False | Configures the interval for notifications in hours for Application Updates and Software Updates notifications. Setting to 0 disables notifications |
NotificationTitle |
String | Support Companion | False | Configures the title for notifications |
NotificationImage |
String | None | False | Configures an image to add to notifications. Path should be specified |
SoftwareUpdateNotificationMessage |
String | Software Updates Available. Please update your device to the latest version. | False | Configures the message for notifications for Software Updates notifications |
SoftwareUpdateNotificationButtonText |
String | Update Now 🚀 | False | Configures the button text for notifications for Software Updates notifications |
AppUpdateNotificationMessage |
String | App Updates Available. Please update your apps to the latest version. | False | Configures the message for notifications for App Updates notifications |
AppUpdateNotificationButtonText |
String | Update Now 🚀 | False | Configures the button text for notifications for App Updates notifications |
Mode |
String | Dynamic | False | Configures the app to show application info for either Munki, Intune or to use System profiler for app info. The app tries to dynamically detect which mode to use. See info below. Available modes are Munki , Intune and SystemProfiler . |
LogFolders |
Array | /Library/Logs/Microsoft | False | Configures the log folders to gather logs from. Only used when gathering logs. |
Actions |
Array | None | False | Configures custom actions to add to the tray menu and in Self Service view. If Description is configured it will show in the Self Service view and if IsPrivileged is set to true the action will be run by the privileged helper. See example below. |
ShowDesktopInfo |
Bool | False | False | Configures whether to show information on the desktop. |
DesktopInfoWindowPosition |
String | LowerRight | False | Configures the position of the desktop info, available positions are: UpperLeft , UpperRight , LowerLeft , LowerRight
|
DesktopInfoLevel |
Integer | 4 | False | Configures the level of information to show on the desktop, available levels are: 1 , 2 , 3 , 4 , 5
|
DesktopInfoHideItems |
Array | None | False | Use this array to determine which information to hide. Available items are: HostName , Model , SerialNumber , Processor , IPAddress , Memory , OSBuild , OSVersion , LastRestart , FileVault , StorageName , SupportPhone , SupportEmail , Category , Divider . It is also possible to hide entire sections, Hardware Specifications , System Information , Network Information , Storage , Support . |
DesktopInfoBackgroundOpacity |
Real | 0.001 | False | Configures the background opacity for the desktop info. Configure a value between 1.0 - 0.1 |
DesktopInfoFontSize |
Integer | 14 | False | Configures the font size for the desktop info. |
DesktopInfoBackgroundFrosted |
Bool | False | False | Enables a frosted glass look on the desktop info when set to true
|
CustomCardPath |
String | None | False | Configures a path to a JSON file containing custom widgets to show on the Home view. An example script can be found here |
KnowledgeBaseUrl |
String | None | False | If configured, a menu item "Knowledge base" will show up where the user can browse the page from the UI. |
MenuShowIdentity |
Bool | True | False | Configures whether to show the Identity menu item. |
MenuShowApps |
Bool | True | False | Configures whether to show the Apps menu item. |
MenuShowSelfService |
Bool | True | False | Configures whether to show the Self Service menu item. |
MenuShowCompanyPortal |
Bool | True | False | Configures whether to show the Company Portal menu item. |
MenuShowKnowledgeBase |
Bool | True | False | Configures whether to show the Knowledge Base menu item. |
ShowLogoInTrayMenu |
Bool | True | False | Hides the configured brand logo in the tray menu when set to false . |
MarkdownFilePath |
String | None | False | Configure a path to a Markdown file to show in the menu. |
MarkdownMenuLabel |
String | None | False | Configure the menu label for the custom Markdown view. |
MarkdownMenuIcon |
String | None | False | Configure the icon for the custom Markdown menu item. |
CustomCardsMenuLabel |
String | None | False | Configure the menu label for the custom cards view. |
CustomCardsMenuIcon |
String | None | False | Configure the icon for the custom cards menu item. |
RequirePrivilegedActionAuthentication |
Bool | True | False | When set to false , disabled authentication requirement when running privileged actions via CLI. |
EnableElevation |
Bool | False | False | When set to true allows the user to elevate to admin during a set time frame. |
RequireResonForElevation |
True | False | Requires the user to enter a reason for the elevation. | |
ReasonMinLength |
Integer | 10 | False | Set a minimum amount of characters the user must enter as the reason. |
MaxElevationTime |
Integer | 5 | False | The amount of time (in minutes) the user is elevated. |
ElevationWebhookUrl |
String | None | False | When configured, sends the entered elevation reason to a webhook instead of saving to disk. |
ShowElevateTrayCard |
Bool | True | False | Configure wether to show the elevate button in the tray menu or not. |
ElevationSeverity |
Integer | 6 | False | Configure the elevation severity. Defaults to 6 (Informational). |
The app will automatically detect and set its operational mode at startup based on the following conditions:
- Munki Mode: If both Company Portal and Managed Software Center are present, or only Managed Software Center is present.
- Intune Mode: If only Company Portal is present and device is enrolled to a MDM with the url "i.manage.microsoft.com".
- SystemProfiler Mode: If neither Company Portal nor Managed Software Center is present.
Customize the information displayed on the desktop:
- DesktopInfoLevel: Controls the amount of detail (1-5).
- 1: Hardware Specifications
- 2: Hardware Specifications, Network Information
- 3: Hardware Specifications, Network Information, System Information
- 4: Hardware Specifications, Network Information, System Information, Storage
- 5: Hardware Specifications, Network Information, System Information, Storage, Support
- DesktopInfoHideItems: Specifies which items to hide (e.g., IPAddress). It also also possible to hide entire sections. For example, if
DesktopInfoLevel
is set to5
, you can hideNetwork Information
and show the rest of the categories. This allows for ultimate flexibility. - DesktopInfoFontSize: Adjusts the font size.
When configuring icons for custom widgets or actions, the icon name should be a SF Symbols name. For example questionmark
.
<?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>PayloadContent</key>
<array>
<dict>
<key>Actions</key>
<array>
<dict>
<key>Command</key>
<string>killall pboard</string>
<key>Description</key>
<string>Restarts pasteborad, useful if copy&Paste is not working.</string>
<key>Icon</key>
<string>document.on.document.fill</string>
<key>Name</key>
<string>Restart clipboard</string>
<key>ButtonLabel</key>
<string>Restart</string>
</dict>
<dict>
<key>Command</key>
<string>defaults write com.apple.finder AppleShowAllFiles YES && pkill Finder</string>
<key>Description</key>
<string>Shows hidden files in Finder. Will restart Finder once initiated.</string>
<key>Icon</key>
<string>eye.fill</string>
<key>Name</key>
<string>Show hidden files</string>
</dict>
<dict>
<key>Command</key>
<string>networksetup -setairportpower en0 off && sleep 3 && networksetup -setairportpower en0 on</string>
<key>Description</key>
<string>Restarts the WiFi interface to resolve connectivity issues, such as slow speeds, dropped connections, or inability to connect to networks. This action can help refresh the network adapter and clear temporary issues without needing to restart the entire system.</string>
<key>Icon</key>
<string>wifi</string>
<key>Name</key>
<string>Restart WiFi</string>
</dict>
<dict>
<key>Command</key>
<string>killall IntuneMdmAgent</string>
<key>Description</key>
<string>Restarts Intune MDM Agent. Useful if troubleshooting scripts or app installs from Intune.</string>
<key>Icon</key>
<string>app</string>
<key>IsPrivileged</key>
<true/>
<key>Name</key>
<string>Restart Intune Agent</string>
</dict>
</array>
<key>BrandName</key>
<string>AwesomeCorp</string>
<key>DesktopInfoBackgroundOpacity</key>
<real>0.29999999999999999</real>
<key>DesktopInfoHideItems</key>
<array>
<string>SupportPhone</string>
</array>
<key>DesktopInfoLevel</key>
<integer>5</integer>
<key>HiddenCards</key>
<array>
<string>Evergreen</string>
</array>
<key>KnowledgeBaseUrl</key>
<string>https://github.com/macadmins/supportcompanion</string>
<key>LogFolders</key>
<array>
<string>/Library/Logs</string>
</array>
<key>PayloadDisplayName</key>
<string>FirstApp</string>
<key>PayloadIdentifier</key>
<string>SC.9C1EF466-BFEC-462F-930E-38BB9965B21F</string>
<key>PayloadType</key>
<string>com.github.macadmins.SupportCompanion</string>
<key>PayloadUUID</key>
<string>9C1EF466-BFEC-462F-930E-38BB9965B21F</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>SupportEmail</key>
<string>[email protected]</string>
<key>SupportPhone</key>
<string>111-222-333</string>
</dict>
</array>
<key>PayloadDisplayName</key>
<string>SupportCompanion</string>
<key>PayloadIdentifier</key>
<string>5.A2283B66-D43C-48FF-BD1D-CE0EBB4CCA22</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>A2283B66-D43C-48FF-BD1D-CE0EBB4CCA22</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>