본문으로 건너뛰기
Version: 5.5

앱 서버 데이터

애플리케이션은 1대1 통화를 생성하거나 그룹 통화(컨퍼런스)에 입장할 때 앱 클라이언트와 앱 서버 간에 애플리케이션 데이터를 공유할 수 있습니다. 이를 위해 앱 클라이언트에서 앱 서버로 전송하는 애플리케이션 데이터를 앱 서버 데이터(app server data)라고 합니다.

지원 통화 유형최소 SDK 버전
1대1 통화, 그룹 통화모든 버전
Note
  • 앱 서버 데이터는 PlanetKit 5.0.x 이하에서 제공되는 "서비스 티켓 ID"와 기능적으로 동일합니다. PlanetKit 5.1부터 기능의 이름만 변경되었습니다.
  • 기존에 서버 콜백에서 서비스 티켓 ID 전달용으로 사용되던 stid 파라미터는 deprecated 되었습니다. 대신 앱 서버 데이터는 서버 콜백의 app_svr_data 파라미터로 전달됩니다.

앱 서버 데이터 보내기

통화 유형에 따라 앱 서버 데이터를 보내는 방법을 설명합니다.

1대1 통화

1대1 통화에서는 발신자만 앱 서버 데이터를 보낼 수 있습니다.

1대1 통화에서 앱 서버 데이터를 보내려면 PlanetKitMakeCallParam에 앱 서버 데이터를 설정하고 makeCall() 호출 시 PlanetKitMakeCallParam을 전달하세요.

val appServerData = "App server data for a 1-to-1 call"
val param = PlanetKitMakeCallParam.Builder()
.myId(myUserId)
.myServiceId(myServiceId)
.peerId(peerUserId)
.peerServiceId(peerServiceId)
.appServerData(appServerData)
.build()

val result = PlanetKit.makeCall(param, makeCallListener)

앱 서버 데이터는 서버 콜백인 Notify 콜백1대1 통화 이벤트 콜백app_svr_data 파라미터로 전달됩니다.

그룹 통화

그룹 통화에서는 모든 참여자가 앱 서버 데이터를 보낼 수 있습니다.

그룹 통화에서 앱 서버 데이터를 보내려면 PlanetKitConferenceParam에 앱 서버 데이터를 설정하고 joinConference() 호출 시 PlanetKitConferenceParam을 전달하세요.

val appServerData = "App server data for a group call"
val param = PlanetKitConferenceParam.Builder()
.myId(myUserId)
.myServiceId(myServiceId)
.roomId(roomId)
.roomServiceId(roomServiceId)
.appServerData(appServerData)
.build()

val result = PlanetKit.joinConference(param, conferenceListener)

앱 서버 데이터는 그룹 통화 이벤트 서버 콜백의 app_svr_data 파라미터로 전달됩니다.

크기 제한

앱 서버 데이터의 최대 크기는 null 종료 문자를 포함하여 4096바이트입니다.

통화 시작 메시지와 앱 서버 데이터 비교

통화 시작 메시지와 앱 서버 데이터는 다음과 같은 차이점이 있습니다.

발신지와 목적지지원 통화 유형
통화 시작 메시지발신자의 앱 클라이언트 → 착신자의 앱 클라이언트
착신자의 앱 클라이언트 → 발신자의 앱 클라이언트
1대1 통화
앱 서버 데이터발신자 또는 참여자의 앱 클라이언트 → 앱 서버1대1 통화, 그룹 통화

관련 API

앱 서버 데이터 기능과 관련된 API는 다음과 같습니다.

1대1 통화

클라이언트 API

서버 API

그룹 통화

클라이언트 API

서버 API