グループ音声通話
グループ音声通話を実装するサンプルコードです。
前提条件
開始する前に、次の作業が必要です。
- PlanetKitを初期化してください。
- 適切なアクセストークンを取得してください。
- グループ通話フローにて、APIを使用するための全般的なプロセスを確認してください。
オーディオエレメントの実装
グループ音声通話でグループ音声を再生するためのオーディオエレメントを準備します。
<html>
<div>
<audio id="room-audio" autoplay></audio>
</div>
</html>
<script>
const roomAudioElement = document.getElementById('room-audio');
</script>
グループ通話参加
グループ通話の作成と設定をするためのConferenceParams
オブジェクトを作成します。
const conferenceParams = {
myId: 'MY_ID',
myServiceId: 'MY_SERVICE_ID',
roomId: 'ROOM_ID',
roomServiceId: 'ROOM_SERVICE_ID',
accessToken: 'ACCESS_TOKEN',
mediaType: 'audio',
mediaHtmlElement: {
roomAudio: roomAudioElement
},
delegate: {
// For each of the following, add your own implementation or assign an event handler that matches the signature
evtConnected: () => {},
evtDisconnected: (disconnectedParam) => {}
}
};
ConferenceParams
オブジェクトを引数としてjoinConference()
を呼び出します。joinConference()
呼び出しに失敗した場合、以下の2つのケースに分けて失敗の原因を確認できます。
- 通話接続に失敗した場合
Promise.reject()
に返却されるJoinConferenceError
でSTART_FAIL_REASON
を確認して、失敗の原因を把握できます。
- 通話接続後に失敗した場合
- 通話接続後には、
ConferenceParams.delegate
のevtDisconnected
イベントを通じて、失敗の原因を確認できます。通話切断の理由に関する詳細は、通話切断の理由を参照してください。
- 通話接続後には、
planetKit.joinConference(conferenceParams)
.then(() => {
// Successfully joined a conference
})
.catch((joinConferenceError) => {
// Failed to join a conference
// joinConferenceError.reason: START_FAIL_REASON
// joinConferenceError.message: A descriptive message about the failure.
});
グループ通話退出
グループ通話から退出するには、leaveConference()
を呼び出します。
planetKit.leaveConference();