# Overview

vchatCloud sdk는 채팅 클라이언트 구현을 쉽게 할 수 있도록 도와줍니다.
웹 클라이언트에서 vchatCloud sdk를 이용하여 실시간 채팅을 빠르고 효율적으로 사용해보세요.
퀵 가이드에서는 vchatCloud sdk의 구조 및 기능에 대한 간략한 내용을 안내하고 있고,
각 항목에서는 자세한 설명을 바탕으로 실무 프로젝트에 적용하기위한 가이드를 제공하고 있습니다.

# 데모화면 실행하기

데모 화면vchatCloud에서 사용할 수 있는 대부분의 기능들이 녹아 들어가 있으며,
데모 화면을 통하여 자체 프로젝트에 적용할 수 있는 힌트를 얻고, 여러가지 형태의 프로젝트에 적용해 보세요.

# 데모 화면의 동작 방식

데모 화면는 클라이언트 에서 임의 사용자가 진입시 필요한 대화명 설정과 채팅방선택을 진행할 수 있도록 도와줍니다.
진입한 채팅방에서는 같은 채널키로 입장한 다른 사용자로 부터 메시지를 받고, 보내고 채팅서버가 이벤트를 발생하여 전달하게 됩니다.
데모 화면는 서버로부터 발생한 이벤트를 제공된 메소드로 콜백함수를 전달합니다.
전달되는 콜백함수를 이용하여 이벤트를 쉽게 구현 및 제어하도록 도와줍니다.

# 데모 화면 실행순서

데모 화면을 동작해 보려면 아래의 항목을 순서대로 진행해주세요

  1. 브라우저가 지원되는지 확인해주세요.
  2. 데모 화면을 다운로드 해주세요
  3. 채팅서비스 체험하기

# 지원되는 브라우저 확인

브라우저 지원되는 버전
Internet Explorer 10 or higher
Edge 13 or higher
Chrome 16 or higher
Firefox 11 or higher
Opera 12.1 or higher
Naver Whale 2.8 or higher

# 데모 화면 사용하기

  1. 데모 화면 제공된 버전 중 사용하고자 하는 버전을 눌러 github 로 이동하여 ZIP 다운로드를 한다 ( Code ▼ > Download ZIP )
  2. 다운로드 받은 폴더로 이동하여 zip파일을 압축해제 해준다.
  3. 풀려진 폴더경로로 진입하여 index.html 을 실행한다.

# 채팅서비스 체험하기

# 채팅방 진입

    # 채팅 하기

      # 구현코드 확인

      # vChatCloud, channel 객체 선언

      function joinRoom(roomId, clientKey, nickName, callback) {
        // vchatcloud 객체
        channel = vChatCloud.joinChannel(
          {
            roomId: roomId, // 채팅방ID(채널키)
            clientKey: clientKey, // 클라이언트 고유키 (유저 식별값)
            nickName: nickName, // 채팅방에 입장한 유저 별명
          },
          function(error, history) {
            $('div.entery, div.chatout, div.notice, div.whisper, div.content').remove();
            if (error) {
              if (callback) return callback(error, null);
              return error;
              /** error 정의
                      0     SYSTEM_ERROR         시스템 에러 – 관리자에게 문의하세요.
                      10101 USER_LIMIT_EXCEEDED     접속 인원이 초과되었습니다.
                      10102 CHANNEL_NOT_EXISTED     존재하지 않는 채팅방입니다.
                      10103 CHANNEL _BEFORE_OPENED 채팅방 개설시간 전입니다.
                      10104 CHANNEL _AFTER_CLOSED 채팅방이 종료되었습니다.
                      10105 ACTIVE_LIMIT_EXCEEDED Active User 수를 초과했습니다.
                      10106 CHANNEL_USER_BANED     추방된 유저입니다.
                      10107 USER_NOT_EXISTED     접속하지 않은 유저입니다.
                      10901 MISSING_REQURIED_PARAM 필수 파라미터 누락
                  */
            }
            if (callback) callback(null, history);
            // 채팅영역에 글쓰기가 활성화될시 활성화
            if (typeof write == 'function') write('실시간 채팅에 오신 것을 환영합니다. 개인정보를 보호하고 커뮤니티 가이드를 준수하는 것을 잊지 마세요!', 'notice');
          }
        );
      }
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31

      # 채널객체 이벤트 처리

        Copyright 2022. E7Works Inc. & JOYTUNE Corp. All Rights Reserved.