Trigger 노드
Trigger 노드는 워크플로우의 시작점입니다. 모든 워크플로우는 반드시 Trigger 노드로 시작해야 합니다.
📋 Trigger 노드 목록
| 노드 | 설명 | 사용 예시 |
|---|---|---|
| 텍스트 입력 | 텍스트를 입력받아 시작 | 챗봇, 검색 |
| 클릭 | 버튼 클릭으로 시작 | 수동 실행 |
| Telegram 웹훅 | Telegram 채널 게시물로 시작 | Telegram 채널 봇 |
| Google Sheets 설문폼 | Google Sheets 폼 제출 시 시작 | 폼 자동 처리 |
텍스트 입력
텍스트를 입력하고 HTTP 요청으로 워크플로우를 시작합니다
✨ 주요 기능
- ✅ 사용자로부터 텍스트 입력 받기
- ✅ HTTP GET/POST 요청으로 워크플로우 트리거
- ✅ 입력값을 다음 노드로 전달
- ✅ URL 파라미터
q로 텍스트 전달
🔧 설정 방법
이 노드는 별도 설정이 필요 없습니다. 워크플로우를 배포하면 자동으로 HTTP 엔드포인트가 생성됩니다.
📡 HTTP 요청 예시
GET 요청 (URL 파라미터 사용)
http://task.codefreeai.studio/task/run/{워크플로우아이디}?q=안녕하세요
POST 요청 (JSON Body 사용)
curl -X POST http://task.codefreeai.studio/task/run/{워크플로우아이디}?q=안녕하세요
💡 사용 예시
AI 챗봇 만들기
[텍스트 입력] → [ChatGPT] → [챗봇 응답]
- 사용자가 "오늘 날씨 알려줘" 입력
- ChatGPT가 답변 생성
- 결과 반환
📝 결과 데이터
다음 노드에서 {{result}}로 텍스트 값에 접근 가능
예시: 사용자가 "안녕하세요" 입력 → {{result}}는 "안녕하세요"
클릭
클릭 또는 HTTP 요청으로 워크플로우를 시작합니다
✨ 주요 기능
- ✅ 버튼 클릭으로 워크플로우 실행
- ✅ 입력 파라미터 없이 즉시 실행
- ✅ 수동 트리거 또는 API 호출
🔧 설정 방법
별도 설정 없이 워크플로우 실행 버튼으로 사용됩니다.
📡 HTTP 요청 예시
파라미터 없이 호출
http://task.codefreeai.studio/task/run/{워크플로우아이디}
curl -X GET http://task.codefreeai.studio/task/run/{워크플로우아이디}
💡 사용 예시
일일 뉴스 요약 생성
[클릭] → [HTTP 요청] → [ChatGPT] → [Telegram]
- 버튼 클릭
- 뉴스 API에서 최신 뉴스 가져오기
- AI가 요약 생성
- Telegram으로 전송
Telegram 웹훅
Telegram 채널 게시물(Channel Post)로 워크플로우를 시작합니다
✨ 주요 기능
- ✅ Telegram 채널에 올라온 포스트 수신
- ✅ 게시물 내용을 워크플로우 입력으로 사용
- ✅ 채널 관리 자동화
🔧 필수 설정
| 설정 항목 | 설명 | 예시 |
|---|---|---|
| API 키* | Telegram Bot Token | 123456:ABC-DEF... |
📋 사전 준비
Telegram Bot 생성
- @BotFather에게
/newbot명령 - Bot 이름 및 username 설정
- Bot Token 받기 (API 키로 사용)
- @BotFather에게
채널 설정
- Telegram 채널 생성 (또는 기존 채널)
- 생성한 Bot을 채널의 관리자(Administrator)로 초대
- (중요: 관리자 권한이 있어야 메시지를 읽을 수 있습니다)
웹훅 설정
- CodeFreeAI에서 워크플로우 배포
- 자동으로 Telegram 웹훅 등록됨
📡 수신 데이터
다음 노드에서 {{result}}로 게시물 텍스트에 접근 가능합니다.
중요 제한사항:
- 채널 게시물(Channel Post)만 지원합니다.
- 봇에게 보내는 개인 메시지(DM)나 그룹 채팅 메시지는 현재 지원하지 않습니다.
예시: 채널에 "공지사항입니다" 게시 → {{result}}는 "공지사항입니다"
💡 사용 예시
채널 포스트 요약 및 전파
[Telegram 웹훅] → [ChatGPT] → [Slack]
- 텔레그램 채널에 뉴스/공지 게시
- ChatGPT가 내용 요약 및 번역
- Slack 팀 채널로 자동 전달
Google Sheets 설문폼
Google Sheets에 설문폼이 작성되면 워크플로우를 시작합니다
✨ 주요 기능
- ✅ Google Forms 응답을 실시간으로 수신
- ✅ 새로운 행이 추가될 때마다 자동 실행
- ✅ 폼 데이터를 워크플로우로 전달 (JSON List 형태)
🔧 설정 방법
이 노드는 별도 API 키 설정이 필요 없습니다. Google Sheets와 자동으로 연동됩니다.
📋 사전 준비
CodeFreeAI와 구글 시트를 연동하기 위해 Apps Script 설정이 필요합니다.
1. Google Forms 및 연동
- Google Forms 생성
- Google Forms에서 설문 폼 생성
- "응답" 탭에서 Google Sheets로 연결
2. Apps Script 설정
Apps Script 열기
- 구글 시트 상단 메뉴에서
확장 프로그램>Apps Script를 클릭합니다.
- 구글 시트 상단 메뉴에서
라이브러리 추가
- 좌측 "라이브러리" 옆의
+버튼을 클릭합니다. - 스크립트 ID에 아래 코드를 입력하고 "조회"를 클릭합니다.
1vILl4o0Ttx6cWjB8jIcbwPzqD2hJNoU6dTWibFTCRxKYa17UT3j2LQjy - 식별자가
CodeFreeAIforSheets(기본값)인지 확인하고 "추가"를 클릭합니다.
- 좌측 "라이브러리" 옆의
코드 작성
Code.gs편집기에 기존 내용을 지우고 아래 코드를 복사해서 붙여넣습니다.💾 저장(Ctrl+S 또는 Cmd+S) 버튼을 누릅니다.
const $$ = CodeFreeAIforSheets; function onOpen() { $$.onOpen(); } function onEdit(e) { $$.onEdit(e); } function showSidebar() { $$.showSidebar(); } function getSettings() { return $$.getSettings(); } function processForm(u) { return $$.processForm(u); } function toggleTrigger(e) { return $$.toggleTrigger(e); } function onFormSubmitTriggerForCodeFree(e) { $$.onFormSubmitTriggerForCodeFree(e); }설정 완료 (Webhook URL 등록)
- Google Sheets 탭으로 돌아가서 페이지를 새로고침합니다.
- 상단 메뉴에서
CodeFreeAI>Sidebar를 클릭합니다. - CodeFreeAI 워크플로우의 API URL을 입력하고 저장합니다.
- 이제 폼 응답이 제출되면 자동으로 워크플로우가 실행됩니다.
📡 수신 데이터
다음 노드에서 {{result}}로 폼 응답 데이터를 JSON 문자열(List) 형태로 받습니다.
데이터 형식:
"['타임스탬프', '응답1', '응답2', ...]"
예시:
"['2024-01-20 10:30:00', '홍길동', '문의 내용입니다']"
주의:
{{result}}는 객체(Key-Value)가 아니라 순서가 있는 리스트의 문자열입니다.- AI 노드에서 이를 처리할 때 "JSON 리스트 문자열이다"라고 명시하거나, 순서대로 데이터를 참조하도록 지시해야 합니다.
💡 사용 예시 1: 폼 응답 알림
[Google Sheets 폼] → [ChatGPT] → [Slack]
- 폼 제출 수신
- ChatGPT가 데이터 파싱 및 메시지 작성
- Slack 전송
ChatGPT 프롬프트 예시:
다음은 구글 폼 응답 데이터(JSON 리스트 문자열)입니다:
{{result}}
데이터 순서는 [타임스탬프, 이름, 이메일, 내용] 순서입니다.
이 데이터를 보기 좋게 정리해서 슬랙 알림 메시지를 작성해주세요.
💡 사용 예시 2: 데이터 분류
[Google Sheets 폼] → [ChatGPT] → [INBLOG]
- 폼 데이터 수신
- AI가 내용 분석 후 블로그 포스팅 초안 작성
- INBLOG 임시 저장
🎯 실전 팁
데이터 순서 확인
- 구글 시트의 열 순서와 `` 리스트의 값 순서가 일치합니다.
- 시트의 열 순서를 변경하면 데이터 들어오는 순서도 바뀝니다.
🆚 텍스트 입력 vs 클릭 차이점
| 비교 항목 | 텍스트 입력 | 클릭 |
|---|---|---|
| 입력 파라미터 | ✅ ?q={텍스트} 필요 |
❌ 파라미터 없음 |
| 엔드포인트 | .../{워크플로우아이디}?q={텍스트} |
.../{워크플로우아이디} |
| 사용 목적 | 사용자 입력 받기 | 단순 실행 트리거 |
| 예시 | 챗봇, 검색, 번역 | 뉴스 요약, 데이터 수집 |
🆚 어떤 Trigger를 선택할까?
| 상황 | 추천 Trigger | 이유 |
|---|---|---|
| 웹 챗봇 | 텍스트 입력 | 사용자 입력 필요 |
| Telegram 봇 | Telegram 웹훅 | 채널 게시물 자동 처리 |
| 수동 실행 | 클릭 | 파라미터 없이 즉시 실행 |
| 정기 보고서 | 클릭 | 입력 없이 자동 생성 |
| 폼 자동 처리 | Google Sheets 설문폼 | 폼 제출 시 자동 실행 |
🎯 다음 단계
- Data Source 노드 - 외부 데이터 가져오기
- Text Generation 노드 - AI로 텍스트 생성
- Output 노드 - 결과 전송하기
❓ 자주 묻는 질문
Q: Trigger 노드를 여러 개 사용할 수 있나요? A: 한 워크플로우에는 하나의 Trigger만 사용할 수 있습니다.
Q: Telegram 웹훅이 작동하지 않아요 A: 봇이 채널의 관리자로 등록되어 있는지 확인해주세요. (개인 채팅방/그룹에서는 작동하지 않을 수 있습니다)
Q: 텍스트 입력 노드의 URL은 어디서 확인하나요? A: 워크플로우 배포 후 "API 정보" 탭에서 확인할 수 있습니다.