🎉 지금 가입하면 무료 플랜 영구 제공 →

문서

톡 플러그인 설치부터 운영까지 필요한 모든 내용을 안내합니다.

📦

설치 방법

톡 플러그인는 PHP 환경의 웹사이트에 쉽게 설치할 수 있는 채팅 위젯 솔루션입니다. 클라이언트 파일을 서버에 업로드한 후 몇 줄의 코드로 채팅 위젯을 삽입할 수 있습니다.

  1. 대시보드에서 라이선스를 발급받고 API 토큰을 확인합니다.
  2. client/ 디렉터리 전체를 웹서버의 원하는 경로에 업로드합니다. (예: /talk/)
  3. Talk.class.php를 require한 후 위젯 iframe을 삽입합니다.
<?php
require_once '/path/to/talk/classes/Talk.class.php';
$talk = new Talk([
    'server_domain' => 'https://talk.yourserver.com',
    'token'         => 'YOUR_JWT_TOKEN',
    'channel'       => 'default',
]);
echo $talk->widget();
⚙️

기본 설정

Talk 클래스 생성자에 옵션 배열을 전달해 동작을 제어합니다.

옵션타입기본값설명
server_domainstring(필수)소켓 서버 URL (https://…)
tokenstring(필수)사이트 JWT 토큰
channelstring"default"채널 슬러그
langstring"ko""ko" 또는 "en"
templetstring"default"템플릿 이름
user_nickstring"익명"현재 사용자 닉네임
user_uidstring""사용자 고유 ID
user_rolestring"user""user" / "manager" / "admin"
💬

위젯 임베드

위젯은 <iframe> 형태로 삽입되며, 부모 페이지와 postMessage API로 통신합니다.

<!-- 기본 임베드 -->
<div id="my-chat" style="width:360px;height:600px;"></div>
<script src="/talk/scripts/loader.js"></script>
<script>
  TalkChat.init({
    container: '#my-chat',
    serverDomain: 'https://talk.yourserver.com',
    token: 'YOUR_JWT_TOKEN',
    channel: 'default',
    lang: 'ko',
  });
</script>

postMessage 이벤트

type방향설명
ready위젯 → 부모위젯 초기화 완료
message위젯 → 부모새 메시지 수신
userJoined위젯 → 부모사용자 입장
userLeft위젯 → 부모사용자 퇴장
sendMessage부모 → 위젯메시지 강제 전송
🛡️

관리자 패널

/talk/admin/ 경로로 접근하면 관리자 패널을 사용할 수 있습니다. 관리자 패널에서는 채널 관리, 채팅 내역 조회, IP 차단, 채팅금지 관리 등을 할 수 있습니다.

ℹ️
관리자 패널 접근은 userRole이 “admin”인 JWT 토큰으로만 가능합니다. 서버 대시보드에서 관리자 토큰을 발급받으세요.

주요 기능

  • 채널 생성·수정·삭제
  • 채팅 내역 조회 (채널·닉네임·키워드 검색)
  • 고정 공지 설정
  • IP 차단 관리
  • 채팅금지 목록 관리
  • 전체 공지 브로드캐스트
📡

채널 관리

채널은 대화 공간의 단위입니다. 용도별로 여러 채널을 만들어 운영할 수 있습니다.

설정설명
채널명화면에 표시되는 이름
슬러그URL·코드에서 사용하는 영문 식별자
최대 인원동시 접속 허용 상한
최소 레벨입장 가능한 최소 사용자 레벨
읽기 전용활성화 시 관리자만 메시지 전송 가능
고정 공지채팅창 상단에 항상 표시되는 공지 텍스트
📌

고정 공지

채널별로 채팅창 상단에 고정 공지를 표시할 수 있습니다. 공지 내용이 긴 경우 자동으로 좌측으로 흐르는 마퀴(marquee) 애니메이션이 적용됩니다.

  1. 관리자 패널 → 채널 설정에서 "고정 공지" 입력란에 내용을 입력합니다.
  2. 저장하면 해당 채널의 모든 접속자에게 즉시 실시간으로 반영됩니다.
  3. 내용을 비워두면 공지가 사라집니다.
💡
공지 브로드캐스트 메뉴를 이용하면 특정 채널 또는 전체 채널에 공지를 일괄 전송할 수 있습니다.
🔇

채팅금지

관리자·운영자는 특정 사용자의 채팅을 일정 기간 금지할 수 있습니다.

채팅창에서 직접 금지

  1. 관리자 또는 운영자 계정으로 채팅창에 접속합니다.
  2. 금지할 사용자의 메시지에서 우클릭합니다.
  3. 컨텍스트 메뉴에서 "채팅금지"를 선택합니다.
  4. 금지 기간(1시간 ~ 영구)과 사유를 선택한 후 "금지 적용"을 클릭합니다.

관리자 패널에서 금지

  1. 관리자 패널 → 메시지 내역에서 채널·닉네임·키워드로 검색합니다.
  2. 해당 메시지 행의 "채팅금지" 버튼을 클릭합니다.
  3. 기간과 사유를 입력한 후 적용합니다.
기간 코드의미
1h1시간
6h6시간
24h24시간
7d7일
30d30일
perm영구 금지
🔌

API 레퍼런스

모든 클라이언트 API는 X-Site-Token 헤더에 사이트 토큰을 포함해야 합니다.

채널

메서드경로설명
GET/api/client/channels채널 목록 조회
GET/api/client/channels/:id채널 상세 조회
POST/api/client/channels/:id/update채널 설정 수정 (고정공지 포함)

메시지 내역

메서드경로설명
GET/api/client/history메시지 내역 조회 (channel, userNick, search, limit, before 파라미터 지원)

채팅금지

메서드경로설명
GET/api/client/chat-bans채팅금지 목록
POST/api/client/chat-bans/:id/delete채팅금지 해제

IP 차단

메서드경로설명
GET/api/client/ban-ipsIP 차단 목록
POST/api/client/ban-ipsIP 차단 추가
POST/api/client/ban-ips/:id/deleteIP 차단 해제