BlueTalk(블루톡)은 그누보드·아미나 빌더를 포함한 어떤 웹사이트에도 간단한 스크립트 몇 줄만으로 붙여 쓸 수 있는 무료 실시간 웹 채팅 플랫폼입니다.
전체 채팅, 1:1 DM, 채널 채팅, 이미지·파일 전송, 운영자 권한 관리까지 모두 지원하며, 서비스 목적이나 사이트 규모에 상관 없이 자유롭게 사용할 수 있습니다.
BlueTalk는 웹사이트 어디에든 쉽게 붙일 수 있는 임베디드 채팅 솔루션입니다.
특히 그누보드/아미나 빌더와 잘 어울리도록 설계되어 있지만, PHP, Node, Python 등 어떤 백엔드 스택과도 연동할 수 있도록 API와 구조를 깔끔하게 분리해두었습니다.
BlueTalk는 크게 다음 3가지 요소로 이루어져 있습니다.
user_key 생성 등 인증 관련 로직을 담당합니다.
실제 요청 흐름은 대략 다음과 같습니다.
[1] 사용자 브라우저가 귀하의 웹 페이지에 접속
[2] 페이지에서 bluetalk.js를 로드하고 <div id="bluetalk"> 등을 준비
[3] 서버(PHP/Node/Python)가 로그인 정보를 바탕으로 user_id, nickname, user_key 생성
[4] JS에서 window.SITE_KEY, window.GLOBAL_* 에 값을 세팅하고 new BlueTalk()로 초기화
[5] 중앙 서버와 WebSocket 연결이 수립되고
이후 채팅 메시지·채널 정보·제재 정보 등이 실시간으로 주고받습니다.
인증 구조와 토큰 설계에 대한 자세한 내용은 인증 구조 문서에서 따로 설명합니다.
가장 단순한 예시는 대략 10줄 내외입니다.
아래는 site_key / user_id / nickname / user_key를 이미 서버에서 준비해두었다고 가정한 예제입니다.
<script src="https://bluetalk.kr/talk/bluetalk.js"></script>
<div id="bluetalk"></div>
<script>
window.SITE_KEY = "발급받은_site_key";
window.GLOBAL_USER_ID = "회원아이디_또는_PK";
window.GLOBAL_USER_KEY = "서버에서_생성한_user_key";
window.GLOBAL_NICKNAME = "표시할_닉네임";
const bt = new BlueTalk({
mode: 'global', // 전체 채팅
targetId: 'bluetalk'
});
bt.init();
</script>
위 코드는 현재 bluetalk.js 실제 구조와 100% 일치하는 예제입니다.
사이트별로는 PHP/Node/Python 등에서 user_key를 어떻게 생성할지 정도만 결정해 주시면 됩니다.
BlueTalk는 특히 다음과 같은 용도에 잘 어울립니다.
당연히 꼭 위 사례가 아니더라도, “웹에서 실시간으로 사람들끼리 대화가 필요하다”면 어디든 붙여서 사용할 수 있습니다.
현재 BlueTalk는 다음과 같은 정책으로 제공됩니다.
자세한 라이선스/정책 변경 사항은 공지사항 게시판을 통해 안내드릴 예정입니다.