To access Server Settings, click on the Server icon at the top left of the Agent UI and "Settings" under Configuration. Note: If the server icon has a colored background this means you are accessing someone else's Agent server via permissions.


  • Name: Give your Agent instance a name. If you have multiple servers connected to your account it's a good idea to give them unique names.
  • Max CPU: This is the maximum CPU of the server. If your computer hits this limit you will get warnings in the browser and Agent will start reducing framerates of cameras to get under the limit. This is only available on Windows.
  • Apply Schedule at Start: Check this to have Agent apply the schedule at startup (works out what state all your devices should be in according to the schedule) - otherwise Agent will start with your devices in their last known state.
  • Notify on Disconnect: Check this and we will notify you if your server disconnects from web services without shutting down.
  • Storage Email Address: Enter this and we will send you notifications when your storage limit is hit (requires SMTP settings or a subscription)
  • Storage Interval: This controls how often Agent runs Storage Management
  • VLC Directory: The directory that VLC (v3+) is installed into. This is automatically populated if we can detect it on your system.
  • Add to Database: This controls if Agent will prompt you to add your camera to the wizard database when you add an unlisted camera.
  • Max Log Size: This controls the maximum number of entries in the log queue.
  • FFMPEG Log Level: Sets the debug output level for ffmpeg. Warning: Trace will completely fill your logs so be sure to only use that option temporarily for debugging.
  • Experimental Features: Enable experimental features in Agent. We sometimes deploy new functionality for testing and it's hidden behind this switch. Generally only enable this if you are involved in testing.


DeepStack AI

You will need to install DeepStack AI to use this. See AI Alert Filtering

Plate Recognizer

Get ALPR powered by Plate Recognizer. Free Trial available.
See ALPR User guide


Click a button to authorise Agent to upload to your cloud host. If you have problems you may need to disable 2 factor authentication on your cloud host account. When you have granted Agent access you can upload to the cloud by editing your camera cloud settings


This lets you update Agents Camera and PTZ model database

  • PTZ Models: Click to download the latest PTZ database for controlling PTZ cameras.
  • Camera Definitions: Click to download the latest camera definitions database. This updates the Add Camera Wizard with new models.


Add or edit FTP servers here. When you have added a Server you can select it when editing a camera. See camera FTP

  • Name: Give your server a name - this is only used locally with Agent
  • Username: Your FTP server username
  • Password: Your FTP server password
  • Server: Your FTP server URL. Should start with ftp:// or sftp:// eg
  • Port: The port your FTP server is running on. Usually ftp:// uses 21 and sftp:// uses 22
  • Use SFTP: Check this if your server uses SFTP.
  • Use Passive: Check this to use Passive FTP mode.
  • Rename: This makes Agent upload a temporary file and then rename it when it's uploaded. This is good for reducing flicker when using FTP to stream video via javascript.
  • Max Queue: If the FTP server is busy uploading files this is the size limit of the queue. - once agent reaches this limit new files will be rejected from upload. The queue size is on a per-camera basis.

Local Server


MQTT is a standard IoT messaging protocol and lets you integrate devices and services across your network. You can configure it here and enable MQTT Events on your devices or use Actions to send custom messages to this MQTT server.

Agent can also respond to commands from MQTT. See MQTT.

  • Enabled: Switch MQTT on or off.
  • Server: Enter the IP address of the MQTT Server
  • Port: Enter the port the MQTT Server is using (default is 1883)
  • Check Interval: Agent sends keep-alive messages to make sure the connection is available on this interval (seconds)
  • Protocol: Protocol is either None or SSL.
  • QoS: Quality of Service. See your MQTT server documentation.
  • Client ID: Your client ID. Agent can usually randomly generate this.
  • Username: Your MQTT username
  • Password: Your MQTT password
  • Send Stats: Agent can send stats to MQTT (like CPU usage, memory usage, drive usage) - Check this to enable (Windows only).


Agent looks for key words in ONVIF event XML packets to detect motion events. These packets can vary between cameras so we've provided a field here where you can add your own camera's event XML to trigger ONVIF events. Only use this if you are having issues with ONVIF events.

  • Detect XML: Add the ONVIF XML event packet here.


These settings control how Agent renders and delivers video to the web browser and over the API.

  • Max Stream Size: The maximum resolution to stream to the web client with. High resolutions can use a lot of CPU.
  • Max MJPEG Size: The maximum allowed MJPEG stream size (that Agent will generate via api).
  • Codec: The codec to record to. Choose from H264 or VP8.

    H264 has widespread hardware encode support - use this for maximum performance. A drawback of H264 is that the file must be fully written before it can be played back. Some operating systems come with ffmpeg versions that don't have H264 encoding enabled. If recordings fail try switching the encoder to use VP8 instead.

    VP8 doesn't generally have hardware encode support but the .webm files it generates can be played back whilst they are being recorded.

    Use Raw mode when using IP cameras (Set the encoder to Auto when editing the camera) for maximum performance and playback whilst recording.

  • Video FPS: The maximum FPS of the Video sent to the web browser.
  • Center Images: Check this to toggle whether Agent fills the available space with the camera image or maintains the original aspect ratio of the incoming camera video.
  • Use GPU: Check this to use the GPU when decoding saved video files.
  • Use OpenCV to render text: Using opencv to render text (timestamp, overlays) can improve performance slightly but removes font support (Windows only).
  • Interval Delay: The time between switching Views when using an interval mode layout in a Live View.


These settings control how Agent handles arming and disarming the system via the lock icon in the UI (or integrations/ API).

  • Arm Delay: This is the delay in seconds between clicking the Arm icon (top left in Agent - the lock icon) and Agent actually enabling alerts.
  • Disarm Code: This is the code to disarm agent which is used by Alexa. The default is 1234.
  • Arm Profile: Select a profile to auto apply when the system is armed (lock icon in top left corner of the UI).
  • Disarm Profile: Select a profile to auto apply when the system is disarmed (unlock icon in top left corner of the UI).
  • Access Timeout: Set a time limit for people accessing your server via permissions (minutes). 0 = unlimited.


You can either use an subscription to send email alerts or use your own SMTP server. Note that to send emails you will need to add an action to send an email.. Troubleshooting

  • Use SMTP: Check this to enable messaging via your own SMTP server.
  • Username: Your SMTP username
  • Password: Your SMTP password
  • From Address: The from address eg
  • Server: The IP or web address of your SMTP server
  • Port: The port SMTP is running on. Default is 25
  • Use SSL: Check this to enable SMTP over SSL
  • Send full size images: Check this to send full resolution images instead of resized smaller images.


See Storage Settings

Streaming (RTMP)

Agent can stream video to RTMP endpoints like Twitch and YouTube which you can then use to broadcast or embed in your website. See Embedding

You can trigger RTMP streaming from the Live View using the menu at bottom right or you can use a device scheduler to start and stop RTMP streaming automatically.

  • URL: The path to publish video to. Usually looks like rtmp://
  • Stream Key: See the embedding guide linked above to get your stream key.
  • Size: Choose a resolution to publish with. The higher the resolution the more bandwidth and CPU will be used.
  • Quality: Basic quality setting - default is 8. Lower value will mean less quality but lower bandwidth use.
  • Frame Rate: Set a target framerate for the published video. Default is 15.
  • Encoder: Choose to use Auto, GPU or CPU. If the stream fails to publish try CPU.
  • Include Audio: Check this to push audio to the stream as well as video. If this is turned off Agent will generate a dummy silent audio track.
  • Max Duration: Agent will automatically stop streaming after this period of time. Enter 0 to disable.