What you have on your door is a 20th century doorbell - outdated, stupid, and sub-par. Bellacoola brings your doorbell to the 21st century tech wizardry.
Using a Raspberry Pi, Bellacoola can make your doorbell:
- Silence doorbell, and instead have notifications sent to users' phones
- Customize doorbell ring tone and playlist
The repository is organized into three directories:
- server: Server code hosted on Heroku or locally, used as API endpoint to send text messages
- client: Mobile app for Android or iOS devices
- pi: Client on Rasperry Pi to emulate a doorbell
To get the code run:
git clone https://github.com/eecs394-s16/Bellacoola
All 3 components of the app must be deployed for it to work.
####Mobile Client: #####Deploy:
- Install Supersonic following instructions here
- Install NodeJS 4 and NPM 2
- Run the following:
npm install steroids -g
# in the client directory:
npm install
steroids connect
A browser tab should open with a QR code.
#####Install on mobile directly:
- Download the Appgyver Scanner app
- Scan the QR code here
####Server:
- To deploy to heroku from github, follow these instructions
- Clone the code base
- Install the following:
sudo pip install requests
sudo pip install python-firebase
- Edit the ENDPOINT variable in pi_client.py to point to your Heroku URL
- Run the following in the pi directory:
python pi_client.py
####Known Limitations
- System currently only works for a single doorbell
- No support for separate user accounts or access control
- Firebase URL is hard-coded and developer would need to replace references
- No in-app support for initializing user data in Firebase - entries for users and doorbells currently must be created manually in the database