SDK 주요 메서드
표SDK 주요 메서드 목록대분류 | 구분 | 항목 | 설명 |
---|---|---|---|
주요 메서드 | Method | signIn()_커넥트 라이브 내부 인증 | SDK의 내부 인증 방식으로 인증을 수행하며, 인증 처리 후 결과는 Callback 형태로 전달 |
signIn()_서비스 자체 인증 | 서비스 자체 인증 방식으로 인증을 수행하며, 인증 처리 후 결과는 Callback 형태로 전달 | ||
signOut() | 인증 중단 | ||
createRoom() | Room 객체 생성 | ||
createLocalMedia() | Local Participant(로컬 참여자)가 생성하는 로컬 오디오와 로컬 비디오의 처리를 위해 LocalMedia 객체 생성 | ||
createLocalScreen() | Local Participant(로컬 참여자)의 화면을 공유하기 위한 LocalScreen 객체 생성 | ||
Event | tokenRefreshWarning | signIn() 메서드를 호출 후, 토큰 갱신 시간이 다가올 때 주기적인 토큰 갱신에 실패한 경우 | |
tokenRefreshError | 최종 정해진 시간을 넘어 토큰 갱신이 실패한 경우 |
Method
Web 버전의 카카오 i 커넥트 라이브 SDK 2.0에서 제공하는 기본 메서드는 다음과 같습니다.
signIn()_커넥트 라이브 내부 인증
카카오 i 커넥트 라이브 2.0 SDK의 내부 인증 방식으로 인증을 수행합니다. 인증 처리 후 결과는 Callback 형태로 전달합니다. 인증 및 키(Key) 처리에 대한 자세한 설명은 인증 및 키 처리 문서를 참고하시기 바랍니다.
코드예제signIn()_커넥트 라이브 내부 인증 Syntax
await ConnectLive.signIn({
serviceId: '{서비스아이디}',
serviceSecret: '{서비스시크릿}'
});
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
serviceId | String | 필수 |
각 워크스페이스에 할당되어있는 공개 ID로, 서비스 구분에 활용되는 유일값 - 콘솔에서 발급 |
serviceSecret | String | 필수 |
API 호출 시 인증을 위한 필수값으로, 외부 유출에 유의 필요 - 콘솔에서 발급 |
endpoint | String | 선택 |
인증이 수행되는 커넥트라이브 인증 서버 주소 |
반환 | 구분 | 타입 | 설명 |
---|---|---|---|
promise | 성공 | N/A | 인증 성공 시 아무것도 반환하지 않음 |
실패 | ServerError, ClientError | API 호출 실패 시 반환 - 상세 에러 정보는 Error Code 참고 |
|
ServerError : 인증 관련 서버 에러 |
|||
ClientError : 서비스 ID 등의 키(Key) 값이 없는 경우 |
signIn()_서비스 자체 인증
커넥트 라이브 내부 인증 인증 방식이 아닌 서비스 자체의 인증 방식을 사용할 수 있습니다. 인증 및 키(Key) 처리에 대한 자세한 설명은 인증 및 키 처리 문서를 참고하시기 바랍니다.
코드예제signIn()_서비스 자체 인증 Syntax
await ConnectLive.signIn({
serviceId: '{서비스 ID}',
token: '{서비스에서 발급한 토큰}'
});
파라미터 | 타입 | 필수 여부 | 설명 |
---|---|---|---|
serviceId | String | 필수 |
각 워크스페이스에 할당되어있는 공개 ID로, 서비스 구분에 활용되는 유일값 - 콘솔에서 발급 |
token | String | 필수 |
서비스에서 발급받은 토큰 - 서비스 자체 인증인 경우에만 필요 |
endpoint | String | 선택 |
인증이 수행되는 커넥트라이브 인증 서버 주소 |
반환 | 구분 | 타입 | 설명 |
---|---|---|---|
promise | 성공 | N/A | 인증 성공 시 아무것도 반환하지 않음 |
실패 | ServerError, ClientError | 호출 실패 시 반환 - 상세 에러 정보는 Error Code 참고 |
|
ServerError : 인증 관련 서버 에러 |
|||
ClientError : 서비스 ID 등의 키(Key) 값이 없는 경우 |
signOut()
SDK의 인증을 해제하고, 인증 관련 리소스를 정리합니다.
코드예제signOut() Syntax
ConnectLive.signOut();
createRoom()
Room 객체를 생성합니다. Room은 서비스에 따라 채팅방, 화상회의실 등 참여자들이 서비스를 이용하기 위해 입장하는 공간입니다.
코드예제createRoom() Syntax
const room = ConnectLive.createRoom({
//옵션 기술
});
//or
const room = ConnectLive.createRoom();
파라미터 | 타입 | 필수여부 | 설명 |
---|---|---|---|
cpuOveruseDetection | boolean | 선택 |
CPU 과사용시 비디오 품질을 저하시킴 |
true (기본값): 기능 사용 |
|||
false : 기능 미사용 |
|||
maxFramerate | object | 선택 |
송신시 비디오 품질별 최대 framerate 설정 |
l : 저 품질, 10 |
|||
m (기본값): 중간 품질, 20 |
|||
h : 높은 품질, 30 |
|||
voiceMode | boolean | 선택 |
에코 캔슬, Auto Gain Control, 잡음 제거 기능 설정 |
true (기본값): 기능 사용 |
|||
false : 기능 미사용 |
|||
videoReceiverInitialCount | number | 선택 |
초기 리시버 개수 - 10(기본값) |
videoReceiverGrowthRate | number | 선택 |
한번에 추가할 리시버 개수 - 5(기본값) |
videoReceiverMaximumCount | number | 선택 |
최대 리시버 개수 - 50(기본값) |
구분 | 타입 | 설명 |
---|---|---|
성공 | N/A | 참여자들이 입장하는 Room 객체 |
실패 | ClientError | 호출 실패 시 반환 - signIn() 호출 이전에 createRoom이 호출될 경우 - 상세 에러 정보는 Error Code 참고 |
createLocalMedia()
Local Participant(로컬 참여자)가 생성하는 로컬 오디오와 로컬 비디오의 처리를 위해 LocalMedia 객체를 생성합니다. constraints 파라미터는 audio(오디오)와 video(비디오) 객체를 가지고 있으며, 서비스에 맞게 객체를 설정할 수 있습니다. 자세한 설명은 getUserMedia() 메서드를 참고하시기 바랍니다.
코드예제createLocalMedia() Syntax
const localMedia = await ConnectLive.createLocalMedia({
audio: true,
video: true
});
파라미터 | 타입 | 필수 여부 | 설명 | constraints | MediaStreamConstraints | 선택 |
생성할 객체 설정 |
---|---|---|---|
- audio: true 로 설정 시 오디오 객체 설정 |
|||
- video: true 로 설정 시 비디오 객체 설정 |
반환 | 구분 | 타입 | 설명 |
---|---|---|---|
promise | 성공 | Promise<LocalScreen> | LocalScreen 객체 |
실패 | ClientError | 호출 실패 시 ClientError 반환 - 상세 에러 정보는 Error Code 참고 |
createLocalScreen()
Local Participant(로컬 참여자)의 화면을 공유하기 위한 LocalScreen 객체를 생성합니다. constraints 파라미터는 LocalMedia와 동일하게 적용됩니다. video는 Local Participant(로컬 참여자)의 화면을 뜻하며, audio는 화면에서 나오는 오디오를 뜻합니다. 자세한 설명은 getDisplayMedia() 메서드를 참고하시기 바랍니다.
코드예제createLocalScreen() Syntax
const localScreen = await ConnectLive.createLocalScreen({
audio: true,
video: true
});
파라미터 | 타입 | 필수 여부 | 설명 | constraints | MediaStreamConstraints | 선택 |
생성할 객체 설정 |
---|---|---|---|
- audio: true 로 설정 시 오디오 객체 설정 |
|||
- video: true 로 설정 시 화면 객체 설정 |
반환 | 구분 | 타입 | 설명 |
---|---|---|---|
promise | 성공 | Promise<LocalScreen> | LocalScreen 객체 |
실패 | ClientError | 예외 발생 시 ClientError 반환 - 상세 에러 정보는 Error Code 참고 |
Event
Web 버전의 카카오 i 커넥트 라이브 SDK에서 발생하는 주요 Event는 다음과 같습니다.
tokenRefreshWarning
signIn() 메서드를 호출한 후, 토큰 갱신 시간이 다가오면 주기적으로 토큰을 갱신합니다. 이때 토큰 갱신에 실패하면 호출됩니다. 토큰 갱신 시간은 24시간입니다.
코드예제tokenRefreshWarning Syntax
room.on('tokenRefreshWarning', (err)=>{
});
파라미터 | 타입 | 설명 |
---|---|---|
err | ErrorException | 토큰 갱신 실패 관련 에러 코드와 메시지 |
tokenRefreshError
signIn() 메서드를 호출한 후, 토큰 갱신 시간이 다가오면 주기적으로 토큰을 갱신하며 이에 실패 시 tokenRefreshWarning 이벤트가 호출됩니다. 만약, 최종 정해진 시간을 넘어 토큰 갱신에 실패한 경우 tokenRefreshError 이벤트가 호출됩니다.
코드예제tokenRefreshError Syntax
room.on('tokenRefreshError', (err)=>{
});
파라미터 | 타입 | 설명 |
---|---|---|
err | ErrorException | 토큰 갱신 실패 관련 에러 코드와 메시지 |