Mulai cepat: Panggilan keluar ke nomor telepon
Memulai Azure Communication Services dengan menggunakan SDK Panggilan Communication Services untuk menambahkan PSTN ke aplikasi Anda.
Penting
Azure Communication Services mendukung panggilan darurat ke nomor darurat di Amerika Serikat, Puerto Riko, Kanada, Denmark, Inggris Raya, dan Australia saja.
Panggilan suara Azure Communication Services (PSTN) dapat digunakan untuk memanggil nomor darurat 911 di Amerika Serikat, Puerto Riko, dan Kanada, untuk memanggil nomor darurat 112 di Denmark, untuk memanggil 000 di Australia dan untuk memanggil nomor darurat 999 dan 112 di Inggris. Azure Communication Services saat ini tidak mendukung panggilan nomor darurat tersebut dari luar negara atau wilayah tersebut, atau memanggil layanan darurat di negara atau wilayah lain.
Kode Sampel
Temukan kode final untuk mulai cepat ini di GitHub
Catatan
Panggilan keluar ke nomor telepon dapat diakses menggunakan Pustaka Antarmuka Pengguna Azure Communication Services. Pustaka UI memungkinkan pengembang untuk menambahkan klien panggilan yang diaktifkan PSTN ke dalam aplikasi mereka hanya dengan beberapa baris kode.
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Sumber daya Communication Services yang disebarkan. Buat sumber daya Azure Communication Services.
- Nomor telepon yang diperoleh di sumber daya Communication Services Anda, atau perutean Langsung Azure Communication Services dikonfigurasi. Jika Anda memiliki langganan gratis, Anda bisa mendapatkan nomor telepon uji coba.
User Access Token
untuk mengaktifkan klien panggilan. Untuk informasi selengkapnya tentang cara mendapatkanUser Access Token
Menyiapkan
Membuat aplikasi Node.js baru
Buka terminal atau jendela perintah buat direktori baru untuk aplikasi Anda, dan navigasikan ke sana.
mkdir calling-quickstart
cd calling-quickstart
Jalankan npm init -y
untuk membuat file package.json dengan pengaturan default.
npm init -y
Pasang paket
Gunakan perintah npm install
untuk memasang Azure Communication Services Calling SDK untuk JavaScript.
npm install @azure/communication-common --save
npm install @azure/communication-calling --save
Opsi --save
mencantumkan pustaka sebagai dependensi di file package.json Anda.
Menyiapkan kerangka kerja aplikasi
Mulai cepat ini menggunakan paket untuk menggabungkan aset aplikasi. Jalankan perintah berikut untuk menginstalnya dan mencantumkannya sebagai dependensi pengembangan di package.json Anda:
npm install parcel --save-dev
Buat file index.html di direktori akar proyek Anda. Kami akan menggunakan file ini untuk mengonfigurasi tata letak dasar yang akan memungkinkan pengguna melakukan panggilan.
Berikut kodenya:
<!DOCTYPE html>
<html>
<head>
<title>Communication Client - Calling Sample</title>
</head>
<body>
<h4>Azure Communication Services</h4>
<h1>Calling Quickstart</h1>
<input
id="callee-phone-input"
type="text"
placeholder="Who would you like to call?"
style="margin-bottom:1em; width: 230px;"
/>
<div>
<button id="call-phone-button" type="button">
Start Call
</button>
<button id="hang-up-phone-button" type="button" disabled="true">
Hang Up
</button>
</div>
<script src="./app.js" type="module"></script>
</body>
</html>
Buat file di direktori akar proyek Anda yang disebut app.js untuk berisi logika aplikasi untuk mulai cepat ini. Tambahkan kode berikut untuk mengimpor klien panggilan dan mendapatkan referensi ke elemen DOM sehingga kami dapat melampirkan logika bisnis kami.
import { CallClient, CallAgent } from "@azure/communication-calling";
import { AzureCommunicationTokenCredential } from '@azure/communication-common';
let call;
let callAgent;
const calleePhoneInput = document.getElementById("callee-phone-input");
const callPhoneButton = document.getElementById("call-phone-button");
const hangUpPhoneButton = document.getElementById("hang-up-phone-button");
async function init() {
const callClient = new CallClient();
const tokenCredential = new AzureCommunicationTokenCredential('<USER ACCESS TOKEN with VoIP scope>');
callAgent = await callClient.createCallAgent(tokenCredential);
//callPhoneButton.disabled = false;
}
init();
Memulai panggilan ke telepon
Tentukan nomor telepon yang Anda peroleh di sumber daya Communication Services yang digunakan untuk memulai panggilan:
Peringatan
Nomor telepon harus disediakan dalam format standar internasional E.164. (misalnya: +12223334444)
Tambahkan penanganan aktivitas untuk memulai panggilan ke nomor telepon yang Anda berikan saat callPhoneButton
diklik:
callPhoneButton.addEventListener("click", () => {
// start a call to phone
const phoneToCall = calleePhoneInput.value;
call = callAgent.startCall(
[{phoneNumber: phoneToCall}], { alternateCallerId: {phoneNumber: 'YOUR AZURE REGISTERED PHONE NUMBER HERE: +12223334444'}
});
// toggle button states
hangUpPhoneButton.disabled = false;
callPhoneButton.disabled = true;
});
Mengakhiri panggilan ke telepon
Tambahkan pendengar peristiwa untuk mengakhiri panggilan saat ini ketika hangUpPhoneButton
diklik:
hangUpPhoneButton.addEventListener("click", () => {
// end the current call
call.hangUp({
forEveryone: true
});
// toggle button states
hangUpPhoneButton.disabled = true;
callPhoneButton.disabled = false;
});
Properti forEveryone
mengakhiri panggilan untuk semua peserta panggilan.
Menjalankan kode
Gunakan perintah npx parcel index.html
untuk membuat dan menjalankan aplikasi Anda.
Buka browser Anda dan buka http://localhost:1234/
. Anda akan melihat aplikasi web berikut:
Anda dapat melakukan panggilan ke nomor telepon asli dengan memberikan nomor telepon di bidang teks yang ditambahkan dan mengklik tombol Mulai Panggilan Telepon.
Penting
Azure Communication Services mendukung panggilan darurat ke nomor darurat di Amerika Serikat, Puerto Riko, Kanada, Denmark, Inggris Raya, dan Australia saja.
Panggilan suara Azure Communication Services (PSTN) dapat digunakan untuk memanggil nomor darurat 911 di Amerika Serikat, Puerto Riko, dan Kanada, untuk memanggil nomor darurat 112 di Denmark, untuk memanggil 000 di Australia dan untuk memanggil nomor darurat 999 dan 112 di Inggris. Azure Communication Services saat ini tidak mendukung panggilan nomor darurat tersebut dari luar negara atau wilayah tersebut, atau memanggil layanan darurat di negara atau wilayah lain.
Kode Sampel
Temukan kode final untuk mulai cepat ini di GitHub
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Sumber daya Communication Services yang disebarkan. Buat sumber daya Azure Communication Services.
- Nomor telepon yang diperoleh di sumber daya Communication Services Anda, atau Perutean Langsung Azure Communication Services dikonfigurasi. Jika Anda memiliki langganan gratis, Anda bisa mendapatkan nomor telepon uji coba.
User Access Token
untuk mengaktifkan klien panggilan. Untuk informasi selengkapnya tentang cara mendapatkanUser Access Token
- Selesaikan mulai cepat untuk memulai menambahkan panggilan ke aplikasi Anda
Pemeriksaan prasyarat
- Untuk melihat nomor telepon yang terkait dengan sumber daya Layanan Komunikasi Anda, masuk ke portal Microsoft Azure, cari sumber daya Layanan Komunikasi Anda serta buka tab nomor telepon dari panel navigasi kiri.
Menyiapkan
Menambahkan fungsionalitas PSTN ke aplikasi Anda
Tambahkan jenis PhoneNumber
ke aplikasi Anda dengan mengubah MainActivity.java:
import com.azure.android.communication.common.PhoneNumberIdentifier;
Memulai panggilan ke telepon
Tentukan nomor telepon yang Anda peroleh dari dalam sumber daya Communication Services Anda. Nomor ini digunakan sebagai ID penelepon untuk memulai panggilan:
Peringatan
Perhatikan bahwa nomor telepon harus diberikan dalam format standar internasional E.164. (misalnya: +12223334444)
Ubah penanganan aktivitas startCall()
di MainActivity.java agar dapat menangani panggilan telepon:
private void startCall() {
EditText calleePhoneView = findViewById(R.id.callee_id);
String calleePhone = calleePhoneView.getText().toString();
PhoneNumberIdentifier callerPhone = new PhoneNumberIdentifier("+12223334444");
StartCallOptions options = new StartCallOptions();
options.setAlternateCallerId(callerPhone);
options.setVideoOptions(new VideoOptions(null));
call = agent.startCall(
getApplicationContext(),
new PhoneNumberIdentifier[] {new PhoneNumberIdentifier(calleePhone)},
options);
}
Meluncurkan aplikasi dan memanggil bot echo
Aplikasi kini dapat diluncurkan menggunakan tombol "Jalankan Aplikasi" pada toolbar (Shift+F10). Untuk melakukan panggilan, berikan nomor telepon di bidang teks yang ditambahkan dan pilih tombol PANGGIL .
Peringatan
Perhatikan bahwa nomor telepon harus diberikan dalam format standar internasional E.164. (misalnya: +12223334444)
Penting
Azure Communication Services mendukung panggilan darurat ke nomor darurat di Amerika Serikat, Puerto Riko, Kanada, Denmark, Inggris Raya, dan Australia saja.
Panggilan suara Azure Communication Services (PSTN) dapat digunakan untuk memanggil nomor darurat 911 di Amerika Serikat, Puerto Riko, dan Kanada, untuk memanggil nomor darurat 112 di Denmark, untuk memanggil 000 di Australia dan untuk memanggil nomor darurat 999 dan 112 di Inggris. Azure Communication Services saat ini tidak mendukung panggilan nomor darurat tersebut dari luar negara atau wilayah tersebut, atau memanggil layanan darurat di negara atau wilayah lain.
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Sumber daya Communication Services yang disebarkan. Buat sumber daya Azure Communication Services.
- Nomor telepon yang diperoleh di sumber daya Communication Services Anda, atau perutean Langsung Azure Communication Services dikonfigurasi. Jika Anda memiliki langganan gratis, Anda bisa mendapatkan nomor telepon uji coba.
User Access Token
untuk mengaktifkan klien panggilan. Untuk informasi selengkapnya tentang cara mendapatkanUser Access Token
- Selesaikan mulai cepat untuk memulai menambahkan panggilan ke aplikasi Anda
Pemeriksaan prasyarat
- Untuk melihat nomor telepon yang terkait dengan sumber daya Layanan Komunikasi Anda, masuk ke portal Microsoft Azure, cari sumber daya Layanan Komunikasi Anda serta buka tab nomor telepon dari panel navigasi kiri.
- Anda dapat membuat dan menjalankan aplikasi dengan SDK Panggilan Azure Communication Services untuk iOS:
Menyiapkan
Memulai panggilan ke telepon
Tentukan nomor telepon yang Anda peroleh di sumber daya Communication Services yang digunakan untuk memulai panggilan:
Peringatan
Perhatikan bahwa nomor telepon harus diberikan dalam format standar internasional E.164. (misalnya: +12223334444)
Ubah startCall
penanganan aktivitas yang dilakukan saat tombol Mulai Panggilan diketuk:
func startCall() {
// Ask permissions
AVAudioSession.sharedInstance().requestRecordPermission { (granted) in
if granted {
let startCallOptions = StartCallOptions()
startCallOptions.alternateCallerId = PhoneNumberIdentifier(phoneNumber: "<YOUR AZURE REGISTERED PHONE NUMBER>")
self.callAgent!.startCall(participants: [PhoneNumberIdentifier(phoneNumber: self.callee)], options: startCallOptions) { (call, error) in
if (error == nil) {
self.call = call
} else {
print("Failed to get call object")
}
}
}
}
}
Menjalankan kode
Anda dapat membuat dan menjalankan aplikasi di simulator iOS dengan memilih Eksekusi Produk>atau dengan menggunakan pintasan keyboard (⌘-R).
Anda dapat melakukan panggilan ke telepon dengan memberikan nomor telepon di bidang teks yang ditambahkan dan mengklik tombol Mulai Panggilan .
Peringatan
Perhatikan bahwa nomor telepon harus diberikan dalam format standar internasional E.164. (misalnya: +12223334444)
Catatan
Saat Anda melakukan panggilan untuk pertama kalinya, sistem akan meminta akses ke mikrofon kepada Anda. Dalam aplikasi produksi, Anda harus menggunakan API AVAudioSession
untuk memeriksa status izin dan memperbarui perilaku aplikasi dengan baik saat izin tidak diberikan.
Membersihkan sumber daya
Jika ingin membersihkan dan menghapus langganan Azure Communication Services, Anda bisa menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya apa pun yang terkait dengannya. Pelajari selengkapnya tentang membersihkan sumber daya.
Langkah berikutnya
Untuk informasi lebih lanjut, baca artikel berikut:
- Pelajari kemampuan SDK Panggilan
- Pelajari lebih lanjut cara kerja panggilan
- Pelajari tentang kemampuan pencarian Angka