Skip to content

Process Workflow

Simone Martorelli edited this page Feb 8, 2021 · 2 revisions

jamfProcessWorkflowDiagram

Experience

The application experience flows through three phases:

  1. Getting to know a little about you (Registration).
  2. Installing software bundles to get you up and running.
  3. Education / URL link actions for next steps and help.

The example project provided is a UI that takes input from both the customer as well as a Jamf event policy script.

Jamf Workflow

  1. The application and corresponding JAMFIntegrationHelper binary / daemon are deployed on enrollment to the system.

  2. Additionally a script can be run to retrieve / provide information to the app's plist that lives in the customer's Library/Preferences.

    1. The hrFirstName populated through the LDAP connector, retrieved via API request from the client and written.
    2. A speed test package to run the background to populate the plist with a download rate value.
    3. The bundle sizes as well as a calculated rate in seconds per bundle for bundle selection screen.

    All key names can be found in corresponding Constants files which are in turn references through the app code.

phase1-Welcome

  1. The customer is greeted by the welcome screen and can move through the steps of answering questions. The data is recorded to keys specified for later retrieval by extension attribute if needed. Should there be a desire to opt-out of management, the cancel button can initiate a Jamf event policy for a decommission workflow provided by the Jamf admin.

  2. Once through the registration phase, the app can reboot the system allowing for disc encryption and any security policies to be applied ahead of software installation.

phase2-Bundle Installation

  1. The customer is returned to the application bundle install screen after logging in from the reboot.

  2. When they have made their selection and choose to move forward, a Jamf event request is made to begin the bundle installation. The script behind this event will examine an array of bundle choices the customer has made and process accordingly, being sure to update the UI with the corresponding property list keys each step of the way.

phase3-Further reading

  1. Finally, the customer is provided with resources to help them with their new job.
Clone this wiki locally