tencent cloud

Tencent Real-Time Communication

소식 및 공지 사항
제품 업데이트
Tencent Cloud 오디오/비디오 단말 SDK 재생 업그레이드 및 권한 부여 인증 추가
TRTC 월간 구독 패키지 출시 관련 안내
제품 소개
제품 개요
기본 개념
제품 기능
제품 장점
응용 시나리오
성능 데이터
구매 가이드
Billing Overview
무료 시간 안내
Monthly subscription
Pay-as-you-go
TRTC Overdue and Suspension Policy
과금 FAQ
Refund Instructions
신규 사용자 가이드
Demo 체험
Call
개요(TUICallKit)
Activate the Service
Run Demo
빠른 통합(TUICallKit)
오프라인 푸시
Conversational Chat
온클라우드 녹화(TUICallKit)
AI Noise Reduction
UI 사용자 정의
Calls integration to Chat
Additional Features
No UI Integration
Server APIs
Client APIs
Solution
ErrorCode
릴리스 노트
FAQs
라이브 스트리밍
Billing of Video Live Component
Overview
Activating the Service (TUILiveKit)
Demo 실행
No UI Integration
UI Customization
Live Broadcast Monitoring
Video Live Streaming
Voice Chat Room
Advanced Features
Client APIs
Server APIs
Error Codes
Release Notes
FAQs
RTC Engine
Activate Service
SDK 다운로드
API 코드 예시
Usage Guidelines
API 클라이언트 API
고급 기능
RTC RESTFUL API
History
Introduction
API Category
Room Management APIs
Stream mixing and relay APIs
On-cloud recording APIs
Data Monitoring APIs
Pull stream Relay Related interface
Web Record APIs
AI Service APIs
Cloud Slicing APIs
Cloud Moderation APIs
Making API Requests
Call Quality Monitoring APIs
Usage Statistics APIs
Data Types
Appendix
Error Codes
콘솔 가이드
애플리케이션 관리
사용량 통계
모니터링 대시보드
개발 보조
Solution
Real-Time Chorus
FAQs
과금 개요
기능 관련
UserSig 관련
방화벽 제한 처리
설치 패키지 용량 축소 관련 질문
Andriod 및 iOS 관련
Web 관련
Flutter 관련
Electron 관련
TRTCCalling Web 관련
멀티미디어 품질 관련
기타 질문
Protocols and Policies
컴플라이언스 인증
보안 백서
정보 보안에 관한 참고 사항
Service Level Agreement
Apple Privacy Policy: PrivacyInfo.xcprivacy
TRTC 정책
개인 정보 보호 정책
데이터 처리 및 보안 계약
용어집

TUICallEngine

PDF
포커스 모드
폰트 크기
마지막 업데이트 시간: 2024-07-23 17:41:08

TUICallEngine API

TUICallEngine은 UI 요소를 포함하지 않는 음성/영상 통화 컴포넌트입니다.

API 개요

API
설명
TUICallEngine 인스턴스 생성(싱글톤 모드)
TUICallEngine 인스턴스 종료(싱글톤 모드)
on
이벤트 수신
off
이벤트 수신 중지
login
로그인
logout
로그아웃
대화명 및 프로필 사진 설정
call
C2C 통화 하기
groupCall
그룹 통화하기
accept
통화 수락
reject
통화 거절
hangup
통화 종료
현재 그룹 통화에 사용자를 초대
현재 그룹 통화에 참여
통화 유형 변경
원격 비디오 렌더링 시작
원격 비디오 렌더링 중지
로컬 비디오 렌더링 시작
로컬 비디오 렌더링 중지
카메라 켜기
카메라 끄기
마이크 켜기
마이크 끄기
비디오 품질 설정
장치 목록 가져오기
다른 카메라/마이크로 변경
AI 노이즈 캔슬링 활성화/비활성화

API 세부 사항

createInstance

이 API는 TUICallEngine 싱글톤을 생성하는 데 사용됩니다.
const tuiCallEngine = TUICallEngine.createInstance({
SDKAppID: 0, // 0을 IM 애플리케이션의 SDKAppID로 대체
tim: tim // 이미 TIM 인스턴스가 있는 경우 이 tim 매개변수를 사용하여 TIM 인스턴스의 고유성 보장
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
SDKAppID
Number
IM 애플리케이션의 SDKAppID
tim
Any
TIM 인스턴스(선택 사항)

destroyInstance

이 API는 TUICallEngine 싱글톤을 종료하는 데 사용됩니다.
tuiCallEngine.destroyInstance().then(() => {
//success
}).catch(error => {
console.warn('destroyInstance error:', error);
});

on

이 API는 이벤트를 수신하는 데 사용됩니다.
let onError = function(error) {
console.log(error);
};
tuiCallEngine.on(TUICallEvent.ERROR, onError, this);
매개변수는 다음과 같습니다:
매개변수
유형
설명
eventName
String
이벤트 이름
callback
function
이벤트 콜백
context
Any
컨텍스트

off

이 API는 이벤트 수신을 중지하는 데 사용됩니다.
let onError = function(error) {
console.log(error);
};
tuiCallEngine.off(TUICallEvent.ERROR, onError, this);
매개변수는 다음과 같습니다:
매개변수
유형
설명
eventName
String
이벤트 이름
callback
function
이벤트 콜백
context
Any
컨텍스트

login

이 API는 로그인에 사용됩니다.
const params = {
userID: 'john', // your userID
userSig: 'xxxx', // 'your userSig'
assetsPath: 'https://xx/'
};
let promise = tuiCallEngine.login(params);
promise.then(() => {
//success
}).catch(error => {
console.warn('login error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userID
String
현재 사용자 ID이며, 문자열 유형은 영어 알파벳(a-z, A-Z), 숫자(0-9), 대시부호(-), 언더바(_)만 허용됩니다
userSig
String
Tencent Cloud의 독점 보안 서명. 자세한 내용은 UserSig 계산 방법을 참고하십시오.
assetsPath
String
denoiser-wasm.js 파일이 배포된 CDN 또는 정적 리소스 서버의 경로 이 파일은 AI 노이즈 캔슬링에 필요합니다. 자세한 내용은 튜토리얼: AI 노이즈 캔슬링 활성화를 참고하십시오.

logout

이 API는 로그아웃하는 데 사용됩니다.
let promise = tuiCallEngine.logout();
promise.then(() => {
//success
}).catch(error => {
console.warn('logout error:', error);
});

setSelfInfo

이 API는 대화명 및 프로필 사진을 설정하는 데 사용됩니다.
let promise = tuiCallEngine.setSelfInfo({
nickName: 'video',
avatar:'http(s)://url/to/image.jpg'
});
promise.then(() => {
//success
}).catch(error => {
console.warn('setSelfInfo error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
nickName
String
대화명
avatar
String
프로필 사진 URL

call

이 API는 C2C 통화를 수행하는 데 사용됩니다. 초대받은 사람은 TUICallEvent.INVITED 콜백을 수신합니다.
주의사항:
Android 및 iOS에서 오프라인 알림이 지원됩니다. Web 및 WeChat 미니프로그램에서는 지원되지 않습니다.
let promise = tuiCallEngine.call({
userID: 'user1',
type: 1,
});
promise.then(() => {
//success
}).catch(error => {
console.warn('call error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userID
String
초대받은 사람의 userID
type
Number
통화 유형. 0-알 수 없음, 1-음성 통화, 2-영상 통화

groupCall

이 API는 그룹 통화를 하는 데 사용됩니다. 초대받은 사람은 'EVENT.INVITED' 콜백을 받게 됩니다.
주의사항:
Android 및 iOS에서 오프라인 알림이 지원됩니다. Web 및 WeChat 미니프로그램에서는 지원되지 않습니다.
let promise = tuiCallEngine.groupCall({
userIDList: ['user1', 'user2'],
type: 1,
groupID: 'IM 그룹 ID',
});
promise.then(() => {
//success
}).catch(error => {
console.warn('groupCall error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userIDList
Array
호출할 사용자의 ID
type
Number
0-알 수 없음, 1-음성 통화, 2-영상 통화
groupID
String
IM 그룹 ID
timeout
String
제한 시간(선택 사항)
roomID
String
방 ID(선택 사항)
offlinePushInfo
Object
사용자 지정 오프라인 알림(이 매개변수는 선택 사항이며 tsignaling 0.8.0 이상에서만 유효)

offlinePushInfo

매개변수
유형
설명
title
string
오프라인 알림 제목(선택 사항)
description
string
오프라인 알림 내용(선택 사항)
androidOPPOChannelID
string
OPPO 8.0 이상에서 오프라인 알림을 위한 채널 ID(선택 사항)
extension
string
통과 콘텐츠(이 매개변수는 선택 사항이며 tsignaling 0.9.0 이상에서만 유효)

accept

이 API는 TUICallEvent.INVITED 콜백을 수신한 후 통화를 수락하는 데 사용됩니다.
tuiCallEngine.on(TUICallEvent.INVITED, () => {
tuiCallEngine.accept().promise.then(() => {
//success
}).catch(error => {
console.warn('accept error:', error);
});
});

reject

이 API는 TUICallEvent.INVITED 콜백을 수신한 후 통화를 거부하는 데 사용됩니다.
tuiCallEngine.on(TUICallEvent.INVITED, () => {
tuiCallEngine.reject().then(() => {
//success
}).catch(error => {
console.warn('reject error:', error);
});
});

hangup

이 API는 통화를 종료하는 데 사용됩니다.
통화 중인 경우 이 API로 통화를 종료할 수 있습니다.
통화가 아직 응답이 없는 경우, 이 API는 통화를 취소합니다
tuiCallEngine.hangup().then(() => {
//success
}).catch(error => {
console.warn('hangup error:', error);
});

inviteUser

이 API는 현재 그룹 통화에 사용자를 초대하는 데 사용됩니다.
이 API는 그룹 통화의 참가자가 새 사용자를 초대하기 위해 호출합니다.
const userIDList = ['jack', 'john'];
const params = {
userIDList
};
tuiCallEngine.inviteUser(params).then(() => {
// success
}).catch(error => {
console.error('inviteUser error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userIDList
Array
초청자의 userID
Object
사용자 지정 오프라인 알림(선택 사항). 이 매개변수는 tsignaling 버전이 0.8.0 이상인 경우에만 유효합니다.

offlinePushInfo

매개변수
유형
설명
title
string
오프라인 알림 제목(선택 사항)
description
string
오프라인 알림 내용(선택 사항)
androidOPPOChannelID
string
OPPO 8.0 이상에서 오프라인 알림을 위한 채널 ID(선택 사항)
extension
string
통과 콘텐츠(이 매개변수는 선택 사항이며 tsignaling 0.9.0 이상에서만 유효)

joinInGroupCall

이 API는 그룹 통화에 참여하는 데 사용됩니다.
이 API는 그룹 구성원이 그룹 통화에 참여하기 위해 호출합니다.
const params = {
roomID: 123,
type: 1,
groupID: 111
};
tuiCallEngine.joinInGroupCall(params).then(() => {
// success
}).catch(error => {
console.error('joinInGroupCall error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
roomID
Number
방 ID. 현재는 숫자로 된 방 ID만 사용할 수 있으며, 문자열 형식의 방 ID는 향후 지원될 예정입니다
groupID
String
그룹 ID
type
Number
통화 유형. 1 - 음성 통화, 2 - 영상 통화

switchCallMediaType

통화 유형을 변경합니다.
이 API는 1v1 통화에만 작동합니다.
ERROR 콜백 전환 실패. code: 60001
// 1 음성 통화; 2 영상 통화
tuiCallEngine.switchCallMediaType(2).then(() => {
//success
}).catch(error => {
console.warn('switchCallMediaType error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
newMediaType
Number
1-음성 통화, 2-영상 통화

startRemoteView

이 API는 원격 비디오 렌더링을 시작하는 데 사용됩니다. USER_VIDEO_AVAILABLE 이벤트를 수신한 후 해당 원격 비디오 렌더링을 시작합니다.
let promise = tuiCallEngine.startRemoteView({
userID: 'user1',
videoViewDomID: 'video_1',
});
promise.then(() => {
//success
}).catch(error => {
console.warn('startRemoteView error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userID
String
사용자 ID
videoViewDomID
String
사용자의 데이터는 이 dom id 노드에서 렌더링됩니다

stopRemoteView

이 API는 원격 비디오 렌더링을 중지하는 데 사용됩니다
tuiCallEngine.stopRemoteView({userID: 'user1'});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userID
String
사용자 id

startLocalView

이 API는 로컬 비디오 렌더링을 시작하는 데 사용됩니다
let promise = tuiCallEngine.startLocalView({
userID: 'user1',
videoViewDomID: 'video_1'
});
promise.then(() => {
//success
}).catch(error => {
console.warn('startLocalView error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userID
String
사용자 ID
videoViewDomID
String
사용자의 데이터는 이 dom id 노드에서 렌더링됩니다

stopLocalView

이 API는 로컬 비디오 렌더링을 중지하는 데 사용됩니다
let promise = tuiCallEngine.stopLocalView({userID: 'user1'});
promise.then(() => {
//success
}).catch(error => {
console.warn('stopLocalView error:', error)
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
userID
String
사용자 ID

openCamera

이 API는 카메라를 켜는 데 사용됩니다.
tuiCallEngine.openCamera().then(() => {
//success
}).catch(error => {
console.warn('openCamera error:', error);
});

closeCamara

이 API는 카메라를 끄는 데 사용됩니다
tuiCallEngine.closeCamera().then(() => {
//success
}).catch(error => {
console.warn('closeCamara error:', error);
});

openMicrophone

이 API는 마이크를 켜는 데 사용됩니다.
tuiCallEngine.openMicrophone().then(() => {
//success
}).catch(error => {
console.warn('openMicrophone error:', error);
});

closeMicrophone

이 API는 마이크를 끄는 데 사용됩니다.
tuiCallEngine.closeMicrophone().then(() => {
//success
}).catch(error => {
console.warn('closeMicrophone error:', error);
});

setVideoQuality

이 API는 비디오 품질을 설정하는 데 사용됩니다.
const profile = '720p';
tuiCallEngine.setVideoQuality(profile).then(() => {
//success
}).catch(error => {
console.warn('setVideoQuality error:', error)
}); // 비디오 품질을 720p로 설정
매개변수는 다음과 같습니다:
비디오 Profile
해상도(너비 x 높이)
480p
640 × 480
720p
1280 × 720
1080p
1920 × 1080

getDeviceList

이 API는 장치 목록을 가져오는 데 사용됩니다.
tuiCallEngine.getDeviceList("camera").then((devices) => {
console.log(devices);
}).catch(error => {
console.warn('getDeviceList error:', error);
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
deviceType
String
장치 유형. 유효한 값: ‘camera’-카메라, ‘microphones’-마이크

switchDevice

이 API는 다른 카메라나 마이크로 변경하는 데 사용됩니다.
let promsie = tuiCallEngine.switchDevice({
deviceType: 'video',
deviceId: cameras[0].deviceId
});
promise.then(() => {
//success
}).catch(error => {
console.warn('switchDevice error:', error)
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
deviceType
String
변경할 장치의 유형
‘video’ 카메라
‘audio’ 마이크
deviceId
String
변경할 장치의 ID
getCameras()를 사용하여 카메라 ID 가져오기
getMicrophones()를 사용하여 마이크 ID 가져오기

enableAIVoice

AI 노이즈 캔슬링을 활성화/비활성화합니다.
주의사항:
AI 노이즈 캔슬링은 v4.12.1 이상에서 지원됩니다. 자세한 내용은 튜토리얼: AI 노이즈 캔슬링 활성화를 참고하십시오.
let promsie = tuiCallEngine.enableAIVoice(true);
promise.then(() => {
// success
}).catch(error => {
console.warn('enableAIVoice error:', error)
});
매개변수는 다음과 같습니다:
매개변수
유형
설명
enable
Boolean
AI 노이즈 캔슬링 활성화 또는 비활성화 여부입니다. enable=true(기본값)는 AI 노이즈 캔슬링이 활성화됨 표시

도움말 및 지원

문제 해결에 도움이 되었나요?

피드백