🐾 뽀짝이의 셋업 가이드 #6 — 줌 운영, 반복업무를 AI에게 넘기기
매주 돌아오는 줌 세팅·출석·녹화 정리를, “말 한마디”로 바꾸는 법
혹시, 이런 적 있으세요?
정기 모임을 줌으로 운영해보신 분이라면 아마 겪어보셨을 거예요.
- 매주 같은 요일·같은 시간에 회의를 여러 개 만들고, 링크를 하나하나 복사해 캘린더에 붙이고
- 회의마다 설문을 또 새로 붙이고
- 끝나면 참석 리포트를 열어 누가 얼마나 들었는지 눈으로 세고
- 녹화를 돌려보며 “이번엔 뭐가 좋았고 뭐가 아쉬웠지” 정리해서 후기를 남기고
한두 개면 괜찮은데, 모임이 열 개, 스무 개로 늘어나면 이야기가 달라져요. 어느 순간 “내가 커뮤니티를 운영하는 건지, 줌 세팅 기계가 된 건지” 싶어지죠. 정작 중요한 사람들과의 대화에 쓸 시간은 반복 세팅에 다 녹아버리고요.
그런데 위에 적은 일들, 가만 보면 전부 정해진 규칙대로 반복되는 일이에요. 규칙이 있으면 — 넘길 수 있어요. 🐈⬛
이 가이드는 그 반복을 AI 에이전트(클로드코드)에게 통째로 넘긴 이야기예요. 우리(AI스터디 운영팀)가 실제로 쓰는 자동화를, 여러분도 그대로 따라 만들 수 있게 풀었어요.
이 가이드가 필요한 분
- 정기적으로 줌 회의를 여러 개 운영하는 커뮤니티·스터디·모임 운영자
- 회의 만들기 / 출석 체크 / 녹화 정리를 매번 손으로 하고 있는 분
- 클로드코드(또는 AI 에이전트)한테 반복업무를 넘기고 싶은데 어디서 시작할지 막막한 분
- 코딩을 깊게 몰라도, “말로 시키는” 자동화를 만들어보고 싶은 분
반대로, 줌 회의를 어쩌다 한 번 여는 정도라면 이 가이드는 좀 과할 수 있어요. 반복이 쌓이는 규모일 때 진가가 나와요.
핵심 아이디어 하나
기술적으로는 딱 한 문장이에요.
Zoom API를 AI 에이전트가 부를 수 있게 연결해두면, 줌 운영이 “말”로 돌아간다.
줌은 웬만한 기능을 다 API로 열어놨어요 — 회의 만들기, 참석자 조회, 녹화 다운로드까지요. 여기에 클로드코드 같은 AI 에이전트를 붙이면, 여러분은 API 문법을 외울 필요 없이 “이번 주 회의 다 만들어줘” 처럼 말로 시키면 돼요. 나머지는 에이전트가 API를 대신 호출해요.
아래에서 이걸 자동화 3~4개로 나눠서, 하나씩 따라갈게요. 각 자동화마다 이렇게 정리했어요.
- 🎯 뭘 자동화하나 — 어떤 반복을 없애주는지
- 💬 이렇게 시켜요 — 에이전트에게 건네는 실제 말
- 🙌 사람이 준비할 것 — 딱 이것만 해두면 돼요
- 🔧 각자 커뮤니티에 맞게 바꿀 부분 — 여러분 상황에 맞추는 지점
전체 지도
줌 운영을 시간 순서로 늘어놓으면 이래요.
[모임 시작 전]
1️⃣ 회의 만들기 → 반복회의를 한 번에 생성 (+ 설문 자동 연결)
│
[운영 중 · 매주]
2️⃣ 출석 걷기 → 회의 끝나면 참석·체류시간 자동 집계
3️⃣ 녹화·설문 정리 → 녹화 자막 + 설문을 묶어 후기/리포트로
│
[모임이 끝나거나 접힐 때]
4️⃣ 정리(선택) → 남은 줌 회의·캘린더 깔끔하게 삭제
준비물 — 딱 한 번만 세팅
시작하기 전에 한 번만 해두면 되는 세팅이에요.
Zoom Server-to-Server OAuth 앱
에이전트가 사람 로그인 없이 줌 API를 부르려면 이게 필요해요. 매번 로그인 버튼을 누르는 방식이 아니라, 앱이 스스로 토큰을 받아 호출하는 방식이에요.
1. 앱 만들기
Zoom App Marketplace → Develop → Build App → 앱 타입에서 Server to Server OAuth App 을 선택해요.
🚨 여기서 타입을 잘 골라야 해요. 맨 위
General App(OAuth 2.0) 은 “사용자가 로그인해서 Allow 를 누르는” 방식이라 매번 사람 승인이 필요해요 — 자동화엔 안 맞아요. 우리가 쓰는 건 그 아래Server to Server OAuth App이에요. 사람 개입 없이 앱이 알아서 토큰을 받아요.
2. 자격증명 복사
앱을 만들면 App Credentials 탭에 값 3개가 있어요. 이걸 에이전트가 쓰는 환경변수로 넣어둬요.
Account IDClient IDClient Secret
3. 권한(Scopes) 켜기
Scopes 탭에서 쓸 기능의 권한을 켜요. 왼쪽 Product 목록에서 Recording·Meeting 같은 걸 고르고, 필요한 스코프를 체크하면 돼요.


우리가 켜둔 권한은 이런 것들이에요.
meeting:write,meeting:read— 회의 생성·조회·삭제report:read:admin— 참석자·설문 리포트recording:read— 녹화 자막 다운로드user:read,group:read:admin— 계정·그룹 조회
위는 Zoom 앱의 Scopes(권한 선택) 화면이에요. 이 화면 구성은 앱 타입과 상관없이 같고, 뜨는 항목은 계정 권한에 따라 조금 다를 수 있어요. 쓸 기능(회의·녹화·리포트) 권한이 켜졌는지만 확인하면 돼요.
🚨 Scope를 빼먹으면 그 기능만 콕 집어서 권한 에러(403)가 나요. 쓸 기능의 권한은 처음부터 다 켜두는 걸 추천해요.
받은 토큰은 1시간짜리라, 호출할 때마다 새로 발급받게 해두면 만료를 신경 쓸 일이 없어요.
💡 이것 말고 필요한 준비물(회의 일정을 담아둘 표, 복제할 설문 원본, 녹화를 읽을 클라우드 접근 등)은 각 자동화 설명에서 그때그때 짚을게요.
자동화 1 — 회의를 한 번에 만든다
🎯 뭘 자동화하나
반복회의 수십 개를, 회의 생성 → 캘린더 등록 → 설문 연결까지 한 번에 찍어내요. 우리 경우엔 한 기수에 스터디가 스무 개 안팎이라(예를 들어 어떤 기수는 18개, 다음 기수는 20개였어요), 이걸 손으로 만들던 시절이 제일 고통스러웠어요.
우리 안에서는 이게 이런 순서로 돌아가요.
- 계정 배분 — 회의를 요일별로 묶고, 그 안에서 순서대로 줌 호스트 계정을 나눠줘요. 요일이 다르면 같은 계정을 재사용해도 시간이 안 겹치니까 괜찮아요. (그래서 회의가 20개여도 계정이 20개 필요하진 않아요.)
- 회의 생성 — 주 1회 × 정해진 주차 수만큼 도는 반복회의로 만들어요. 자동 클라우드 녹화도 같이 켜고요.
- 캘린더 등록 — 생성된 줌 링크를 캘린더 일정으로 꽂아요.
- 설문 연결 — 지난 회차에 쓰던 설문을 그대로 복제해서 새 회의마다 붙여요. 매번 새로 만들 필요 없이 원본만 지정하면 돼요.
💬 이렇게 시켜요
"이번 회차 줌 회의 다 만들어줘"
이 한마디면 위 흐름이 쭉 돌아요. 우리는 실행 전에 꼭 미리보기(dry-run) 로 “몇 개가, 어느 계정에, 언제 만들어질지”를 먼저 확인해요. 한 번 만든 회의는 다시 시켜도 건너뛰니까(중복 방지) 안심이고요.
🙌 사람이 준비할 것
- 회의 일정 표 하나 — 모임명·요일·시작일·시간이 들어간 표. “무엇을, 언제 만들지”를 여기서 읽어요.
- 새 호스트가 늘면 → 그 줌 계정을 먼저 만들어 앱에 등록 (반복회의를 만들려면 보통 Pro 이상 계정이 필요해요)
- 복제할 설문 원본 하나
🔧 각자 커뮤니티에 맞게 바꿀 부분
- 주차 수(4주? 8주?), 요일·시간 규칙, 녹화 On/Off
- 설문 문항 — 우리는 평점·NPS·좋았던 점·아쉬운 점 같은 걸 물어요. 여러분 모임에 맞게 바꾸면 돼요.
🚨 우리가 실제로 밟은 함정 하나 — 회의에 “등록 필수(registration)” 설정이 켜져 있으면 참가자가 입장에서 막혀요. 한 행사 때 사람들이 못 들어온 적이 있어요. 그 뒤로 우리는 회의를 만들 때 “등록 없이 바로 입장”을 회의 단위로 강제해둬요. 이런 건 자동화에 규칙으로 정의해두면 사람이 실수할 일이 없어져요.
자동화 2 — 출석을 자동으로 걷는다
🎯 뭘 자동화하나
전날 열린 모든 회의의 참석자를 긁어와서, 한 사람이 몇 분 들었는지 계산하고, 기준 시간(예: 30분) 이상 들었는지까지 표시해 표에 기록해요.
여기서 은근히 까다로운 게 하나 있어요 — 같은 사람이 여러 번 잡히는 것. 폰이랑 노트북 두 기기로 들어오거나, 중간에 튕겼다 재입장하거나, 이름을 살짝 바꿔 들어오면 줌 기록엔 별개로 남아요. 그래서 우리는 동일인 통합 처리로 이런 걸 한 사람으로 묶은 뒤 체류시간을 합산해요. 안 그러면 “3분 + 28분 = 두 명”으로 잘못 세거든요.
💬 이렇게 시켜요
"어제 줌 참석자 수집해줘"
사실 이건 직접 시킬 일도 거의 없어요. 우리는 매일 정해진 시각에 자동으로 돌게 예약(크론)을 걸어놨거든요. 아침이면 어제 참석 데이터가 이미 표에 쌓여 있고, 알림 채널에 요약이 와 있어요.
🙌 사람이 준비할 것
- (처음 한 번) 줌 호스트 계정들을 한 그룹으로 묶어두기 — 그래야 “우리 계정 전체”를 한 바퀴 훑어요
- 그다음부턴 손 뗌 ✨
🔧 각자 커뮤니티에 맞게 바꿀 부분
- “몇 분 이상”을 출석으로 볼지 — 우리는 한 값을 정해뒀는데, 여러분 모임의 출석·수료 기준이 있다면 그 기준에 이 값을 연결하면 돼요.
- 집계 결과를 어디에 쌓을지(스프레드시트/노션/에어테이블 등)와 자동 실행 시각
자동화 3 — 녹화·설문을 후기/리포트로 묶는다
이게 손이 제일 많이 가던 일이에요. 녹화를 돌려보고, 설문 응답을 읽고, “이번 주 이랬어요”를 정리해서 남기던 것. 모임이 스무 개면 매주 스무 번이에요.
🎯 뭘 자동화하나
회의 녹화 자막(VTT) 을 내려받고, 설문 응답을 걷어서, 둘을 교차해 정리해줘요. 우리는 이걸 진행자(스터디장)에게 보내는 리포트로 만들어 이메일 발송까지 이어요.
우리가 이걸 만들 때 세운 원칙이 하나 있어요.
스크립트 = 데이터 준비 / AI = 판단과 글쓰기
무슨 뜻이냐면 — 자막 다운로드, 설문 취합, 평점 평균 같은 기계적인 건 코드가 하고, “이번 주 무슨 얘기가 오갔고, 뭐가 좋았고, 뭘 정중하게 제안할지” 같은 읽어내고 쓰는 일은 AI가 해요. 사람에게 바로 가는 글이라, 숫자만 붙여 자동으로 뱉으면 온기가 없거든요.
실제 흐름은 이래요.
- 그 회차 설문 응답을 전수로 읽어 테마별로 분류 (칭찬 / 아쉬운 점 / 요청 주제…)
- 같은 회의 녹화 자막을 읽어 흐름을 잡고, 설문에서 나온 얘기와 교차 (“설문에 ‘실습이 좋았다’가 많은데, 녹화 보니 중반이 실습 파트였네” 하는 식)
- 정리한 내용을 읽기 좋은 후기/리포트로 옮김
💬 이렇게 시켜요
"3회차 설문이랑 녹화 분석해서 리포트 만들어줘"
🙌 사람이 준비할 것
- 녹화를 읽을 접근 권한 한 번 세팅 (클라우드 녹화 켜두기 + 저장소 인증)
- 분석할 회차만 지정
🔧 각자 커뮤니티에 맞게 바꿀 부분
- 결과물 형태 — 내부 메모, 진행자용 리포트 메일, 공개 후기 글 등 원하는 대로
- 받는 사람과 어조
🚨 여기서도 우리가 밟은 함정 두 개 — ① 회의 ID만으로 응답을 조회하면 안 돼요. 반복회의는 여러 회차가 같은 ID를 공유해서, ID만으로 걸면 1회차·2회차·3회차 응답이 다 묶여 나와요. 우리도 초반에 여러 회차가 섞인 리포트가 나간 적 있어요. 그 뒤론 회의 ID + 그 회차 날짜를 둘 다 걸어서 딱 그 회차만 뽑아요. ② 실패한 발송을 자동으로 재시도하게 했더니, 사람이 손으로 다시 보낸 것과 겹쳐 중복 발송 사고가 났어요. 지금은 자동 재시도를 끄고 필요할 때만 수동으로 보내요. “자동으로 두 번”보다 “한 번 확실히” 가 안전하더라고요.
(선택) 정리 — 모임이 접힐 때 줌까지 깔끔히
모집이 안 돼 모임이 접히면, 미리 만들어둔 줌 반복회의도 지워야 해요. 안 그러면 빈 회의가 계속 돌아요.
"OOO 모임 정리해줘"
관련 안내 → 줌 회의·캘린더 삭제까지 이어져요.
🚨 삭제는 되돌릴 수 없어서, 우리는 사람 확인을 받은 뒤에만 실행해요. 자동으로 지워버리는 일은 없어요.
자주 막히는 곳
| 증상 | 원인 | 해결 |
|---|---|---|
| 특정 회의만 생성에서 조용히 빠짐 | 새 호스트 계정이 앱에 미등록 | 그 줌 계정을 먼저 만들고(Pro 이상) 앱에 등록 |
| 권한 에러(403) | Zoom 앱 Scope 누락 | Marketplace → 앱 → Scopes에서 해당 권한 켜기 |
| 참가자가 입장에서 막힘 | 회의에 “등록 필수”가 켜짐 | 회의 단위로 “등록 없이 입장” 강제 |
| 참석자가 두 배로 세어짐 | 한 사람이 여러 기기·재입장 | 동일인 통합 후 체류시간 합산 |
| 리포트에 여러 회차가 섞임 | 회의 ID만으로 조회 | 회의 ID + 그 회차 날짜 둘 다 필터 |
| 녹화 자막이 안 내려옴 | 클라우드 녹화 미설정 / 저장소 인증 만료 | 줌 클라우드 녹화 켜기 + 인증 다시 |
| 토큰 만료 | S2S 토큰은 1시간짜리 | 호출마다 새로 발급하게 해두기 |
부록 — Zoom API 기능 지도
“어떤 기능이 어떤 API를 쓰는지” 궁금한 분들을 위한 참고표예요. 이걸 보고 여러분만의 자동화를 직접 짜도 돼요.
🔑 인증 (모든 기능 공통)
| API | 하는 일 |
|---|---|
POST zoom.us/oauth/token | Server-to-Server OAuth 토큰 발급 (호출 전 매번) |
🗓 회의 생성·관리
| API | 하는 일 |
|---|---|
POST /v2/users/{host}/meetings | 회의 생성 (반복·단건) |
GET /v2/meetings/{id} | 회의 조회 (캘린더 연동용) |
DELETE /v2/meetings/{id} | 회의 삭제 (정리) |
📋 설문 연결
| API | 하는 일 |
|---|---|
GET /v2/meetings/{id}/survey | 원본 설문 읽기 (복제 소스) |
PATCH /v2/meetings/{id}/survey | 회의에 설문 연결 |
👥 출석 집계
| API | 하는 일 |
|---|---|
GET /v2/past_meetings/{uuid}/participants | 참석자 명단·체류시간 |
GET /v2/report/users/{id}/meetings?type=past | 계정별 지난 회의 리포트 |
GET /v2/groups/{id}/members | 그룹 멤버 (계정 배분 확인) |
🎥 녹화(VTT)·설문 응답
| API | 하는 일 |
|---|---|
GET /v2/users/{email}/recordings | 계정별 녹화 목록 |
GET /v2/meetings/{id}/recordings | 회의 녹화·자막(VTT) |
GET /v2/report/meetings/{uuid}/survey | 설문 응답 결과 |
마무리
🔑 딱 한 번: Zoom Server-to-Server OAuth 앱 연결
그다음부턴 말로만 ↓
"이번 회차 줌 다 만들어줘" → 회의 + 설문 한 번에
"어제 참석자 수집해줘" → 체류시간 자동 집계 (실은 매일 자동)
"3회차 설문·녹화 분석해서 정리해줘" → 후기/리포트로
"OOO 모임 정리해줘" → 줌·캘린더까지 삭제
반복되는 일에는 규칙이 있고, 규칙이 있으면 넘길 수 있어요. 줌 API 하나를 AI에 연결해둔 것만으로, 매주 세팅에 녹던 시간이 “한마디”로 줄었어요.
여러분의 커뮤니티에도, 손이 제일 많이 가는 반복부터 하나씩 넘겨보세요. 그 시간은 다시, 사람에게 쓰면 되니까요 🐈⬛