Repository files navigation < Smart Leader ver2.0 (구 DoorOpenService) >
학교 출입문, 회사 출입문 등 결제기능없이 사용자 인증이 필요한 공간에 사용 할 수 있는 비콘 기반 사용자 인증 서비스
1.Login -> 2.Entrance into Beacon Range -> 3.ShakeAlgorithm -> 4.Server -> 5.OpenDoor -> 6.Server -> 7.Andorid
안드로이드
JAVA Socket DB Server (Maria DB)
아두이노 (인증이 필요한 기기)
1Depth 의 사용자 인증 백그라운드 위주 서비스
로그인 이후 사용자의 직접적인 Application 교류 X
Estimate API 를 통해 비콘 핸들링
Bluetooth Low Energy(4.0) Beacon mode 사용
비콘기반 위치 인증
비콘 UUID고정, Major, Minor 값으로 어떤 인증서비스인지 판별 후 서버로 전송, 사용자와 가장 가까이 있는 비콘정보 전송(RSSI)
SensorManager 을 이용하여 ShakeAlgorithm 을 적용한 사용자 인증
(좌우로 일정 세기 이상 흔들 경우 서버로 비콘정보 전송)
상속관계를 이용한 서버통신의 다형성(polymorphism) 구현
비동기 작업을 위한 스레드 관리
Handler를 통한 스레드 통신 관리
Callback구조를 극복하고자 Android.os.Handler로 하나의 클래스에서 모든 동작을 처리함
Java Socket Database Server 구축
Json을 이용한 통신 프토로콜 구축
MariaDB를 이용한 데이터베이스 스키마, 테이블간의 연관관계 구축
로그인, 회원가입 모듈 제작
Strategy Pattern을 이용하여 코드 간결화
Thread Queue를 만들어 모듈에 따른 동작을 서버에서 synchronize 시킴
같은 모듈에 다수의 사용자가 접근 가능하기 때문에 모듈에 따른 동기화를 적용
타이머를 이용하여 스탭모터와 LED 조작
와이파이 센서를 통해 와이파이로 Server와 Socket 통신
클라이언트에서 동작을 지시받는게 아니라 서버를 통해 동작을 직접 지시받고 서버로 응답함
모듈에 따른 동작 정의
각 모듈은 해당하는 비콘의 Major 값을 가지고 있고, Minor값으로 사용자인지 운영자인지 구분
적외선 센서를 이용하여 사용자 이동을 감지
SingleTon, Strategy, Viewholder 등 Design Pattern적용
SHA-256 알고리즘을 사용하여 사용자 비밀번호 암호화
Beacon Rssi값 계산 알고리즘
- 값을 들어오는 rssi를 보기쉽게 +로 변환
Bluetooth HM-10 (Bluetooth 4.0)
전동모터
LED
UNO
적외선 센서
미니빵판
와이파이모듈
출입문, 도서대출, 출석체크, 스터디룸, 책 대여 등 다양한 사용자 인증이 필요한 모듈로 이식이 가능
About
User Assignment Service using by BLE(Bluetooth_Low_Energy) Beacon (세종대학교 제 5회 해커톤 장려상)
Resources
Stars
Watchers
Forks
You can’t perform that action at this time.