목록 보기
잔디 날씨 알림 봇 개발기
백엔드

잔디 날씨 알림 봇 개발기

비브로스
비브로스
2021년 5월 11일

두줄요약

잔디 Outgoing Webhook과 OpenWeather API로 사내 날씨 알림 봇을 구현했습니다. 다중 API 호출과 지명·미세먼지 정확도 문제를 캐싱과 API 조합으로 개선할 계획입니다.

문제 상황

  • 사내 잔디 메신저에 기본 날씨 정보를 제공하는 봇 부재
  • 기상청 API 조합 시 5회 이상의 호출과 X·Y 좌표 매핑으로 인한 응답 지연 및 데이터베이스 구축 부담

해결 방법

  • OpenWeather One Call API 중심으로 현재·오늘·7일 날씨와 대기질 정보 조회
  • 도시명 날씨 검색 결과의 위도·경도를 One Call 및 Air Pollution API 요청에 활용
  • 잔디 Outgoing Webhook의 키워드·데이터 필드 파싱과 응답 포맷 연동

구조와 흐름

  • TypeScript 템플릿 기반 Node.js 프로젝트와 got HTTP 클라이언트 사용
  • 잔디 메시지 MongoDB 저장, 명령어별 Map 기반 모듈 실행 구조
  • 봇 구동부와 날씨 모듈 분리로 추가 기능 확장성 확보

성능/운영 포인트

  • 현재 날씨 조회의 3회 API 호출로 약 1초 응답 시간 발생
  • Redis 10분 캐싱 및 MongoDB 단위 캐싱 검토
  • OpenWeather 지명 검색·미세먼지 정확도 보완을 위한 Google·기상청 API 조합 계획

다음 읽기

#Redis 주제를 이어서 읽기

레디스를 활용한 병원 찾기 서비스 API 개발

MongoDB 공간 검색의 응답 속도 한계를 Redis 공간 연산으로 개선했습니다. GEOADD·GEORADIUS 기반 병원 조회 흐름과 명령어 사용법을 소개합니다.

비브로스
비브로스
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...