پشتیبانی از کاوش دستگاه

وقتی Google دستگاهی را که به‌طور محلی قابل‌کنترل است با دستگاهی که در پاسخ SYNC از اجرای ابری شما برگردانده شده است مطابقت می‌دهد، مسیر اجرای محلی ایجاد می‌شود.

برای اینکه Google بتواند دستگاهتان را در شبکه محلی کاوش کند و مسیر اجرای محلی را ایجاد کند، باید اطلاعات کاوش را در کنسول Actions اضافه کنید. همچنین باید پاسخ SYNC را از تحقق ابری خود به‌روز کنید تا Google را از دستگاه قابل‌کنترل محلی مطلع کنید.

راه‌اندازی اطلاعات پیکربندی اسکن

برای مشخص کردن اطلاعات اکتشاف، این مراحل را دنبال کنید:

  1. به ادغام Cloud-to-cloud در Google Home Developer Console بروید:

    به «کنسول توسعه‌دهنده» بروید.

  2. به پروژه > ابربه‌ابر در سمت راست صفحه بروید، سپس ویرایش را برای ادغام انتخاب کنید. در صفحه راه‌اندازی و پیکربندی، به تحقق محلی پیمایش کنید و تنظیم را روشن کنید. نشانی وب زیر را در هر فیلد نشانی وب آزمایشی وارد کنید، شناسه پروژه‌تان را وارد کنید، و روی ذخیره کلیک کنید:

    https://<project-id>.web.app/local-home/index.html

  3. برای افزودن پیکربندی اسکن جدید، روی + افزودن پیکربندی اسکن در بخش اکتشاف دستگاه کلیک کنید.

  4. نوع پروتکل مطابقت اسکن را از منو کرکره‌ای انتخاب کنید و مقادیر را برای اسکن Google وارد کنید.

جدول‌های زیر مشخصه‌هایی را نشان می‌دهد که می‌توانید براساس پروتکل‌هایی که می‌خواهید 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
OUI

اختیاری. شناسه یکتای سازمانی.

مقدار ۲۴ بیتی که سازنده دستگاه را شناسایی می‌کند. معمولاً سه هشت‌تایی اول مک آدرس دستگاه.
1A:2B:3C
UDP
مشخصه شرح مقدار نمونه
نشانی اکتشاف الزامی. نشانی IP مقصد برای پخش UDP. 255.255.255.255
درگاه همه‌فرستی الزامی. درگاه مقصد برای پخش UDP. 5555
درگاه گوش کردن الزامی. درگاه گوش کردن برای پاسخ یافتن UDP. 5556
بسته اکتشاف

الزامی. بار داده برای ارسال در همه‌فرستی UDP.

به‌عنوان رشته بایت‌های کدبندی‌شده شانزده‌شانزدهی قالب‌بندی شده است.
48454C4C4F

به‌روزرسانی پاسخ همگام‌سازی در اجرای ابری

قصد SYNC به «دستیار» گزارش می‌دهد که کاربر چه دستگاه‌هایی را کنترل می‌کند و قابلیت‌های آن‌ها چیست.

برای پشتیبانی از اجرای محلی، پلاتفرم Local Home پاسخ SYNC را از اجرای ابری «کنش» خانه هوشمند شما بررسی می‌کند و سعی می‌کند شناسه‌های دستگاه را در فیلد otherDeviceIds با شناسه درستی‌سنجی برگردانده‌شده توسط گرداننده IDENTIFY مطابقت دهد. ورودی‌های دستگاه بدون فیلد otherDeviceIds از اجرای محلی مستثنی می‌شوند.

در فیلد otherDeviceIds پاسخ SYNC، باید شناسه‌های دستگاه‌های خانه هوشمند را که می‌توانند به‌صورت محلی کنترل شوند تنظیم کنید. فیلد در سطح 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": "..."
      }
    }]
  }
}