mirror of
https://github.com/ep1cman/unifi-protect-backup.git
synced 2026-01-07 02:53:14 +00:00
v0.1.0
Unifi Protect Backup
A Python based tool for backing up Unifi Protect event clips as they occur.
- GitHub: https://github.com/ep1cman/unifi-protect-backup
- PyPI: https://pypi.org/project/unifi-protect-backup/
- Free software: MIT
Features
- Listens to events in real-time via the Unifi Protect websocket API
- Supports uploading to a wide range of storage systems using
rclone - Performs nightly pruning of old clips
Requirements
- Python 3.9+
- Unifi Protect version 1.20 or higher (as per
pyunifiproect) rcloneinstalled with at least one remote configured.
Installation
- Install
rclone.Instructions for your platform can be found here: https://rclone.org/install/#quickstart - Configure the
rcloneremote you want to back to. Instructions can be found here: https://rclone.org/docs/#configure pip install unifi-protect-backup
Usage
Usage: unifi-protect-backup [OPTIONS]
A Python based tool for backing up Unifi Protect event clips as they occur.
Options:
--address TEXT Address of Unifi Protect instance
[required]
--port INTEGER Port of Unifi Protect instance
--username TEXT Username to login to Unifi Protect instance
[required]
--password TEXT Password for Unifi Protect user [required]
--verify-ssl / --no-verify-ssl Set if you do not have a valid HTTPS
Certificate for your instance
--rclone-destination TEXT `rclone` destination path in the format
{rclone remote}:{path on remote}. E.g.
`gdrive:/backups/unifi_protect` [required]
--retention TEXT How long should event clips be backed up
for. Format as per the `--max-age` argument
of rclone`
(https://rclone.org/filtering/#max-age-don-
t-transfer-any-file-older-than-this)
-v, --verbose How verbose the logging output should be.
None: Only log info messages created by
`unifi-protect-backup`, and all warnings
-v: Only log info & debug messages created
by `unifi-protect-backup`, and all warnings
-vv: Log info & debug messages created by
`unifi-protect-backup`, command output, and
all warnings
-vvv Log debug messages created by `unifi-
protect-backup`, command output, all info
messages, and all warnings
-vvvv: Log debug messages created by `unifi-
protect-backup` command output, all info
messages, all warnings, and websocket data
-vvvvv: Log websocket data, command output,
all debug messages, all info messages and
all warnings [x>=0]
--help Show this message and exit.
The following environment variables can also be used instead of command line arguments (note, CLI arguments always take priority over environment variables):
UFP_USERNAMEUFP_PASSWORDUFP_ADDRESSUFP_PORTUFP_SSL_VERIFYRCLONE_RETENTIONRCLONE_DESTINATION
Credits
Heavily utilises pyunifiproect by @briis
This package was created with Cookiecutter and the waynerv/cookiecutter-pypackage project template.
Description
Python tool to backup unifi event clips in realtime
pythonpython3ubiquitiunifiunifi-protectunifi-protect-camerasunifi-protect-controllerunifi-protect-devicesunifi-protect-server
Readme
MIT
3.8 MiB
Languages
Python
97.8%
Dockerfile
1.5%
Makefile
0.7%
