यह देखने के लिए कि उपयोगकर्ता के डिवाइस पर आरसीएस की सुविधा चालू है या नहीं और वह आरबीएम एजेंट के साथ कम्यूनिकेट कर सकता है या नहीं, डिवाइस की सुविधाओं का अनुरोध किया जा सकता है. यह पता लगाने पर कि किसी डिवाइस पर कौनसी सुविधाएं काम करती हैं, आपका एजेंट बातचीत को डिवाइस की क्षमताओं के हिसाब से बना सकता है. साथ ही, ऐसे इंटरैक्शन को दिखाने से बच सकता है जिन्हें उपयोगकर्ता के लिए पूरा करना मुश्किल या असंभव हो.
अगर किसी उपयोगकर्ता के डिवाइस पर आरसीएस मैसेज नहीं मिल पा रहे हैं, तो एसएमएस जैसी अन्य सेवाओं की मदद से उपयोगकर्ता से बातचीत की जा सकती है.
क्षमता की जांच करने के लिए अनुरोध भेजना
यह कोड, क्षमता की जांच भेजता है और जवाब का इंतज़ार करता है. फ़ॉर्मैटिंग और वैल्यू के विकल्पों के लिए, 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 फ़ाइल का पाथ
- डेवलपमेंट मशीन पर, आपके एजेंट के सेवा खाते की कुंजी का पाथ
इसके अलावा, आपको अपनी डेवलपमेंट मशीन पर ये सॉफ़्टवेयर इंस्टॉल करने होंगे:
- Apache Maven 3.3.9 या इसके बाद का वर्शन
- Java 8
सेट अप करें
- अपनी डेवलपमेंट मशीन पर, एक साथ कई फ़ाइलों की जांच करने वाली स्क्रिप्ट (डाउनलोड करने के लिए साइन इन करें).
- 'जानकारी' सेक्शन में दिया गया तरीका अपनाएं.
एक साथ कई प्रोफ़ाइलों की जांच करना
- टर्मिनल में, स्क्रिप्ट की रूट डायरेक्ट्री पर जाएं.
ये कमांड चलाएं:
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
स्क्रिप्ट पूरी होने पर, नतीजे देखने के लिए आउटपुट CSV फ़ाइल खोलें.