CHAT?
CHAT은 소셜 커뮤니케이션, 고객 서비스 메시징, 챗봇, 온라인 학습, 라이브 스트리밍, 대화형 게임, 웹 3, 음성 및 화상 통화 앱 또는 웹사이트 구축을 위한 확장 가능하고 빠른 API, SDK 및 UIKit이다. (참고: https://www.tencentcloud.com/products/im)
텐센트클라우드 공식 홈페이지에서 소개하고 있는 CHAT의 기능이다. 한 마디로 카카오톡,텔레그램 같은 메신저 앱이나 인스타그램이나 틱톡같은 라이브스트리밍 기능을 지원하는 앱을 손쉽게 개발할 수 있도록 API나 SDK를 제공해주는 서비스라고 보면된다.
Demo (Messenger)
CHAT의 상세한 기능 및 시나리오, 실제 사용사례 등은 텐센트클라우드의 관련 상품링크에 한글로 자세히 설명 되어있으니 (글 마지막 참고자료 링크참조) 참고하면 된다.
CHAT에서는 정식 서비스 사용 전에 미리 개발자들이 프로그램을 구현해 볼수 있도록 Web, iOS, android 환경에서 Demo를 제공하는데, 이번에는 이 Demo들을 체험해보기로 했다. 텐센트클라우드 공식 홈페이지와 깃허브를 참고하여 iOS 환경에서의 채팅SDK와 Web환경(React)에서의 Web Live 데모를 구현한다.
SDKAppID와 Secret Key 얻기
CHAT 콘솔에 접속해서 Application management , Create Application을 차례로 클릭하여 애플리케이션을 생성한 뒤 생성한 애플리케이션 이름을 클릭하면 위와 같은 Application Details 창이 뜨는데, 여기서 SDKAppID 와 Secret Key를 얻는다.
iOS Demo 설치
1) 깃허브 CHAT Demo 설치링크 (https://github.com/TencentCloud/TIMSDK)를 클론하여 내려받는다.
git clone https://github.com/TencentCloud/TIMSDK
2) 다음은 iOS/Demo/TUIKitDemo/Private 하위 경로에 위치한 GenerateTestUserSig.h 파일을 편집기로 실행하고 static const int public_SDKAPPID = 0; , static NSString * const public_SECRETKEY = @"";의 값을 각각 위에서 얻은SDKAppID와 Secret Key로 변경한다.
static const int public_SDKAPPID = <SDKAppID>;
static NSString * const public_SECRETKEY = @"<Secret Key>";
cocoaPods 패키지관리자 설치가 필요하다.
pod --version
버전 확인 후 설치가 되어있지 않다면 설치한다. macOS 기준으로 homebrew를 이용하였다.
$ brew cleanup -d -v
$ brew install cocoapods
$ pod setup
3) iOS/Demo 경로에서
다음 스크립트로 설치를 진행한다.
pod install
// 설치에러가 뜬다면
pod repo update //를 통해 코코아팟 최신 버전 정보를 업데이트 한다.
**그래도 설치가 안된다면 같은 경로에서 CocoaPods 의존성 관리 파일인 Podfile.lock를 찾아 삭제 한뒤 다시 시도한다.
4) 패키지 설치가 완료되면 TUIKitDemo.xcworkspace파일을 Xcode로 불러오면 데모가 실행된다.
채팅 기능
설치된 데모코드를 보면 정말 채팅 앱을 위한 모든 기능이 구현되어 있다.
Xcode에서 시뮬레이터를 Run하면 Tencent CHAT아이콘을 확인할 수 있다.
직접 시뮬레이터로 데모를 실행한 모습.
굳이 코드를 수정하지 않고도 데모가 CHAT 콘솔과 연동이 되어있기 때문에 콘솔에서 채팅방 설정, 회원정보 설정 등을 업데이트하면 데모에 반영이 된다.
이제 웹 소켓에 대한 이해가 없어도 누구나 간단하게 채팅 앱을 구현할 수 있다.
Demo (Web Live)
Secret Key와 SDKAppID를 얻는 과정까지는 동일하고, 역시 공식 가이드에 따라 설치를 진행해보자.
1) 소스코드 다운로드
$ git clone https://github.com/TencentCloud/chat-uikit-react
$ cd chat-uikit-react
$ npm install && cd examples/sample-chat && npm install
2) 다운로드가 완료되면 chat-uikit-react/examples/sample-chat/src/debug 하위경로의 GenerateTestUserSig.js를 편집기로 열어서 SDKAppID 와 Secret Key를 입력해준다.
3) 웹서버 실행
웹 서버를 실행하고
$ cd examples/sample-chat
$ npm run start
접속하면(http://localhost:3000) 데모가 실행된다.
테스트 아이디를 검색창에 입력한 뒤
추가된 아이디를 클릭하면
웹 라이브 채팅 데모가 실행된다. 채팅에 필요한 모든 기능이 탑재되어 있다.
데모가 실행된 웹 서버를 외부에 올리면 URL을 통해 다른 사람과의 채팅 체험이 가능하다.
마치며
이번에 적용해본 데모이외에 Tencent Cloud CHAT은 라이브스트리밍, 음성 & 화상 통화 , 온라인 학습 등 다양한 기능을 제공하고 있고 모두 데모로 체험이 가능하니 활용해보는 것도 좋을 것 같다. 또한 관련 상품팀에서 SDK 적용 및 빌드과정에서 발생하는 이슈에 대비하여 텔레그램이나 왓츠앱 등의 메신저로 실시간 CS도 제공하고 있다.