Kakao i Connect Live::Kakao i Connect Live 2.0::API 레퍼런스::Web

페이지 이동경로

Web API

Web 버전의 카카오 i 커넥트 라이브 SDK 2.0에서 제공하는 전체 메서드 목록은 다음과 같습니다.

SDK 주요 메서드

SDK 주요 메서드 목록
대분류 구분 메서드 설명
주요 메서드 Method signIn()_커넥트 라이브 내부 인증 SDK의 내부 인증 방식으로 인증을 수행하며, 인증 처리 후 결과는 Callback 형태로 전달
signIn()_서비스 자체 인증 서비스 자체 인증 방식으로 인증을 수행하며, 인증 처리 후 결과는 Callback 형태로 전달
signOut() 인증 중단
createRoom() Room 객체 생성
createLocalMedia() Local Participant가 생성하는 로컬 오디오와 로컬 비디오의 처리를 위해 LocalMedia 객체 생성
createLocalScreen() Local Participant의 화면을 공유하기 위한 LocalScreen 객체 생성
Event tokenRefreshWarning signIn() 메서드를 호출 후, 토큰 갱신 시간이 다가올 때 주기적인 토큰 갱신에 실패한 경우
tokenRefreshError 최종 정해진 시간을 넘어 토큰 갱신이 실패한 경우

Room

Room 클래스 전체 목록
클래스 구분 항목 설명
Room Property localParticipant 로컬 참여자(나 자신)의 정보를 담고 있는 객체
remoteParticipants Remote Participant(다른 참여자)의 정보를 담고 있는 배열 객체
roomStatus Room 클래스의 상태 프로퍼티
- created: createRoom() 메서드로 room 객체가 생성되어 초기화 단계에 들어간 상태
- initiated: created를 지나 초기화 완료 상태
- connected: 성공적으로 room에 접속한 상태
- disconnected: room에서 접속을 종료한 상태
remoteAudioElements 오디오 엘리먼트 배열을 가지고 있는 객체
- 해당 객체를 통해 실제 오디오 엘리먼트에 접근 가능
- SDK에서는 높은 4개의 오디오만 재생
audioOccupants 현재 오디오 리시버를 점유하고 있는 Remote Participant의 목록
Method connect() roomId로 식별되는 특정 Room에 접속하고 스트림의 송신 및 수신을 위한 절차 시작
disconnect() 현재 접속 중인 Room과 연결 끊음
publish() Local Participant가 생성한 로컬 미디어(비디오/오디오)를 Room으로 송출하거나, Local Participant의 화면을 다른 리모트 참여자들과 공유
unpublish() Local Participant가 Room에 공유 중인 로컬 미디어(비디오/오디오)의 송출 또는 화면 공유 중단
subscribe() Room의 Remote Participant가 공유한 비디오를 수신
unsubscribe() Remote Participant가 공유한 비디오의 수신을 중단
getRemoteParticipant() ParticipantId(참여자 아이디)를 인자로 사용하여, 특정 Remote Participant의 RemoteParticipant 객체 반환
getAudioOccupants() 오디오 리시버를 점유하고 있는 Remote Participant의 목록 반환
getRemoteVideo() 특정 리모트 비디오 ID의 RemoteVideo 객체 반환
getRemoteAudio() audioId(리모트 오디오 ID)를 인자로 사용하여 해당하는 RemoteAudio(리모트 오디오) 객체 반환
getRemoteAudioLevels() 현재 오디오를 생성하고 있는 Remote Participant의 목록과 오디오 레벨 반환
switchSpeaker() 현재 출력되고 있는 스피커 변경
sendUserMessage() Room에 있는 특정 리모트 참여자 또는 전체 리모트 참여자에게 메시지 전송
getStats() 전송 중 또는 수신 중인 미디어에 대한 품질 지표를 확인할 수 있는 값 반환
Event connecting Room에 접속하기까지 단계별 진행률 전달
connected 참여자가 Room과의 연결이 완료되었을 때 발생
disconnected Room과 연결이 종료되면 호출
participantEntered 새로운 Remote Participant가 Room에 입장했을 때 호출
participantLeft Remote Participant가 Room에서 퇴장하여 Room과 연결이 끊겼을 때 호출
localAudioPublished Local Participant가 자신의 오디오(음성)를 공유했을 때 호출
localAudioUnpublished Local Participant가 Room에 공유 중인 오디오를 공유 해제했을 때 호출
localVideoPublished Local Participant가 자신의 비디오를 공유했을 때 호출
localVideoUnpublished Local Participant가 Room에 송출했던 비디오의 송출을 해제하면 호출
remoteAudioPublished Remote Participant가 Room에 오디오를 송출했을 때 호출
remoteAudioUnpublished Remote Participant가 Room에 송출 중인 오디오의 송출을 해제했을 때 호출
remoteVideoPublished Remote Participant가 비디오를 공유했을 때 호출
remoteVideoUnpublished Remote Participant가 비디오를 공유 해제하면 호출
remoteAudioSubscribed Room에 송출 중인 Remote Participant의 오디오를 구독(오디오 리시버를 점유)했을 때 호출
remoteAudioUnsubscribed Remote Participant의 오디오가 오디오 리시버의 점유를 해제하여 오디오 구독이 중단됐을 때 호출
remoteAudioStateChanged Remote Participant의 오디오 상태가 변경되면 호출
remoteVideoStateChanged Remote Participant의 비디오 상태가 변경되면 호출
userMessage Remote Participant가 메시지를 전송하면 호출
error Room에서 에러가 발생했을 때 호출
recordFailed publish() 메서드 호출 시 isRecording를 true로 설정했을 때 녹화가 실패하면 recordFailed 이벤트 호출

LocalParticipant

LocalParticipant 클래스 전체 목록
클래스 구분 항목 설명
LocalParticipant Property id Local Participant의 아이디
hasAudio Local Participant가 오디오를 공유했는지 여부
hasVideo Local Participant가 비디오를 공유했는지 여부
Method getAudio() audioId를 인자로 사용하여 LocalAudio 객체를 가져옴
getVideo() videoId를 인자로 사용하여 LocalVideo 객체를 가져옴
stop() Local Participant가 공유한 오디오와 비디오의 미디어 스트림 트랙을 모두 중단

RemoteParticipant

RemoteParticipant 클래스 전체 목록
클래스 구분 항목 설명
RemoteParticipant Property id Remote Participant의 아이디
hasAudio Remote Participant가 오디오를 공유했는지 여부
hasVideo Remote Participant가 비디오를 공유했는지 여부
audios Remote Participant가 공유한 오디오 배열
videos Remote Participant가 공유한 비디오 배열
isEnabledAudio Remote Participant가 공유한 오디오 중 하나라도 활성화되어 있으면 true 반환
isEnabledVideo Remote Participant가 공유한 비디오 중 하나라도 활성화되어 있으면 true 반환
Method getSubscribedVideos() Remote Participant가 공유하고 있는 비디오 중에서 구독 중인 비디오 배열을 반환
getUnsubscribedVideos() Remote Participant가 공유한 비디오 중에서 현재 구독 중이지 않은 비디오 배열을 반환
getAudio() audioId를 인자로 사용하여 Remote Participant가 공유 중인 RemoteAudio 객체를 반환
getVideo() videoId를 인자로 사용하여 Remote Participant가 공유 중인 RemoteVideo 객체를 가져옴

LocalMedia

LocalMedia 클래스 전체 목록
클래스 구분 항목 설명
LocalMedia Property room Room 객체
- LocalMedia 객체가 Room에 공유되면 해당 속성으로 접근 가능
audio LocalMedia에 속해 있는 LocalAudio 객체
video LocalMedia에 속해 있는 LocalVideo 객체
Method getDevices() Local Participant가 사용중인 로컬 디바이스 목록을 반환
getMicDevices() Local Participant가 사용 중인 로컬 디바이스 중 오디오 장치 목록을 반환
getSpeakerDevices() Local Participant가 사용 중인 로컬 디바이스 중 스피커 장치 목록을 반환
getCameraDevices() Local Participant가 사용 중인 로컬 디바이스 중 비디오 장치 목록을 반환
switchMic() Local Participant가 사용 중인 오디오(마이크) 장치를 변경
switchCamera() Local Participant가 사용 중인 비디오(카메라) 장치를 변경
stop() LocalMedia에 속해 있는 오디오 객체와 비디오 객체를 중지
setMediaStream() 외부에서 선언된 미디어스트림(mediaStream) 객체를 LocalMedia 클래스의 LocalAudio와 LocalVideo 속성으로 지정 가능

LocalScreen

LocalScreen 클래스 전체 목록
클래스 구분 항목 설명
LocalScreen Property room Room 객체
- LocalScreen 객체가 Room에 공유되면 해당 속성으로 접근 가능
audio LocalScreen에 속해 있는 LocalAudio 객체
video LocalScreen에 속해 있는 LocalVideo 객체
Method switchDisplay() 화면 공유 변경
stop() 화면 공유를 위해 생성된 오디오 객체와 비디오 객체 중지

LocalAudio

LocalAudio 클래스 전체 목록
클래스 구분 항목 설명
LocalAudio Property streamId 고유 아이디 반환
isAlwaysOn alwaysOn 여부를 반환
Method getMediaStreamTrack() Local Audio의 미디어 스트림 트랙 반환
getMediaStream() 미디어 스트림(오디오) 반환
getStreamId() 미디어의 고유 아이디인 streamId 반환
setExtraValue() 서비스에서 필요한 값(Extra Value)으로 설정
getExtraValue() 서비스에서 설정한 extraValue 반환
setEnabled() 미디어 트랙의 상태 활성화 또는 비활성화
true: 미디어 스트림 트랙 활성화 시 미디어 출처 스트림의 렌더링 허용
false: 미디어 스트림 트랙이 비 활성되어 음소거로 처리됨
stop() 미디어 트랙 중지
setAlwaysOn() 필요시 alwaysOn 기능을 설정하여 로컬 참여자의 오디오를 항상 재생하도록 설정

LocalVideo

LocalVideo 클래스 전체 목록
클래스 구분 항목 설명
LocalVideo Property streamId 미디어의 고유 아이디
videoElements attach() 메서드를 통해 비디오를 바인딩하고 있는 비디오 엘리먼트
hd HD(High Definition, 고해상도) 모드
Method getMediaStreamTrack() 미디어 스트림 트랙 반환
getMediaStream() 미디어 스트림 반환
getStreamId() 미디어의 고유 아이디인 streamId 반환
setExtraValue() 서비스에서 필요한 값을 extraValue로 설정
getExtraValue() 서비스에서 설정한 extraValue 반환
setEnabled() 미디어 트랙의 상태 변경
stop() 미디어 트랙 중지
attach() 새로운 비디오 엘리먼트를 생성해 이에 비디오를 바인딩하거나, 기존 비디오 엘리먼트에 비디오를 바인딩
detach() attach()로 생성된 비디오 엘리먼트 삭제
setHd() HD(High Definition, 고해상도) 모드를 설정

RemoteAudio

RemoteAudio 클래스 전체 목록
클래스 구분 항목 설명
RemoteAudio Property participantId Remote Participant의 아이디
audioId 고유 아이디
isAlwaysOn alwaysOn 여부
active 활성화 상태
Method getParticipantId() participantId(리모트 참여자 아이디) 반환
getExtraValue() Remote Participant가 오디오에 기록한 Extra Value를 반환
getAudioId() Remote Participant의 오디오 아이디(audioId)를 반환

RemoteVideo

RemoteVideo 클래스 전체 목록
클래스 구분 항목 설명
RemoteVideo Property participantId Remote Participant의 아이디
videoElements attach() 메서드에 의해 바인딩된 비디오 엘리먼트 배열 반환
videoId 고유 아이디
paused 원격 비디오가 멈춰 있는지 표시
active 활성화 상태
Method getParticipantId() 참여자 아이디(participantId) 반환
getExtraValue() Remote Participant가 비디오에 기록한 Extra Value 반환
getVideoId() Remote Participant의 비디오 아이디(videoId) 반환
attach() 비디오 엘리먼트를 생성하여 비디오를 바인딩해 이를 반환하거나, 기존 비디오 엘리먼트에 비디오를 바인딩
detach() attach() 메서드를 호출하여 생성한 비디오 엘리먼트 삭제
getMediaStreamTrack() 미디어 스트림 트랙 반환
getMediaStream() 미디어 스트림(비디오) 반환
setPaused() 수신 중인 리모트 비디오 일시 정지
setQuality() 수신 중인 리모트 비디오의 품질(Quality) 변경
이 문서가 만족스러운 이유를 알려주세요.
이 문서에 아쉬운 점을 알려주세요.
평가해주셔서 감사합니다.

더 자세한 의견은 documentation@kakaoenterprise.com 으로 제보해주세요.