इस पेज पर, Pub/Sub का इस्तेमाल करके Chat ऐप्लिकेशन बनाने का तरीका बताया गया है. Chat ऐप्लिकेशन के लिए इस तरह का आर्किटेक्चर तब काम का होता है, जब आपके संगठन के पास फ़ायरवॉल हो. इससे Chat, आपके Chat ऐप्लिकेशन को मैसेज नहीं भेज पाता. इसके अलावा, अगर Chat ऐप्लिकेशन, Google Workspace Events API का इस्तेमाल करता है, तब भी यह आर्किटेक्चर काम का होता है. हालांकि, इस आर्किटेक्चर की ये सीमाएं हैं, क्योंकि इस तरह के Chat ऐप्लिकेशन सिर्फ़ एसिंक्रोनस मैसेज भेज और पा सकते हैं: एसिंक्रोनस मैसेज
- मैसेज में डायलॉग का इस्तेमाल नहीं किया जा सकता. इसके बजाय, कार्ड मैसेज का इस्तेमाल करें.
- सिंक्रोनस जवाब से, अलग-अलग कार्ड अपडेट नहीं किए जा सकते. इसके बजाय,
तरीके को कॉल करके, पूरे मैसेज को अपडेट करें.
patch
यहां दिए गए डायग्राम में, Pub/Sub की मदद से बनाए गए Chat ऐप्लिकेशन का आर्किटेक्चर दिखाया गया है:
ऊपर दिए गए डायग्राम में, Pub/Sub Chat ऐप्लिकेशन के साथ इंटरैक्ट करने वाले उपयोगकर्ता के लिए, जानकारी का फ़्लो इस तरह होता है:
Chat, मैसेज को Pub/Sub विषय पर भेजता है.
कोई ऐप्लिकेशन सर्वर, जो क्लाउड या ऑन-प्रिमाइसेस सिस्टम हो सकता है और जिसमें Chat ऐप्लिकेशन की लॉजिक शामिल होती है, फ़ायरवॉल के ज़रिए मैसेज पाने के लिए, Pub/Sub विषय की सदस्यता लेता है.
Chat ऐप्लिकेशन के पास, Chat API को कॉल करके एसिंक्रोनस तरीके से मैसेज पोस्ट करने या अन्य कार्रवाइयां करने का विकल्प होता है.
ज़रूरी शर्तें
Chat ऐप्लिकेशन बनाते समय, Google Cloud Console में Chat API के कॉन्फ़िगरेशन पेज पर, इस Chat ऐप्लिकेशन को Google Workspace ऐड-ऑन के तौर पर बनाएं विकल्प को साफ़ करें. Google Chat पर ऐप्लिकेशन पब्लिश करना लेख पढ़ें.
Node.js
- Business या Enterprise Google Workspace खाता, जिसमें Google Chat का ऐक्सेस हो.
- बिलिंग की सुविधा वाला Google Cloud प्रोजेक्ट. यह देखने के लिए कि किसी मौजूदा प्रोजेक्ट में बिलिंग की सुविधा चालू है या नहीं, देखें अपने प्रोजेक्ट की बिलिंग की स्थिति की पुष्टि करना. कोई प्रोजेक्ट बनाने और बिलिंग सेट अप करने के लिए, Google Cloud प्रोजेक्ट बनाना लेख पढ़ें.
- Node.js 14 या इसके बाद वाला वर्शन
- npm पैकेज मैनेजमेंट टूल
-
शुरू किया गया Node.js प्रोजेक्ट. कोई नया प्रोजेक्ट शुरू करने के लिए, नया फ़ोल्डर बनाएं और उसमें स्विच करें. इसके बाद, कमांड-लाइन इंटरफ़ेस में यह कमांड चलाएं:
npm init
Python
- Business या Enterprise Google Workspace खाता, जिसमें Google Chat का ऐक्सेस हो.
- बिलिंग की सुविधा वाला Google Cloud प्रोजेक्ट. यह देखने के लिए कि किसी मौजूदा प्रोजेक्ट में बिलिंग की सुविधा चालू है या नहीं, देखें अपने प्रोजेक्ट की बिलिंग की स्थिति की पुष्टि करना. कोई प्रोजेक्ट बनाने और बिलिंग सेट अप करने के लिए, Google Cloud प्रोजेक्ट बनाना लेख पढ़ें.
- Python 3.6 या इसके बाद वाला वर्शन
- pip पैकेज मैनेजमेंट टूल
Java
- Business या Enterprise Google Workspace खाता, जिसमें Google Chat का ऐक्सेस हो.
- बिलिंग की सुविधा वाला Google Cloud प्रोजेक्ट. यह देखने के लिए कि किसी मौजूदा प्रोजेक्ट में बिलिंग की सुविधा चालू है या नहीं, देखें अपने प्रोजेक्ट की बिलिंग की स्थिति की पुष्टि करना. कोई प्रोजेक्ट बनाने और बिलिंग सेट अप करने के लिए, Google Cloud प्रोजेक्ट बनाना लेख पढ़ें.
- Java 11 या इसके बाद वाला वर्शन
- Maven पैकेज मैनेजमेंट टूल
एनवायरमेंट सेट अप करना
Google API का इस्तेमाल करने से पहले, आपको उन्हें Google Cloud प्रोजेक्ट में चालू करना होगा. किसी एक Google Cloud प्रोजेक्ट में, एक या उससे ज़्यादा एपीआई चालू किए जा सकते हैं.Google Cloud Console में, Google Chat API और Pub/Sub API को चालू करें.
Pub/Sub सेट अप करना
कोई Pub/Sub विषय बनाएं, जिस पर Chat API मैसेज भेज सके. हमारा सुझाव है कि हर Chat ऐप्लिकेशन के लिए एक विषय का इस्तेमाल करें.
Chat को पब्लिश करने की अनुमति दें विषय पर. इसके लिए, इस सेवा खाते को Pub/Sub पब्लिशर की भूमिका असाइन करें:
chat-api-push@system.gserviceaccount.comChat ऐप्लिकेशन के लिए कोई सेवा खाता बनाएं , ताकि Pub/Sub और Chat के साथ अनुमति दी जा सके. इसके बाद, निजी पासकोड वाली फ़ाइल को अपनी वर्किंग डायरेक्ट्री में सेव करें.
विषय के लिए , पुल सदस्यता बनाएं.
पहले बनाए गए सेवा खाते के लिए, सदस्यता पर Pub/Sub सदस्य की भूमिका असाइन करें.
स्क्रिप्ट लिखना
Node.js
किसी सीएलआई में, सेवा खाते के क्रेडेंशियल दें:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATHकिसी सीएलआई में, Google Cloud प्रोजेक्ट आईडी दें:
export PROJECT_ID=PROJECT_IDकिसी सीएलआई में, पहले बनाई गई Pub/Sub सदस्यता के लिए सदस्यता आईडी दें:
export SUBSCRIPTION_ID=SUBSCRIPTION_IDअपनी वर्किंग डायरेक्ट्री में,
package.jsonनाम की कोई फ़ाइल बनाएं.package.jsonफ़ाइल में, यह कोड चिपकाएं:अपनी वर्किंग डायरेक्ट्री में,
index.jsनाम की कोई फ़ाइल बनाएं.index.jsमें, यह कोड चिपकाएं:
Python
किसी सीएलआई में, सेवा खाते के क्रेडेंशियल दें:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATHकिसी सीएलआई में, Google Cloud प्रोजेक्ट आईडी दें:
export PROJECT_ID=PROJECT_IDकिसी सीएलआई में, पहले बनाई गई Pub/Sub सदस्यता के लिए सदस्यता आईडी दें:
export SUBSCRIPTION_ID=SUBSCRIPTION_IDअपनी वर्किंग डायरेक्ट्री में,
requirements.txtनाम की कोई फ़ाइल बनाएं.requirements.txtफ़ाइल में, यह कोड चिपकाएं:अपनी वर्किंग डायरेक्ट्री में,
app.pyनाम की कोई फ़ाइल बनाएं.app.pyमें, यह कोड चिपकाएं:
Java
किसी सीएलआई में, सेवा खाते के क्रेडेंशियल दें:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATHकिसी सीएलआई में, Google Cloud प्रोजेक्ट आईडी दें:
export PROJECT_ID=PROJECT_IDकिसी सीएलआई में, पहले बनाई गई Pub/Sub सदस्यता के लिए सदस्यता आईडी दें:
export SUBSCRIPTION_ID=SUBSCRIPTION_IDअपनी वर्किंग डायरेक्ट्री में,
pom.xmlनाम की कोई फ़ाइल बनाएं.pom.xmlफ़ाइल में, यह कोड चिपकाएं:अपनी वर्किंग डायरेक्ट्री में,
src/main/javaडायरेक्ट्री स्ट्रक्चर बनाएं.src/main/javaडायरेक्ट्री में,Main.javaनाम की कोई फ़ाइल बनाएं.Main.javaमें, यह कोड चिपकाएं:
Chat पर ऐप्लिकेशन पब्लिश करना
Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > चालू किए गए एपीआई और सेवाएं > Google Chat API > कॉन्फ़िगरेशन पर जाएं.
Pub/Sub के लिए Chat ऐप्लिकेशन कॉन्फ़िगर करें:
- इस Chat ऐप्लिकेशन को Google Workspace ऐड-ऑन के तौर पर बनाएं विकल्प को साफ़ करें. आपको पुष्टि करने के लिए कहा जाएगा. इसके लिए, एक डायलॉग खुलेगा. डायलॉग में, बंद करें पर क्लिक करें.
- ऐप्लिकेशन का नाम में,
Quickstart Appडालें. - अवतार यूआरएल में,
https://developers.google.com/chat/images/quickstart-app-avatar.pngडालें. - **जानकारी** में,
Quickstart appडालें. - सुविधाएं में जाकर, स्पेस और ग्रुप बातचीत में शामिल हों को चुनें.
- कनेक्शन सेटिंग में जाकर, Cloud Pub/Sub को चुनें. इसके बाद, पहले बनाए गए Pub/Sub विषय का नाम चिपकाएं.
- उपलब्धता में जाकर, अपने डोमेन में इस Google Chat ऐप्लिकेशन को चुनिंदा लोगों और ग्रुप के लिए उपलब्ध कराएं को चुनें. इसके बाद, अपना ईमेल पता डालें.
- लॉग में जाकर, लॉगिंग में गड़बड़ियां लॉग करें को चुनें.
सेव करें पर क्लिक करें.
ऐप्लिकेशन, Chat पर मैसेज पाने और उनका जवाब देने के लिए तैयार है.
स्क्रिप्ट चलाना
किसी सीएलआई में, अपनी वर्किंग डायरेक्ट्री में स्विच करें और स्क्रिप्ट चलाएं:
Node.js
npm install
npm start
Python
python -m venv env
source env/bin/activate
pip install -r requirements.txt -U
python app.py
Java
mvn compile exec:java -Dexec.mainClass=Main
कोड चलाने पर, ऐप्लिकेशन उस Pub/Sub विषय पर पब्लिश किए गए मैसेज सुनने लगता है.
अपने Chat ऐप्लिकेशन की जांच करना
अपने Chat ऐप्लिकेशन की जांच करने के लिए, Chat ऐप्लिकेशन के साथ डायरेक्ट मैसेज वाला स्पेस खोलें और कोई मैसेज भेजें:
Google Workspace खाते का इस्तेमाल करके Google Chat खोलें. यह वही खाता होना चाहिए जिसे आपने भरोसेमंद टेस्टर के तौर पर खुद को जोड़ते समय दिया था.
- नई चैट पर क्लिक करें.
- एक या उससे ज़्यादा लोगों को जोड़ें फ़ील्ड में, अपने Chat ऐप्लिकेशन का नाम डालें.
नतीजों में से अपना Chat ऐप्लिकेशन चुनें. एक डायरेक्ट मैसेज खुलता है.
- ऐप्लिकेशन के साथ नए डायरेक्ट मैसेज में,
Helloलिखें औरenterदबाएं.
भरोसेमंद टेस्टर जोड़ने और इंटरैक्टिव सुविधाओं की जांच करने के बारे में ज़्यादा जानने के लिए, Google Chat ऐप्लिकेशन के लिए इंटरैक्टिव सुविधाओं की जांच करना लेख पढ़ें.
समस्या हल करें
जब कोई Google Chat ऐप्लिकेशन या कार्ड गड़बड़ी दिखाता है, तो Chat इंटरफ़ेस पर "कोई गड़बड़ी हुई" मैसेज दिखता है. या "आपका अनुरोध प्रोसेस नहीं किया जा सका." कभी-कभी Chat यूज़र इंटरफ़ेस (यूआई) पर कोई गड़बड़ी का मैसेज नहीं दिखता, लेकिन Chat ऐप्लिकेशन या कार्ड से कोई ऐसा नतीजा मिलता है जिसकी उम्मीद नहीं थी. उदाहरण के लिए, हो सकता है कि कोई कार्ड मैसेज न दिखे.
भले ही, Chat यूआई में कोई गड़बड़ी का मैसेज न दिखे, लेकिन Chat ऐप्लिकेशन के लिए गड़बड़ी लॉग करने की सुविधा चालू होने पर, गड़बड़ियों को ठीक करने में आपकी मदद करने के लिए, गड़बड़ी के बारे में जानकारी देने वाले मैसेज और लॉग डेटा उपलब्ध होता है. गड़बड़ियां देखने, डीबग करने, और ठीक करने में मदद पाने के लिए, Google Chat की गड़बड़ियां ठीक करना लेख पढ़ें.
व्यवस्थित करें
हमारा सुझाव है कि इस ट्यूटोरियल में इस्तेमाल किए गए संसाधनों के लिए, अपने Google Cloud खाते पर शुल्क लगने से बचने के लिए, क्लाउड प्रोजेक्ट मिटा दें.
- Google Cloud Console में, संसाधन मैनेज करें पेज पर जाएं. मेन्यू > IAM और एडमिन > संसाधन मैनेज करें पर क्लिक करें.
- प्रोजेक्ट की सूची में, वह प्रोजेक्ट चुनें जिसे आपको मिटाना है. इसके बाद, मिटाएं पर क्लिक करें.
- डायलॉग में, प्रोजेक्ट आईडी डालें. इसके बाद, प्रोजेक्ट मिटाने के लिए बंद करें पर क्लिक करें.
मिलते-जुलते विषय
अपने Chat ऐप्लिकेशन में ज़्यादा सुविधाएं जोड़ने के लिए, यह लेख पढ़ें: