Yetenek kontrolleri

Bir kullanıcının cihazında RCS'nin etkin olup olmadığını ve RBM temsilcisiyle iletişim kurup kuramayacağını kontrol etmek için cihazın özelliklerini isteyebilirsiniz. Bir cihazın desteklediği özellikleri (varsa) belirlemek, temsilcinizin görüşmeyi cihazın özelliklerine göre uyarlamasına ve kullanıcının tamamlaması zor veya imkansız olan etkileşimleri sunmaktan kaçınmasına olanak tanır.

Bir kullanıcının cihazı RCS mesajlarını hiç alamıyorsa kullanıcıyla SMS/MMS gibi diğer hizmetler üzerinden iletişim kurabilirsiniz.

Cihaz özelliklerini kontrol etme

Aşağıdaki kod, bir özellik kontrolü gönderir ve yanıt bekler. Biçimlendirme ve değer seçenekleri için getCapabilities bölümüne bakın.

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);
});
Bu kod, RBM örnek temsilcisinden alınmıştır.

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");
Bu kod, RBM örnek temsilcisinden alınmıştır.

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')
Bu kod, RBM örnek temsilcisinden alınmıştır.

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");
Bu kod, RBM örnek temsilcisinden alınmıştır.

Capability response

RBM platformu, özellik kontrolü çalıştırdıktan sonra belirtilen cihazın desteklediği özelliklerin JSON biçimli bir listesini döndürür.

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

İstek yanıt veya hata döndürür.

Başarılı bir yanıt yalnızca MSISDN (telefon numarası) son 31 gün içinde RCS hizmetine bağlandıysa döndürülür. Bu, kullanıcının cihazının bu süre zarfında RCS sunucumuza giriş yaptığı anlamına gelir. Online ve RCS özellikli cihazlar ortalama olarak 1-4 saatte bir check-in yapar.

Bir kullanıcı SIM kartını RCS özellikli farklı bir cihaza taşıdığında önceki cihaz ilişkilendirmesi kaldırılır ve yeni bir ilişkilendirme oluşturulur. Böylece, cihazın RCS hizmetindeki özellikleri güncellenir.

RCS'nin operatör veya üretici tarafından devre dışı bırakıldığı bir cihaza SIM kart yerleştirilirse ya da SIM kart kullanılmazsa RCS hizmeti, mesajları 31 güne kadar daha önce ilişkilendirilmiş cihaza teslim etmeye çalışır.

404 hatalarının nedenleri:

  • Kullanıcıya RBM ile ulaşılamıyorsa (ör. cihazı RCS'yi desteklemiyorsa)

  • Kullanıcıda RCS var ancak temsilciniz mobil ağında başlatılmamış.

Çevrimdışı sıralama

Mesajlar 31 güne kadar sıraya alınır ve cihaz tekrar internete bağlandığında teslim edilir. Bu nedenle, bir cihaz uzun süre (31 güne kadar) çevrimdışı kalsa bile, MSISDN son 31 gün içinde RCS hizmetine bağlandığı sürece, sıraya alınmış mesajlar yeniden bağlantı kurulduğunda teslim edilir.

Toplu özellik kontrolleri

RBM'ye ulaşılabilen kullanıcı sayısını tahmin etmek için toplu özellik kontrolü yapın. Toplu kontroller, telefon numarasına ulaşılıp ulaşılamadığını gösterir ancak telefon numarasının hangi özellikleri desteklediğini göstermez.

Her toplu özellik kontrolü için 500-10.000 benzersiz telefon numarası sağlamanız gerekir. Daha fazla numara kontrol etmek için birden fazla kontrol yapın. Dakikada en fazla 600 çağrı yapabilirsiniz. CSV dosyalarını giriş biçimi olarak kullanmak için Toplu Özellik Kontrolü Komut Dosyası'nı kullanın. Toplu kontroller, RCS kullanan istemciler tarafından organik olarak güncellenen özellikler önbelleğinden okunur. Ajanlar, her cihazın özelliklerini doğrudan istemez. Bu nedenle, sonuçlar güncel olmayabilir.

Toplu özellik kontrolleri, temsilcinizin kullanıma sunulduğu operatörlerde ulaşabileceği numaraların bir listesini ve tüm operatörlerde ulaşılabilir kullanıcıların toplam sayısıyla ilgili tahminleri döndürür. Toplu özellik kontrolü yanıtı bölümünü inceleyin.

Ulaşılabilecek toplam kullanıcı sayısını tahmin etme

Toplu kontrol yanıtları, temsilcinizin kullanıma sunduğu operatörlerde anında ulaşılabilir telefon numaralarının bir listesini içerir (reachableUsers). Ayrıca, tüm operatörlerde ulaşılabilir toplam kullanıcı sayısını tahmin etmenize yardımcı olabilecek iki değer de içerir.

İşleyiş şekli

Temsilciniz toplu özellik kontrolü yaptığında RBM, tüm operatörleri kontrol etmek için bu numaraların yaklaşık% 75'ini rastgele örnekler (totalRandomSampleUserCount içinde bildirilir). RBM ayrıca, operatör lansman durumundan bağımsız olarak rastgele örnekteki RBM'ye ulaşılabilir numaraların sayısını da döndürür (reachableRandomSampleUserCount). reachableRandomSampleUserCount değerini totalRandomSampleUserCount değerine bölerek, temsilciniz tüm operatörlerde kullanıma sunulduğunda ulaşabileceği numaraların yüzdesini tahmin edebilirsiniz.

Örneğin, toplu özellik kontrolünde 5.000 telefon numarası belirtirseniz ve RBM belirtilen numaraların yaklaşık% 75'ini rastgele örneklerse totalRandomSampleUserCount, 3750 olabilir. reachableRandomSampleUserCount 3000 ise örneklenen numaraların% 80'ine ulaşılabildi.

Rastgele örneklemeyi hesaba katma

Rastgele örneklerin test edilmesi, yüzdelerde farklılıklara yol açabilir. Rastgele örneklemenin etkilerini hesaba katmak için daha fazla telefon numarasıyla toplu özellik kontrolleri yapın. Ayrıca, aynı sayı gruplarıyla birden çok kez kontrol yapabilir ve ardından rastgele örnekleme davranışını normalleştirmek için sonuçların ortalamasını alabilirsiniz.

Toplu özellik kontrolü gönderme

Aşağıdaki kod, toplu özellik kontrolü gönderir ve yanıt bekler. Biçimlendirme ve değer seçenekleri için users.batchGet bölümüne bakın.

Telefon numaraları E.164 biçiminde olmalıdır (örneğin, "+12223334444") ve listede 500 ila 10.000 arasında benzersiz telefon numarası bulunmalıdır.

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);
});
Bu kod, RBM örnek aracısını kullanır.

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"));
Bu kod, RBM örnek aracısını kullanır.

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'])
Bu kod, RBM örnek aracısını kullanır.

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"}));
Bu kod, RBM örnek aracısını kullanır.

Toplu özellik kontrolü yanıtı

Toplu özellik kontrolü çalıştırıldıktan sonra RBM, JSON biçimli bir yanıt döndürür.

{
  "reachableUsers": [
    "PHONE_NUMBER"
  ],
  "totalRandomSampleUserCount": "COUNT_OF_SAMPLE",
  "reachableRandomSampleUserCount": "REACHABLE_FROM_SAMPLE"
}
Alan Açıklama
reachableUsers Aracının kullanıma sunduğu kargo şirketlerinde ulaşılabilen kullanıcıların listesi.
totalRandomSampleUserCount Belirtilen sayıların rastgele bir örneğinin sayısı. Genellikle belirtilen numaraların yaklaşık% 75'i.
reachableRandomSampleUserCount Aracı hangi operatörlerde başlatıldığına bakılmaksızın, tüm operatörlerde RBM'ye ulaşılabilen rastgele örnekteki numaraların sayısı. Bu sayı, tüm operatörlerdeki ulaşılabilir kullanıcıların toplam sayısıyla ilgili kabaca bir tahmin sağlamak için kullanılır.
reachableUsersMap Yalnızca çıkış. Kargo şirketi kimliğinin, bu kargo şirketinde ulaşılabilen kullanıcıların listesiyle eşlemesi. Bu alan yalnızca ABD telefon numaraları için doldurulur.

Araç: Toplu Özellik Kontrolü Komut Dosyası

Toplu Özellik Kontrolü Komut Dosyası (İndirmek için oturum açın) giriş ve çıkış biçimleri olarak CSV dosyalarını kullanarak toplu özellik kontrolleri gerçekleştirir. Komut dosyası, MSISDN'lerin CSV dosyasını ayrıştırır ve listelenen her cihazın özelliklerini kontrol etmek için RBM SDK'sını kullanır.

500 iş parçacığıyla komut dosyasını çalıştıran 2 CPU'lu ve 4 GB RAM'li bir sanal makine yaklaşık 1.000 QPS'ye ulaşabilir ancak genel QPS, kullanılan makineye, cihazların bulunduğu ülkeye, aracınızın bölgesel yapılandırmasına ve kullanılan API uç noktasına bağlıdır.

Ön koşullar

Toplu özellik kontrolü yapmak için aracı kullanmadan önce aşağıdakileri edinin:

  • Özellik kontrollerinin gerçekleştirileceği MSISDN'lerin bulunduğu CSV dosyasının yolu
  • Geliştirme makinenizdeki aracınızın hizmet hesabı anahtarının yolu

Ayrıca, geliştirme makinenizde aşağıdaki yazılımların yüklü olması gerekir:

Kur

Geliştirme makinenizi toplu özellik kontrolü için ayarlamak üzere aşağıdakileri yapın:

  1. Toplu Özellik Kontrolü Komut Dosyası (İndirmek için oturum açın).
  2. README dosyasındaki adımları uygulayın.

Toplu özellik kontrolü yapma

Toplu kontrol gerçekleştirmek için aşağıdaki adımları uygulayın:

  1. Terminalde komut dosyasının kök dizinine gidin.
  2. Aşağıdaki komutları çalıştırın:

    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"

    Değişkenleri belirlediğiniz değerlerle değiştirin.

    Değiştir Entegre Örnek
    AGENT_ID İşletmeler için RCS temsilcisinin kimliği. welcome-bot
    INPUT_FILE Giriş CSV dosyasının yolu. input.csv
    OUTPUT_FILE Çıkış CSV dosyasının yolu. output.csv
    NUM_OF_THREADS Yetenek kontrollerine ayrılacak iş parçacığı sayısı. 500
    START_INDEX İsteğe bağlıdır. CSV dosyasında, karşılaştırma yapılacak ilk değer. 5
    END_INDEX İsteğe bağlıdır. CSV dosyasında, kontrollerin bitirileceği değer. 500
  3. Komut dosyası tamamlandığında sonuçları görüntülemek için çıkış CSV dosyasını açın.