इवेंट के लिए सदस्यता लें

इवेंट एसिंक्रोनस होते हैं और Google Cloud Pub/Sub की मदद से, हर एक विषय के हिसाब से उन्हें मैनेज किया जाता है Project. इवेंट सभी डिवाइसों और स्ट्रक्चर के लिए अपडेट देते हैं और इवेंट की रसीद जब तक उपयोगकर्ता ऐक्सेस टोकन को रद्द नहीं करता और इवेंट मैसेज को समयसीमा खत्म हो गई है.

इवेंट, एसडीएम एपीआई की एक वैकल्पिक सुविधा है. वे ये काम कर सकते हैं को आसानी से लागू किया जा सकता है और Google Cloud का इस्तेमाल करके इसकी पुष्टि की जा सकती है प्रोजेक्ट.

इवेंट सक्षम करें

इवेंट को Device Access कंसोल में चालू किया जा सकता है. इसमें अपना प्रोजेक्ट चुनें कंसोल, अगर आपने पहले से ऐसा नहीं किया है.

Device Access कंसोल पर जाएं

अगर आपने पहले ही इवेंट (उदाहरण के लिए, प्रोजेक्ट बनाना), प्रोजेक्ट की जानकारी सेक्शन के Pub/Sub विषय फ़ील्ड में पहले से ही जिसे टॉपिक आईडी कहा जाता है. यह इस फ़ॉर्मैट में होता है:

projects/sdm-prod/topics/enterprise-project-id

अगर आपने इवेंट चालू नहीं किए हैं, तो:

  1. Pub/Sub के लिए आइकॉन पर क्लिक करें विषय चुनकर बदलाव करें को चुनें.
  2. इवेंट चालू करें पर सही का निशान लगाएं और सेव करें पर क्लिक करें.
  3. ऊपर दिखाए गए फ़ॉर्मैट में आपके लिए एक विषय आईडी जनरेट किया जाता है.

अपना विषय आईडी कॉपी करें. आपको विषय की सदस्यता बनानी होगी, ताकि इवेंट के मैसेज वापस पाए जा सकते हैं.

पुल सदस्यता बनाएं

पुल सदस्यता वह होती है जहां कोई सदस्य Pub/Sub के लिए अनुरोध करता है सर्वर. इससे तुरंत और आसानी से, आपके अनुमति वाले डिवाइस के लिए, इवेंट जनरेट किए जा रहे हैं.

अपने Google Cloud प्रोजेक्ट के लिए Cloud Shell खोलें:

Google Cloud Shell पर जाएं

Cloud Shell के प्रॉम्प्ट पर, पुल बनाने के लिए यह कमांड चलाएं अपने विषय की सदस्यता लें. इसके लिए, अपने हिसाब से subscription-id का इस्तेमाल करें और आपका विशेष विषय आईडी:

gcloud pubsub subscriptions create subscription-id --topic=projects/sdm-prod/topics/enterprise-project-id
Created subscription [projects/gcp-project-name/subscriptions/subscription-id].

इवेंट शुरू करना

Pub/Sub की सदस्यता खत्म होने के बाद, पहली बार इवेंट शुरू करने के लिए बनाया गया है, तो अपने डिवाइस को एक बार वाले ट्रिगर के रूप में सूचीबद्ध करने के लिए कॉल करें:

curl -X GET 'https://smartdevicemanagement.googleapis.com/v1/enterprises/project-id/devices' \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer access-token'

इस एपीआई कॉल के बाद, सभी स्ट्रक्चर और डिवाइस के इवेंट पब्लिश हो जाएंगे.

इवेंट जनरेट करें

विशेषता फ़ील्ड में होने वाले सभी बदलावों के लिए इवेंट जनरेट होते हैं. इनमें से कुछ अपने-आप होते हैं, कुछ मैन्युअल.

उदाहरण के लिए, अगर आपके आस-पास के माहौल का तापमान Nest Thermostat में बदलाव किया गया, तो तापमान विशेषता ambientTemperatureCelsius की नई वैल्यू के साथ अपने-आप भेजी जाएगी.

मैन्युअल तरीके से जनरेट करने के लिए, इनमें से कोई एक तरीका अपनाएं:

  1. अपने डिवाइस की स्थिति बदलना. जैसे, डिवाइस का मोड बदलना आपका Nest Thermostat.
  2. किसी इवेंट को ट्रिगर करने के लिए, Google Nest Cam इनडोर.
  3. डिवाइस का निर्देश लागू करना एसडीएम एपीआई का इस्तेमाल करके ऐसा किया जा सकता है.

मैसेज देखें

इवेंट के मैसेज आपके Google Cloud प्रोजेक्ट में Pub/Sub सदस्यताएं सेक्शन:

Google Cloud Pub/Sub की सदस्यताओं पर जाएं

  1. उस सदस्यता आईडी पर क्लिक करें जिसे आपने पहले बनाया था.
  2. सदस्यता की जानकारी वाली स्क्रीन पर, आपको हैक नहीं किए गए मैसेज की संख्या चार्ट. इससे पता चलता है कि इवेंट मैसेज भेजे गए हैं के ज़रिए, लोगों तक पहुँचा जा सकता है. अगर आपको कोई गतिविधि नहीं दिखाई दे रही है, तो थोड़ी देर इंतज़ार करें समय या कुछ और इवेंट जनरेट करें.
  3. मैसेज देखें पर क्लिक करके मैसेज पैनल खोलें.
  4. मैसेज देखने के लिए, खींचें पर क्लिक करें. इन्हें कार्रवाइयों के हिसाब से होना चाहिए का इस्तेमाल किया जाता है.

मैसेज को Cloud Shell में, बेसिक pull कमांड का इस्तेमाल करके भी देखा जा सकता है:

gcloud pubsub subscriptions pull subscription-id

सदस्यता के टाइप और भेजे गए इवेंट के बारे में ज़्यादा जानकारी पाने के लिए और उनका उपयोग करने के तरीके के बारे में जानने के लिए, देखें इवेंट.

मैसेज मैनेज करें

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

Google Cloud Pub/Sub की सदस्यताओं पर जाएं

  1. सदस्यता आईडी पर क्लिक करें.
  2. इन्हें स्वीकार करने और डेटा को मिटाने के कुछ तरीके यहां दिए गए हैं:
    1. मैसेज देखें पर क्लिक करके मैसेज पैनल खोलें. ack मैसेज चालू करें को चुनें चेकबॉक्स पर सही का निशान लगाएं और सभी मैसेज देखने और स्वीकार करने के लिए, खींचें और छोड़ें पर क्लिक करें.
    2. पर क्लिक करें मैसेज का इस्तेमाल करके, मौजूदा मैसेज को पूरी तरह मिटा दिया जाएगा. ऐसा करने के लिए, मैसेज को स्वीकार करना ज़रूरी है उन्हें देखना. पुष्टि करने के लिए, पार्स करें पर क्लिक करें.

मैसेज को Cloud Shell में भी पूरी तरह मिटाया जा सकता है. ऐसा करने के लिए, --auto-ack फ़्लैग का इस्तेमाल करें सामान्य pull निर्देश:

gcloud pubsub subscriptions pull subscription-id --auto-ack

सदस्यताएं प्रबंधित करें

सदस्यताओं को अलग-अलग तरीकों से कॉन्फ़िगर किया जा सकता है. इनके बारे में यहां बताया गया है सदस्यता प्रॉपर्टी का इस्तेमाल करना.

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

Device Accessके साथ सेवा खाते की पुष्टि करने के बारे में ज़्यादा जानकारी के लिए, इसे देखें इवेंट.