릴리스 노트
Windows용 PlanetKit 6.1의 릴리스 노트입니다.
PlanetKit 6.1.1
릴리스 일자: 2025-08-29
카메라 문제 수정
- 일부 카메라가 제대로 작동하지 않는 문제를 수정했습니다.
PlanetKit 6.1
릴리스 일자: 2025-08-08
사용자 유형 지원
- 애플리케이션에서 정의한 사용자 유형을 구별할 수 있는 기능을 추가했습니다. 이 기능은 애플리케이션이 각 사용자 유형에 따라 동작이나 UI 구성을 변경해야 할 때 사용할 수 있습니다. 예를 들어, 일반 사용자와 봇 사용자를 구별하는 데 사용할 수 있습니다.
- 1부터 9999까지의 범위 내에서 사용자 유형 값을 정의하고 사용할 수 있습니다.
- 10000부터 시작하는 값은 LINE Planet에서 제공하는 에이전트를 구별하는 데 사용됩니다. 자세한 내용은 에이전트 통화를 참조하세요.
- 사용자 유형과 관련된 자세한 내용은 사용자 유형 설정을 참고하세요.
API
추가
ConferenceParam
class Group callbool SetCustomUserType(unsigned int customUserType)
unsigned int GetCustomUserType()
PlanetKitUserType
enum class Group callUndefined = 0
AudioCaller = 10000
AudioEchoCallee = 10001
VideoEchoCallee = 10002
MentalHealthCounselor = 10003
Reserved01 = 10004
Reserved02 = 10005
Reserved03 = 10006
Reserved04 = 10007
Reserved05 = 10008
ParticipantInterpreter = 20000
ParticipantTranscriber = 20001
ParticipantMentalHealthCounselor = 20002
ParticipantReserved01 = 20003
ParticipantReserved02 = 20004
ParticipantReserved03 = 20005
ParticipantReserved04 = 20006
ParticipantReserved05 = 20007
Unknown = 99999
UserTypeContainer
class Group callPlanetKitUserTypeOptional GetPlanetKitUserType()
UIntOptional GetCustomUserType()
bool IsPlanetKitUserType() const
Peer
class Group callUserTypeContainerPtr GetUserType()
예제 코드
-
1단계: 애플리케이션 사용자 유형을 정의하고 그룹 통화에 참여할 때 설정합니다.
constexpr unsigned int CustomUserTypeRegularUser = 1
constexpr unsigned int CustomUserTypeBot = 2
class YourConference {
public :
void JoinConference(PlanetKit::UserIdPtr pMyId, PlanetKit::MicPtr) {
auto pConferenceParam = PlanetKit::ConferenceParam::CreateWithAccessToken(pMyId, L"YourRoomId", L"YourRoomServiceId", L"YourAccessToken");
// Set other parameters as you needed.
...
bool bResult = pConferenceParam->SetCustomUserType(CustomUserTypeRegularUser);
auto pMic = PlanetKit::PlanetKitManager::GetInstance()->GetAudioManager()->GetCurrentMic();
auto sJoinResult = PlanetKit::PlanetKitManager::GetInstance()->JoinConference(pConferenceParam, pMic, m_pConference);
}
private :
PlanetKit::PlanetKitConferencePtr m_pConference;
} -
2단계: 각 사용자 유형에 따라 처리할 작업을 구현합니다.
class YourConferenceEvent : public PlanetKit::IConferenceEvent {
public :
void OnPeerListUpdate(PlanetKit::PlanetKitConferencePtr pPlanetKitConference, PlanetKit::ConferencePeerUpdateParamPtr pParam) override {
auto arrayAddedPeer = pParam->GetAddedPeer();
for(int idx = 0; idx < arrayAddedPeer.Size(); ++idx) {
auto pPeer = arrayAddedPeer.At(idx);
auto pUserTypeContainer = pPeer->GetUserType();
if(pUserTypeContainer->IsPlanetKitUserType()) {
// Predefined user types in PlanetKit.
auto ePlanetKitPredefined = pUserTypeContainer->GetPlanetKitUserType().Value();
}
else {
// Custom user type that you set.
switch(pUserTypeContainer->GetCustomUserType().Value()) {
case CustomUserTypeRegularUser :
// CustomUserTypeRegularUser
break;
case CustomUserTypeBot :
// CustomUserTypeBot
break;
}
}
}
}
};