Code Monkey home page Code Monkey logo

security-cam's Introduction

Security Cam

Security Cam is a Python and Android attachment for Motion. Motion is a program that monitors the video signal from cameras. The Security Cam application is a client-server architecture on top of Motion.

The Python server manages the Motion process and implements a REST API for controlling the server. The light-weight client runs on Android which is used to actively control the server.

Features

  • Start and stop motion detection remotely
  • Display current camera snapshots
  • Push notifications when motion is detected
  • Retrieve camera snapshots that triggered motion
  • Upload each snapshot directly to your Dropbox

Installation

  1. Install Motion, either from package or from source (recommended).

  2. Download the Android client from the Google Play Market.

  3. Get the server Python package:

$ pip install security-cam
  1. Get a GCM API Key (required for receiving push notifications)

  2. Get a Dropbox API access (optional)

    • Go to the Dropbox Apps Console and create a new app
    • App type: Core API
    • Permission: App folder
    • Take note of the API key and App secret
  3. Configure the server /usr/local/etc/security-cam/:

    • Rename motion.conf.example -> motion.conf
    • Rename settings.cfg.example -> settings.cfg
    • Edit the settings.cfg and configure it to your needs
  4. Start the server

    $ ln -s /usr/local/lib/python/dist-packages/securitas/server.py /usr/bin/security-cam
    $ sudo chmod +x /usr/bin/security-cam
    $ security-cam
    

    You will be prompted to authorize the application with your Dropbox account if you have followed step 5.

  5. Launch the Android application

    • Configure the settings to your needs
    • Port: 4000
  6. Enjoy!

Future Work

Some ideas for the future development:

  • Use Secure Socket Layer (SSL)
  • Implement a snapshot picker

security-cam's People

Contributors

konradreiche avatar

Watchers

Ray Soloe avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.