क्षमता की जांच

यह देखने के लिए कि उपयोगकर्ता के डिवाइस पर आरसीएस की सुविधा चालू है या नहीं और वह आरबीएम एजेंट के साथ कम्यूनिकेट कर सकता है या नहीं, डिवाइस की सुविधाओं का अनुरोध किया जा सकता है. यह पता लगाने पर कि किसी डिवाइस पर कौनसी सुविधाएं काम करती हैं, आपका एजेंट बातचीत को डिवाइस की क्षमताओं के हिसाब से बना सकता है. साथ ही, ऐसे इंटरैक्शन को दिखाने से बच सकता है जिन्हें उपयोगकर्ता के लिए पूरा करना मुश्किल या असंभव हो.

अगर किसी उपयोगकर्ता के डिवाइस पर आरसीएस मैसेज नहीं मिल पा रहे हैं, तो एसएमएस जैसी अन्य सेवाओं की मदद से उपयोगकर्ता से बातचीत की जा सकती है.

क्षमता की जांच करने के लिए अनुरोध भेजना

यह कोड, क्षमता की जांच भेजता है और जवाब का इंतज़ार करता है. फ़ॉर्मैटिंग और वैल्यू के विकल्पों के लिए, 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);
});
यह कोड, आरबीएम सैंपल एजेंट का एक हिस्सा है.

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");
यह कोड, आरबीएम सैंपल एजेंट का एक हिस्सा है.

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')
यह कोड, आरबीएम सैंपल एजेंट का एक हिस्सा है.

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");
यह कोड, आरबीएम सैंपल एजेंट का एक हिस्सा है.

क्षमता से जुड़ा जवाब

क्षमता की जांच करने के बाद, आरबीएम प्लैटफ़ॉर्म उन सुविधाओं की JSON फ़ॉर्मैट वाली सूची दिखाता है जो खास डिवाइस पर काम करती हैं.

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

अगर किसी ऐसे उपयोगकर्ता को सुविधा की जांच भेजी जाती है जो आरबीएम से कनेक्ट नहीं हो पा रहा है. उदाहरण के लिए, अगर उनके डिवाइस पर आरसीएस चैट की सुविधा काम नहीं करती है, तो आरबीएम प्लैटफ़ॉर्म 404 गड़बड़ी दिखाता है.

अगर किसी ऐसे नेटवर्क पर आरसीएस उपयोगकर्ता को सुविधा की जांच करने का अनुरोध भेजा जाता है जहां आपका एजेंट अभी लॉन्च नहीं हुआ है, तो RBM प्लैटफ़ॉर्म 403 गड़बड़ी दिखाता है.

एक साथ कई सुविधाओं की जांच

आरबीएम की मदद से रीच किए जा सकने वाले उपयोगकर्ताओं की संख्या का अनुमान लगाने के लिए, एक साथ कई उपयोगकर्ताओं की जांच करें. एक साथ कई नंबर की जांच करने से पता चलता है कि किसी फ़ोन नंबर पर कॉल किया जा सकता है या नहीं. हालांकि, इससे यह पता नहीं चलता कि उस फ़ोन नंबर पर कौनसी सुविधाएं काम करती हैं.

एक साथ कई सुविधाओं की जांच के लिए, ज़्यादा से ज़्यादा 10,000 फ़ोन नंबर दिए जा सकते हैं. ज़्यादा नंबरों की जांच करने के लिए, एक से ज़्यादा बार जांच करें. CSV फ़ाइलों को इनपुट फ़ॉर्मैट के तौर पर इस्तेमाल करने के लिए, एक साथ कई सुविधाओं की जांच करने वाली स्क्रिप्ट का इस्तेमाल करें.

एक साथ कई सुविधाओं की जांच करने के लिए, ज़्यादा से ज़्यादा 600 क्वेरी प्रति मिनट (क्यूपीएम) की जा सकती हैं.

बल्क में काम करने की क्षमता की जांच से उन नंबर की सूची मिलती है जो आपका एजेंट, उन मोबाइल और इंटरनेट सेवा देने वाली कंपनियों तक पहुंच सकता है जहां उसे लॉन्च किया गया है. साथ ही, इस जांच से यह भी पता चलता है कि सभी कैरियर के हिसाब से कितने लोगों तक पहुंचा जा सकता है. एक साथ कई सुविधाओं की जांच का जवाब देखें.

रीच किए जा सकने वाले कुल उपयोगकर्ताओं का अनुमान लगाना

एक साथ कई नंबरों की जांच करने के जवाबों में, उन फ़ोन नंबरों की सूची शामिल होती है जो आपके एजेंट के लॉन्च किए गए कैरियर (reachableUsers) पर तुरंत संपर्क किए जा सकते हैं. जवाबों में दो वैल्यू भी शामिल होती हैं, जिनसे आपको सभी कैरियर पर संपर्क किए जा सकने वाले उपयोगकर्ताओं की कुल संख्या का अनुमान लगाने में मदद मिल सकती है.

जब आपका एजेंट 500 से ज़्यादा फ़ोन नंबर की क्षमता की जांच करता है, तो RBM उनमें से करीब 75% नंबर का सैंपल लेता है. ऐसा सभी मोबाइल और इंटरनेट सेवा देने वाली कंपनियों (totalRandomSampleUserCount में रिपोर्ट की गई) की जांच करने के लिए किया जाता है. RBM, सैंपल में शामिल उन नंबरों की संख्या भी दिखाता है जिन पर RBM कॉल कर सकता है. भले ही, मोबाइल और इंटरनेट सेवा देने वाली कंपनी के लॉन्च होने की स्थिति (reachableRandomSampleUserCount) कुछ भी हो. reachableRandomSampleUserCount को totalRandomSampleUserCount से भाग देकर, यह अनुमान लगाया जा सकता है कि सभी मोबाइल और इंटरनेट सेवा देने वाली कंपनियों पर लॉन्च होने पर, आपके एजेंट कितने प्रतिशत नंबरों पर कॉल कर सकता है.

उदाहरण के लिए, अगर आपने एक साथ कई नंबर की जांच करने के लिए 5,000 फ़ोन नंबर डाले हैं और आरबीएम ने तय किए गए नंबरों में से ~75% नंबरों को रैंडम तौर पर सैंपल किया है, तो totalRandomSampleUserCount की वैल्यू 3750 हो सकती है. अगर reachableRandomSampleUserCount 3000 है, तो इसका मतलब है कि सैंपल के तौर पर इस्तेमाल किए गए 80% नंबर ऐक्सेस किए जा सकते थे.

रैंडम सैंपल की जांच करने से, प्रतिशत में अंतर दिख सकता है. रैंडम सैंपलिंग के असर का पता लगाने के लिए, ज़्यादा फ़ोन नंबर का इस्तेमाल करके, एक साथ कई सुविधाओं की जांच करें. आपके पास एक ही बैच के नंबरों की जांच कई बार करने का विकल्प भी है. इसके बाद, रैंडम सैंपलिंग के व्यवहार को सामान्य बनाने के लिए, नतीजों का औसत निकालें.

एक साथ कई प्रॉडक्ट की जांच का अनुरोध करना

यहां दिया गया कोड, बल्क में क्षमता की जांच करता है और जवाब का इंतज़ार करता है. फ़ॉर्मैटिंग और वैल्यू के विकल्पों के लिए, users.batchGet देखें.

फ़ोन नंबर, E.164 फ़ॉर्मैट में होने चाहिए. उदाहरण के लिए, "+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);
});
यह कोड, आरबीएम सैंपल एजेंट का इस्तेमाल करता है.

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"));
यह कोड, आरबीएम सैंपल एजेंट का इस्तेमाल करता है.

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'])
यह कोड, आरबीएम सैंपल एजेंट का इस्तेमाल करता है.

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"}));
यह कोड, आरबीएम सैंपल एजेंट का इस्तेमाल करता है.

कई सुविधाओं की जांच का जवाब

बल्क क्षमता जांच करने के बाद आरबीएम, JSON के फ़ॉर्मैट में जवाब देता है.

{
  "reachableUsers": [
    "PHONE_NUMBER"
  ],
  "totalRandomSampleUserCount": "COUNT_OF_SAMPLE",
  "reachableRandomSampleUserCount": "REACHABLE_FROM_SAMPLE"
}
फ़ील्ड ब्यौरा
reachableUsers उन लोगों की सूची जिन्हें एजेंट ने मोबाइल और इंटरनेट सेवा देने वाली कंपनियां लॉन्च की हैं.
totalRandomSampleUserCount बताई गई संख्याओं के किसी रैंडम सैंपल की संख्या. आम तौर पर, तय की गई संख्याओं में से ~75%.
reachableRandomSampleUserCount रैंडम सैंपल में मौजूद उन नंबरों की संख्या जो सभी कैरियर पर आरबीएम से रीच किए जा सकते हैं. भले ही, एजेंट को किसी भी कैरियर पर लॉन्च किया गया हो.

टूल: एक साथ कई प्रॉडक्ट की क्षमता की जांच करने वाली स्क्रिप्ट

बल्क कैपेबिलिटी जांच स्क्रिप्ट (डाउनलोड करने के लिए साइन इन करें) इनपुट और आउटपुट फ़ॉर्मैट के तौर पर CSV फ़ाइलों का इस्तेमाल करके, बल्क कैपेबिलिटी जांच करती है. यह स्क्रिप्ट, एमएसआईएसडीएन की CSV फ़ाइल को पार्स करती है. साथ ही, सूची में शामिल हर डिवाइस की क्षमताओं की जांच करने के लिए, RBM SDK का इस्तेमाल करती है.

500 थ्रेड वाली स्क्रिप्ट को चलाने वाली दो सीपीयू और 4 जीबी रैम वाली वर्चुअल मशीन, करीब 1 हज़ार क्यूपीएस तक पहुंच सकती है. हालांकि, कुल क्यूपीएस, इस्तेमाल की गई मशीन, डिवाइसों के देश, आपके एजेंट के क्षेत्रीय कॉन्फ़िगरेशन, और इस्तेमाल किए गए एपीआई एंडपॉइंट पर निर्भर करता है.

ज़रूरी शर्तें

एक साथ कई प्रॉडक्ट की सुविधाओं की जांच करने के लिए, टूल का इस्तेमाल करने से पहले ये काम करें:

  • इस पर सुविधाओं की जांच करने के लिए, एमएसआईएसडीएन वाली CSV फ़ाइल का पाथ
  • डेवलपमेंट मशीन पर, आपके एजेंट के सेवा खाते की कुंजी का पाथ

इसके अलावा, आपको अपनी डेवलपमेंट मशीन पर ये सॉफ़्टवेयर इंस्टॉल करने होंगे:

सेट अप करें

  1. अपनी डेवलपमेंट मशीन पर, एक साथ कई फ़ाइलों की जांच करने वाली स्क्रिप्ट (डाउनलोड करने के लिए साइन इन करें).
  2. 'जानकारी' सेक्शन में दिया गया तरीका अपनाएं.

एक साथ कई प्रोफ़ाइलों की जांच करना

  1. टर्मिनल में, स्क्रिप्ट की रूट डायरेक्ट्री पर जाएं.
  2. ये कमांड चलाएं:

    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"
    

    वैरिएबल को उन वैल्यू से बदलें जिन्हें आपने पहचाना है.

    बदलें के साथ उदाहरण
    AGENT_ID आरसीएस बिज़नेस मैसेजिंग एजेंट का आईडी welcome-bot
    INPUT_FILE इनपुट CSV फ़ाइल का पाथ. input.csv
    OUTPUT_FILE आउटपुट CSV फ़ाइल का पाथ. output.csv
    NUM_OF_THREADS ऐसे थ्रेड की संख्या जिनका इस्तेमाल, क्षमता की जांच के लिए करना है. 500
    START_INDEX ज़रूरी नहीं. CSV फ़ाइल में मौजूद वैल्यू, जिसकी जांच शुरू करनी है. 5
    END_INDEX ज़रूरी नहीं. CSV फ़ाइल में मौजूद वह वैल्यू जिसे जांच के बाद जोड़ना है. 500
  3. स्क्रिप्ट पूरी होने पर, नतीजे देखने के लिए आउटपुट CSV फ़ाइल खोलें.