Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Integrasikan dalam aplikasi, web, panggilan video, dan berbagi layar secara native ke dalam aplikasi Anda
Untuk mengintegrasikan Connect Customer dalam aplikasi, web, panggilan video, dan berbagi layar dengan aplikasi Anda:
-
Gunakan Connect Custom StartWebRTCContact er API untuk membuat kontak.
-
Kemudian gunakan detail yang dikembalikan oleh panggilan API untuk bergabung dengan panggilan menggunakan pust Amazon Chime aka klien untuk iOS
, Android , atau JavaScript .
Untuk informasi tentang membuat peserta tambahan, lihatAktifkan panggilan dalam aplikasi, web, dan video multi-pengguna.
Lihat repositori Github berikut untuk contoh aplikasi: amaz
Cara perangkat klien memulai panggilan dalam aplikasi atau web
Diagram berikut menunjukkan urutan peristiwa untuk perangkat klien (aplikasi seluler atau browser) untuk memulai panggilan dalam aplikasi atau web.
-
Pelanggan Anda menggunakan aplikasi klien (situs web atau aplikasi) untuk memulai panggilan dalam aplikasi atau web.
-
Aplikasi klien (situs web atau aplikasi seluler) atau server web menggunakan Connect Customer StartWebRTCContact API untuk memulai kontak yang meneruskan atribut atau konteks apa pun ke Connect Customer.
-
Aplikasi klien bergabung dengan panggilan menggunakan detail yang dikembalikan dari StartWebRTCContact langkah 2.
-
(Opsional) Klien menggunakan CreateParticipantConnection API untuk menerima
ConnectionTokenyang digunakan untuk mengirim DTMF melalui SendMessage API. -
Kontak mencapai aliran dan dirutekan berdasarkan aliran dan ditempatkan dalam antrian.
-
Agen menerima kontak.
-
(Opsional) Jika video diaktifkan untuk pelanggan dan agen, mereka dapat memulai video mereka.
-
(Opsional - tidak ditampilkan dalam diagram) Peserta tambahan dapat ditambahkan menggunakan CreateParticipantConnection API CreateParticipant dan.
Memulai
Berikut ini adalah langkah-langkah tingkat tinggi untuk memulai:
-
Gunakan StartWebRTCContact API untuk membuat kontak. API mengembalikan detail yang diperlukan klien Amazon Chime SDK untuk bergabung dengan panggilan.
-
Buat instance
MeetingSessionConfigurationobjek klien Amazon Chime SDK menggunakan konfigurasi yang dikembalikan oleh. StartWebRTCContact -
Buat instance klien Amazon Chime SDK
DefaultMeetingSessiondenganMeetingSessionConfiguration, yang dibuat pada langkah 2 untuk membuat sesi rapat klien.-
iOS
let logger = ConsoleLogger(name: "logger") let meetingSession = DefaultMeetingSession( configuration: meetingSessionConfig, logger: logger ) -
Android
val logger = ConsoleLogger() val meetingSession = DefaultMeetingSession( configuration = meetingSessionConfig, logger = logger, context = applicationContext ) -
JavaScript
const logger = new ConsoleLogger('MeetingLogs', LogLevel.INFO); const deviceController = new DefaultDeviceController(logger); const configuration = new MeetingSessionConfiguration( meetingResponse, attendeeResponse ); const meetingSession = new DefaultMeetingSession( configuration, logger, deviceController );
-
-
Gunakan
meetingSession.audioVideo.start()metode untuk bergabung dengan kontak WebRTC dengan audio.-
iOS/Android
meetingSession.audioVideo.start() -
JavaScript
await meetingSession.audioVideo.start();
-
-
Gunakan
meetingSession.audioVideo.stop()metode untuk menutup kontak WebRTC.-
iOS/Android
meetingSession.audioVideo.stop() -
JavaScript
meetingSession.audioVideo.stop();
-
Langkah opsional
Untuk operasi tambahan dan dokumentasi API yang komprehensif, lihat panduan ikhtisar API khusus platform:
-
iOS: Ikh tisar API
-
Android: Ikhtisar API
-
JavaScript: Ikhtisar API
Kirim nada DTMF
Untuk mengirim DTMF ke panggilan, diperlukan dua API Connect Customer Participant Service: CreateParticipantConnection dan SendMessage masing-masing.
catatan
contentTypeuntuk SendMessage API harusaudio/dtmf.
-
Panggil CreateParticipantConnection untuk mengambil
ConnectionToken. (ParticipantTokendiperlukan untuk memanggil API ini. Anda dapat menemukannya di tang StartWebRTCContact gapan.) -
Dengan
ConnectionToken, panggil SendMessage untuk mengirim digit DTMF.
Pilih perangkat audio
Untuk memilih input/output perangkat audio, Anda dapat menggunakan metode dari klien Amazon Chime SDK untuk Android dan iOS atau kemampuan iOS asli
iOS/Android
meetingSession.audioVideo.listAudioDevices() meetingSession.audioVideo.chooseAudioDevice(mediaDevice)
JavaScript
await meetingSession.audioVideo.listAudioInputDevices(); await meetingSession.audioVideo.listAudioOutputDevices(); await meetingSession.audioVideo.startAudioInput(device); await meetingSession.audioVideo.chooseAudioOutput(deviceId);
Membisukan dan menonaktifkan audio
Untuk bisu dan matikan, gunakan meetingSession.audioVideo.realtimeLocalMute() danmeetingSession.audioVideo.realtimeLocalUnmute().
iOS/Android
meetingSession.audioVideo.realtimeLocalMute() meetingSession.audioVideo.realtimeLocalUnmute()
JavaScript
meetingSession.audioVideo.realtimeMuteLocalAudio(); meetingSession.audioVideo.realtimeUnmuteLocalAudio();
Mulai video sendiri
Untuk memulai video sendiri, gunakanmeetingSession.audioVideo.startLocalVideo(). Lihat panduan API library klien untuk informasi selengkapnya tentang cara menghitung dan memilih perangkat tertentu.
iOS/Android
meetingSession.audioVideo.startLocalVideo()
JavaScript
meetingSession.audioVideo.startLocalVideoTile();
Hentikan video sendiri
Untuk menghentikan video sendiri, gunakanmeetingSession.audioVideo.stopLocalVideo().
iOS/Android
meetingSession.audioVideo.stopLocalVideo()
JavaScript
meetingSession.audioVideo.stopLocalVideoTile();
Aktifkan video agen
Untuk memungkinkan penerimaan dan memuat video agen di dalam aplikasi, gunakanmeetingSession.audioVideo.startRemoteVideo(). Anda juga perlu menerapkan pengamat ubin video dan mengikat ubin video untuk menampilkan tampilan.
iOS/Android
meetingSession.audioVideo.startRemoteVideo() // Implement VideoTileObserver to handle video tiles meetingSession.audioVideo.addVideoTileObserver(observer) // In videoTileDidAdd callback: meetingSession.audioVideo.bindVideoView(videoView, tileId: tileState.tileId)
JavaScript
// Remote video is received automatically when available // Implement AudioVideoObserver to handle video tiles meetingSession.audioVideo.addObserver(observer); // In videoTileDidUpdate callback: meetingSession.audioVideo.bindVideoElement(tileId, videoElement);
Referensikan panduan SDK khusus platform untuk detail implementasi ubin video lengkap.
Nonaktifkan video agen
Untuk melarang menerima dan memuat video agen di dalam aplikasi, gunakan. meetingSession.audioVideo.stopRemoteVideo()
iOS/Android
meetingSession.audioVideo.stopRemoteVideo() meetingSession.audioVideo.unbindVideoView(tileId)
JavaScript
meetingSession.audioVideo.unbindVideoElement(tileId);
Gunakan pesan data
Anda dapat menggunakan pesan data
iOS/Android
meetingSession.audioVideo.realtimeSendDataMessage(topic, data, lifetimeMs) meetingSession.audioVideo.addRealtimeDataMessageObserver(topic, observer)
JavaScript
meetingSession.audioVideo.realtimeSendDataMessage(topic, data, lifetimeMs); meetingSession.audioVideo.realtimeSubscribeToReceiveDataMessage(topic, callback);
Dengarkan acara berhenti
Anda dapat mendengarkan acara ketika partisipasi Kontak berakhir melalui audioVideoDidStop pengamat. Kode status tertentu dapat bervariasi menurut platform.
Panggilan mencapai kapasitas
Ketika lebih dari 6 orang mencoba bergabung dengan panggilan, peserta tambahan akan menerima kesalahan berikut dan tidak dapat bergabung sampai orang lain pergi.
-
iOS:
MeetingSessionStatusCode.audioCallAtCapacityatauMeetingSessionStatusCode.audioAuthenticationRejected -
Android:
MeetingSessionStatusCode.AudioCallAtCapacityatauMeetingSessionStatusCode.AudioAuthenticationRejected -
JavaScript:
MeetingSessionStatusCode.AudioCallAtCapacityatauMeetingSessionStatusCode.AudioAuthenticationRejected
Peserta dihapus dari panggilan
Ketika seorang peserta dihapus dari panggilan oleh agen tetapi kontak berlanjut untuk peserta lain, mereka akan menerima kode status berikut. Perhatikan bahwa jika penghapusan peserta mengarah ke penghentian kontak, mereka akan menerima salah satu dari status ini atau status akhir kontak.
-
iOS:
MeetingSessionStatusCode.audioServerHungupatauMeetingSessionStatusCode.audioAuthenticationRejected -
Android:
MeetingSessionStatusCode.AudioServerHungupatauMeetingSessionStatusCode.AudioAuthenticationRejected -
JavaScript:
MeetingSessionStatusCode.AudioAttendeeRemovedatauMeetingSessionStatusCode.AudioAuthenticationRejected
Kontak berakhir
Ketika kontak sebenarnya berakhir sepenuhnya untuk semua peserta, mereka akan menerima kode status berikut.
-
iOS:
MeetingSessionStatusCode.audioCallEnded -
Android:
MeetingSessionStatusCode.AudioCallEnded -
JavaScript:
MeetingSessionStatusCode.AudioCallEnded