2018.09~2018.11, with 팀원 5명
개요
2018 공개 SW 개발자 대회 및 네이버 D2 해커톤 대회에 출품했던 프로젝트이다.
공공데이터 API를 활용해서 보다 안전한 어린이집이 될 수 있게 다양한 정보를 제공하는 플랫폼을 개발하고자 했다.
포함한 기능은 크게 2 가지이다.
어린이 집 주변 시설현황(유흥주점 수, 흡연구역 등)
스쿨버스 승하차 태그 확인
이를 웹, 카카오톡 챗봇 두 가지 형태로 서비스를 제공하도록 하였다.
구현
해당 프로젝트는 생각보다 규모가 꽤 컸다. 그래서 역할을 나누고 진행하였다.
백엔드(Ruby On Rails, JavaScript)
: 유재O, 윤신O, 이산O
프론트엔드(HTML, CSS, JavaScript)
: 김지O, 홍연O, 김민O
RFID리더기(라즈베리파이)
: 김민O, 유재O
나는 기본적인 API와의 연동 및 웹 서버의 백엔드를 맡았다.
그리고 서비스를 카카오톡 챗봇으로도 제공할 수 있도록 챗봇 API 서버도 함께 맡았다(그 당시에는 이게 챗봇 API 서버라고 생각 못했는데 지금 생각해보면 응답을 웹 포트 통신을 통해 받아와서 로직에 따라 처리해주서 제공해주니 API 서버인 듯 하다..).
카카오톡과 서버를 어떻게 연동하지?
카카오톡 오픈 API를 활용해 카카오톡 채널과 웹 서버를 연동했다(지금은 해당 API가 카카오 오픈빌더? 서비스로 바뀌었다). 해당 API를 사용하여 질문지를 가지고와서 원하는 응답을 서버 내 DB에 접근하여 얼마든지 제공하도록 구현했다.
다양한 API들을 활용하는데 성능상 문제?
당시에는 기능적으로 돌아가기만 하면 된다는 생각하에 수많은 API를 사용하였다. 그런데 성능상 이슈가 충분히 있을 수 있는 구조였다. 여러 API를 거쳐서 하나의 응답 request를 제공하는 과정들이 많았다. 그래서 당시에는 자주 안바뀌는 형태의 데이터는 DB에서 배치형태로 적재시킨 다음 필요할 때만 데이터를 갱신하는 구조로 구현하였다.
완성
소스코드 : https://github.com/YoonShinWoong/EyeForI_
디자인을 잘하던 친구가 아래와 같이 컨셉을 소개해주었다.
실제 웹 페이지 (친구가 블로그에 소개하고 있어서 활용했다..ㅎ)
https://www.youtube.com/watch?v=v2bXSdGFrXk
https://www.youtube.com/watch?v=5XElZw0Ad7A
'내 이야기 > 프로젝트' 카테고리의 다른 글
점심 메뉴 추천 챗봇(Google Dialogflow 엔진) (2) | 2020.11.24 |
---|---|
교내 스터디룸 예약 시스템 (13) | 2020.11.24 |
로그 추적 시스템(연구과제) (2) | 2020.11.24 |
학교 웹 동아리 홈페이지 (0) | 2020.11.24 |
해외 한인 커뮤니티 웹 사이트 (4) | 2020.11.24 |