डिवाइस को खोजे जाने की सुविधा दें

जब Google स्थानीय तौर पर कंट्रोल किए जा सकने वाले किसी डिवाइस को मैच करता है, तो लोकल फ़ुलफ़िलमेंट पाथ बनाया जाता है SYNC में लौटाए गए डिवाइस पर क्लाउड फ़ुलफ़िलमेंट की ओर से आपको जवाब मिल जाएगा.

Google को स्थानीय नेटवर्क पर आपका डिवाइस खोजने में मदद करने और लोकल फ़ुलफ़िलमेंट पाथ के लिए, आपको कार्रवाइयां कंसोल में डिस्कवरी की जानकारी जोड़नी होगी. आपको क्लाउड फ़ुलफ़िलमेंट से SYNC के जवाब को भी अपडेट करना होगा, ताकि Google स्थानीय रूप से नियंत्रित किए जा सकने वाले डिवाइस के बारे में जानता है.

स्कैन कॉन्फ़िगरेशन की जानकारी सेट अप करना

खोज की जानकारी देने के लिए, यह तरीका अपनाएं:

  1. Actions कंसोल में अपना स्मार्ट होम प्रोजेक्ट खोलें.
  2. बाईं ओर मौजूद नेविगेशन में, कार्रवाइयां पर क्लिक करें.
  3. लोकल होम SDK टूल कॉन्फ़िगर करें (ज़रूरी नहीं) में जाकर > डिवाइस स्कैन कॉन्फ़िगरेशन जोड़ें और नया स्कैन कॉन्फ़िगरेशन पर क्लिक करें.
  4. ड्रॉप-डाउन से, स्कैन मैच करने वाला प्रोटोकॉल टाइप चुनें और इसके लिए वैल्यू डालें स्कैन करें.

नीचे दी गई टेबल में वे एट्रिब्यूट दिखाए गए हैं जिन्हें प्रोटोकॉल के आधार पर जोड़ा जा सकता है आपकी इच्छा है कि Google आपके डिवाइस को स्कैन करने के लिए इनका इस्तेमाल करे:

mDNS
एट्रिब्यूट ब्यौरा उदाहरण वैल्यू
सेवा का नाम ज़रूरी है. डिवाइस पर, इस फ़ॉर्मैट में सेवा का नाम पब्लिश किया गया service.domain. _http._tcp.local
नाम

ज़रूरी है. इसमें किसी यूनीक सेवा इंस्टेंस के लिए instance.service.domain फ़ॉर्मैट.

प्लैटफ़ॉर्म, इस वैल्यू को रेगुलर एक्सप्रेशन के तौर पर देखता है और कोई वैल्यू दिखाता है मिलते-जुलते डिवाइस.
my-device-[0-9]{4}\._http\._tcp\.local
UPnP
एट्रिब्यूट ब्यौरा उदाहरण वैल्यू
सेवा प्रकार ज़रूरी है. इस फ़ॉर्मैट में, UPnP सेवा के लिए पूरी तरह क्वालिफ़ाइड आइडेंटिफ़ायर domain:service:type:version. schemas-upnp-org:service:SwitchPower:1
ओयूआई

ज़रूरी नहीं. संगठन का यूनीक आइडेंटिफ़ायर.

24-बिट वैल्यू, जिससे डिवाइस बनाने वाली कंपनी की पहचान की जा रही है. आम तौर पर, डिवाइस के MAC पते के पहले तीन ऑक्टेट.
1A:2B:3C
UDP
एट्रिब्यूट ब्यौरा उदाहरण वैल्यू
ब्रॉडकास्ट का पता ज़रूरी है. UDP ब्रॉडकास्ट के लिए डेस्टिनेशन आईपी पता. 255.255.255.255
ब्रॉडकास्ट पोर्ट ज़रूरी है. UDP ब्रॉडकास्ट के लिए डेस्टिनेशन पोर्ट. 5555
सुनें पोर्ट ज़रूरी है. यूडीपी डिस्कवरी रिस्पॉन्स के लिए पोर्ट को सुनें. 5556
डिस्कवरी पैकेट

ज़रूरी है. UDP ब्रॉडकास्ट में भेजने के लिए पेलोड.

इसे बाइट की हेक्साडेसिमल कोड में बदली गई स्ट्रिंग के तौर पर फ़ॉर्मैट किया जाता है.
48454C4C4F

क्लाउड फ़ुलफ़िलमेंट में सिंक के जवाब को अपडेट करें

SYNC इंटेंट, यह Assistant की मदद से तय करें कि उपयोगकर्ता कौनसे डिवाइस कंट्रोल कर सकता है और उसकी क्षमताओं का इस्तेमाल कैसे किया जा सकता है.

स्थानीय वाहन बेचने में मदद करने के लिए, Local Home प्लैटफ़ॉर्म SYNC के जवाब की जांच करता है आपके स्मार्ट होम ऐक्शन की क्लाउड फ़ुलफ़िलमेंट और डिवाइस से मैच करने की कोशिश करता है पुष्टि करने के लिए, otherDeviceIds फ़ील्ड में मौजूद आईडी को, IDENTIFY हैंडलर. बिना otherDeviceIds फ़ील्ड वाले डिवाइस की एंट्री इसे स्थानीय वाहन की बिक्री से बाहर रखा गया है.

इस otherDeviceIds SYNC रिस्पॉन्स का फ़ील्ड, आपको स्मार्ट होम के डिवाइस आईडी सेट करने होंगे जिन्हें स्थानीय तौर पर कंट्रोल किया जा सकता है. फ़ील्ड, device लेवल पर दिखता है डालें. Google, ऐसे किसी भी डिवाइस पर ऑर्डर पूरा करने के लिए स्थानीय पाथ सेट कर सकता है जिसमें दिया गया आईडी.

अगर Google को कोई अतिरिक्त डेटा चाहिए, तो customData फ़ील्ड का इस्तेमाल करें किसी स्टैंडअलोन डिवाइस से कनेक्ट किया जा सकता है या हब के ज़रिए एंड डिवाइसों को टारगेट किया जा सकता है (उदाहरण के लिए, पोर्ट नंबर और प्रोटोकॉल से जुड़ी अन्य खास जानकारी).

उदाहरण

नीचे दिया गया स्निपेट आपको अपना SYNC हैंडलर बनाने का तरीका बताता है.

स्टैंडअलोन/हब
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "agentUserId": "1836.15267389",
    "devices": [{
      "id": "123",
      "type": "action.devices.types.OUTLET",
      "traits": [
        "action.devices.traits.OnOff"
      ],
      "name": {
        "name": "Night light"
      },
      "willReportState": false,
      "otherDeviceIds": [{
        "deviceId": "local-device-id"
      }],
      "customData": {
        "port": 5555,
        "authToken": "..."
      }
    }]
  }
}