Make를 활용한 구글 캘린더에 일정 등록 업무 자동화
구글 캘린더를 잘 사용하시는 분은 티켓을 예매할 때마다 일정 등록하기 불편하지 않으셨나요? 저는 스마트폰을 샀던 20살 부터 캘린더를 아주 오래 써왔어어 모든 일정을 다 캘린더에 등록해두는 편입니다. 버스, 기차, 영화 일정도 모두 캘린더에 등록되어 있죠.
올해에는 지방 강의 일정이 많아서 기차표 일정을 캘린더에 등록하는게 여간 불편한 일이 아니었어요. 그래서 이번 기회에 자동화 시스템을 보았답니다. 시나리오는 단순합니다. 티켓을 예매한 다음 티켓 화면을 캡쳐하고, 해당 화면을 복사하고 단축어 버튼을 누르면 구글 캘린더에 등록이 되는거죠.
자세한 내용은 이 유튜브 영상을 살펴보세요.
이제는 그 방법을 알려드릴게요.
준비물
준비물은 여러가지가 필요합니다.
아이폰
6단계에서 사용할 단축어가 있는데요, 단축어는 아이폰에 있는 숏컷 shortcut 기능입니다. 사용자가 지정한 행동들을 자동으로 실행해주는 기능이죠. 이 기능을 이용해서 클립보드에 있는 티켓 이미지 데이터를 Make로 보낼 예정입니다.
Make 계정
업무 자동화 에는 Make라는 노코드 플랫폼을 이용할 예정입니다. Make는 Zapier와 같이 노코드 업무 도구로 코딩없이 여러 서비스들을 서로 이어서 데이터를 전송하는 역할을 합니다. 예를 들면 설문 데이터와 구글 시트, 노션, 솔라피를 연결해 설문 제출한 사람들에 대한 정보를 받아서 구글 시트와 노션에 저장하고 문자로 안내를 하는 방식이죠.
아직 회원가입을 하지 않으셨다면 여기를 통해 회원가입을 해보세요 🙂
OpenAI 유료 계정
이번 프로젝트에는 ChatGPT의 유료 계정이 필요합니다. API를 사용하기 때문인데요, 무료 사용자는 아쉽게도 이 시나리오를 따라할 수 없습니다. ㅠㅠ
구글 계정
구글 계정이 있으면 구글 클라우드 플랫폼을 통해 API 정보를 받아올 수 있습니다.
Make 회원가입하기
시나리오 만들기
Webhook 모듈 추가하기
(조금 더 자세한 내용은 유튜브 영상을 참고해주세요)
Image 모듈 추가하기
아이폰에서 단축어 설정하기
[최종] Make를 활용하여 티켓 일정 구글 캘린더에 등록하기 업무 자동화_6이제 아이폰에서 단축어를 설정할 차례입니다. 단축어 앱을 켜고 새로운 단축어를 추가하여 ‘클립보드 가져오기’와 ‘URL 콘텐츠 가져오기’를 차례로 추가해줍니다. 이후 URL에는 Make에서 만들었던 웹훅의 Copy address to clipboard를 눌러 URL에 붙여넣어주세요.
메소드: POST
본문 요청 : 파일
파일: 클립보드
를 선택해주세요.
![[최종] Make를 활용하여 티켓 일정 구글 캘린더에 등록하기 업무 자동화_7](https://notionmap.com/wp-content/uploads/2024/12/CleanShot-2024-12-24-at-11.55.48-1024x590.png)
Make 와 ChatGPT 연결하기
ChatGPT의 API를 연결하라고 나오는데, 이 링크에 들어가서 아래 이미지처럼 Create new secret key를 눌러 API키를 발급 받아 복사해주세요.
# Order:
아래 제공된 이미지는 티켓 정보를 포함하고 있습니다.
- 티켓의 종류(기차표, 버스표, 영화표)를 자동으로 식별하고, 각 티켓에 포함된 정보를 JSON 형식으로 변환하세요.
- JSON은 캘린더에 등록하기 적합한 통일된 구조로 작성되어야 하며, 연도가 누락된 경우 오늘 이후의 연도를 자동으로 보완합니다.
- 오늘: {{now}}
# Constrains:
## 0. 아주 중요한 지침:
"```JSON"과 같은 단어는 제외하세요. 반드시 "{}"와 "{}" 안의 내용만 출력하세요.
## 1. 연도 자동 보완:
이미지에서 날짜 정보에 연도가 포함되어 있지 않으면, 현재 날짜를 기준으로 "오늘 이후의 연도"를 자동으로 설정하세요.
- 예시1: 오늘이 2024-06-01일 경우, 연도가 없는 날짜 "06-15"는 "2024-06-15"로 설정해야 합니다.
- 예시2: 오늘이 2024-12-20일 경우, 연도가 없는 날짜 "12-12"는 "2025-12-12"로 설정해야 합니다.
만약 연도가 없을 때 현재 날짜보다 과거의 날짜로 해석된다면, 연도를 다음 연도로 설정합니다.
## 2. 공통 변수:
1. title: 일정 제목
- 기차표/버스표: "출발역 > 도착역"
- 영화표: "영화 제목"
2. start_datetime: 시작 일시 (예: 2024-12-24 22:00)
3. end_datetime: 종료 일시 (예: 2024-12-25 00:22)
- 종료 시간이 24시를 넘으면, 날짜에 하루를 더하고 시간은 00:00 형식으로 변환하세요.
- 예시: 시작일시가 2024-12-24 22:00, 종료시간이 24:22라면 종료일시는 2024-12-25 00:22로 설정합니다.
4. location: 위치
- 기차표/버스표: 출발역
- 영화표: 상영관 (장소)
5. extra: 추가 정보
- 기차표: 기차 번호
- 영화표: 좌석 정보
# Output Example:
## 0. 아주 중요한 지침:
"```JSON"과 같은 단어는 제외하세요. 반드시 "{}"와 "{}" 안의 내용만 출력하세요.
## 1. 기차표:
{
"title": "서울 > 부산",
"start_datetime": "2024-06-15 14:00",
"end_datetime": "2024-06-15 16:30",
"location": "서울",
"extra": {
"train_number": "KTX1234"
}
}
## 2. 버스표:
이미지에서 "01-20" 날짜만 주어진 경우, 오늘이 2024-12-25라면:
{
"title": "강남 > 광주",
"start_datetime": "2025-01-20 09:00",
"end_datetime": "",
"location": "강남",
"extra": {
"seat": ""
}
}
## 3. 영화표:
{
"title": "어벤져스: 엔드게임",
"start_datetime": "2024-12-27 18:00",
"end_datetime": "2024-12-27 21:00",
"location": "CGV 강남 2관",
"extra": {
"seat": "E12"
}
}
# 4. 작업 내용:
- 이미지를 분석하여 티켓 정보를 추출합니다.
- 날짜에 연도가 누락된 경우, 오늘 날짜를 기준으로 "오늘 이후의 연도"를 보완하여 JSON을 생성합니다.
- 종료 시간이 24시를 넘으면, 종료 날짜에 하루를 더하고 시간을 00:00 형식으로 표기합니다.
- 티켓의 종류에 맞게 title을 동적으로 설정하고 JSON 형식으로 출력합니다.
- extra 필드에는 기차 번호, 좌석 정보 등 추가적인 세부 정보를 넣습니다.
- 누락된 정보는 **"(빈칸)"**으로 처리합니다.
- 위 기준에 맞는 일관된 JSON을 작성하세요.
![[최종] Make를 활용하여 티켓 일정 구글 캘린더에 등록하기 업무 자동화_10](https://notionmap.com/wp-content/uploads/2024/12/CleanShot-2024-12-24-at-12.06.47-1024x583.png)
JSON 모듈 추가하기
구글 캘린더 모듈 추가하기
구글 캘린더와 Make를 연결하려면 조금 복잡한 설정이 필요한데요.
해당 설정을 보기 위해서는 아래 영상을 참고해주세요.
Google API 승인을 받은 뒤에는 구글 캘린더의 Create a Event 모듈을 추가하여 새로운 일정 등록을 해줍니다. 일정과 시작시간, 종료시간을 입력합니다.
{{if(11.end_datetime = emptystring; addHours(parseDate(11.start_datetime; ); 1); 11.end_datetime)}}
이제 설정이 종료되었습니다. 왼쪽 아래에 Run Once 버튼을 눌러 테스트를 진행해보세요.
다른 티켓 실험하기
버스, 기차, 영화가 아닌 다른 티켓을 넣어서 원하는 결과물이 나오지 않는다면, 프롬프트를 조금씩 수정해보시면 됩니다.
블루프린트 다운받기
지금까지 만들었던 시나리오를 다운 받아 Make에 바로 적용시킬 수 있습니다.
Comments are closed.