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

문서

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

설치 방법

톡 플러그인는 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 차단 해제