전체 문서자동화
자동화

채팅 명령어

기본 명령어와 사용자 명령어를 분리하고 각 항목을 개별 제어해요.

01

기본 명령어와 사용자 명령어

기본 명령어 탭에는 도움말, 방송시간, 팔로우·구독 안내 등 시치가 제공하는 항목이 표시돼요. 기본 명령어 전체를 삭제하지 않고도 각 항목을 개별적으로 켜거나 끌 수 있어요.

사용자 명령어 탭에서는 트리거, 응답, 권한, 쿨다운과 플랫폼 범위를 설정해요. 플랫폼별로 다른 응답이 필요하면 채널 또는 플랫폼 조건을 추가하세요.

02

응답 템플릿과 자체 스크립트 변수

명령어 응답에는 실행 시점의 방송·시청자·노래책 정보를 넣는 안전한 템플릿 변수를 사용할 수 있어요. 변수는 명령을 실행한 플랫폼과 현재 선택된 채널을 기준으로 계산하며, 미리보기에서는 실제 값 대신 예시 값과 누락 상태를 함께 확인할 수 있어요.

템플릿은 임의 JavaScript가 아니에요. 아래 변수, 조건 블록과 기본값 필터만 해석하며 파일, 네트워크, 환경변수 또는 다른 사용자의 비공개 데이터에는 접근할 수 없어요.

핵심 내용

  • {{uptime}}: 현재 라이브가 시작된 뒤 지난 시간을 HH:MM:SS 형식으로 표시해요. 오프라인이거나 시작 시각을 확인할 수 없으면 값이 없는 상태가 돼요.
  • {{viewerCount}}: 공식 API가 돌려준 현재 시청자 수를 숫자로 표시해요. 실제 0명은 유효한 값이며, API 미지원·권한 부족·일시 오류는 값이 없는 상태로 구분해요.
  • {{followAge}}: 명령을 실행한 사용자가 현재 채널을 팔로우한 기간을 ‘2년 3개월’처럼 표시해요. 사용자 식별과 팔로우 조회를 모두 지원하는 플랫폼·권한에서만 값을 확인할 수 있어요.
  • {{song}}: 노래책에서 ‘현재 곡’으로 지정한 제목을 표시해요. 현재 곡이 없거나 노래책을 공개하지 않은 채널에서는 값이 없는 상태가 돼요.
  • 변수 값은 명령어가 실행되는 순간 한 번만 계산해요. 한 응답 안에서 같은 변수를 여러 번 사용해도 동일한 스냅샷 값을 사용해요.
03

조건, 기본값과 이스케이프

값이 없을 때는 default 필터를 사용하고, 문장 전체를 바꿔야 할 때는 if·else 블록을 사용해요. 값 없음은 플랫폼 미지원, 권한 부족, 오프라인 또는 데이터 미등록을 포함해요. 숫자 0은 viewerCount의 정상 값이므로 기본값으로 바뀌지 않아요.

모든 변수는 기본적으로 안전한 일반 텍스트로 이스케이프돼요. 제어문자와 허용되지 않은 줄바꿈을 제거하고, 디스코드 대량 멘션과 플랫폼별 특수 표기가 의도치 않게 실행되지 않도록 중립화해요. 오버레이에서는 HTML 특수문자도 문자 그대로 보이도록 처리해요.

핵심 내용

  • 기본값 문법: {{변수 | default:"대체 문구"}}. default는 값이 없을 때만 사용하며 0을 누락으로 취급하지 않아요.
  • 조건 문법: {{#if 변수}}값이 있을 때{{else}}값이 없을 때{{/if}}. 조건 안에는 허용된 변수 이름만 쓸 수 있어요.
  • 중괄호를 문자로 보내려면 \{{처럼 여는 중괄호 앞에 역슬래시를 붙여요. 출력에서는 역슬래시가 사라지고 {{만 그대로 보여요.
  • {{{raw}}} 같은 비이스케이프 출력, 임의 함수 호출, 반복문과 중첩 템플릿은 지원하지 않아요.
  • 알 수 없는 변수, 닫히지 않은 조건 또는 허용 길이를 넘긴 결과는 저장 전 미리보기에서 오류로 표시하며 원문 템플릿을 채팅에 대신 보내지 않아요.

예시

방송시간과 시청자 수
방송한 지 {{uptime | default:"아직 집계 중"}} · 현재 {{viewerCount | default:"집계 중"}}명

오프라인이거나 플랫폼 값이 늦게 도착해도 문장이 자연스럽도록 각각 기본값을 둬요.

현재 곡 조건
{{#if song}}지금은 {{song}}을(를) 부르고 있어요.{{else}}현재 등록된 곡이 없어요.{{/if}}

현재 곡이 있을 때와 없을 때의 응답을 나눠요.

팔로우 기간
{{#if followAge}}함께한 지 {{followAge}} 되었어요.{{else}}이 플랫폼에서는 팔로우 기간을 확인할 수 없어요.{{/if}}

익명 사용자, 권한 부족과 플랫폼 미지원 상태를 안전하게 안내해요.

비밀값은 변수가 아니에요

토큰, 스트림키, 관리자 ID, 이메일과 IP 주소는 템플릿 변수로 제공하지 않아요. 응답 문구에도 직접 입력하지 마세요.

04

권장 안전 설정

핵심 내용

  • 동일 사용자 쿨다운과 채널 전체 쿨다운을 함께 설정해요.
  • 운영 명령어는 스트리머·매니저 역할로 제한해요.
  • 응답 길이와 링크 허용목록은 플랫폼별 제한에 맞춰요.
  • 순환 호출을 막고 다른 봇의 트리거에는 반응하지 않도록 설정해요.
  • 모든 변경은 테스트 전송 후 활성화해요.