Shinobi/camera.js

93 lines
3.8 KiB
JavaScript
Raw Normal View History

2018-06-09 23:34:06 +00:00
//
// Shinobi
// Copyright (C) 2016 Moe Alam, moeiscool
//
//
// # Donate
//
// If you like what I am doing here and want me to continue please consider donating :)
// PayPal : paypal@m03.ca
//
2019-02-27 02:34:04 +00:00
var io = new (require('socket.io'))()
2018-09-29 04:04:50 +00:00
//process handlers
2020-05-10 00:27:44 +00:00
var s = require('./libs/process.js')(process,__dirname)
//load extender functions
2020-05-10 00:27:44 +00:00
require('./libs/extenders.js')(s)
2018-09-29 04:04:50 +00:00
//configuration loader
2020-05-10 00:27:44 +00:00
var config = require('./libs/config.js')(s)
//basic functions
2020-05-10 00:27:44 +00:00
require('./libs/basic.js')(s,config)
2018-09-29 04:04:50 +00:00
//language loader
2020-05-10 00:27:44 +00:00
var lang = require('./libs/language.js')(s,config)
2019-08-13 08:07:28 +00:00
//working directories : videos, streams, fileBin..
2020-05-10 00:27:44 +00:00
require('./libs/folders.js')(s,config,lang)
//code test module
2020-05-10 00:27:44 +00:00
require('./libs/codeTester.js')(s,config,lang)
//get version
2020-05-10 00:27:44 +00:00
require('./libs/version.js')(s,config,lang)
2018-09-29 04:04:50 +00:00
//video processing engine
2020-05-10 00:27:44 +00:00
require('./libs/ffmpeg.js')(s,config,lang,function(ffmpeg){
//ffmpeg coProcessor
2020-05-10 00:27:44 +00:00
require('./libs/ffmpegCoProcessor.js')(s,config,lang,ffmpeg)
//database connection : mysql, sqlite3..
2020-05-10 00:27:44 +00:00
require('./libs/sql.js')(s,config)
//authenticator functions : API, dashboard login..
2020-05-10 00:27:44 +00:00
require('./libs/auth.js')(s,config,lang)
//express web server with ejs
2020-05-10 00:27:44 +00:00
var app = require('./libs/webServer.js')(s,config,lang,io)
//web server routes : page handling..
2020-05-10 00:27:44 +00:00
require('./libs/webServerPaths.js')(s,config,lang,app,io)
//web server routes for streams : streams..
2020-05-10 00:27:44 +00:00
require('./libs/webServerStreamPaths.js')(s,config,lang,app,io)
2018-10-05 21:19:29 +00:00
//web server admin routes : create sub accounts, share monitors, share videos
2020-05-10 00:27:44 +00:00
require('./libs/webServerAdminPaths.js')(s,config,lang,app,io)
2018-10-05 21:19:29 +00:00
//web server superuser routes : create admin accounts and manage system functions
2020-05-10 00:27:44 +00:00
require('./libs/webServerSuperPaths.js')(s,config,lang,app,io)
//websocket connection handlers : login and streams..
2020-05-10 00:27:44 +00:00
require('./libs/socketio.js')(s,config,lang,io)
//user and group functions
2020-05-10 00:27:44 +00:00
require('./libs/user.js')(s,config,lang)
//timelapse functions
2020-05-10 00:27:44 +00:00
require('./libs/timelapse.js')(s,config,lang,app,io)
//fileBin functions
2020-05-10 00:27:44 +00:00
require('./libs/fileBin.js')(s,config,lang,app,io)
//monitor/camera handlers
2020-05-10 00:27:44 +00:00
require('./libs/monitor.js')(s,config,lang)
//event functions : motion, object matrix handler
2020-05-10 00:27:44 +00:00
require('./libs/events.js')(s,config,lang)
//recording functions
2020-05-10 00:27:44 +00:00
require('./libs/videos.js')(s,config,lang)
//branding functions and config defaults
2020-05-10 00:27:44 +00:00
require('./libs/videoDropInServer.js')(s,config,lang,app,io)
//plugins : websocket connected services..
2020-05-10 00:27:44 +00:00
require('./libs/plugins.js')(s,config,lang,io)
//health : cpu and ram trackers..
2020-05-10 00:27:44 +00:00
require('./libs/health.js')(s,config,lang,io)
//cluster module
2020-05-10 00:27:44 +00:00
require('./libs/childNode.js')(s,config,lang,app,io)
//cloud uploaders : amazon s3, webdav, backblaze b2..
require('./libs/uploaders.js')(s,config,lang,app,io)
2018-10-02 00:21:48 +00:00
//notifiers : discord..
2020-05-10 00:27:44 +00:00
require('./libs/notification.js')(s,config,lang)
//notifiers : discord..
2020-05-10 00:27:44 +00:00
require('./libs/rtmpserver.js')(s,config,lang)
//dropInEvents server (file manipulation to create event trigger)
2020-05-10 00:27:44 +00:00
require('./libs/dropInEvents.js')(s,config,lang,app,io)
2019-03-21 21:54:11 +00:00
//form fields to drive the internals
2020-05-10 00:27:44 +00:00
require('./libs/definitions.js')(s,config,lang,app,io)
//branding functions and config defaults
2020-05-10 00:27:44 +00:00
require('./libs/branding.js')(s,config,lang,app,io)
//custom module loader
2020-05-10 00:27:44 +00:00
require('./libs/customAutoLoad.js')(s,config,lang,app,io)
//scheduling engine
require('./libs/shinobiHub.js')(s,config,lang,app,io)
//onvif, ptz engine
require('./libs/control.js')(s,config,lang,app,io)
//ffprobe, onvif engine
require('./libs/scanners.js')(s,config,lang,app,io)
//scheduling engine
2020-05-10 00:27:44 +00:00
require('./libs/scheduler.js')(s,config,lang,app,io)
//on-start actions, daemon(s) starter
2020-05-10 00:27:44 +00:00
require('./libs/startup.js')(s,config,lang)
})