# Requirements

The following documentation details the minimum requirements necessary for using various parts of Esper.

# Web-Based Console (*.esper.cloud)

The Console requires Chrome (opens new window) v80 or above. At present, viewing the console on mobile devices is not supported.

# Dedicated Android Devices

Targeted Dedicated Devices must run Android version 4.4 KitKat (API Level 19) or above. However, we recommend that devices running Android version 7.0 Nougat (API Level 24) or above be used with Esper.

We have recently started supporting latest Android version 10 on our platform.

Esper Development Devices running Esper Enhanced Android will always be supported be used. Such devices open up additional features for developers, when using Esper.

# Esper Feature Support

# If you have any questions about what feature support we offer for your device, please contact support@esper.io

# Legend:

  • ✔️ - Feature Supported
  • ❌ - Feature Not Supported
  • ❗️ - A prompt will be provided to the user, which then has to be approved unless a supervisor is present, in which case silent application install/uninstall is supported.
  • ❓ - Partially supported. This option is only supported if a supervisor is available.
Android 4.4 (KitKat) Android 5.0 (Lollipop) Android 5.1 (Lollipop MR1) Android 6.0 (Marshmallow) Android 7.0 (Nougat) Android 7.1 (Nougat MR1) Android 8.0 (Oreo) Android 8.1 (Oreo MR1) Android 9.0 (Pie) Android 10.0 (Q)
Managed Google Play ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
App Install/Uninstall ❗️ ❗️ ❗️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
App Permission Management ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Remote Viewer & Screenshot ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Device Commands
Reboot ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Location Control ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Brightness Control ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Volume Controls ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Rotation Control ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Screen Timeout Control ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Policy Features
Disable Lockscreen ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable Camera ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable Status Bar ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable NFC Beam ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable Outgoing Calls ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable Factory Reset ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable USB Connectivity ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable Screenshot ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable Safe Mode ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Disable SMS ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Enforce Password Rules ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Enforce Default App Permissions ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Safety Net ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Device Telemetry ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Kiosk Mode & Lockdown ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️

# Infrastructure

Dedicated devices are often behind corporate firewalls, preventing the Esper backend from communicating with them (or vice-versa). Please make sure to whitelist the following URLs and Ports, in case your fleet is running behind such a firewall.

# Firewall Requirements

Dedicated devices are often behind corporate firewalls, preventing Esper's backend from communicating with them (or vice-versa). Please make sure to whitelist the following URLs and Ports if your fleet runs behind such a firewall.

FQDNs Ports Features
*.amazonaws.com TCP: 443 (HTTPS), TCP: 8883 (MQTT) For provisioning, app management and device management
mqtt.shoonyacloud.com TCP: 1883 (MQTT) For MQTT communication with devices
services.shoonyacloud.com TCP: 443 (HTTPS) Provisioning services and Remote Viewer APK
turn.shoonyacloud.com TCP/UDP: 3478 (SCTP), TCP/UDP: 5349 (SCTP), UDP: 49152 - 65535 For Remote Viewer and Remote Control services
dpcdownloads.esper.cloud TCP: 443 (HTTPS) For the 6-tap QR code method of provisioning and Remote Viewer APK
[customer endpoint].esper.cloud TCP: 443 (HTTPS) Grants access to the Esper Console when operating under a network with a restricted outbound firewall
[customer endpoint]-api.esper.cloud TCP: 443 (HTTPS) For communicating from the device to the Esper Endpoint. (example: device status events and command success/failure messages)
mqtt-telemetry-prod.esper.cloud TCP: 1883 (MQTT) Deep telemetry from devices
IP: 13.52.132.230 TCP: 40000 - 50000 For allowing secure remote ADB access to your devices
firebaseinstallations.googleapis.com and fcm.googleapis.com TCP: 443 (HTTPS), TCP: 5228 (HTTPS), TCP: 5229 (HTTPS), TCP: 5230 (HTTPS) Backup channel, also used for ping command to wake up a device (Only for GMS devices)

TIP

For static IP, please get in touch with the Esper team (opens new window).

# Esper Dev Tools Requirements

Various Esper tools and SDK require a Python installation. The table below lists the requirements for Python, depending on the tool you would like to use. Python can be downloaded and installed from python.org (opens new window).

Tool Python 2.7 Python 3.6+
Esper SDK Yes Yes
Esper CLI Yes

# Esper SDK Language Support

  • Python

To use the Esper Python SDK, please ensure you are using Python v2.7 or above.

Note: Esper plans to release SDK support for Kotlin, Java, and JavaScript. If you are using a language other than Python and would like to start work with the Esper APIs right away, please consider calling the APIs directly. You can refer to the Esper API documentation here.

# Supported Development Platforms

  • MacOS
  • Windows
  • Linux

At Esper, our developers use all of the above platforms to interact with Esper itself. So feel free to use whatever platform fits well for you!

# Help

If you face any issues setting up your requirements for Esper, please don't hesitate to ask for some help! We'll be happy to assist you.