Dia Egg - Shugo Chara

Data/Azure DataFunction

태양광 발전량 예측 API 연동 실습 (웹 훅, Event hubs)

별ㅇI 2025. 6. 25. 17:48
반응형

태양광 발전량 예측 - 일사량 예측정보 기반 태양광 발전량 전망

 

태양광 발전량 예측 - 일사량 예측정보 기반 태양광 발전량 전망

커뮤니티 사용시 아래 각 호에 해당하는 경우에는 이용자의 서비스 이용을 일부 또는 전부 제한할 수 있습니다. 서비스 이용을 일부 또는 전부 제한하는 것에는 이용자의 회원자격 박탈, 서비스

bd.kma.go.kr

 

태양광 발전량 예측 API는 일반적으로 JSON 형식(Key/Value 쌍)으로 응답 데이터를 반환한다. 

  • fcstDate: 예측 날짜
  • fcstTime: 예측 시간
  • regCd: 지역 코드
  • qgen: 예측 발전량
  • pcap: 설비 용량
  • srad: 일사량
  • temp: 기온
  • wspd: 풍속

웹 훅이란

웹 훅은 다른 애플리케이션이나 서비스와의 통합을 위한 HTTP 호출 지점으로, 특정 이벤트가 발생했을 때 자 동으로 지정된 URL로 데이터를 전송하는 프로세스입니다.

(ex) 슬랙, 디스코드, 카카오톡, 팀즈

 

 


실습 1 

microsoft teams의 웹 훅을 한번 만들어보기

 

우선 팀즈에서 팀이랑 채널을 만들어준다. 

 

위처럼 생성된 채널에 들어가서 탭추가 버튼을 누른다. 

workflows를 검색해서 추가 해준다.

 

그럼 Power Automate라는 창이 생긴다.

생기는 데 시간이 좀 걸리거나 다른 창을 하나 더 만들면 보이거나 하는 경우가 생길 수 있으니 주의.

 

아까 만들어둔 팀과 채널로 생성을 해주면 

 

이렇게 창이 만들어진다. 이 화면에서 왼쪽 상단의 편집버튼을 누르면 단계를 수정하는 창에 들어갈 수 있다. 

 

 

기본으로 설정되어있는 마지막 단계를 지우고 새로 teams 옵션을 선택해 단계를 만들어준다. 

아래의 순서대로 쭉쭉 만들어주면 된다. 

첫번쨰 단계에서도 설정을  Anyone으로 바꿔준다. 

 

 

 

이렇게까지 하고 저장을 하면 링크가 나오는데 이에 대해 postman으로 값을 보내보겠다.

그러면 202Accepted 기 뜨며 잘 동작하는 것을 볼 수 있다. 

 

채널에 들어가보면 아까 설정했던 메세지가 성공적으로 게시된 것을 볼 수 있다. 

 


실습 2 

실습 1에서 실제로 데이터를 가져오는 과정을 추가해준다. 

이번에도 깃에서 기본 코드를 가져왔다. 

 

IDKNWHORU/solar-predict-azure-functions-eventhubs

 

GitHub - IDKNWHORU/solar-predict-azure-functions-eventhubs

Contribute to IDKNWHORU/solar-predict-azure-functions-eventhubs development by creating an account on GitHub.

github.com

 

클론하고 code로 열어준다.

아까와 같이 local.settings.json을 입력해준다.

마지막에 AzureWebHookUrl 환경변수만 추가해준다. 값으로는 위에 postman에 넣은 url을 넣으면 된다.

 

그리고 가상환경만들고, 들어가고, 라이브러리를 만들어준다. Azurite도 start해준다.

 

 그 후 함수 실행 해준다. f5해도되고 func start를 쳐도된다. 

잘 실행되었다 (야호)

 

실행 

이 코드가 자정마다 되는 타이머 트리거로 되어있어서 수동으로 함수를 실행해주었다.

 

그럼 스케줄러가 시작되는 로그가 뜨고 조금만 기다리면 태양광 예측 데이터를 수집해주는 것을 볼 수 있다. 

 

azure의 Event hubs에 들어가보면 이벤트들을 볼 수 있고, 팀즈 메세지도 문제없이 온 것을 확인할 수 있다.

 

추가적으로 postman에서도 실행시킬 수 있다. 아래와 같은 형식으로 진행해보면 실행이 돌아가는 것을 볼 수 있다. 

반응형