3. THE PROBLEM
To control the door when you
are not at home.
To control the hall of an office
without need to be there.
To control automatic gate
without to be in the range.
3
There are many situation where is hard
to control your «door»!
4. OUR SOLUTION
We developed a «SmartDoorBell», a device
that is always connected to internet, to have
a remote control of your door, simply using
your smartphone!
4
There are some similar solutions but:
1) Really expensive – more than 200 $
2) Need a special app to work
3) Are not flexible (e.g. you can’t turn on
lights)
5. POSSIBLE SCENARIOS
The purpose of this device is to help people
to have easly access at their house and to
have a remote control of a door.
The focus of this project is about the
domestic use of this product.
5
6. 6
POSSIBLE SCENARIOS
We found three main situations:
6
Owner: with beacon
Friends: with code
Strangers: ring the bell
7. 7
POSSIBLE SCENARIOS 1/3
7
Owner: with beacon
Owner of the house has a beacon device that
works like a real key. When he comes back home
the «SmartDoorBell» recognise him and unlock
the door.
8. 8
POSSIBLE SCENARIOS 2/3
8
Friends: with code
Friends or everyone that would enter in the
house, and know the security code, can do that
simply typing the code on the numeric keyboard
on the door.
9. 9
POSSIBLE SCENARIOS 3/3
9
Strangers: ring the bell
Every time that someone ring the bell the owner
receives a Telegram message with a photo and
he can decide to take some decisions using
Telegram (e.g. take a photo, send/receive vocal
messages…)
12. BOT COMMANDS
/roll reply with a random integer, used for test
/time reply with a current time, used for test
/photo take a photo and send it to the owner
/video take a video and send it to the owner
/sound play an audio message from the Raspberry speaker
/open unlock the door
/openL unlock the door and turn on the light for 10 seconds
/light turn on the light for 10 seconds
/reboot reboot the Raspberry Pi
/shutdown shutdown the Raspberry Pi
/help send a document with the list of commands
12
13. PROJECT PROGRESS REPORT
SET UP
HARDWARE
SET UP
SOFTWARE
IMPLEMENT
STRANGER
SCENARIO
FAIL TO
IMPLEMENT
API
TELEGRAM
ON
ANDROID
IMPLEMENT
FRIENDS
SCENARIO
IMPLEMENT
OWNER
SCENARIO
13
14. WHAT’S MISSING – THE OWNER
For the owner side we want that when he
comes back home the door will
automatically open.
We tried to send an automatic message to our
bot with the Telegram API but it’s not so
easy to use.
14
We decided to change the
implementation of this part.
15. WHAT'S WRONG WITH TELEGRAM?
https://yalantis.com/blog/whats-
wrong-telegram-open-api/
15
1. Telegram’s source code is not an SDK or a library.
2. Strange pieces of code, like setTextColor(0xff757575).
3. Magic numbers for int values like “42540” which are passed as flag values.
4. “If-Else” statements that are too long and too, and really long methods.
(i.e. 300 lines of code in one method).
5. Spaghetti code and copy-paste.
6. Only three Activities in such a huge project.
7. Many classes *activity, which extendBaseFragment, which is not actually a
Fragment.
16. HOW TO SOLVE - CASE 1
We developed a simple application for Android that
allow the owner to open the door, with just few
click, when he enters in the range of the beacon.
16
We would use an App like a real key!
PROS
Easy to implement
Don’t need additional
hardware
CONS
It’s not completly
automated
Need to have a special
app
17. HOW TO SOLVE - CASE 2
We use Raspberry Pi as a beacon reciever, and the
beacon of the owner as a trasmitter. When the
Raspberry catches the signal, it performs an
action.
17
We would use a Beacon like a real key!
PROS
Completly automated
Don’t need special app
CONS
Hard to implement
You must have a beacon
to enter