미세먼지 봇
지역명을 말하면 그 곳의 현재 미세먼지와 초미세먼지 수치를 알려주는 Line 채팅 봇
미세먼지 봇 QR코드
기능
- 17개의 주요 도시명 입력시, 해당 도시의 미세먼지와 초미세먼지 수치를 알려줍니다.
- '전체' 입력시, 모든 주요 도시에 대한 수치를 알려줍니다.
- 매 시간 측정소에서 API로 정보를 받아 측정 시간을 알려줍니다.
- 미세먼지 농도의 등급을 알려줍니다.
- 미세먼지 등급에 따라 지역의 특색에 맞게 행동요령을 알려줍니다.
실행화면
-
친구 추가시
-
서울 입력
지방 지역 입력시, 사투리로 행동 요령을 알려줍니다
사용된 기술
- 개발언어는 py 사용
- Python Line Bot SDK를 Heroku 프로그램에서 설정
- Line Console에서 Bot 채널 생성
- 지역 별 미세먼지와 초 미세먼지 Openaip 를 사용하기 위해, data.go.kr에 계정을 생성해서 API 접근키 이용
문제점 및 해결 과정
- Line Developer 단계에서 봇 만들 때 Echo가 안될 경우, 설정에서 Channel Settings -> Messaging settings -> Use webhooks 항목을 반드시 'Enabled'해야 합니다.
- 작성한 코드는 event_reply_token은 1회용이라 사용시 expire되어 여러번 send_message를 실행할 수 없습니다 -> 유의하기
- 타인이 커밋한 소스코드 포크할 경우 덮어쓰고 실험해볼 때, 반드시 Chammel Access Token 이랑 Channel Secret Key를 본인의 Line Developer의 봇 넘버로 바꿔 올려 주어야 응답을 합니다. (변경하는 것을 깜빡할 시, 상대방 봇을 건드리게 되어 상대방도 난처해질 수 있음.) Github에 push하는 사람도 봇 넘버 키란은 비워둘 것을 권장
- 우리가 선택한 Openapi에서 처음엔 지역별 미세먼지만 출력하게 하였으나, 초미세먼지도 함수화하여 둘 다 받아오게끔 해결하였습니다.
데이터 출처