इस गाइड में बताया गया है कि Google Chat API के SpaceEvent संसाधन पर मौजूद get() तरीके का इस्तेमाल करके, Google Chat स्पेस में मौजूद किसी इवेंट के बारे में जानकारी कैसे पाई जाती है.
SpaceEvent संसाधन, किसी स्पेस या उसके चाइल्ड रिसॉर्स में हुए बदलाव को दिखाता है. जैसे, मैसेज, प्रतिक्रियाएं, और सदस्यताएं. इवेंट के उपलब्ध टाइप के बारे में जानने के लिए, SpaceEvent संसाधन के eventType फ़ील्ड
का रेफ़रंस दस्तावेज़ देखें.
अनुरोध करने की तारीख से 28 दिन पहले तक के इवेंट के लिए अनुरोध किया जा सकता है. इवेंट में, बदली गई संसाधन फ़ाइल का सबसे नया वर्शन शामिल हो. उदाहरण के लिए, अगर आपने किसी नए मैसेज के बारे में इवेंट का अनुरोध किया है, लेकिन बाद में मैसेज को अपडेट कर दिया गया है, तो सर्वर, इवेंट पेलोड में अपडेट किया गया Message संसाधन दिखाता है.
इस तरीके को कॉल करने के लिए, आपको उपयोगकर्ता की पुष्टि का इस्तेमाल करना होगा. किसी इवेंट की जानकारी पाने के लिए, पुष्टि किए गए उपयोगकर्ता का उस स्पेस का सदस्य होना ज़रूरी है जहां इवेंट हुआ था.
ज़रूरी शर्तें
Node.js
- आपके पास Business या Enterprise वर्शन वाला Google Workspace खाता होना चाहिए. साथ ही, आपके पास Google Chat को ऐक्सेस करने की अनुमति होनी चाहिए.
- अपना एनवायरमेंट सेट अप करें:
- Google Cloud प्रोजेक्ट बनाएं.
- उस स्क्रीन को कॉन्फ़िगर करें जहां OAuth के लिए सहमति दी जाती है.
- अपने Chat ऐप्लिकेशन के लिए, Google Chat API चालू करें और उसे कॉन्फ़िगर करें. इसके लिए, Chat ऐप्लिकेशन का नाम, आइकॉन, और जानकारी दें.
- Node.js Cloud Client Library इंस्टॉल करें.
- Google Chat API के अनुरोध में पुष्टि करने के तरीके के आधार पर, ऐक्सेस क्रेडेंशियल बनाएं:
- Chat उपयोगकर्ता के तौर पर पुष्टि करने के लिए, OAuth क्लाइंट आईडी क्रेडेंशियल बनाएं. इसके बाद, क्रेडेंशियल को अपनी लोकल डायरेक्ट्री में
credentials.jsonनाम की JSON फ़ाइल के तौर पर सेव करें. - Chat ऐप्लिकेशन के तौर पर पुष्टि करने के लिए, सेवा खाते के क्रेडेंशियल बनाएं और क्रेडेंशियल को
credentials.jsonनाम की JSON फ़ाइल के तौर पर सेव करें.
- Chat उपयोगकर्ता के तौर पर पुष्टि करने के लिए, OAuth क्लाइंट आईडी क्रेडेंशियल बनाएं. इसके बाद, क्रेडेंशियल को अपनी लोकल डायरेक्ट्री में
- अनुमति का स्कोप चुनें. यह इस बात पर निर्भर करता है कि आपको उपयोगकर्ता के तौर पर पुष्टि करनी है या Chat ऐप्लिकेशन के तौर पर.
Python
- आपके पास Business या Enterprise वर्शन वाला Google Workspace खाता होना चाहिए. साथ ही, आपके पास Google Chat को ऐक्सेस करने की अनुमति होनी चाहिए.
- अपना एनवायरमेंट सेट अप करें:
- Google Cloud प्रोजेक्ट बनाएं.
- उस स्क्रीन को कॉन्फ़िगर करें जहां OAuth के लिए सहमति दी जाती है.
- अपने Chat ऐप्लिकेशन के लिए, Google Chat API चालू करें और उसे कॉन्फ़िगर करें. इसके लिए, Chat ऐप्लिकेशन का नाम, आइकॉन, और जानकारी दें.
- Python Cloud Client Library इंस्टॉल करें.
- Google Chat API के अनुरोध में पुष्टि करने के तरीके के आधार पर, ऐक्सेस क्रेडेंशियल बनाएं:
- Chat उपयोगकर्ता के तौर पर पुष्टि करने के लिए, OAuth क्लाइंट आईडी क्रेडेंशियल बनाएं. इसके बाद, क्रेडेंशियल को अपनी लोकल डायरेक्ट्री में
credentials.jsonनाम की JSON फ़ाइल के तौर पर सेव करें. - Chat ऐप्लिकेशन के तौर पर पुष्टि करने के लिए, सेवा खाते के क्रेडेंशियल बनाएं और क्रेडेंशियल को
credentials.jsonनाम की JSON फ़ाइल के तौर पर सेव करें.
- Chat उपयोगकर्ता के तौर पर पुष्टि करने के लिए, OAuth क्लाइंट आईडी क्रेडेंशियल बनाएं. इसके बाद, क्रेडेंशियल को अपनी लोकल डायरेक्ट्री में
- अनुमति का स्कोप चुनें. यह इस बात पर निर्भर करता है कि आपको उपयोगकर्ता के तौर पर पुष्टि करनी है या Chat ऐप्लिकेशन के तौर पर.
किसी स्पेस इवेंट के बारे में जानकारी पाना (उपयोगकर्ता की पुष्टि करना)
Google Chat में किसी स्पेस इवेंट के बारे में जानकारी पाने के लिए, अपने अनुरोध में यह जानकारी शामिल करें:
- अपने अनुरोध में, अनुमति का ऐसा स्कोप तय करें जो इवेंट टाइप के साथ काम करता हो. सबसे सही तरीका यह है कि आप सबसे ज़्यादा पाबंदी वाला स्कोप चुनें. हालांकि, यह भी ज़रूरी है कि इससे आपका ऐप्लिकेशन काम करता रहे.
GetSpaceEvent()तरीके को कॉल करें और स्पेस इवेंट काnameपास करें.
यहां दिए गए उदाहरण में, स्पेस इवेंट पाने का तरीका बताया गया है:
Node.js
Node.js के इस कोड सैंपल में, Chat RPC API का इस्तेमाल किया गया है.
इस सैंपल को चलाने के लिए, इन्हें बदलें:
SCOPE_NAME: इवेंट टाइप के आधार पर अनुमति पाने का लिंक. उदाहरण के लिए, अगर आपको नई सदस्यता के बारे में कोई स्पेस इवेंट मिल रहा है, तोchat.memberships.readonlyस्कोप का इस्तेमाल करें. इसेhttps://www.googleapis.com/auth/chat.memberships.readonlyके तौर पर फ़ॉर्मैट किया गया है.ListSpaceEvents()तरीके से, इवेंट टाइप की जानकारी पाई जा सकती है. इस तरीके का इस्तेमाल करने का तरीका जानने के लिए, किसी स्पेस के इवेंट की सूची बनाना लेख पढ़ें.SPACE_NAME: स्पेस केnameका आईडी. आईडी पाने के लिए,ListSpaces()तरीके का इस्तेमाल करें या स्पेस के यूआरएल से आईडी पाएं.SPACE_EVENT_NAME: स्पेस इवेंट केnameका आईडी. आपको यह आईडी,ListSpaceEvents()तरीके से मिल सकता है. इस तरीके का इस्तेमाल करने का तरीका जानने के लिए, किसी स्पेस के इवेंट की सूची बनाना लेख पढ़ें.
Chat API, इवेंट की जानकारी के साथ SpaceEvent का एक इंस्टेंस दिखाता है.
किसी स्पेस इवेंट के बारे में जानकारी पाना (Chat ऐप्लिकेशन की पुष्टि करना)
ऐप्लिकेशन की पुष्टि करने के लिए, एडमिन से एक बार अनुमति लेना ज़रूरी है.
Chat REST API का इस्तेमाल करके, ऐप्लिकेशन की पुष्टि वाले स्पेस से किसी स्पेस इवेंट के बारे में जानकारी पाने के लिए, अपने अनुरोध में यह जानकारी शामिल करें:
- अपने अनुरोध में हर इवेंट टाइप के लिए, एक या उससे ज़्यादा अनुमति के स्कोप तय करें. सबसे सही तरीका यह है कि आप सबसे ज़्यादा पाबंदी वाला स्कोप चुनें. हालांकि, यह ज़रूरी है कि इससे आपका ऐप्लिकेशन काम करता रहे. स्कोप चुनने के बारे में ज़्यादा जानने के लिए, प्रमाणीकरण और अनुमति की खास जानकारी देखें.
https://www.googleapis.com/auth/chat.app.membershipshttps://www.googleapis.com/auth/chat.app.memberships.readonlyhttps://www.googleapis.com/auth/chat.app.messages.readonlyhttps://www.googleapis.com/auth/chat.app.spaceshttps://www.googleapis.com/auth/chat.app.spaces.readonly
spaceEventsसंसाधन परgetतरीके को कॉल करें.- जिस स्पेस से इवेंट की जानकारी चाहिए उसका
nameपास करें.
Chat API को कॉल करने वाली स्क्रिप्ट लिखना
ऐप्लिकेशन की पुष्टि करने की सुविधा और Chat REST API की मदद से, स्पेस इवेंट के बारे में जानकारी पाने का तरीका यहां बताया गया है:
Python
इस Python कोड के उदाहरण में, Chat REST API का इस्तेमाल किया गया है.
- अपनी वर्किंग डायरेक्ट्री में,
chat_spaceevents_get_app.pyनाम की एक फ़ाइल बनाएं. chat_spaceevents_get_app.pyमें यह कोड शामिल करें:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # Set authorization scopes based on the # event type. For example, if you are getting a space event # about a new membership, use the `chat.app.memberships` scope. # # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.memberships", "https://www.googleapis.com/auth/chat.app.memberships.readonly", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces", "https://www.googleapis.com/auth/chat.app.spaces.readonly"] def main(): ''' Authenticates with Chat API using app authentication, then lists space events from a specified space. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().get( # The space to get event details from. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE_NAME/spaceEvents/SPACE_EVENT_NAME', ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()कोड में, इनकी जगह ये डालें:
SPACE_NAME: स्पेस का नाम. इसे Chat API मेंspaces.listतरीके से या स्पेस के यूआरएल से पाया जा सकता है.SPACE_EVENT_NAME: स्पेस इवेंट केnameका आईडी. आपको यह आईडी,ListSpaceEvents()तरीके से मिल सकता है. इस तरीके का इस्तेमाल करने का तरीका जानने के लिए, किसी स्पेस के इवेंट की सूची बनाना लेख पढ़ें.
अपनी वर्किंग डायरेक्ट्री में, सैंपल बनाएं और उसे चलाएं:
python3 chat_spaceevents_get_app.py
Chat API, नई मेंबरशिप और मैसेज के बारे में स्पेस इवेंट की पेज के हिसाब से बांटी गई सूची दिखाता है.