Pemeriksaan kemampuan

Untuk memeriksa apakah perangkat pengguna mendukung RCS dan mampu berkomunikasi dengan Agen RBM, Anda dapat meminta kemampuan perangkat. Mengidentifikasi fitur perangkat yang didukung, jika ada, memungkinkan agen menyesuaikan percakapan kemampuan perangkat dan menghindari terjadinya interaksi sulit atau tidak mungkin untuk diselesaikan pengguna.

Jika perangkat pengguna tidak mampu menerima pesan RCS sama sekali, Anda dapat berkomunikasi dengan pengguna melalui layanan lain, seperti SMS.

Mengirim pemeriksaan kemampuan

Kode berikut mengirim pemeriksaan kemampuan dan menunggu respons. Sebagai format dan nilai, lihat getCapabilities

cURL

curl -X GET "https://REGION-rcsbusinessmessaging.googleapis.com/v1/phones/PHONE_NUMBER/capabilities?requestId=REQUEST_ID&agentId=AGENT_ID" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/rcs-business-messaging" \
-H "`oauth2l header --json PATH_TO_SERVICE_ACCOUNT_KEY rcsbusinessmessaging`"

Node.js

// Reference to RBM API helper
const rbmApiHelper = require('@google/rcsbusinessmessaging');

// Send a capability check to the device
rbmApiHelper.checkCapability('+12223334444', function(response) {
   // Print capabilities of the device
   console.log(response);
});
Kode ini adalah nukilan dari agen contoh RBM.

Java

import com.google.rbm.RbmApiHelper;


// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper();

// Check the capabilities of the device
boolean capability = rbmApiHelper.getCapability("+12223334444");
Kode ini adalah nukilan dari agen contoh RBM.

Python

# Reference to RBM Python client helper
from rcs_business_messaging import rbm_service

# Send the tester invite to a device
response = rbm_service.make_cap_request('+12223334444')
Kode ini adalah nukilan dari agen contoh RBM.

C#

using RCSBusinessMessaging;
…

// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper(credentialsFileLocation,
                                             projectId);

// Register the device as a tester
Capabilities capabilities = rbmApiHelper.GetCapability("+12223334444");
Kode ini adalah nukilan dari agen contoh RBM.

Respons kemampuan

Setelah menjalankan pemeriksaan kemampuan, platform RBM akan menampilkan daftar berformat JSON yang didukung perangkat tertentu.

{
  "features": [
    "REVOCATION",
    "RICHCARD_STANDALONE",
    "RICHCARD_CAROUSEL",
    "ACTION_CREATE_CALENDAR_EVENT",
    "ACTION_DIAL",
    "ACTION_OPEN_URL",
    "ACTION_SHARE_LOCATION",
    "ACTION_VIEW_LOCATION",
  ]
}

Jika Anda mengirimkan pemeriksaan kemampuan kepada pengguna yang tidak dapat dijangkau oleh RBM—misalnya, jika perangkat mereka tidak mendukung RCS—platform RBM akan menampilkan error 404.

Jika Anda mengirim pemeriksaan kemampuan ke pengguna RCS di jaringan di mana agen Anda belum diluncurkan, platform RBM akan menampilkan error 403.

Pemeriksaan kemampuan massal

Untuk memperkirakan jumlah pengguna yang dapat dijangkau RBM, lakukan pemeriksaan kemampuan massal. Jumlah besar pemeriksaan menunjukkan apakah nomor telepon dapat dijangkau tetapi bukan yang memiliki nomor telepon Anda.

Anda dapat menetapkan hingga 10.000 nomor telepon per pemeriksaan kemampuan massal. Untuk memeriksa banyak angka, lakukan beberapa pemeriksaan. Gunakan Pemeriksaan Kemampuan Massal Skrip untuk menggunakan file CSV sebagai format input.

Pemeriksaan kemampuan massal memiliki maksimum 600 kueri per menit (QPM).

Pemeriksaan kemampuan massal menampilkan daftar nomor yang dapat dijangkau agen Anda operator tempat peluncurannya, serta perkiraan jumlah total yang dapat dijangkau di semua operator. Lihat Respons pemeriksaan kemampuan massal.

Perkirakan total pengguna yang dapat dijangkau

Meskipun pemeriksaan massal respons menyertakan daftar nomor telepon yang dapat segera dijangkau di operator yang diluncurkan agen Anda (reachableUsers), respons juga mencakup dua nilai yang dapat membantu Anda memperkirakan jumlah total pengguna yang dapat dijangkau di semua operator.

Saat agen melakukan pemeriksaan kemampuan massal terhadap lebih dari 500 nomor telepon, RBM mengambil sampel ~75% dari nomor tersebut secara acak untuk memeriksa semua operator (dilaporkan di totalRandomSampleUserCount). RBM juga menampilkan jumlah Nomor yang dapat dijangkau RBM dari sampel acak, terlepas dari peluncuran operator status (reachableRandomSampleUserCount). Dengan membagi reachableRandomSampleUserCount oleh totalRandomSampleUserCount, Anda dapat memperkirakan persentase jumlah yang dapat dijangkau agen Anda jika diluncurkan pada semua operator.

Misalnya, jika Anda menentukan 5.000 nomor telepon di pemeriksaan kemampuan massal, dan RBM mengambil sampel secara acak ~75% dari angka yang ditentukan, totalRandomSampleUserCount mungkin 3750. Jika reachableRandomSampleUserCount adalah 3000, berarti 80% jumlah sampel dapat dijangkau.

Menguji sampel acak dapat menyebabkan persentase yang bervariasi. Untuk memperhitungkan dari pengambilan sampel acak, jalankan pemeriksaan kemampuan massal dengan nomor telepon Anda. Anda juga dapat melakukan pemeriksaan dengan kumpulan angka yang sama beberapa kali dan kemudian menghitung rata-rata hasilnya untuk menormalkan pengambilan sampel acak perilaku model.

Mengirim pemeriksaan kemampuan massal

Kode berikut mengirim pemeriksaan kemampuan massal dan menunggu respons. Sebagai format dan nilai, lihat users.batchGet

Nomor telepon harus dalam format E.164. Misalnya, "+12223334444".

cURL

curl -X POST "https://REGION-rcsbusinessmessaging.googleapis.com/v1/users:batchGet?agentId=AGENT_ID \
-H "Content-Type: application/json" \
-H "User-Agent: curl/rcs-business-messaging" \
-H "`oauth2l header --json PATH_TO_SERVICE_ACCOUNT_KEY rcsbusinessmessaging`" \
-d '{
  "users": [
    "PHONE_NUMBER",
  ]
}'

Node.js

// Reference to RBM API helper
const rbmApiHelper = require('@google/rcsbusinessmessaging');

// Specify phone numbers
let phoneNumbers = ['+12223334444', '+12223334444'];

// Perform a bulk capability check
rbmApiHelper.getUsers(phone_numbers, function(response) {
   // Print the bulk capability check response
   console.log(response);
});
Kode ini menggunakan contoh RBM agen.

Java

import com.google.rbm.RbmApiHelper;


// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper();

// Perform a bulk capability check
BatchGetUsersResponse batchGetUsersResponse = rbmApiHelper.getUsers(Arrays.asList("+12223334444", "+12223334444"));
Kode ini menggunakan contoh RBM agen.

Python

# Reference to RBM Python client helper
from rcs_business_messaging import rbm_service

# Perform a bulk capability check
response = rbm_service.make_batch_cap_request(['+12223334444', '+12223334444'])
Kode ini menggunakan agen contoh RBM.

C#

using RCSBusinessMessaging;
…

// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper(credentialsFileLocation,
                                             projectId);

// Perform a bulk capability check
BatchGetUsersResponse batchGetUsersResponse = rbmApiHelper.GetUsers(new List({"+12223334444", "+12223334444"}));
Kode ini menggunakan contoh RBM agen.

Respons pemeriksaan kemampuan massal

Setelah menjalankan pemeriksaan kemampuan massal, RBM menampilkan respons berformat JSON.

{
  "reachableUsers": [
    "PHONE_NUMBER"
  ],
  "totalRandomSampleUserCount": "COUNT_OF_SAMPLE",
  "reachableRandomSampleUserCount": "REACHABLE_FROM_SAMPLE"
}
Kolom Deskripsi
reachableUsers Daftar pengguna yang dapat dijangkau di agen meluncurkan operator.
totalRandomSampleUserCount Jumlah sampel acak dari angka. Biasanya ~75% dari angka yang ditentukan.
reachableRandomSampleUserCount Jumlah angka dari item sampel yang dapat dijangkau RBM di semua operator, terlepas dari operator mana yang digunakan untuk meluncurkan agen.

Alat: Skrip Pemeriksaan Kemampuan Massal

Tujuan Skrip Pemeriksaan Kemampuan Buck (Login ke download) melakukan pemeriksaan kemampuan secara massal menggunakan file CSV sebagai format {i>input <i}dan {i>output<i}. Skrip mengurai file CSV MSISDN dan menggunakan RBM SDK untuk memeriksa kemampuan setiap perangkat yang tercantum.

Mesin virtual dari 2 CPU dan RAM 4 GB yang menjalankan skrip dengan 500 thread dapat mencapai sekitar 1.000 QPS, tetapi QPS keseluruhan tergantung pada komputer yang digunakan, negara perangkat, konfigurasi regional agen Anda, dan API endpoint yang digunakan.

Prasyarat

Sebelum menggunakan alat untuk melakukan pemeriksaan kemampuan massal, dapatkan hal-hal berikut:

  • Jalur ke file CSV dengan MSISDN untuk melakukan pemeriksaan kemampuan pada
  • Jalur ke kunci akun layanan agen Anda di mesin pengembangan

Selain itu, Anda perlu menginstal software berikut pada komputer:

Siapkan

  1. Di mesin pengembangan, download dan ekstrak Skrip Pemeriksaan Kemampuan Massal (Login ke download).
  2. Ikuti langkah-langkah di README.

Jalankan pemeriksaan massal

  1. Di terminal, buka direktori utama skrip.
  2. Jalankan perintah berikut:

    export MAVEN_OPTS="-Xms1024m -Xmx3000m"
    mvn compile && mvn exec:java -Dexec.args="AGENT_ID INPUT_FILE OUTPUT_FILE NUM_OF_THREADS START_INDEX END_INDEX"

    Ganti variabel dengan nilai yang telah Anda identifikasi.

    Ganti Dengan Contoh
    AGENT_ID ID agen RCS Business Messaging welcome-bot
    INPUT_FILE Jalur ke file CSV input. input.csv
    OUTPUT_FILE Jalur ke file CSV output. output.csv
    NUM_OF_THREADS Jumlah utas yang akan dikhususkan untuk pemeriksaan kemampuan. 500
    START_INDEX Opsional. Nilai dalam {i>file<i} CSV ke mulai menjalankan pemeriksaan. 5
    END_INDEX Opsional. Nilai dalam {i>file<i} CSV ke mengakhiri pemeriksaan setelahnya. 500
  3. Setelah skrip selesai, buka file CSV output untuk melihat hasilnya.