Sie sind auf Seite 1von 68

Under Guidance of:

Prof. M. Balakrishnan
CSP315- Bluetooth Attendance System
1
Bluetooth Attendance System
Presentation 1
Pallav Agrawal
2009CS50250
Ankush Jindal
2009CS50234
Harsh Gupta
2009CS10191
Deeksha Gautam
2009CS50240
CSP-315
Outline
CSP315- Bluetooth Attendance System
2
Motivation
Objectives
System Requirements
Design Details
Interesting Decisions
Milestones
Status So Far
Motivation
CSP315- Bluetooth Attendance System
3
Taking attendance in large classes is
cumbersome
repetitive
Consumes valuable class time

Universality of mobile phones motivates to make
better use of this technology.



Objectives
CSP315- Bluetooth Attendance System
4
Automating user identification via Bluetooth protocol.

Develop and Implement attendance system .

Create an android mobile application to provide a
consistent UI to interact with the system.

System Requirements
Hardware Software
CSP315- Bluetooth Attendance System
5
Bluetooth
Application
Students
phones
Android
Phone
Server

Eclipse IDE
Android SDK
Apache web server
Drupal CMS
Design Details
CSP315- Bluetooth Attendance System
6
High Level Architecture Diagram
CSP315- Bluetooth Attendance System
7
Concept Diagram
CSP315- Bluetooth Attendance System
8
Mobile Application Higher Level
Details
CSP315- Bluetooth Attendance System
9
Web Service Design
CSP315- Bluetooth Attendance System
10
High Level Architecture Of Web
Server
CSP315- Bluetooth Attendance System
11
Web Site Design
CSP315- Bluetooth Attendance System
12
Professor/Host
CSP315- Bluetooth Attendance System
13
by human
cmd
by automated
scheduling
Initialisation
Search in range
Ping
proxy check
push to db
Store
Bluetooth Activity
CSP315- Bluetooth Attendance System
14
Detection of visible
Devices
Receipt and
Storage Of Data
Extract mac
addresses
Comparison of
received addresses
with registered
addresses
User intervention to
override presence
of student
Proxy Attendance
Checking
Saving attendance
for the session
Sync with server
on internet
connection
Interesting Decisions
CSP315- Bluetooth Attendance System
15
Points of Discussion
CSP315- Bluetooth Attendance System
16
Proxy Attendance
Persistent problem that needs to be addressed
Need a robust solution
Present Ideas:
Random checks by professor.
Manual verification of headcount.
Points of Discussion
CSP315- Bluetooth Attendance System
17
Creation of simple app to authenticate student

E.g. Entering a password for verification
Does not solve proxy problem
Can cause distraction during class



Ease of Use on Mobile
Application
CSP315- Bluetooth Attendance System
18
Mobile app to have features for enabling plugins.

Some examples of plugins are:
Automatically take attendance as per schedule.
Proxy attendance based (discussed earlier).
Database Features
CSP315- Bluetooth Attendance System
19
Integration with Kerberos Authentication.
Providing secure and encrypted access to the
database.
Automated Initialization of the database for courses.
Permission Centric model with different privileges to
each kind of user.
Provision of administrative users to police entire
setup.
Milestones (completed)
CSP315- Bluetooth Attendance System
20
Design [1
st
June]
Procure Hardware [14
th
July]
Sanity Check [19
th
July]
Database @Android [26
th
July]
Navigation GUI @Android [5
th
August]
Milestones
CSP315- Bluetooth Attendance System
21
Hardware Calibration [12
th
August]
Bare Bones Web Service [30
th
August]
Security Enhancements [22
nd
Sep]
Proxy Plugins Development [12
th
Oct]
Scheduling Plugins Development [20
th

Oct]
Milestones
CSP315- Bluetooth Attendance System
22
Polish GUI [27
th
Oct]
Creation of Project
Poster
Final Demo
Present Status
CSP315- Bluetooth Attendance System
23
Design
Sanity
Check
Database
@Android
Website
Present Status
CSP315- Bluetooth Attendance System
24
Navigation
GUI
Bare bones
Web Service
Immediate Steps
CSP315- Bluetooth Attendance System
25
Calibration
Sync with
webserver
Tasks and Scheduling
CSP315- Bluetooth Attendance System
26
Task Distribution
CSP315- Bluetooth Attendance System
27
Harsh
Design of
database on
mobile app.
Sending and
receiving data@
android end
Ankush
Design of the
Bluetooth
Activity
Communication
of the web
server and app
Task Distribution
CSP315- Bluetooth Attendance System
28
Pallav
Design of the
Mobile User
Interface
Security in
connections
Deeksha
Design of the
web server
database
Implementation
of the website
Hiccups
CSP315- Bluetooth Attendance System
29
Delay in procuring android phone.
Procured two weeks before semester started.
Rescheduled plan accordingly.

Unable to access database from entire campus
network
Solved by setting up database on
poorvi.cse.iitd.ac.in
Hiccups
CSP315- Bluetooth Attendance System
30
Windows Phone 7
Bluetooth API not exposed in Mango ( ver. 7.5)
Bluetooth API expected to be out in Next Update -
2012.

Project Weblink
http://sites.google.com/site/csp315attend/
CSP315- Bluetooth Attendance System
31
CSP315- Bluetooth Attendance System
32
Thank You

Under Guidance of:
Prof. M. Balakrishnan
CSP315- Bluetooth Attendance System
33
Bluetooth Attendance System
Presentation 2
Pallav Agrawal
2009CS50250
Ankush Jindal
2009CS50234
Harsh Gupta
2009CS10191
Deeksha Gautam
2009CS50240
CSP-315
Design Details
CSP315- Bluetooth Attendance System
34
Recap
CSP315- Bluetooth Attendance System
35
Android App Re-imagined
CSP315- Bluetooth Attendance System
36
Initial
Design
Course 1
Details Of
Attendees
Attendance
Log
Course 2
Android App Re-imagined
CSP315- Bluetooth Attendance System
37
New
Design
Contact
List
Courses Meetings
Android App Re-imagined
CSP315- Bluetooth Attendance System
38
Contact List
Professors of
same dept
Other Profs
Students of
same dept
Other
students
All Course
Attendees
Android App Re-imagined
CSP315- Bluetooth Attendance System
39
Courses
Course1
Ids of
attendees
Attendance
Log
Schedule
etc
..
Android App Re-imagined
CSP315- Bluetooth Attendance System
40
Meetings
Group 1
Meeting1
Ids of
attendees
Invitation
response
status
Log of
Present
People

.
Permission Model - Choices
Person Centric Course Centric
CSP315- Bluetooth Attendance System
41
Create list of people
who can edit the
attendance logs of
one person. [tas ,
profs, course
coordinator]
Very Rigorous.
Pretty Cumbersome.

Create list of
privileged people for
each course.
Each of these people
can edit attendance of
any attendee.
Less rigorous.
More Flexible and
very practical
Project Status
CSP315- Bluetooth Attendance System
42
LDAP & Kerberos Integration
CSP315- Bluetooth Attendance System
43
Automated initialization from LDAP
List of courses
List of attendees
Course Coordinators
Identification of user groups
Integrated with the Kerberos authentication
LDAP Integration - Leaks
CSP315- Bluetooth Attendance System
44
Only course coordinator in LDAP
Other profs have to manually registered for each
course with super privileges.
TAs are not available in LDAP.
Any super of the course can manually add TAs
Initialization Of Database On App
CSP315- Bluetooth Attendance System
45
Relevant Data is sent over to the app on
initialization.
Codes:
CA: Course Add
CD: Course Delete
SA : Student Add
SM : Student Modify
SD : Student Delete
SP: Student Proxy

Networking : Server <-> App
CSP315- Bluetooth Attendance System
46
Transaction Of Attendance Logs
Transaction Of Updated Mac Addresses
Transaction Of Proxy Attendance
JSON encoding is used for transaction of strings.
Network Security
CSP315- Bluetooth Attendance System
47
Web server uses https(128 bit encryption) for all
communications
Web site
Android app
Installation of website certificate is integrated with
the app installation (automatic).


Next Actions
CSP315- Bluetooth Attendance System
48
How to get MAC addresses?
CSP315- Bluetooth Attendance System
49
Proposed Solutions:
Direct Input from user
User looks up bluetooth MAC address and enters into
profile via webpage
Different Procedures as per manufacturer of the phone
Windows Program
Design of windows program
Display a list of Bluetooth Connections in range and
corresponding MAC addresses.
Experimentation
CSP315- Bluetooth Attendance System
50
Run experiment in Labs
Short circuits:
User registration
Course Attendees Lookup
Data to be recorded:
Number of people present.
Number of people found to be present.
Maximum distance to which a person was
registered present.
Number of people in proximity but not marked
present.
Open Questions
CSP315- Bluetooth Attendance System
51
How to find maximum number of connections that
can be identified by a mobile phone?

PRESENTATION 3
Bluetooth Based Attendance
Project
RECAP
OBJECTIVES
Identify people by mac
addresses
Automate attendance
process for large classes
System Design
Deliverables
Android app
Web server
Desktop app to
register users
Project status
Progress before Presentation2
CSP315- Bluetooth Attendance System
58
Website
Web service
Automatic initialization(ldap)
Web interface
App
Bluetooth ping
Encrypted Communication
Kerberos integration
Progress after presentation 2
CSP315- Bluetooth Attendance System
59
Meetings support added
Android App
Diagnostic activity coded.. Results later.
Experimentation
SMTP email sending deployed.
Website
Meeting
CSP315- Bluetooth Attendance System
60
Adhoc meetings:
Create meeting on the spot
On the spot querying of web server may be
required.


Preplanned meetings:
Send invitations via web interface.
Relevant entries can be synced in advance.

Desktop Application
CSP315- Bluetooth Attendance System
61
Need : Register students mac-address.
Requirements:
Portable and easy to run.
Independent of bluetooth stack.
Does not allow mac address sharing
Kerberos Authentication
Implementation:
Uses Bluetooth stack provided by python-bluez

Experiment
CSP315- Bluetooth Attendance System
62
Maximum range till which a person may be
identified?
Maximum number of people that can be
identified?
Are we missing out any people in the vicinity?
How much battery is consumed?
How much time is needed to find n people?
How much time should the application run?
Maximum Range
CSP315- Bluetooth Attendance System
63
Without any obstructions:54 m
With one wall in the middle: 12m outside wall
Battery Consumed
CSP315- Bluetooth Attendance System
64
39
39.5
40
40.5
41
41.5
42
42.5
10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200
Number of people found
Battery Level
Battery Level
Time taken to detect People
CSP315- Bluetooth Attendance System
65
0
50
100
150
200
250
300
350
400
450
500
10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200
T
i
e
m

i
n

s
e
c
o
n
d
s

Number of people
Running time of app?
CSP315- Bluetooth Attendance System
66
Keep a count of number of people found in
previous 40 seconds.
Stop when count==0

Next steps
CSP315- Bluetooth Attendance System
67
Store photographs of students in the android
database.
Add proxy catching heuristics to code
Randomly display names of present people
Add scheduling functionality to the app so that it
can run on itself as per a timetable.
Stress testing , checking for any open loops.
Thank you
CSP315- Bluetooth Attendance System
68

Das könnte Ihnen auch gefallen