What is Assigner?
Assigner is part of the Jamf Mobile Assist app and allows for the quick setup and configuration of shared-use iOS and iPadOS devices. A user simply picks up a device, authenticates, scans a code, or enters other admin-defined information to identify their role or location. Assigner then configures the device for their needs. When they're done, they simply tap a button in the same app to clear those choices from the device.
Beginning with Mobile Assist version 1.9.0, Assigner was redesigned to allow for a greater degree of customization, as well as provide admins with the ability to be more granular with the criteria that defines how Assigner assigns devices to users.
Updates with this version include:
- Tile-based user assignment workflow
- Enable/disable any tile in the workflow
- Customize all aspects of each tile, including colors, text, icons, input method (e.g. use camera to scan for input, type manually, choose from dropdown menus)
- Customize all colors for app and text including use of solid backgrounds or gradients
- Customize branding with a company logo via a URL to the image
- Do all of the above from a Designer Mode that is built into the app and automatically creates the App Config you'll use in Jamf Pro to configure Assigner on all your devices
How does Assigner Work?
From a very high level, Assigner takes information that a user inputs into an iOS device and writes it to Jamf Pro, where that information is used to determine Smart Group memberships to deploy configurations and apps.
What data points are written to in Jamf Pro?
In the device inventory record, the following items are written to with Assigner:
- Username
- Extension Attribute 1 (admin-defined)
- Extension Attribute 2 (admin-defined)
- Building (admin-defined)
- Department (admin-defined)
Assignment Workflow / Tiles
Assigner makes use of a tile-based assignment workflow. Each of the 5 tiles can be customized to fit the needs of a wide range of organizations across various industries. Additionally, practically all aspects of the app can be customized, from text, colors, icons, menus, input methods and branding logo.
The user progresses through the tiles, either manually typing information, selecting from dropdown menus or scanning text / QR codes using the device camera.
When a user successfully completes the workflow, they are provided with confirmation and their configurations / apps are automatically deployed. The Assigner app then displays a message that the device is currently assigned and can be unassigned using the Reset button.
Initial Required Setup
To access Assigner from the Mobile Assist app, you must first complete the following steps.
Install Jamf Mobile Assist App Via Jamf Pro
- Distribute app to Jamf Pro using Volume Purchasing workflow
- Add Jamf Mobile Assist to Jamf Pro app catalog if not created automatically
- Check Assign Content Purchased in Volume in the Managed Distribution tab
- Do not scope and leave App Configuration blank at this time
- Take note of the app record ID in the URL displayed in the browser address bar for reference in the next steps:
https://yourinstance.jamfcloud.com/mobileDeviceApps.html?id=18&o=rIn this example, the ID is18.
Enable Assigner with Built-In Tool (Jamf App Wizard)
Next, Assigner must be configured to work in Jamf Pro. The Mobile Assist app contains a tool called Jamf App Wizard. This tool will automatically set up the required API Role and Client, as well as create Assigner's Linked App Integration.
Scope Mobile Assist to a device you have access to. Do not add any App Configurations.
Launch Mobile Assist on this device. When no App Config is present, Jamf App Wizard will automatically open. You can also use the following App Config keys to open the Wizard at any point after deployment:
<key>wizard-mode</key> <string>yes</string>Using an account with Administrator privileges, log into your Jamf Pro instance.
After loading completes, all mobile device apps in your instance will display. Find the entry for Jamf Mobile Assist. Note: if you have multiple entries, use the ID from Step 3 above as a reference.
Tap on the app to view detail. In the app description, select Begin App Integration.
Complete each step in the Assigner Integration workflow:
- Confirm the Assigner tab is selected
- Enter a name for the API Role then click Create API Role. Note: an error will return if you enter a name that already exists.
- Enter a name for the API Client then click Create API Client
- Confirm App Link Request: review the names and object IDs that have been created for this integration
- If everything looks good, click Complete App Link
- If successful, you can return to the previous section by going to the Navigation tab and tapping the Return button
- Now, you can view the integration in the Current Integrations tab
Basic Required App Config
With the above steps completed, you can now scope the app and set the following temporary App Config so that Assigner is activated. In the Jamf Pro Mobile Device App record for Jamf Mobile Assist, add this temporary App Config to enable Assigner:
<!-- Assigner Mode Configuration -->
<key>assigner-mode-enabled</key>
<string>yes</string>
<!-- Required keys (do not edit) -->
<key>JPS_URL</key>
<string>$JPS_URL</string>
<key>JSSID</key>
<string>$JSSID</string>
<key>MANAGEMENTID</key>
<string>$MANAGEMENTID</string>
<key>OAUTH_AUTH_CODE</key>
<string>$OAUTH_AUTH_CODE</string>
<key>APP_CONFIG_REINSTALL_CODE</key>
<string>$APP_CONFIG_REINSTALL_CODE</string>
- Copy the above code and navigate to the Mobile Assist app (Devices > Mobile Device Apps > Jamf Mobile Assist > App Configuration)
- Click Edit, paste the code above then click Save
- With the above steps complete, you should now be able to open Mobile Assist on a device and Assigner will automatically launch
Designer Mode
Designer Mode allows you to build your Assigner tile workflow directly from within the Assigner app. When complete, you can export the App Config XML and AirDrop / Message, etc. this to a device where you can access and paste the code into Jamf Pro.
Entering Designer Mode
To enter Designer Mode:
- Launch Mobile Assist / Assigner
- Press and hold the logo at the top of the main view for 5 seconds. A passphrase window will appear
- The default passphrase is "admin" and can be changed in Designer Mode
Customize Assigner Tiles and Appearance
Each Assigner tile can be customized, as can the colors, text, icons, input method and logo presented in the app.
Camera Scan / Form Entry Mode
Selecting a mode option does the following:
Form & Scan
- Camera scanner is enabled and will allow the user to use the device camera to scan codes and text
- When enabled, you can scan from a tile that displays the scan icon
Form
- Camera scanner is not enabled and all fields must be entered manually
Login Tile (Tile 1)
This tile can be configured to require a user to authenticate against Jamf Pro (Jamf Pro account or LDAP) and will not progress further if correct credentials are not entered.
Note: If scanner is disabled, this tile will present with a username / password configuration. If the scanner is enabled, the password field will not display.
Configure this tile as follows:
Enabled — Enable or disable tile from workflow
Title — Change the text of the tile's title
Icon — Change the icon next to the title. You can preview every image available by scrolling to the bottom of Designer Mode and tapping "Browse all images"
Preview Tile — Tap here to preview your design
Extension Attribute Tiles (Tiles 2–5)
These tiles write to Mobile Device Extension Attributes in Jamf Pro by allowing the user to select from a dropdown list or scan/enter text directly. Make sure you've created your desired number of Extension Attributes with an Input Type of Text Field.
Configure these tiles as follows:
Enabled — Enable or disable tile from workflow
Input
- Menu: Allow users to select items from a dropdown list
- Text: Allow users to scan or manually enter values
Title — Enter the exact name of the Extension Attribute here
Icon — Change the icon next to the title
Menu — Enter the items you want the user to select from in the dropdown menu as comma-separated values (ex: Item 1, Item 2, Item 3). Note: Input must be set to Menu. Important: Press return on the keyboard to commit.
Building and Department Tiles (Tiles 6–7)
The final two tiles write to the device record's Building and Department attributes. The user will be presented with a dropdown of available Building and/or Department selections.
Configure these tiles as follows:
Enabled — Enable or disable tile from workflow
Title — Cannot be changed for Building or Department
Icon — Change the icon next to the title
Menu — Enter the items you want the user to select from in the dropdown menu as comma-separated values. For Building and Department, you must follow this naming convention:
ObjectID:Name, ObjectID:Name, ObjectID:Name(where ObjectID is the Jamf Pro ID for the Building or Department and Name is the name of the Building or Department)- To get a Building or Department's Jamf Pro ID, go to Jamf Pro > Settings > Network > (Buildings or Departments) > select an item > read the URL for that item — the ID will be the trailing number
- For example, if you have a Building called "New York", clicking on it will display
https://myinstance.jamfcloud.com/view/settings/network-organization/buildings/3. To add in Assigner, use3:New York - Important: Press return on the keyboard to commit
Text Color Scheme
These values are used to change the color of text (either light or dark) to work with any color you chose for the app's tiles and background.
Headings Text — Sets color of the text found under the logo. The text itself can be changed in Other Text Values > Title
Tile Text — Sets color of text and icon in tiles
Button Text — Sets the color of the text in buttons (e.g. Submit/Reset, scan, dropdown menus)
Other Text Values
Here, you can change the content of the text that displays in non-tile portions of the app.
Title — Sets the text that appears below the branding logo
Reset Button — Sets the text on the button that is used to reset the device assignment after it is assigned
Assignment Complete Line 1 — Sets the first line of text that appears after assignment is successful. This replaces the tile view
Assignment Complete Line 2 — Sets the second line of text that appears after assignment is successful. This replaces the tile view
Branding Image Link
Sets the branding image displayed at the top of the main screen using a URL.
Branding Image Link — Enter the URL of a branding image that you would like to use for the app. The image will appear immediately in the space below. If the link does not work or the image otherwise can't be displayed, a placeholder image and text are automatically applied. Make sure to test the image sizing and spacing on the main Assigner screen.
Background Color Scheme
Here, you can set the overall color of the app, tiles and buttons, etc. Additionally, you can set the background to either a gradient or solid color.
Background — Sets Gradient or Fill (solid) background color scheme for the app
- If Gradient selected, Colors 1–3 are used throughout the app with Color 1 appearing at top of background, Color 2 in the middle and Color 3 at the bottom
- If Fill selected, Color 1 is used for the background and Color 2 is not used
Color 1: Top Gradient / Fill — Background top gradient if Gradient enabled, background fill if Fill enabled
Color 2: Mid Gradient — Background middle gradient if Gradient enabled
Color 3: Bottom Gradient / Buttons
- Background bottom gradient if Gradient enabled
- Sets color of all buttons and assignment confirmation animation
- Sets tile color (top stripe / border of tile is 100% color opacity while the rest of the tile is a dynamic opacity of Color 3, changing depending on background and tile workflow progress)
Designer Mode Passphrase
This changes the default Designer Mode passphrase. Make sure to change this setting immediately when configuring Assigner.
Browse All Images
Click this button to view a list of every icon that you can use to customize each tile. Note that the list is extremely large but any icon can be used in your design.
View & Export App Config
After completing your design, you can view and export the App Config XML. This will go into the Mobile Assist record in Jamf Pro and will configure all devices running Assigner according to the customizations made in Designer Mode.
View App Config — To view the XML, tap View App Config.
Copy / Share App Config — To export this App Config so that it can be saved to Jamf Pro, tap Copy / Share App Config, then select a share method to send the configuration.
App Config
After configuring Assigner via Designer Mode, you will have a complete App Config that must go into Jamf Pro. This will configure all devices running Assigner according to the customization outlined in Designer Mode. After exporting the App Config from Designer Mode, copy it and perform the following steps.
Add App Config to Jamf Pro
With the App Config code copied to your clipboard, log into your Jamf Pro instance and perform the following:
- Go to Devices > Mobile Device Apps > Jamf Mobile Assist > App Configuration > Edit
- Paste the App Config in the Preferences window
- Click Save
Appendix A - App Config Reference
The following is the template for configuring Assigner. This is provided for informational purposes, as Assigner's Designer Mode automatically creates this for you.
<!-- Assigner Mode Configuration -->
<key>assigner-mode-enabled</key>
<string>yes</string>
<key>branding-image-link</key>
<string>https://resources.jamf.com/images/logos/Jamf-one-color.png</string>
<key>assigner-scanner-enabled</key>
<string>yes</string>
<!-- Field 1: Assign username -->
<key>assigner-username-enabled</key>
<string>yes</string>
<key>assigner-username-icon</key>
<string>person.fill</string>
<key>assigner-username-title</key>
<string>User</string>
<!-- Field 2: Assign extension attribute #1 -->
<key>assigner-ea1-enabled</key>
<string>yes</string>
<key>assigner-ea1-icon</key>
<string>person.text.rectangle</string>
<key>assigner-ea1-title</key>
<string>Extension Attribute 1</string>
<!-- Menu or Text -->
<key>assigner-ea1-type</key>
<string>menu</string>
<!-- if Menu, then required -->
<key>assigner-ea1-menu</key>
<string>Item 1, Item 2, Item 3</string>
<!-- Field 3: Assign extension attribute #2 -->
<key>assigner-ea2-enabled</key>
<string>yes</string>
<key>assigner-ea2-icon</key>
<string>ipad</string>
<key>assigner-ea2-title</key>
<string>Extension Attribute 2</string>
<!-- Menu or Text -->
<key>assigner-ea2-type</key>
<string>menu</string>
<!-- if Menu, then required -->
<key>assigner-ea2-menu</key>
<string>Item 1, Item 2, Item 3</string>
<!-- Field 4: Building -->
<key>assigner-building-enabled</key>
<string>yes</string>
<key>assigner-building-icon</key>
<string>building</string>
<!-- required -->
<!-- Example, 1:Seattle,2:New York,4:Minneapolis -->
<key>assigner-building-menu</key>
<string>1:Building 1,2:Building 2,3:Building 3</string>
<!-- Field 5: Department -->
<key>assigner-department-enabled</key>
<string>yes</string>
<key>assigner-department-icon</key>
<string>storefront</string>
<!-- required -->
<!-- Example, 1:Sales,7:Marketing,8:Engineering -->
<key>assigner-department-menu</key>
<string>1:Department 1, 2:Department 2, 3:Department 3</string>
<!-- Background Colors: 1: top/lightest gradient or fill, 2: mid gradient, 3: darkest/bottom gradient and buttons -->
<key>background-style</key>
<string>Gradient</string>
<key>bg-color1</key>
<string>red: -0.283, green: 0.75, blue: 0.6</string>
<key>bg-color2</key>
<string>red: -0.16, green: 0.765, blue: 0.928</string>
<key>bg-color3</key>
<string>red: 0.412, green: 0.412, blue: 0.631</string>
<!-- Text Colors -->
<key>text-color-tiles</key>
<string>dark</string>
<key>text-color-headings</key>
<string>dark</string>
<key>text-color-buttons</key>
<string>light</string>
<!-- General UI Text -->
<key>main-instruction-text</key>
<string>Please complete the steps below</string>
<key>completed-assignment-button-text</key>
<string>Reset</string>
<key>completed-assignment-text-message-1</key>
<string>This device is ASSIGNED.</string>
<key>completed-assignment-text-message-2</key>
<string>Tap below to clear assignment.</string>
<!-- Required keys (do not edit) -->
<key>JPS_URL</key>
<string>$JPS_URL</string>
<key>JSSID</key>
<string>$JSSID</string>
<key>MANAGEMENTID</key>
<string>$MANAGEMENTID</string>
<key>OAUTH_AUTH_CODE</key>
<string>$OAUTH_AUTH_CODE</string>
<key>APP_CONFIG_REINSTALL_CODE</key>
<string>$APP_CONFIG_REINSTALL_CODE</string>
Key/Value Reference Table
Note: All values are of type
string
| Description | Key | Setting | Options |
|---|---|---|---|
| Assigner Mode Configuration | |||
| Enable Assigner Mode | assigner-mode-enabled |
yes |
yes, no |
| Branding Image | |||
| Set Branding Image with Link | branding-image-link |
https://resources.jamf.com/images/logos/Jamf-one-color.png |
Provide an https link to an image that the app will display on the main workflow screen |
| Camera Scanner | |||
| Enable Camera Scanner | assigner-scanner-enabled |
yes |
yes, no |
| Username Tile | |||
| Enable Username Tile | assigner-username-enabled |
yes |
yes, no |
| Set Icon for Username Tile | assigner-username-icon |
person.fill |
Any image found in Designer Mode's "Browse all Images" section |
| Set Title for Username Tile | assigner-username-title |
User |
Any title |
| Extension Attribute #1 Tile | |||
| Enable EA1 Tile | assigner-ea1-enabled |
yes |
yes, no |
| Set Icon for EA1 | assigner-ea1-icon |
person.text.rectangle |
Any image found in Designer Mode's "Browse all Images" section |
| Set Title for EA1 | assigner-ea1-title |
Extension Attribute 1 |
The exact title of the corresponding Extension Attribute in Jamf Pro |
| Menu or Text Input | assigner-ea1-type |
menu |
Enter "menu" or "text". Entering "text" will also allow for camera scanning, if enabled |
| Menu Items | assigner-ea1-menu |
Item 1, Item 2, Item 3 |
A comma-separated string of values that correspond to this EA. If "menu" is selected, this is required |
| Extension Attribute #2 Tile | |||
| Enable EA2 Tile | assigner-ea2-enabled |
yes |
yes, no |
| Set Icon for EA2 | assigner-ea2-icon |
iphone |
Any image found in Designer Mode's "Browse all Images" section |
| Set Title for EA2 | assigner-ea2-title |
Extension Attribute 2 |
The exact title of the corresponding Extension Attribute in Jamf Pro |
| Menu or Text Input | assigner-ea2-type |
menu |
Enter "menu" or "text". Entering "text" will also allow for camera scanning, if enabled |
| Menu Items | assigner-ea2-menu |
Item 1, Item 2, Item 3 |
A comma-separated string of values that correspond to this EA. If "menu" is selected, this is required |
| Extension Attribute #3 Tile | |||
| Enable EA3 Tile | assigner-ea3-enabled |
yes |
yes, no |
| Set Icon for EA3 | assigner-ea3-icon |
ipad |
Any image found in Designer Mode's "Browse all Images" section |
| Set Title for EA3 | assigner-ea3-title |
Extension Attribute 3 |
The exact title of the corresponding Extension Attribute in Jamf Pro |
| Menu or Text Input | assigner-ea3-type |
menu |
Enter "menu" or "text". Entering "text" will also allow for camera scanning, if enabled |
| Menu Items | assigner-ea3-menu |
Item 1, Item 2, Item 3 |
A comma-separated string of values that correspond to this EA. If "menu" is selected, this is required |
| Extension Attribute #4 Tile | |||
| Enable EA4 Tile | assigner-ea4-enabled |
yes |
yes, no |
| Set Icon for EA4 | assigner-ea4-icon |
play.circle |
Any image found in Designer Mode's "Browse all Images" section |
| Set Title for EA4 | assigner-ea4-title |
Extension Attribute 3 |
The exact title of the corresponding Extension Attribute in Jamf Pro |
| Menu or Text Input | assigner-ea4-type |
menu |
Enter "menu" or "text". Entering "text" will also allow for camera scanning, if enabled |
| Menu Items | assigner-ea4-menu |
Item 1, Item 2, Item 3 |
A comma-separated string of values that correspond to this EA. If "menu" is selected, this is required |
| Building | |||
| Enable Building Tile | assigner-building-enabled |
yes |
yes, no |
| Set Building Icon | assigner-building-icon |
building |
Any image found in Designer Mode's "Browse all Images" section |
| Building Menu Items | assigner-building-menu |
1:Building 1,2:Building 2,3:Building 3 |
Always required. Enter comma-separated string as: "Building Jamf ID:Name". Example: 1:Seattle,2:New York,4:Minneapolis |
| Department | |||
| Enable Department Tile | assigner-department-enabled |
yes |
yes, no |
| Set Department Icon | assigner-department-icon |
storefront |
Any image found in Designer Mode's "Browse all Images" section |
| Department Menu Items | assigner-department-menu |
1:Department 1, 2:Department 2, 3:Department 3 |
Always required. Enter comma-separated string as: "Department Jamf ID:Name". Example: 1:Sales,7:Marketing,8:Engineering |
| Background Colors | |||
| Set Background Style | background-style |
Gradient |
Gradient, Solid |
| Set Background Color 1 | bg-color1 |
red: -0.283, green: 0.75, blue: 0.6 |
The top (lightest) gradient color. If "Solid" style is selected, this will be the background color. Use Designer Mode in-app to browse colors |
| Set Background Color 2 | bg-color2 |
red: -0.16, green: 0.765, blue: 0.928 |
The middle gradient color. Use Designer Mode in-app to browse colors |
| Set Background Color 3 | bg-color3 |
red: 0.412, green: 0.412, blue: 0.631 |
The bottom (darkest) gradient color. Use Designer Mode in-app to browse colors |
| Set Text Color in Tiles | text-color-tiles |
dark |
dark, light |
| Set Text Color in Headings | text-color-headings |
dark |
dark, light |
| Set Text Color in Buttons | text-color-buttons |
light |
dark, light |
| Set Main Heading Text | main-instruction-text |
Please complete the steps below |
A string to display as the Assigner heading |
| Set Text on Reset Assignment Button | completed-assignment-button-text |
Reset |
A short string to title the "reset" button |
| Set Text for Assignment Completed Message 1 | completed-assignment-text-message-1 |
This device is ASSIGNED. |
A string to display a message to tell the user that assignment has completed successfully |
| Set Text for Assignment Completed Message 2 | completed-assignment-text-message-2 |
Tap below to clear assignment. |
A string for a secondary message, such as one indicating they can reset the device by pressing the button below |
| Jamf App Wizard / Linked App Wizard | |||
| Enable Wizard | wizard-mode |
yes |
yes, no |
| Required Keys and Settings | |||
| Jamf Pro URL | JPS_URL |
$JPS_URL |
Required — do not change |
| JSSID | JSSID |
$JSSID |
Required — do not change |
| Management ID | MANAGEMENTID |
$MANAGEMENTID |
Required — do not change |
| OAuth Auth Code | OAUTH_AUTH_CODE |
$OAUTH_AUTH_CODE |
Required — do not change |
Legal
- Use Agreement: Application End User License Agreement
- Privacy Policy: Jamf Privacy Policy