स्मार्ट होम ऐक्शन बनाने का तरीका जानने की नई जगह, Google Home डेवलपर सेंटर में आपका स्वागत है. ध्यान दें: Actions कंसोल में कार्रवाइयां बनाना जारी रहेगा.

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

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

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

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

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

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

नीचे दी गई टेबल में उन विशेषताओं के बारे में बताया गया है जिन्हें आप जोड़ सकते हैं. ये विशेषताएं उन प्रोटोकॉल पर आधारित होती हैं जिन्हें Google अपने डिवाइस पर स्कैन करने के लिए इस्तेमाल करता है:

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

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

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

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

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

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

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

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

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

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

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

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

उदाहरण

नीचे दिया गया स्निपेट आपको 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": "..."
      }
    }]
  }
}