Minitalk
정의 파일 /scripts/minitalk.js
Minitalk 자바스크립트 클래스의 경우, 미니톡 채팅위젯을 홈페이지상에 출력하기 위해 사용하는 API 클래스입니다.
CONFIGS 의 설정값들을 이용하여 미니톡 채팅위젯을 웹사이트내에 원하는 곳에 삽입하여 사용이 가능합니다.
회원연동 등을 하기 위해서는 별도의 서버사이드언어(PHP, ASP, JSP 등)을 이용하여 유저코드(usercode)를 생성하여 사용하셔야 하며, 해당 코드를 생성하는 방법은 CONFIGS 의 usercode 부분을 참고하시면 설명되어 있습니다.
| 표시 | 의미 |
|---|---|
| 사용중단 | 이 기능은 문제의 소지가 있어 제거되었거나 제거될 예정입니다. |
| 불안정 | 아직 안정적이라고 고려될만큼 충분한 테스트를 거치지 않았습니다.(합당하다면 하위호환성이 보장됩니다.) |
| 안정 | API가 충분히 검증되었지만, 기반이 되는 코드의 정리 때문에 마이너한 변경이 있을 수 있습니다.(하위호환성이 보장됩니다.) |
| 잠김 | 심각한 버그가 발견되지 않는 한 이 코드는 절대 변경되지 않습니다. |
설정 (Configs)
섹션 제목: “설정 (Configs)”| 이름 | 설명 |
|---|---|
channel |
미니톡 채팅위젯에서 접속할 채널명을 설정합니다. |
dateFormat |
대화시각을 표시하는 형식을 지정한다. |
height |
미니톡의 세로크기를 정의합니다. |
id |
현재의 미니톡 객체를 가르키는 고유한 값을 설정합니다. |
language |
미니톡 채팅위젯 언어를 설정한다. |
listeners |
이벤트 리스너를 정의합니다. |
logCount |
서버접속시 가져올 이전대화기록의 갯수를 설정한다. |
placeholder |
메시지 입력폼에 기본 안내 메시지를 추가합니다. |
protocols |
사용자정의 프로토콜을 정의합니다. |
tabs |
미니톡 탭바에 나타날 요소를 설정합니다. |
tabType |
탭바의 형태를 설정합니다. |
templet |
미니톡 채팅위젯의 템플릿을 설정한다. |
tools |
미니톡 툴바에 나타날 툴버튼을 정의한다. |
toolType |
툴바버튼의 형식을 지정한다. |
usercode |
회원연동을 위한 유저코드를 설정합니다. |
usermenus |
미니톡 유저메뉴에 나타날 메뉴를 정의한다. |
viewConnectMessage |
서버접속 안내메시지를 보일지 설정한다. |
viewUserNotification |
유저의 접속/접속종료/정보변경 안내메시지를 보일지 설정합니다. |
viewUserNotificationLimit |
유저의 접속/접속종료/정보변경 안내메시지를 보일 유저의 최소레벨을 설정합니다. |
width |
미니톡의 가로크기를 정의합니다. |
channel
섹션 제목: “channel”channel: string미니톡 채팅위젯에서 접속할 채널명을 설정합니다.
타입 string
미니톡 채팅위젯에서 접속하게 될 채널명을 입력합니다.
해당 채널명은 미니톡 클라이언트 관리자 채널관리에서 생성한 채널명을 의미합니다.
예제
최종수정일 : 2020.12.22
dateFormat
섹션 제목: “dateFormat”dateFormat: string대화시각을 표시하는 형식을 지정한다.
타입 string · 기본값 A mm:ss
이 설정값을 비워둘 경우 대화가 이루어진 시각표시가 되지 않습니다.
| 값 | 설명 |
|---|---|
YYYY |
4자리 년도 (2021) |
YY |
2자리 년도 (21) |
MM |
2자리 월 (01 ~ 12) |
M |
1자리 월 (1 ~ 12) |
MMM |
월 이름 (1월 ~ 12월, 미니톡 채팅위젯의 언어가 영문일 경우 Jan ~ Dec) |
MMMM |
월 이름 (1월 ~ 12월, 미니톡 채팅위젯의 언어가 영문일 경우 January ~ December) |
DD |
2자리 일 (01 ~ 31) |
D |
1자리 일 (1~31) |
ddd |
요일 (월 ~ 일, 미니톡 채팅위젯의 언어가 영문일 경우 Mon ~ Sun) |
dddd |
요일 (월요일 ~ 일요일, 미니톡 채팅위젯의 언어가 영문일 경우 Monday ~ Sunday) |
HH |
2자리 24시간제 시간 (00 ~ 24) |
H |
1자리 24시간제 시간 (0 ~ 24) |
hh |
2자리 12시간제 시간 (00 ~ 12) |
h |
1자리 12시간제 시간 (0 ~ 12) |
mm |
2자리 분 (00 ~ 59) |
m |
1자리 분 (0 ~ 59) |
ss |
2자리 초 (00 ~ 59) |
s |
1자리 초 (0 ~ 59) |
a |
오전/오후 (미니톡 채팅위젯의 언어가 영문일 경우 am, pm) |
A |
오전/오후 (미니톡 채팅위젯의 언어가 영문일 경우 AM, PM) |
예제
최종수정일 : 2020.12.22
height
섹션 제목: “height”height: int | string미니톡의 세로크기를 정의합니다.
타입 int | string · 기본값 500
미니톡의 세로크기를 픽셀(px)또는 퍼센트(%) 단위로 설정합니다.
픽셀(px) 단위로 정의할 경우 int 형식으로 설정하셔야 하며, 퍼센트(%) 단위일 경우 string 형식으로 설정하셔야 합니다.
퍼센트(%) 단위의 경우 미니톡 채팅위젯이 들어가는 상위 DOM 객체의 세로크기에 영향을 받습니다.
예제
최종수정일 : 2020.12.22
id: string현재의 미니톡 객체를 가르키는 고유한 값을 설정합니다.
타입 string
미니톡 위젯의 고유값을 지정합니다.
이 값은 미니톡 위젯의 설정을 사용자의 브라우저에 저장하기 위한 용도로 사용되거나, MinitalkComponent 에서 현재의 미니톡 위젯을 호출하기 위해 사용될 수 있습니다.
이 값은 HTML 의 id 와 동일한 역할을 하며, 하나의 웹페이지내에서 모든 HTML 요소에 사용된 id 값과 중복되지 않는 유일한 값이어야 합니다.
예제
최종수정일 : 2020.12.22
language
섹션 제목: “language”language: string미니톡 채팅위젯 언어를 설정한다.
타입 string
미니톡 채팅위젯의 언어를 강제로 설정합니다.
설정하지 않을 경우 사용자 브라우저의 언어에 따라 지원가능한 언어를 표시합니다.
해당 언어로 설정할 경우 미니톡 클라이언트의 /languages/ 폴더내에 해당 언어의 언어팩이 존재하여야 합니다.
언어팩은 ISO 639-1 에 따른 2글자의 언어코드로 설정되어야 합니다.
예를 들어 영문언어팩은 en 이며, 미니톡 클라이언트에 /laguages/en.json 이라는 파일명으로 언어팩이 존재하여야 합니다.
같은 방법으로 일어의 경우 ja , /languages/ja.json 이며, 중국어인 경우 zh, /languages/zh.json 입니다.
언어별 언어코드는 https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes 을 참고하시기 바랍니다.
예제
최종수정일 : 2023.07.17
listeners
섹션 제목: “listeners”listeners: object[]이벤트 리스너를 정의합니다.
타입 object[]
플러그인 등이나, 다른 방법으로 Minitalk.on() 함수를 사용하여 이벤트리스너를 추가로 정의할 수 있습니다.
이벤트 종류 및 이벤트 리스너의 매개변수는 이벤트함수를 참고하여 주시기 바랍니다.
예제
최종수정일 : 2021.02.02
logCount
섹션 제목: “logCount”logCount: int서버접속시 가져올 이전대화기록의 갯수를 설정한다.
타입 int · 기본값 15
미니톡에 최초접속시 접속이전에 이루어진 이전대화기록을 가져올 갯수를 설정합니다.
0 으로 설정할 경우 이전대화기록을 불러오지 않으며, 최대 30개 까지 설정할 수 있습니다.
이전대화기록은 서버의 상태에 따라 설정된 갯수보다 적게 불러올 수 있습니다.
예제
최종수정일 : 2021.02.02
placeholder
섹션 제목: “placeholder”placeholder: string메시지 입력폼에 기본 안내 메시지를 추가합니다.
타입 string
메시지 입력폼에 기본 안내 메시지(placeholder)를 추가합니다.
설정하지 않을 경우(설정값이 null 인 경우) 기본 안내메시지 (SHIFT + ENTER 줄바꿈) 이 표시됩니다.
안내 메시지를 추가하고 싶지 않을 경우 빈 문자열("") 로 설정하시면 표시되지 않습니다.
예제
최종수정일 : 2021.06.03
protocols
섹션 제목: “protocols”protocols: object[]사용자정의 프로토콜을 정의합니다.
타입 object[]
플러그인 등이나, 다른 방법으로 Minitalk.socket.setProtocol() 함수를 사용하여 사용자정의 프로토콜을 추가로 정의할 수 있습니다.
예제
최종수정일 : 2021.02.02
tabs
섹션 제목: “tabs”tabs: string[]미니톡 탭바에 나타날 요소를 설정합니다.
타입 string[]
탭은 아래의 미리 정의된 문자열을 사용하거나, 사용자정의 탭을 사용할 수 있습니다.
기본값으로 ["chat","users","boxes","configs"] 으로 정의되어 있습니다.
chat 탭의 경우 반드시 첫번째 요소로 포함되어야 합니다. 그렇지 않은 경우 자동으로 첫번째 요소로 추가됩니다.
미리 정의된 문자열
| 값 | 설명 |
|---|---|
chat |
미니톡 채팅영역 |
users |
접속자목록 |
boxes |
개인박스목록 |
configs |
환경설정 |
사용자정의 탭 추가
| 필드 | 타입 | 설명 |
|---|---|---|
name |
string |
고유값으로 영문 및 숫자로만 이루어져야합니다. |
text |
string |
사용자에게 보일 탭 명칭 |
icon |
string |
탭 아이콘 이미지 경로 |
iconClass |
string |
탭 아이콘 스타일시트 (아이콘폰트 등의 스타일을 지정할 수 있습니다.) |
visible |
function(minitalk, me) |
탭 보임여부 (minitalk : 미니톡객체, me : 나의정보) |
url |
string |
탭 클릭시 해당 탭에 보일 웹페이지의 URL 주소 |
handler |
function(minitalk, e) |
(옵션)탭 클릭시 탭 영역이 보이지 않고, 특정 기능만 수행하고자 하는 경우에 사용할 함수 (minitalk : 미니톡객체, e : 클릭이벤트) |
name:string 은 필수값으로 지정되어야 합니다.
icon:string 또는 iconClass:string 두개 설정값 중 한개 이상 설정이 되어 있어야 툴버튼 아이콘이 표시됩니다.
visible:function(minitalk,me) 에서 해당 함수가 false 를 반환할 경우 툴버튼이 보이지 않습니다.
url:string 에 미니톡 채팅위젯이 들어간 웹사이트와 동일한 도메인의 웹페이지를 지정할 경우, 해당 탭 페이지에서 parent.Minitalk 을 이용하여, 미니톡 채팅위젯 객체에 접근할 수 있습니다.
url:string 이 지정되었을 경우에는 handler:function(minitalk,e) 는 동작하지 않습니다.
handler:function(minitalk,e) 에서 minitalk 객체를 이용하여 미니톡 내부함수에 접근할 수 있습니다.
자세한 사용은 아래 예제를 참고하시기 바랍니다.
아래의 예제에서 사용된 https://minitalk.moimz.tools/tab.html 주소에 접근하여 소스보기를 하면, 탭 내부에서 미니톡 채팅위젯 객체에 접근하는 방법에 대해 확인할 수 있습니다.
예제
최종수정일 : 2021.09.27
tabType
섹션 제목: “tabType”tabType: string탭바의 형태를 설정합니다.
타입 string · 기본값 auto
미니톡 탭바의 형태를 설정합니다.
| 값 | 설명 |
|---|---|
vertical |
탭바가 우측(또는 템플릿에 따라 좌측)에 세로 형태로 표시됩니다. |
horizontal |
탭바가 상단에 가로 형태로 표시됩니다. |
auto |
미니톡 채팅위젯의 가로크기가 400px 이하인 경우 horizontal 400px 를 초과하는 경우 vertical 로 표시됩니다. |
예제
최종수정일 : 2021.04.05
templet
섹션 제목: “templet”templet: string미니톡 채팅위젯의 템플릿을 설정한다.
타입 string
미니톡 채팅위젯의 템플릿을 설정합니다.
템플릿은 템플릿폴더(/templets) 아래의 템플릿 폴더명(예 : default 또는 dark 등)을 입력하시면 됩니다.
예제
최종수정일 : 2021.04.05
tools
섹션 제목: “tools”tools: string | object[]미니톡 툴바에 나타날 툴버튼을 정의한다.
타입 string | object[]
툴버튼은 아래의 미리 정의된 문자열을 사용하거나, 사용자정의 툴버튼을 사용할 수 있습니다.
기본값으로 ["bold","underline","italic","color","-","emoticon","file"] 으로 정의되어 있습니다.
미리 정의된 문자열
| 값 | 설명 |
|---|---|
- |
툴버튼 구분선 |
bold |
폰트설정 굵게 (채팅권한설정에 폰트설정권한이 없는경우 보이지 않음) |
underline |
폰트설정 밑줄 (채팅권한설정에 폰트설정권한이 없는경우 보이지 않음) |
italic |
폰트설정 기울임 (채팅권한설정에 폰트설정권한이 없는경우 보이지 않음) |
color |
폰트설정 색상 (채팅권한설정에 폰트설정권한이 없는경우 보이지 않음) |
emoticon |
이모티콘 |
file |
파일첨부버튼 |
사용자정의 툴버튼 추가
| 필드 | 타입 | 설명 |
|---|---|---|
name |
string |
고유값으로 영문 및 숫자로만 이루어져야합니다. |
text |
string |
사용자에게 보일 툴버튼 명칭 |
icon |
string |
툴버튼 아이콘 이미지 경로 |
iconClass |
string |
툴버튼 아이콘 스타일시트 (아이콘폰트 등의 스타일을 지정할 수 있습니다.) |
visible |
function(minitalk, me) |
툴버튼 보임여부 (minitalk : 미니톡객체, me : 나의정보) |
handler |
function(minitalk, e) |
툴버튼 클릭시 실행될 함수 (minitalk : 미니톡객체, e : 클릭이벤트) |
name:string 은 필수값으로 지정되어야 합니다.
icon:string 또는 iconClass:string 두개 설정값 중 한개 이상 설정이 되어 있어야 툴버튼 아이콘이 표시됩니다.
visible:function(minitalk,me) 에서 해당 함수가 false 를 반환할 경우 툴버튼이 보이지 않습니다.
handler:function(minitalk,e) 에서 minitalk 객체를 이용하여 미니톡 내부함수에 접근할 수 있습니다.
자세한 사용은 아래 예제를 참고하시기 바랍니다.
툴버튼은 Minitalk.ui.appendTool() 함수를 이용해서도 추가할 수 있습니다.
예제
최종수정일 : 2021.09.27
toolType
섹션 제목: “toolType”toolType: string툴바버튼의 형식을 지정한다.
타입 string · 기본값 icon
| 값 | 설명 |
|---|---|
icon |
툴바아이콘만 표시한다. |
text |
툴바명칭만 표시한다. |
icontext |
툴바아이콘 및 명칭만 표시한다. |
일부 미니톡 채팅위젯 템플릿에 따라 설정값이 적용되지 않을 수 있습니다.
예제
최종수정일 : 2020.12.22
usercode
섹션 제목: “usercode”usercode: string회원연동을 위한 유저코드를 설정합니다.
타입 string
미니톡 채팅위젯에서 회원정보를 연동하여 사용하기 위한 유저코드를 설정합니다.
해당 유저코드는 보안을 위하여 서버사이드언어(PHP, ASP, PHP 등)을 이용하여 생성한 뒤 정의해주셔야 합니다.
유저코드를 생성하기 위한 암호화 방식은 PHP Minitalk 클래스 (/classes/Minitalk.class.php)의 getUserCode() 함수를 확인하여 생성하실 수 있습니다.
자세한 사용은 사용자매뉴얼 > 미니톡 채팅위젯 회원 연동하기 문서를 참고하여 주시기 바랍니다.
최종수정일 : 2021.02.01
usermenus
섹션 제목: “usermenus”usermenus: string | object[]미니톡 유저메뉴에 나타날 메뉴를 정의한다.
타입 string | object[]
유저메뉴는 아래의 미리 정의된 문자열을 사용하거나, 사용자정의 메뉴를 사용할 수 있습니다.
기본값으로 ["configs","create","-","whisper","call","invite","-","showip","banip","op","deop"] 으로 정의되어 있습니다.
미리 정의된 문자열
| 값 | 설명 |
|---|---|
- |
메뉴 구분선 |
configs |
환경설정 (본인외에 보이지 않음) |
create |
개인박스(개인채널)생성 (본인외에 보이지 않음) |
whisper |
귓속말보내기 (본인에게 보이지 않음) |
call |
호출하기 (본인에게 보이지 않음) |
invite |
개인박스(개인채널)초대 (본인에게 보이지 않음) |
showip |
아이피확인 (관리자외 보이지 않음) |
banip |
아이피차단 (관리자외 보이지 않음) |
op |
관리자권한 부여 (관리자외 보이지 않음) |
deop |
관리자권한 해제 (관리자외 보이지 않음) |
사용자정의 메뉴 추가
| 필드 | 타입 | 설명 |
|---|---|---|
name |
string |
고유값으로 영문 및 숫자로만 이루어져야합니다. |
icon |
string |
메뉴 아이콘 이미지 경로 |
iconClass |
string |
메뉴 아이콘 스타일시트 (아이콘폰트 등의 스타일을 지정할 수 있습니다.) |
visible |
function(minitalk, user, me) |
메뉴 보임여부 (minitalk : 미니톡객체, user : 메뉴를 클릭한 유저, me : 접속자정보) |
handler |
function(minitalk, user, e) |
메뉴 클릭시 실행될 함수 (minitalk : 미니톡객체, user : 메뉴를 클릭한 유저, e : 클릭이벤트) |
name:string 은 필수값으로 지정되어야 합니다.
icon:string 또는 iconClass:string 두개 설정값 중 한개 이상 설정이 되어 있어야 메뉴 아이콘이 표시됩니다.
visible:function(minitalk,user,me) 에서 해당 함수가 false 를 반환할 경우 메뉴가 보이지 않습니다.
handler:function(minitalk,user,e) 에서 minitalk 객체를 이용하여 미니톡 내부함수에 접근할 수 있습니다.
자세한 사용은 아래 예제를 참고하시기 바랍니다.
유저메뉴는 Minitalk.user.appendMenu() 함수를 이용해서도 추가할 수 있습니다.
예제
최종수정일 : 2021.02.02
viewConnectMessage
섹션 제목: “viewConnectMessage”viewConnectMessage: boolean서버접속 안내메시지를 보일지 설정한다.
타입 boolean · 기본값 true
미니톡 서버에 접속할 경우 [닉네임]님 [채널]에 접속하였습니다. 등의 접속안내 메시지를 보일지 말지 설정합니다.
false 로 설정할 경우 접속안내 메시지를 보이지 않습니다.
최종수정일 : 2021.02.02
viewUserNotification
섹션 제목: “viewUserNotification”viewUserNotification: string[]유저의 접속/접속종료/정보변경 안내메시지를 보일지 설정합니다.
타입 string[]
유저의 접속/접속종료/정보변경 메시지를 보일지 설정합니다.
기본값으로 ["join", "leave", "update"] 으로 설정되어 있으며, 메시지를 출력하고 싶은 타입을 배열형태로 지정하면 됩니다.
| 값 | 설명 |
|---|---|
join |
유저의 접속안내 메시지 |
leave |
유저의 접속종료 메시지 |
update |
유저의 정보변경 메시지 |
유저의 접속, 접속종료, 정보변경 메시지 모두를 보이지 않게 설정하려면 [] 으로 설정하시면 됩니다.
또한 유저접속 메시지는 viewUserNotificationLimit 에 의해 설정된 유저레벨 이상의 유저메시지만 표시됩니다.
예제
최종수정일 : 2021.02.02
viewUserNotificationLimit
섹션 제목: “viewUserNotificationLimit”viewUserNotificationLimit: int유저의 접속/접속종료/정보변경 안내메시지를 보일 유저의 최소레벨을 설정합니다.
타입 int
유저의 접속/접속종료/정보변경 안내메시지를 보일 대상 유저의 최소레벨을 설정합니다.
0 으로 설정시 모든 유저의 접속/접속종료/정보변경 안내메시지가 보입니다.
9 로 설정할 경우 관리자 유저의 접속/접속종료/정보변경 안내메시지가 보입니다.
예제
최종수정일 : 2021.02.02
width
섹션 제목: “width”width: int | string미니톡의 가로크기를 정의합니다.
타입 int | string · 기본값 180
미니톡의 가로크기를 픽셀(px)또는 퍼센트(%) 단위로 설정합니다.
픽셀(px) 단위로 정의할 경우 int 형식으로 설정하셔야 하며, 퍼센트(%) 단위일 경우 string 형식으로 설정하셔야 합니다.
퍼센트(%) 단위의 경우 미니톡 채팅위젯이 들어가는 상위 DOM 객체의 가로크기에 영향을 받습니다.
예제
최종수정일 : 2020.12.22
메서드 (Methods)
섹션 제목: “메서드 (Methods)”| 이름 | 설명 |
|---|---|
getErrorText() |
에러코드에 해당하는 에러메시지를 가져옵니다. |
getPluginUrl() |
플러그인 경로를 가져옵니다. |
getProcessUrl() |
미니톡 프로세스 경로를 가져옵니다. |
getText() |
미니톡 클라이언트 언어팩에서 언어코드에 해당하는 문자열을 가져옵니다. |
getUrl() |
미니톡 채팅위젯의 스크립트가 있는 경로를 가져옵니다. |
on() |
이벤트리스너를 등록합니다. |
session() |
브라우저의 세션스토리지에 데이터를 저장합니다. |
storage() |
브라우저의 로컬스토리지에 데이터를 저장합니다. |
getErrorText()
섹션 제목: “getErrorText()”Minitalk.getErrorText(errorcode: string): string에러코드에 해당하는 에러메시지를 가져옵니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
errorcode |
string |
반환값 string
미니톡 에러메시지는 각 언어팩내에 "error" 변수 아래에 정의되어 있습니다.
예를들어 한국어 언어팩의 경우 /languages/ko.json 파일을 열면, 아래와 같이 언어셋이 정의되어 있습니다.
{ ... "error":{ "NOT_SELECTED":"선택된 항목이 없습니다.", "UNKNOWN":"알 수 없는 에러가 발생하였습니다.", ... }}위에서 "선택된 항목이 없습니다." 라는 텍스트를 가져오려면,
Minitalk.getErrorText("NOT_SELECTED");// 또는 getText() 함수로도 가져올 수 있습니다.Minitalk.getText("error/NOT_SELECTED");위와 같이 가져올 수 있습니다.
최종수정일 : 2021.02.02
getPluginUrl()
섹션 제목: “getPluginUrl()”Minitalk.getPluginUrl(pluginName: string): string플러그인 경로를 가져옵니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
pluginName |
string |
경로를 가져올 플러그인 명을 입력합니다. |
반환값 string
미니톡 채팅위젯 스크립트가 https://www.yourdomain.com/minitalk/scripts/minitalk.js 에 있는 경우, 아래와 같이 함수를 호출하면, https://www.yourdomain.com/minitalk/plugins/hello 를 가져올 수 있습니다.
Minitalk.getPluginUrl("hello"); // https://www.yourdomain.com/minitalk/plugins/hello 반환최종수정일 : 2021.02.02
getProcessUrl()
섹션 제목: “getProcessUrl()”Minitalk.getProcessUrl(action: string): string미니톡 프로세스 경로를 가져옵니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
action |
string |
프로세스를 호출할 action 값을 전달합니다. |
반환값 string
미니톡 채팅위젯 스크립트가 https://www.yourdomain.com/minitalk/scripts/minitalk.js 에 있는 경우, 아래와 같이 함수를 호출하면, https://www.yourdomain.com/minitalk/process/getServer 를 가져올 수 있습니다.
Minitalk.getProcessUrl("getServer"); // https://www.yourdomain.com/minitalk/process/getServer 반환해당 action 값은 미니톡 클라이언트가 설치된 폴더의 /process/ 폴더를 보시면 각각의 action 명으로 php 파일이 존재합니다.
최종수정일 : 2021.02.02
getText()
섹션 제목: “getText()”Minitalk.getText(code: string, replacement?: string): string미니톡 클라이언트 언어팩에서 언어코드에 해당하는 문자열을 가져옵니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
code |
string |
|
replacement |
string |
(선택, 기본값 null) |
반환값 string
미니톡 채팅위젯에서 설정된 언어에 따라, 미니톡 클라이언트 언어팩에서 언어코드에 해당하는 문자열을 가져옵니다.
언어파일은 json 으로 되어 있으며, languages 폴더안에 언어코드로 저장되어 있습니다.
예를들어 한국어 언어팩의 경우 /languages/ko.json 파일을 열면, 아래와 같이 언어셋이 정의되어 있습니다.
{ "text":{ "unit":"{COUNT}명", "me":"나", ...위에서 "나" 라는 텍스트를 가져오려면,
Minitalk.getText("text/me");위와 같이 가져올 수 있습니다.
최종수정일 : 2021.02.02
getUrl()
섹션 제목: “getUrl()”Minitalk.getUrl(): String미니톡 채팅위젯의 스크립트가 있는 경로를 가져옵니다.
반환값 String
미니톡 채팅위젯 스크립트가 https://www.yourdomain.com/minitalk/scripts/minitalk.js 에 있는 경우, 아래와 같이 함수를 호출하면, https://www.yourdomain.com/minitalk/scripts 를 가져올 수 있습니다.
Minitalk.getUrl(); // https://www.yourdomain.com/minitalk/scripts 반환최종수정일 : 2021.02.02
on()
섹션 제목: “on()”Minitalk.on(eventName: string, callback: function): void이벤트리스너를 등록합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
eventName |
string |
|
callback |
function |
반환값 void
미니톡 채팅위젯에 바로 설정할 경우 listeners 설정값을 통해 등록할 수 있습니다.
같은 이벤트명에 여러개의 이벤트 리스너를 정의할 경우, 이 함수를 이용하여 정의할 수 있습니다.
이벤트 종류 및 이벤트 리스너의 매개변수는 이벤트함수를 참고하여 주시기 바랍니다.
예제
최종수정일 : 2021.02.02
session()
섹션 제목: “session()”Minitalk.session(key: string, value?: object): boolean | object브라우저의 세션스토리지에 데이터를 저장합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
key |
string |
|
value |
object |
(선택) |
반환값 boolean | object
미니톡 채팅위젯내에서 사용되는 임시 변수명을 저장하거나 가져올 수 있습니다.
세션 스토리지는 페이지가 완전히 닫히기전까지 데이터를 보관할 수 있습니다.
Minitalk.session("myKey","myValue"); // myKey 이름으로 myValue 값을 저장합니다.Minitalk.session("mykey"); // myKey 이름으로 저장된 데이터(여기선 myValue)를 가져옵니다.저장되는 데이터 형식(object, int, string 등)에는 제한이 없습니다. (단, 함수는 저장되지 않습니다.)
최종수정일 : 2021.02.02
storage()
섹션 제목: “storage()”Minitalk.storage(key: string, value?: object): boolean | object브라우저의 로컬스토리지에 데이터를 저장합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
key |
string |
|
value |
object |
(선택) |
반환값 boolean | object
미니톡 채팅위젯내에서 사용되는 임시 변수명을 저장하거나 가져올 수 있습니다.
로컬 스토리지는 세션 스토리지와 다르게 브라우저를 종료하여도 데이터가 보존됩니다.
Minitalk.storage("myKey","myValue"); // myKey 이름으로 myValue 값을 저장합니다.Minitalk.storage("mykey"); // myKey 이름으로 저장된 데이터(여기선 myValue)를 가져옵니다.저장되는 데이터 형식(object, int, string 등)에는 제한이 없습니다. (단, 함수는 저장되지 않습니다.)
최종수정일 : 2021.02.02
이벤트 (Events)
섹션 제목: “이벤트 (Events)”| 이름 | 설명 |
|---|---|
activeTool |
사용자가 툴바 버튼을 클릭(활성화)하기 직후에 발생합니다. |
afterSendMessage |
메시지 전송이 완료되었을 때 발생합니다. |
beforeActiveTool |
사용자가 툴바 버튼을 클릭(활성화)하기 직전에 발생합니다. |
beforeMessage |
메시지가 수신되어 미니톡 채팅위젯에 출력되기 전에 발생합니다. |
beforeSendCall |
누군가를 호출하기 직전에 발생한다. |
beforeSendMessage |
메시지를 전송하기 직전에 발생한다. |
beforeSendWhisper |
귓속말을 전송하기 직전에 발생한다. |
call |
누군가에게 호출을 받았을 때 발생한다. |
command |
메시지 입력폼에 사용자정의 명령어가 실행되었을 때 발생합니다. |
connect |
미니톡 서버에 접속되어 채널에 접속하였을 경우 |
connecting |
서버에 접속하여 최근대화목록을 불러오기 직전에 발생합니다. |
esc |
미니톡 채팅위젯 내에서 사용자가 키보드의 ESC 키를 눌렀을 때 발생합니다. |
init |
미니톡 채팅위젯의 환경설정값을 모두 적용하였을 때 발생합니다. |
initChannel |
채널의 설정값을 불러왔을 때 발생합니다. |
message |
메시지를 수신하였을 때 발생합니다. |
printMessage |
메시지가 출력된 이후에 발생한다. |
ready |
미니톡 채팅위젯의 HTML DOM 이 랜더링되었을때 발생합니다. |
sendMessage |
유저가 메시지를 전송한 직후 발생합니다. |
sendWhisper |
유저가 귓속말을 전송한 직후 발생합니다. |
activeTool
섹션 제목: “activeTool”activeTool(minitalk: Minitalk, tool: string | object, $tool: DOM)사용자가 툴바 버튼을 클릭(활성화)하기 직후에 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
tool |
string | object |
클릭한 툴 객체 |
$tool |
DOM |
클릭한 툴버튼 DOM jQuery 객체 |
string/object tool 에서 타입이 string 인 경우 기본 툴버튼(굵게, 밑줄, 기울임, 파일, 이모티콘 등)이며, object 인 경우 사용자가 직접 정의한 툴버튼입니다.
최종수정일 : 2021.02.15
afterSendMessage
섹션 제목: “afterSendMessage”afterSendMessage(minitalk: Minitalk, success: boolean, message: object)메시지 전송이 완료되었을 때 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
success |
boolean |
메시지 전송성공여부 |
message |
object |
아래 구조 참고 |
message 구조
| 필드 | 타입 | 설명 |
|---|---|---|
id |
string |
메시지 고유ID |
type |
string |
메시지 종류 |
message |
string |
메시지 내용 |
data |
object |
메시지에 포함된 추가 데이터 |
time |
int |
메시지 수신시각 (UNIXTIMESTAMP) |
user |
User |
|
user.uuid |
string |
메시지 전송자 고유값 |
user.nickname |
string |
메시지 전송자 닉네임 |
user.nickcon |
string |
메시지 전송자 닉이미지 |
user.photo |
string |
메시지 전송자 프로필사진 |
user.level |
int |
메시지 전송자 레벨 |
user.extras |
object |
메시지 전송자 추가정보 |
to |
object |
전체 수신자인 경우 NULL |
to.uuid |
string |
메시지 수신자 고유값 |
to.nickname |
string |
메시지 수신자 닉네임 |
to.nickcon |
string |
메시지 수신자 닉이미지 |
to.photo |
string |
메시지 수신자 프로필사진 |
to.level |
int |
메시지 수신자 레벨 |
to.extras |
object |
메시지 수신자 추가정보 |
자신이 메시지를 전송한 후, 해당 메시지가 서버에 전송이 완료되어 전송결과를 받았을 때 발생합니다.
예제
최종수정일 : 2021.04.16
beforeActiveTool
섹션 제목: “beforeActiveTool”beforeActiveTool(minitalk: Minitalk, tool: string | object, $tool: DOM)사용자가 툴바 버튼을 클릭(활성화)하기 직전에 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
tool |
string | object |
클릭한 툴 객체 |
$tool |
DOM |
클릭한 툴버튼 DOM jQuery 객체 |
해당 이벤트리스너에서 false 를 반환하면, 툴바버튼 클릭(활성화)를 취소합니다.
string/object tool 에서 타입이 string 인 경우 기본 툴버튼(굵게, 밑줄, 기울임, 파일, 이모티콘 등)이며, object 인 경우 사용자가 직접 정의한 툴버튼입니다.
최종수정일 : 2021.02.15
beforeMessage
섹션 제목: “beforeMessage”beforeMessage(minitalk: Minitalk, message: object)메시지가 수신되어 미니톡 채팅위젯에 출력되기 전에 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
message |
object |
아래 구조 참고 |
message 구조
| 필드 | 타입 | 설명 |
|---|---|---|
id |
string |
메시지 고유ID |
type |
string |
메시지 종류 |
message |
string |
메시지 내용 |
data |
object |
메시지에 포함된 추가 데이터 |
time |
int |
메시지 수신시각 (UNIXTIMESTAMP) |
user |
User |
|
user.uuid |
string |
메시지 전송자 고유값 |
user.nickname |
string |
메시지 전송자 닉네임 |
user.nickcon |
string |
메시지 전송자 닉이미지 |
user.photo |
string |
메시지 전송자 프로필사진 |
user.level |
int |
메시지 전송자 레벨 |
user.extras |
object |
메시지 전송자 추가정보 |
to |
object |
전체 수신자인 경우 NULL |
to.uuid |
string |
메시지 수신자 고유값 |
to.nickname |
string |
메시지 수신자 닉네임 |
to.nickcon |
string |
메시지 수신자 닉이미지 |
to.photo |
string |
메시지 수신자 프로필사진 |
to.level |
int |
메시지 수신자 레벨 |
to.extras |
object |
메시지 수신자 추가정보 |
beforeMessage 이벤트리스너에서 false 를 반환하면, 메시지 출력이 중단됩니다.
예제
최종수정일 : 2021.02.15
beforeSendCall
섹션 제목: “beforeSendCall”beforeSendCall(minitalk: Minitalk, nickname: string)누군가를 호출하기 직전에 발생한다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
nickname |
string |
호출하려는 대상의 닉네임 |
유저가 누군가를 호출하기 직전에 발생하며, 해당 이벤트리스너에서 false 를 반환하면, 호출을 중단합니다.
예제
최종수정일 : 2021.07.22
beforeSendMessage
섹션 제목: “beforeSendMessage”beforeSendMessage(minitalk: Minitalk, message: string)메시지를 전송하기 직전에 발생한다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
message |
string |
전송하려는 메시지 |
유저가 메시지를 전송하기 직전에 발생하며, 해당 이벤트리스너에서 false 를 반환하면, 메시지 전송을 중단합니다.
예제
최종수정일 : 2021.04.16
beforeSendWhisper
섹션 제목: “beforeSendWhisper”beforeSendWhisper(minitalk: Minitalk, nickname: string, message: string)귓속말을 전송하기 직전에 발생한다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
nickname |
string |
귓속말 수신자 닉네임 |
message |
string |
전송하려는 메시지 |
유저가 귓속말을 전송하기 직전에 발생하며, 해당 이벤트리스너에서 false 를 반환하면, 귓속말 전송을 중단합니다.
예제
최종수정일 : 2021.04.16
call
섹션 제목: “call”call(minitalk: Minitalk, user: User)누군가에게 호출을 받았을 때 발생한다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
user |
User |
아래 구조 참고 |
user 구조
| 필드 | 타입 | 설명 |
|---|---|---|
uuid |
string |
유저고유값 |
nickname |
string |
호출한 유저닉네임 |
nickcon |
string |
호출한 유저닉이미지 |
photo |
string |
호출한 유저 프로필 이미지 |
level |
int |
호출한 유저 레벨 |
extras |
object |
호출한 유저 부가정보 |
누군가가 나를 호출하였을 때 발생하며, 호출한 대상이 전달됩니다.
예제
최종수정일 : 2021.07.22
command
섹션 제목: “command”command(minitalk: Minitalk, command: string, data: string)메시지 입력폼에 사용자정의 명령어가 실행되었을 때 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
command |
string |
명령어 |
data |
string |
명령어를 제외한 사용자가 입력한 데이터 |
메시지 입력폼에 슬래시(/) 명령어 중 기본 명령어가 아닌 사용자정의된 명령어를 추가하여 사용할 경우 사용합니다.
자세한 예제소스는 주사위 플러그인을 참고하시기 바랍니다.
최종수정일 : 2021.02.15
connect
섹션 제목: “connect”connect(minitalk: Minitalk, channel: object, me: User, count: int)미니톡 서버에 접속되어 채널에 접속하였을 경우
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
channel |
object |
아래 구조 참고 |
me |
User |
아래 구조 참고 |
count |
int |
접속한 채널에 현재 접속한 인원수 |
channel 구조
| 필드 | 타입 | 설명 |
|---|---|---|
channel |
string |
채널이름 (example) |
title |
string |
채널명 (미니톡 예제체널) |
me 구조
| 필드 | 타입 | 설명 |
|---|---|---|
uuid |
string |
유저고유값 |
nickname |
string |
나의 닉네임 |
nickcon |
string |
나의 닉이미지 |
photo |
string |
나의 프로필 이미지 |
level |
int |
나의 레벨 |
extras |
object |
나의 부가정보 |
예제
최종수정일 : 2021.02.14
connecting
섹션 제목: “connecting”connecting(minitalk: Minitalk, channel: object, me: User, count: int)서버에 접속하여 최근대화목록을 불러오기 직전에 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
channel |
object |
아래 구조 참고 |
me |
User |
아래 구조 참고 |
count |
int |
접속한 채널에 현재 접속한 인원수 |
channel 구조
| 필드 | 타입 | 설명 |
|---|---|---|
channel |
string |
채널이름 (example) |
title |
string |
채널명 (미니톡 예제체널) |
me 구조
| 필드 | 타입 | 설명 |
|---|---|---|
uuid |
string |
유저고유값 |
nickname |
string |
나의 닉네임 |
nickcon |
string |
나의 닉이미지 |
photo |
string |
나의 프로필 이미지 |
level |
int |
나의 레벨 |
extras |
object |
나의 부가정보 |
최종수정일 : 2021.02.15
esc
섹션 제목: “esc”esc(minitalk: Minitalk)미니톡 채팅위젯 내에서 사용자가 키보드의 ESC 키를 눌렀을 때 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
최종수정일 : 2021.02.15
init
섹션 제목: “init”init(minitalk: Minitalk)미니톡 채팅위젯의 환경설정값을 모두 적용하였을 때 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
미니톡 채팅위젯의 환경설정값(CONFIGS)가 모두 적용되고 기본적인 DOM 이 랜더링되기전에 발생합니다.
각종 미니톡 채팅위젯의 환경설정값을 변경하고자 할때 이용하거나, 부가적인 설정을 할때 이용할 수 있습니다.
예제
최종수정일 : 2021.02.13
initChannel
섹션 제목: “initChannel”initChannel(minitalk: Minitalk, channel: object)채널의 설정값을 불러왔을 때 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
channel |
object |
아래 구조 참고 |
channel 구조
| 필드 | 타입 | 설명 |
|---|---|---|
title |
string |
채널명 (미니톡 예제체널) |
token |
string |
API 호출하기 위한 토큰정보 |
use_boxes |
boolean |
박스사용여부 |
use_users |
boolean |
접속자목록 사용여부 |
채널의 설정값을 불러온 뒤 미니톡 채팅위젯에 해당 설정값을 적용할 때 발생합니다.
최종수정일 : 2021.02.13
message
섹션 제목: “message”message(minitalk: Minitalk, message: object)메시지를 수신하였을 때 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
message |
object |
아래 구조 참고 |
message 구조
| 필드 | 타입 | 설명 |
|---|---|---|
id |
string |
메시지 고유ID |
type |
string |
메시지 종류 |
message |
string |
메시지 내용 |
data |
object |
메시지에 포함된 추가 데이터 |
time |
int |
메시지 수신시각 (UNIXTIMESTAMP) |
user |
User |
|
user.uuid |
string |
메시지 전송자 고유값 |
user.nickname |
string |
메시지 전송자 닉네임 |
user.nickcon |
string |
메시지 전송자 닉이미지 |
user.photo |
string |
메시지 전송자 프로필사진 |
user.level |
int |
메시지 전송자 레벨 |
user.extras |
object |
메시지 전송자 추가정보 |
to |
object |
전체 수신자인 경우 NULL |
to.uuid |
string |
메시지 수신자 고유값 |
to.nickname |
string |
메시지 수신자 닉네임 |
to.nickcon |
string |
메시지 수신자 닉이미지 |
to.photo |
string |
메시지 수신자 프로필사진 |
to.level |
int |
메시지 수신자 레벨 |
to.extras |
object |
메시지 수신자 추가정보 |
자기 자신이 보낸 메시지에는 message 이벤트가 발생하지 않으므로, 자신이 보낸 메시지 객체는 afterSendMessage 이벤트를 통해 확인할 수 있습니다.
예제
최종수정일 : 2021.04.16
printMessage
섹션 제목: “printMessage”printMessage(minitalk: Minitalk, message: object, $content: DOM)메시지가 출력된 이후에 발생한다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
message |
object |
아래 구조 참고 |
$content |
DOM |
메시지가 출력된 DOM jQuery 객체 |
message 구조
| 필드 | 타입 | 설명 |
|---|---|---|
id |
string |
메시지 고유ID |
type |
string |
메시지 종류 |
message |
string |
메시지 내용 |
data |
object |
메시지에 포함된 추가 데이터 |
time |
int |
메시지 수신시각 (UNIXTIMESTAMP) |
user |
User |
|
user.uuid |
string |
메시지 전송자 고유값 |
user.nickname |
string |
메시지 전송자 닉네임 |
user.nickcon |
string |
메시지 전송자 닉이미지 |
user.photo |
string |
메시지 전송자 프로필사진 |
user.level |
int |
메시지 전송자 레벨 |
user.extras |
object |
메시지 전송자 추가정보 |
to |
object |
전체 수신자인 경우 NULL |
to.uuid |
string |
메시지 수신자 고유값 |
to.nickname |
string |
메시지 수신자 닉네임 |
to.nickcon |
string |
메시지 수신자 닉이미지 |
to.photo |
string |
메시지 수신자 프로필사진 |
to.level |
int |
메시지 수신자 레벨 |
to.extras |
object |
메시지 수신자 추가정보 |
message.type 이 message 이거나, file 인 경우 미니톡의 기본 메시지 타입으로 DOM $content 에 메시지 내용이 랜더링 되어 있으나, message.type 이 플러그인이나 기타 사용자가 정의한 경우 DOM $content 에 메시지내용이 랜더링 되어 있지 않으므로, 이 이벤트를 이용하여 해당 메시지 종류에 대응하는 HTML DOM 을 작성하여 주어야 메시지가 정상적으로 출력됩니다.
자세한 예제소스는 주사위 플러그인을 참고하시기 바랍니다.
최종수정일 : 2021.02.15
ready
섹션 제목: “ready”ready(minitalk: Minitalk, $frame: DOM)미니톡 채팅위젯의 HTML DOM 이 랜더링되었을때 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
$frame |
DOM |
미니톡을 감싸고 있는 frame 의 jQuery 객체 $("div[data-role=frame]") |
미니톡 채팅위젯의 HTML DOM 이 랜더링되었을 때 발생하며, DOM 객체를 수정할 때 이용할 수 있습니다.
최종수정일 : 2021.02.13
sendMessage
섹션 제목: “sendMessage”sendMessage(minitalk: Minitalk, message: string)유저가 메시지를 전송한 직후 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
message |
string |
전송한 메시지 |
예제
최종수정일 : 2021.04.16
sendWhisper
섹션 제목: “sendWhisper”sendWhisper(minitalk: Minitalk, nickname: string, message: string)유저가 귓속말을 전송한 직후 발생합니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
minitalk |
Minitalk |
이벤트가 발생한 미니톡 객체 |
nickname |
string |
귓속말 수신자 닉네임 |
message |
string |
전송한 메시지 |
예제
최종수정일 : 2021.04.16