Go to file
mcotton a3c530bac8 updated python in docker, fixed port mapping for workstation 2023-10-25 21:36:55 -05:00
static ripped off from EE-status-v3, changed it to pull list of videos and play recorded mp4s 2023-08-29 11:17:18 -05:00
templates ripped off from EE-status-v3, changed it to pull list of videos and play recorded mp4s 2023-08-29 11:17:18 -05:00
.gitignore ignoring local db file 2023-10-05 21:21:45 -05:00
Dockerfile updated python in docker, fixed port mapping for workstation 2023-10-25 21:36:55 -05:00
LICENSE ripped off from EE-status-v3, changed it to pull list of videos and play recorded mp4s 2023-08-29 11:17:18 -05:00
README.md merging database branch 2023-10-05 21:18:39 -05:00
app.py merging database branch 2023-10-05 21:18:39 -05:00
docker-compose.yaml updated python in docker, fixed port mapping for workstation 2023-10-25 21:36:55 -05:00
download_worker.py merging database branch 2023-10-05 21:18:39 -05:00
models.py merging database branch 2023-10-05 21:18:39 -05:00
playground.ipynb merging database branch 2023-10-05 21:18:39 -05:00
requirements.txt merging database branch 2023-10-05 21:18:39 -05:00
startup.sh ripped off from EE-status-v3, changed it to pull list of videos and play recorded mp4s 2023-08-29 11:17:18 -05:00
tests.py ripped off from EE-status-v3, changed it to pull list of videos and play recorded mp4s 2023-08-29 11:17:18 -05:00
wsgi.py ripped off from EE-status-v3, changed it to pull list of videos and play recorded mp4s 2023-08-29 11:17:18 -05:00

README.md

EE-downloader-v3

Summary

This is a python webapp for downloading recorder videos from your cameras.

Settings File

There is file settings.py that is needed to run. It should look similar to this:

config = {

	# Set up your application and get client id/secrete first
	# https://developerv3.eagleeyenetworks.com/page/my-application
	"client_id": "",
	"client_secret": "",

	# you will need to add approved redirect_uris in your application
	# this examples assumes you've added http://127.0.0.1:3333/login_callback
	# change the following variables if you did something different
	# Note: do not use localhost for server_host, use 127.0.0.1 instead
	"server_protocol": "http",
	"server_host": "127.0.0.1", 
	"server_port": "3333",
	"server_path": "login_callback",

	# how many days of history should be requested be default, more == slower API call
	"days_of_history": 1, 

	"log_level": "INFO",
	
	# determines directory where videos should be stored, see formating option below, don't include trailing slash
	"video_dir": "videos",
	
	# Folder structure that will be created, default is to save as:
	# {video_dir}/{camera_device_id}/{start.year}/{start.month}/{start.day}/
	# Setting this to False to save it as:
	# {video_dir}/{start.year}/{start.month}/{start.day}/{camera_device_id}/
	"path_esn_first": True,

	# default is set at 4, but we feel the need for speed
	"num_of_threads_in_pool": 4
}

You can create your application and setup credentials at: [https://developerv3.eagleeyenetworks.com/page/my-application-html](my applications). You can also reach out to api_support@een.com for help.

Ideas on how to use

I encluded an example Flask server in app.py. You can run it locally with python flask run -p 3333 --debug

EagleEyev3 Version

Using EagleEyev3 version 0.0.24

Routes

Command

$ flask routes -s rule

Output

Endpoint Methods Rule
index GET /
accounts GET /accounts
camera_live_preivew GET /camera//preview
camera__preivew_image GET /camera//preview_image
camera_video_player GET /camera//video_player/<start_timestamp>
camera_list_of_videos GET /camera//videos
cameras GET /cameras
landing GET /landing
login_callback GET /login_callback
logout GET /logout
static GET /static/path:filename
switch_account GET /switch_account