월별 마일스톤 달성을 위한 시간 관리 웹 어플리케이션: 2. calendar 배치 및 event 이력 로깅

배경 및 목적

  • 월별 마일스톤에 대한 action 을 자동 구체화 하고, 캘린더 일정 반영해 주기

  • 일별, 주별 에 대한 평가 및 마일스톤 달성을 하기 위한 가이드 받기

  • 월별 나의 행동 평가 및 개선 사항 도출 해주기

웹 어플리케이션 구성

1. Create Time Table

  • Time group 생성 (3주차)

  • Time event 추가 (Ing)

  • Create Goals & Actions (3주차)

  • Time Table 에 Actions 매칭 (Ing)

  1. Action 에 대한 feedback 을 DB 에 저장 및 대응

  • Feedback 구체화 : complete, delayed, extended, dropped, transferred, pending (ing)

  • Feedback log 를 google BigQuery 에 저장 (ing)

  • google calendar 및 tasks 에 feedback 대응 (ing)

3. Action 에 대한 행동 분석 및 목표 달성 여부 분석

  • 일별 평가 (TBD)

  • 주별 평가 (TBD)

  • 월별 평가 (TBD)

참고 자료

활용 툴

실행 과정

Timeslot 설정하기 위한 google calendar 기능 정의

Google Calendar 에 actions 배정이 가능한 timeslot 들 (timegroup) 을 지정합니다. timegroup 은 현재 2개까지 지정 (추후 확장) 가능하고, action 의 예상 실행 시간이 timeslot 보다 큰 경우, 나눠져서 배치 되게 됩니다.

timegroup 은 매주 동일한 형태로 할당 되는데, 금주에 이벤트가 발생하여 실행이 힘들 경우 action 을 배치하지 못하도록 blocking 해 둘 수 있습니다. 반대로 금주 추가 시간이 가능하다면 timeslot 을 추가 할 수 있습니다.

녹색과 주황색 숫자가 있는 달력의 스크린샷

n8n workflow 제작하기

google calendar 에서 timeslot 을 timegroup 별로 추출하고, google tasks 에서 actions 를 가져 옵니다. 배치 가능한 timeslot 을 계산하여 google calendar event 을 생성하고, google calendar API 로 배치 합니다.

애플리케이션 프로세스를 보여주는 흐름도
다양한 일정을 보여주는 Google 캘린더의 스크린샷

사용자가 action 에 대해 반응하기

사용자가 action 에 대한 피드백으로 complete, delayed, extended, dropped, transferred, pending 을 전달할 경우에 대한 workflow 를 구체화 합니다. calendar id 와 task id 를 raw data를 추출 하는데, id 를 찾을 수 없는경우 405 error 를 발생 합니다. (HTTP Status 405 - Method Not Allowed Error)

비즈니스 프로세스의 흐름도

POST RestAPI 를 Postman 으로 발생 합니다.

Google 문서 편집기의 스크린샷

사용자 시나리오에 맞게 API 의 body 를 작성해야 하는데, 이때는 논리적 사고가 필요할 듯 하여 o1-preview 를 활용 했습니다.

한국어 문자 메시지 스크린샷

단점: 논리적 흐름에 맞게 test vector 를 생성해 주지는 못했습니다.

흑백 이미지 흑백 이미지 흑백 이미지 흑백 이미지

결과

BigQuery 의 action-history 라는 table 에 action 에 대한 사용자 피드백이 저장됨을 확인하였습니다.

Google 스프레드시트의 항목 목록
한자가 포함된 Google 검색 페이지의 스크린샷

3
2개의 답글

👉 이 게시글도 읽어보세요