https://github.com/helpfulscripts/hshomesec
A simple home security application, see:
https://github.com/helpfulscripts/hshomesec
es6 foscam home-security hsdocs javascript nodejs osx typescript wansview
Last synced: 9 months ago
JSON representation
A simple home security application, see:
- Host: GitHub
- URL: https://github.com/helpfulscripts/hshomesec
- Owner: HelpfulScripts
- License: mit
- Created: 2018-07-19T16:37:33.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-12-31T22:28:31.000Z (about 5 years ago)
- Last Synced: 2025-04-16T02:17:40.169Z (9 months ago)
- Topics: es6, foscam, home-security, hsdocs, javascript, nodejs, osx, typescript, wansview
- Language: TypeScript
- Homepage: https://helpfulscripts.github.io/hsHomeSec/#!/api/hsHomesec/0
- Size: 967 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
hsHomeSec
========
[](https://badge.fury.io/js/hshomesec)
[](https://github.com/helpfulscripts/hsHomeSec)
[](https://helpfulscripts.github.io/hsHomeSec/#!/api/hsHomeSec/0)
[](https://travis-ci.com/HelpfulScripts/hsHomeSec)
[](https://coveralls.io/github/HelpfulScripts/hsHomeSec?branch=master)
[](https://www.npmjs.com/package/hshomesec)
Helpful Scripts simple home security system.
# Home Security System
A simple homebrew alarm system for OSX High Sierra
Written in [Typescript](typescriptlang.org) to run on [Node](nodejs.org).
- supports cameras with built-in web api. Currently tested
- WansView Q3S, K3
- Foscam C1
- creates its own ftp server and configures devices to send snapshots and videos there
- communicates with users via OSX services `Mail`, `Messages`, and `Facetime`
- simple and universal UI: receives remote user commands via email
See [documentation for more details](http://helpfulscripts.github.io/hsHomeSec/#!/api/hsHomeSec/0)
## Installation
1. Create an *install home folder*, `cd` there, and clone the project:
`> npm i hshomesec`
## Setup
1. Move to the installation folder:
`> cd node_modules/hshomesec`
2. create homeCfg.json from the template:
`> cp src/config/homeCfg-template.json src/config/homeCfg.json`
3. configure `homeCfg.json` with server IPs and available devices (cameras, etc.)
> It may be a good idea to also configure your DHCP server to assign fixed addresses to the computer running the homeSec server, as well as to connected devices.
4. Configure a valid mail account in `Mail`
5. Optional: Setup your Mac as follows
- select `Desktop & Screen Saver`, set `Start after:` to `never`
- select `Energy Saver`; set `Computer Sleep` to `never`; deselect `Put hard disk to sleep`
- install voice `Allison`
- open panel `Accessibility->Speech`;
- select `System Voice: Custom` and select `Allison`. Then close.
Voice will be downloaded automatically.
- `Terminal->Preferences->Profiles->Shell`:
- `When the shell exits: Close the window`
- `Ask before closing: Never`
## Run
- From the *install home folder*, call
`> sudo node node_modules/.bin/hsHomeSec`
to start the system without starting an ftp server
- Or call
`> sudo node node_modules/.bin/hsHomeSec ftp`
to start the system with its own ftp server. The ftp server is needed
by some devices to store snaphots and recordings in case an alarm is
detected.
> You can try the calls without `sudo`, though it is likely needed since we start an ftp server (if selected).
The webserver lets Mail (via Applescript) tell the system about incoming user commands.
## Operations
- send an email to the mail account configured in step 4 above.
- ensure that the mail address you send it from is configured as `User` in `homeCfg.json`. A `403` error will be returned if not.
- issue commands via the mail's subject field. For example:
- `snap` will return a snapshot from each attached camera
- `help` will return a list of available commands.