Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Integrasikan in-app, web, panggilan video, dan berbagi layar secara native ke dalam aplikasi Anda
Untuk mengintegrasikan Amazon Connect dalam aplikasi, web, panggilan video, dan berbagi layar dengan aplikasi Anda:
-
Gunakan Amazon Connect StartWebRTCContactAPI untuk membuat kontak.
-
Kemudian gunakan detail yang ditampilkan oleh panggilan API untuk bergabung dengan panggilan menggunakan pustaka Amazon Chime 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: -calling-examples. amazon-connect-in-app
Daftar Isi
Bagaimana 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 Amazon Connect StartWebRTCContactAPI untuk memulai kontak yang meneruskan atribut atau konteks apa pun ke Amazon Connect.
-
Aplikasi klien bergabung dengan panggilan menggunakan detail yang dikembalikan dari StartWebRTCContactdalam langkah 2.
-
(Opsional) Klien menggunakan CreateParticipantConnectionAPI untuk menerima
ConnectionToken
yang digunakan untuk mengirim DTMF melalui API. SendMessage -
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 CreateParticipantdan CreateParticipantConnection APIs.
Memulai
Berikut ini adalah langkah-langkah tingkat tinggi untuk memulai:
-
Gunakan StartWebRTCContactAPI untuk membuat kontak. API mengembalikan detail yang diperlukan untuk klien Amazon Chime SDK untuk bergabung dengan panggilan.
-
Buat instance objek
MeetingSessionConfiguration
klien Amazon Chime SDK menggunakan konfigurasi yang dikembalikan oleh. StartWebRTCContact -
Instantiate
DefaultMeetingSession
klien Amazon Chime SDKMeetingSessionConfiguration
dengan, 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 ini untuk bergabung dengan kontak WebRTC dengan audio.-
iOS/Android
meetingSession.audioVideo.start()
-
JavaScript
await meetingSession.audioVideo.start();
-
-
Gunakan
meetingSession.audioVideo.stop()
metode untuk menggantung 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: Ikhtisar API
-
Android: Ikhtisar API
-
JavaScript: Ikhtisar API
Kirim nada DTMF
Untuk mengirim DTMF ke panggilan, diperlukan dua Layanan Peserta Amazon Connect: APIs CreateParticipantConnectiondan masing-masing. SendMessage
catatan
contentType
untuk SendMessage API harusaudio/dtmf
.
-
Memohon CreateParticipantConnectionuntuk mengambil
ConnectionToken
. (ParticipantToken
diperlukan untuk memanggil API ini. Anda dapat menemukannya di StartWebRTCContactjawabannya.) -
Dengan
ConnectionToken
, panggil SendMessageuntuk 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 untuk iOS
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);
Bisukan dan nyahbisukan audio
Untuk bisu dan unmute, gunakan dan. meetingSession.audioVideo.realtimeLocalMute()
meetingSession.audioVideo.realtimeLocalUnmute()
iOS/Android
meetingSession.audioVideo.realtimeLocalMute() meetingSession.audioVideo.realtimeLocalUnmute()
JavaScript
meetingSession.audioVideo.realtimeMuteLocalAudio(); meetingSession.audioVideo.realtimeUnmuteLocalAudio();
Mulai video diri
Untuk memulai video sendiri, gunakanmeetingSession.audioVideo.startLocalVideo()
. Lihat panduan API pustaka klien untuk informasi selengkapnya tentang cara menghitung dan memilih perangkat tertentu.
iOS/Android
meetingSession.audioVideo.startLocalVideo()
JavaScript
meetingSession.audioVideo.startLocalVideoTile();
Hentikan video diri
Untuk menghentikan video diri, gunakanmeetingSession.audioVideo.stopLocalVideo()
.
iOS/Android
meetingSession.audioVideo.stopLocalVideo()
JavaScript
meetingSession.audioVideo.stopLocalVideoTile();
Aktifkan video agen
Untuk memungkinkan menerima dan memuat video agen di dalam aplikasi, gunakan filemeetingSession.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 yang lengkap.
Nonaktifkan video agen
Untuk melarang menerima dan memuat video agen di dalam aplikasi, gunakan file. 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 untuk bergabung dengan panggilan, peserta tambahan akan menerima kesalahan berikut dan tidak dapat bergabung sampai orang lain pergi.
-
iOS:
MeetingSessionStatusCode.audioCallAtCapacity
atauMeetingSessionStatusCode.audioAuthenticationRejected
-
Android:
MeetingSessionStatusCode.AudioCallAtCapacity
atauMeetingSessionStatusCode.AudioAuthenticationRejected
-
JavaScript:
MeetingSessionStatusCode.AudioCallAtCapacity
atauMeetingSessionStatusCode.AudioAuthenticationRejected
Peserta dihapus dari panggilan
Ketika 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 akhir kontak, mereka akan menerima salah satu dari status ini atau status akhir kontak.
-
iOS:
MeetingSessionStatusCode.audioServerHungup
atauMeetingSessionStatusCode.audioAuthenticationRejected
-
Android:
MeetingSessionStatusCode.AudioServerHungup
atauMeetingSessionStatusCode.AudioAuthenticationRejected
-
JavaScript:
MeetingSessionStatusCode.AudioAttendeeRemoved
atauMeetingSessionStatusCode.AudioAuthenticationRejected
Kontak berakhir
Ketika kontak yang sebenarnya berakhir sepenuhnya untuk semua peserta, mereka akan menerima kode status berikut.
-
iOS:
MeetingSessionStatusCode.audioCallEnded
-
Android:
MeetingSessionStatusCode.AudioCallEnded
-
JavaScript:
MeetingSessionStatusCode.AudioCallEnded