본문 바로가기

내 이야기/프로젝트

어린이집 안전 종합 플랫폼

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_

 

YoonShinWoong/EyeForI_

내 손을 떠나 있는 모든 시간을 안전하게 - 안심 어린이집 서비스 아이포아이. Contribute to YoonShinWoong/EyeForI_ development by creating an account on GitHub.

github.com

디자인을 잘하던 친구가 아래와 같이 컨셉을 소개해주었다.

 

 

실제 웹 페이지 (친구가 블로그에 소개하고 있어서 활용했다..ㅎ)

https://www.youtube.com/watch?v=v2bXSdGFrXk

 

https://www.youtube.com/watch?v=5XElZw0Ad7A