Deploy CatchOn

Rostering

CatchOn identifies user activity by checking against a roster provided to us by your district. Each operating system sends user information to the CatchOn platform. If the user is in your uploaded roster, we can determine the campus and grade level of that activity. The operating systems each have their own way of identifying users.

  • Chrome – logged in email address
  • Windows – local username
  • Mac – local username
  • iOS – username or email (MDM determines identification type)

CatchOn’s roster format is a .CSV file with separate columns with the required fields. If you are only using email address for identification (Chrome and possibly iOS), then we only need three fields: EmailAddress, Campus, SchoolGrade.

If you are adding staff to your Lite roster, you can identify those users by using any value in the SchoolGrade column. Catchon recommends using the value Staff.

If you are using a Windows or Mac agent, or identifying iOS users by a user name, we will need a fourth field that contains that Username.

Note: The username field is the user login for windows or mac.

Alert: Each time you upload a roster, you overwrite the existing roster. Please combine all user accounts into a single CSV file.

Lite Roster with Manual CSV

To manually upload your roster:

  1. Log into the CatchOn Dashboard as a user who has Admin permissions.
  2. Click Roster Manager.
  3. Click Import Roster Manually.
  4. Browse to the location of your CSV file.
  5. Type a description for the file.
  6. Click Import Roster.

Lite Roster with SFTP

Lite Roster via SFTP works directly from your Student Information or Human Resources management system to keep the rostering information as current as possible. With this information, CatchOn will show the most accurate data on what learning tools are being utilizing in each building or grade level.

Lite Roster via SFTP works very simply and securely. You can select when you want your student information system to securely export your most recent rostering. CatchOn will process that information and reflect those changes on your dashboard. Once processed, all files will be destroyed.

To set-up Lite Roster with SFTP:

  1. Log into the CatchOn Dashboard as a user who has Admin permissions.
  2. Click Roster Manager.
  3. Click Import Roster via SFTP Connect. You see the host name of the CatchOn SFTP server.
  4. Click Generate Credentials to show your username and password. Enter these credentials into your Student Information System and upload your CSV file automatically.

The server processes the roster as soon as it receives it.

Note: The credentials issued will only have WRITE access to the SFTP folder. You will receive an error if you try to READ from the server. For student data privacy reasons, you will not see the file system.

IMS OneRoster® Import

CatchOn is also able to identify student data against two different versions of IMS OneRoster®. We currently ingest OneRoster® v1.0 and v1.1. If your student information system (SIS) is OneRoster® compatible, you can export a ZIP file that contains multiple CSV files inside of it. Once CatchOn knows which version of OneRoster® you would like to use, we will set your district and you will be able to import using the manual import option through your roster manager in the dashboard.

For more information on OneRoster®, please click the version for which you would like more information:

To import your OneRoster® ZIP file:

  1. Log into the CatchOn Dashboard as a user who has Admin permissions.
  2. Click Roster Manager.
  3. Click Import OneRoster® Manually.
  4. Select Browse and import your exported OneRoster® ZIP file.

IMS OneRoster® with SFTP

A OneRoster® zip file can be setup via SFTP from your district's SIS.

To obtain the credentials for your SFTP setup, follow these steps:

  1. Log into the CatchOn Dashboard as a user who has Admin permissions.
  2. Click Roster Manager.
  3. Click Import Roster via SFTP Connect. You see the host name of the CatchOn SFTP server.
  4. Click Generate Credentials to show your username and password.
  5. Enter these credentials into your Student Information System.
  6. Upload your .zip file.

CatchOn automatically processes your OneRoster® CSV files immediately upon upload.

Apps/License Set-up

One of the many benefits CatchOn provides its users is ROI data on apps currently being licensed. Districts can see data such as how many licenses are being used, what time of day they are being used, and when licenses expire. In order to get the most from this data, it is important to keep your licensing data up to date in your CatchOn dashboard.

When preparing to enter your application license data into CatchOn, you will need the following information:

  • Application name
  • Whether the application is district or building specific
  • Whether the application is per user or per device
  • Total number of licenses
  • Price per-license
  • Non-recurring costs (this is optional and refers to costs such as an initial setup fee)
  • Subscription start and end date

Check App Categories

Here are some helpful tips on how to make sure your data is always up to date and inclusive of all your data application categories.

  • The backbone of any school district’s technology implementation is their Student Information System (SIS). Have you added yours into CatchOn?
  • Next, add your district’s Learning Management System (LMS) to track who is utilizing it as well as if students are logging in from home!
  • Does your district utilize any digital or online textbooks? Input license information into CatchOn to help determine if this is the best resource for your teachers and students.
  • Has your district selected a family communication tool that meets your Student Data Privacy needs? Add this license to CatchOn to make sure this data stays safe.
  • Are there any core and supplemental curriculum district-wide purchases you need to track? From ELA to Computer Science, knowing how these apps are used across your district can help determine if content area professional development would be helpful.

Adding Apps/Licenses

Application licenses can be added by going to the Application Library or to add Licenses in bulk, visit the License Management section.

Agent Deployment

Migration Customers

In order to upgrade to the new agents, some of the agents will have to be removed.

  • Windows – Remove Agent using the following:

    c:\Program Files\CatchOnAgent\uninstall.exe --mode unattended

  • MacOS – Remove Agent using the following:

    Open /usr/local/CatchOnAgent/uninstall.app --args --mode unattended

  • or

    Sudo rm -rf /Library/Launch*/*catchon* /Library/Launch*/*catchOn* /usr/local/CatchOnAgent

  • Chrome – Remove extensions and reinstall using the instructions provided.
  • iOS – App Store version is capable of reporting to the new platform.

Chrome OS

Prepare Entitlement Key

  1. Open Agents manager page.
  2. Click Copy for Google Admin to copy entitlement key in proper JSON format.

Install CatchOn Insight Extension

  1. Log into the Google Admin console.
  2. Go to Devices > Chrome Management > Apps & Extensions.
  3. Click in the bottom right and select to Add apps from the Chrome Web Store.
  4. Search for and select CatchOn Insight.
  5. Note: Only deploy the CatchOn Insight extension into OUs (Operating Units) that contain Chromebook users.

Add Entitlement Key to Extension

  1. Click Policy for extensions.
  2. Paste your Entitlement key in Enter a JSON value.
  3. Click Save.

Install

Select Force install from Allow install drop-down.

Windows OS

Installing your windows agent requires variables specific to your district to be applied to the script. CatchOn’s executable file has a flag for the first variable of “unattended mode,” which will provide a discreet installation that requires no user interaction.

The second variable to be run against the executable is the entitlement key variable. The entitlement key will identify your district’s engagements to the correct dashboard.

Your district's entitlement key(s) can be found in the Agents manager section of your CatchOn dashboard.

Below is a sample script for windows deployment.

CatchOnAgent-windows-installer.exe --mode unattended --entitlementKey INSERT YOUR ENTITLEMENT KEY

Districts Using 802.1x Authentication

Alert: If your district used 802.1x authentication for your wireless network, our installer could potentially cause a network interruption.

We have added and additional flag to our installer for 802.1x networks that will cause the network adapter to rejoin the network after installation. If you use this authentication type, please update your install flags as shown below.

CatchOnAgent-windows-installer.exe --mode unattended --entitlementKey INSERT YOUR ENTITLEMENT KEY --autoconfigServiceRestart yes

Deploying via Group Policy

Deploying the Windows Agent via group policy is possible via a startup script using the following steps:

  1. Download Windows agent installer and place in a shared location across the network.
  2. Go to Group Policy Management Editor.
  3. Click Computer Configuration to find Policies, then Windows Settings, and then Scripts (Startup/Shutdown).
  4. Select Startup.
  5. Click Add.
  6. Next to script name, select Browse and find the CatchOn Windows Installer.
  7. In Script Parameters, have your entitlement key prepared and add the following:

    --mode unattended --entitlementKey INSERT YOUR ENTITLEMENT KEY

    If your district uses 802.1x wireless authentication, you may need to add an additional the following parameter:

    --mode unattended --entitlementKey INSERT YOUR ENTITLEMENT KEY --autoconfigServiceRestart yes

You can now deploy the start up script to devices in your domain.

Debug Command

Below is a sample command to debug CatchOn. This will provide you a view into the agent’s functionality and is a good way to test if the agent is on a specific device.

cd c:\Program Files\CatchOnAgent\files\CatchOnAgent

catchon-agent.exe debug

Uninstall CatchOn from Devices Running Windows OS

If you would like to uninstall CatchOn, below is a sample of how to do so from the command line. This will provide an unattended uninstall as well.

c:\Program Files\CatchOnAgent\uninstall.exe --mode unattended

macOS

There are a couple different options for deploying your macOS agent, depending on your MDM. CatchOn provides a DMG file that can have flags run against it. You can also use a PKG creator tool, such as Jamf Composer, to create a snapshot and deploy the PKG file.

Snapshot Deployment

If you would like to build a deployment package using a tool that capture a snapshot, our install will work with those types of tools.

Make sure that you include these files/folders in your snapshot:

  • /usr/local/CatchOnAgent
  • /Library/LaunchAgent/com.catchon.entitlementKey.agent.plist
  • /Library/LaunchDeamons/com.catchon.agent.plist
  • /Library/LaunchDeamons/com.catchon.agent.updated.plist
  • /Library/LaunchDeamons/com.catchon.entitlementKey.plist

When doing your install on the device creating the snapshot, make sure that you enter an entitlement key for your district. Without a valid entitlement key, your installation will not work.

If you choose this deployment package build, it may take a reboot of the device to start the agent. This depends on your MDM and how it deploys the .pkg files.

Install File Import

If your MDM prefers to have the file directly imported, followed by scripting, you may download the DMG file and create a scripted deployment that mounts the DMG, runs the installation, and unmounts after installation. See sample script below.

hdiutil attach /usr/local/CatchOnAgent-osx-installer.dmg

#

/Volumes/CatchOn\ Agent/CatchOnAgent-osx-installer.app/Contents/MacOS/osx-x86_64 --mode unattended --entitlementKey INSERT YOUR ENTITLEMENT KEY

#

sleep 3m

#

hdiutil unmount /Volumes/CatchOn\ Agent/

Additional Mac Commands

Below is a sample command to debug CatchOn. This will provide you a view into the agent’s functionality and is a good way to test if the agent is on a specific device.

cd /usr/local/CatchOnAgent/files/CatchOnAgent

sudo ./catchon-agent run --entitlementKey INSERT YOUR ENTITLEMENT KEY

Uninstall CatchOn from Devices Running Mac OS

If you would like to uninstall CatchOn, below is a sample of how to do so from the command line. This will provide an unattended uninstall as well.

Open /usr/local/CatchOnAgent/uninstall.app --mode unattended

iOS

1 to 1 Environment

In a 1 to 1 environment, your MDM has a username or email address associated with each device.

Getting the Agent from the App Store

The CatchOn iOS agent is available to download from the App Store. Via your MDM, select the “App Store” option and search for “CatchOn Agent.” Select this app and push it out to your devices. If you need more info on the iOS app, you can find details at https://apps.apple.com/us/app/catchon-agent/id1462970458

The CatchOn iOS agent displays an icon on the iPad home screen.

When opened, this icon displays the Licensing information and Privacy Policy for CatchOn. You will also be able to see whether the web content filter profile has been loaded correctly. There is no functionality inside of the actual app and no configuration changes can be made. All of the data capturing happens in the background with no user visibility. If your MDM allows students to add/remove apps, then they will be able to delete this app. It will be pushed back out to the iPad once it checks in with the MDM.

Create and Configure Web Content Filter

You will need to configure a web content filter payload that will run in tandem with the application.

Note: If your MDM does not allow you to build this payload, you may have to build it in Apple Configurator and import it to your MDM.

Add a new Web Content Filter profile in your MDM. Your devices must be supervised to add. Configure the Web Content Filter as shown.

Field Value
Allowed Websites Plug-in
Filter Name <Enter desired name of CatchOn agent profile>
Identifier com.catchon.agent.ios
Username

If your MDM is capable, you have the option to connect this field to your LDAPS server. CatchOn provides a workaround to ensure engagements are captured as unique users. (Jamf example: $email will insert ipads assigned email address in this field).

You can use ##deviceuuid in this field to pull the iPads Universally Unique Identifier for the username.

If you are able to use an email address variable in the username field, that will identify against your uploaded roster. If you have usernames assigned to the devices and use a username field, the agent will add the organization field to create an email address. Ex. psmith@mydistrict.org

Filter Webkit Traffic Check this option.
Filter Socket Traffic Check this option.
Custom Data

Key = entitlement-key

Type = string

Value = copy and paste your district entitlement key into this field.

Push to Devices

Push both the CatchOn Agent iOS App and the CatchOn Agent Profile to your devices.

Shared Environment

In a shared environment, you do not have an email address or owner assigned to each device in your MDM.

Getting the Agent from the App Store

The CatchOn iOS agent is available to download from the App Store. Via your MDM, select the “App Store” option and search for “CatchOn Agent.” Select this app and push it out to your devices. If you need more info on the iOS app, you can find details at https://apps.apple.com/us/app/catchon-agent/id1462970458

The CatchOn iOS agent displays an icon on the iPad home screen.

When opened, this icon displays the Licensing information and Privacy Policy for CatchOn. You will also be able to see whether the web content filter profile has been loaded correctly. There is no functionality inside of the actual app and no configuration changes can be made. All of the data capturing happens in the background with no user visibility. If your MDM allows students to add/remove apps, then they will be able to delete this app. It will be pushed back out to the iPad once it checks in with the MDM.

Create and Configure Web Content Filter

You will need to configure a web content filter payload that will run in tandem with the application.

Note: If your MDM does not allow you to build this payload, you may have to build it in Apple Configurator and import it to your MDM.

Add a new Web Content Filter profile in your MDM. Your devices must be supervised to add. Configure the Web Content Filter as shown.

Field Value
Allowed Websites Plug-in
Filter Name <Enter desired name of CatchOn agent profile. In a shared environment it is recommended to include the campus name in the profile name.>
Identifier com.catchon.agent.ios
Username

##deviceuuid

Filter Webkit Traffic Check this option.
Filter Socket Traffic Check this option.
Custom Data

Key = entitlement-key

Type = string

Value = copy and paste entitlement key for a campus into this field.

Repeat these steps for each campus.

Push to Devices

Push both the CatchOn Agent iOS App and the CatchOn Agent Profile to your devices.

iOS Supervised Mode

Supervised mode is a requirement for CatchOn. We use a specific profile that can only be configured in this mode. Most MDM’s will already require the iPads to be in this mode, but it is critical to our deployment to ensure this is the case.

To see if a device is supervised:

  1. Open the Settings app on the device.
  2. Tap on General.
  3. Tap on About.

If the device is supervised, you'll see that it is supervised on the About screen just below the name and it will indicate that it is supervised from your district or entity pulling this name from the device certificate.

Supervised mode enables districts to have more control over their iPads and provides a way to differentiate between personal and district owned iPads. This mode is not enabled by default and must be configured. There are other benefits, such as restricting the app store, turning off airdrop, or tracking location of devices.