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, dan Inggris Raya 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, dan untuk memanggil nomor darurat 999 dan 112 di Inggris Raya. 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

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>
      &nbsp;
      <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

Telepon angka 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:

Screenshot of the completed JavaScript Application.

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, dan Inggris Raya 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, dan untuk memanggil nomor darurat 999 dan 112 di Inggris Raya. 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

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)

Screenshot showing the completed application.

Penting

Azure Communication Services mendukung panggilan darurat ke nomor darurat di Amerika Serikat, Puerto Riko, Kanada, Denmark, dan Inggris Raya 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, dan untuk memanggil nomor darurat 999 dan 112 di Inggris Raya. 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

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).

Final look and feel of the quick start app

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: