action.devices.مزامنة

يتطلب هذا الهدف قائمة الأجهزة المرتبطة بالمستخدم المحدَّد وإمكاناته.

ويتم تشغيله أثناء ربط الحساب أو عندما يُعيد المستخدم مزامنة أجهزته يدويًا. يجب أن تفي طلباتك بالسمات والسمات المسموح بها لكل جهاز.

يجب أن تعرض استجابة SYNC جميع الأجهزة المرتبطة بالمستخدم. ولا يحدِّد ذلك ما إذا كان من الممكن الوصول إلى أي جهاز معيّن. تتم معالجة هذه المشكلة من خلال إجابتَي QUERY وEXECUTE.

لمزيد من التفاصيل، يُرجى الاطِّلاع على تحديد البيانات ومزامنتها.

تنسيق الطلب

الحقول النوع الوصف
requestId سلسلة

إنّ هذه السمة مطلوبة.

رقم تعريف الطلب.

inputs المصفوفة

إنّ هذه السمة مطلوبة.

قائمة المدخلات التي تطابق طلب النية.

[item, ...] الكائن

اكتب الحمولة والحمولة المرتبطة بطلب intent.

intent

إنّ هذه السمة مطلوبة.

(القيمة الثابتة: "action.devices.SYNC")

نوع طلب intent.

أمثلة

مزامنة طلب intent

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}

تنسيق الاستجابة

الحقول النوع الوصف
requestId سلسلة

إنّ هذه السمة مطلوبة.

رقم تعريف الطلب المقابل.

payload الكائن

إنّ هذه السمة مطلوبة.

الحمولة في الاستجابة للنية بالشراء

agentUserId سلسلة

إنّ هذه السمة مطلوبة.

يعكس رقم تعريف المستخدم الفريد (غير القابل للتغيير) على منصة الوكيل. السلسلة غير واضحة بالنسبة إلى Google، لذا إذا كان هناك نموذج غير قابل للتغيير مقابل نموذج قابل للتغيير على جانب الوكيل، استخدِم النموذج غير القابل للتغيير (مثل رقم الحساب بدلاً من البريد الإلكتروني).

errorCode سلسلة

بالنسبة إلى الأخطاء المنهجية في SYNC

debugString سلسلة

خطأ تفصيلي لن يتم عرضه للمستخدمين مطلقًا ولكن يمكن تسجيله أو استخدامه أثناء التطوير.

devices المصفوفة

إنّ هذه السمة مطلوبة.

قائمة الأجهزة التي يملكها المستخدم. يتم عرض أجهزة صفرية أو أكثر (صفر أجهزة يعني أن المستخدم ليس لديه أجهزة، أو أنه تم إلغاء ربطها جميعًا).

[item, ...] الكائن

البيانات الوصفية للجهاز

id سلسلة

إنّ هذه السمة مطلوبة.

رقم تعريف الجهاز في السحابة الإلكترونية لمطوّر البرامج. ويجب أن يكون هذا فريدًا لكل من المستخدم ومطوّر البرامج، كما هو الحال في حالات المشاركة، قد نستخدم هذا المحتوى لإزالة تكرار عدة طرق عرض للجهاز نفسه. ويجب أن يكون غير قابل للتغيير على الجهاز، وإذا تغيّر، سيتعامل "مساعد Google" معه على أنه جهاز جديد.

type سلسلة

إنّ هذه السمة مطلوبة.

نوع الجهاز

traits المصفوفة

إنّ هذه السمة مطلوبة.

قائمة السمات التي يتميز بها هذا الجهاز تحدّد هذه السياسة الأوامر والسمات والحالات التي يتوافق معها الجهاز.

[item, ...] سلسلة

اسم السمة المعتمدة.

name الكائن

إنّ هذه السمة مطلوبة.

أسماء هذا الجهاز.

defaultNames المصفوفة

قائمة الأسماء التي يوفرها مطوّر البرامج بدلاً من المستخدم، والتي تتضمن غالبًا أسماء الشركات المصنِّعة ورموز التخزين التعريفية وما إلى ذلك

[item, ...] سلسلة

الاسم التلقائي للجهاز.

name سلسلة

إنّ هذه السمة مطلوبة.

الاسم الأساسي للجهاز، يقدّمه المستخدم بشكل عام. هذا هو الاسم الذي يفضّل "مساعد Google" وصفه للجهاز في الردود.

nicknames المصفوفة

الأسماء الإضافية التي يقدمها المستخدم للجهاز.

[item, ...] سلسلة

لقب الجهاز.

willReportState منطقي

إنّ هذه السمة مطلوبة.

يشير هذا الإعداد إلى ما إذا كان سيتم تعديل حالات هذا الجهاز من خلال خلاصة الوقت الفعلي. (صحيح لاستخدام خلاصة الوقت الفعلي لإعداد التقارير، وخطأ لاستخدام نموذج استطلاع الرأي).

notificationSupportedByAgent منطقي

(القيمة التلقائية: false)

تشير هذه الخاصية إلى ما إذا كانت الإشعارات مفعّلة للجهاز.

roomHint سلسلة

يقدم الغرفة الحالية للجهاز في منزل المستخدم لتبسيط الإعداد.

deviceInfo الكائن

تحتوي على حقول تصف الجهاز للاستخدام بمنطق واحد إذا لزم الأمر (مثلاً "يتطلب الإصدار الثابت المتوقف X من الضوء Y ضبط اللون" أو "يتطلب الثغرات الأمنية إشعار جميع مستخدمي البرامج الثابتة Z").

manufacturer سلسلة

ويكون ذلك مفيدًا على وجه الخصوص عندما يكون مطوّر البرامج مركزًا للأجهزة الأخرى. قد توفّر Google قائمة قياسية للشركات المصنّعة هنا بحيث تستخدم كل من "TP-Link" و"الذكاء" وصف "OSram" بالطريقة نفسها.

model سلسلة

طراز الجهاز أو معرّف رمز التخزين التعريفي (SKU) للجهاز المحدد.

hwVersion سلسلة

رقم الإصدار المحدّد والمرفق بالجهاز في حال توفّره.

swVersion سلسلة

رقم الإصدار المحدّد والمرفق بالبرنامج/البرامج الثابتة، في حال توفّره.

attributes الكائن

تتم المحاذاة مع سمات كل سمة واردة في كل مرجع مخطط للسمات.

customData الكائن

العنصر الذي حدّده مطوّر البرامج والذي سيتم إرفاقه بطلبات البحث QUERY وEXECUTE المستقبلية، بحد أقصى 512 بايت لكل جهاز. يمكنك استخدام هذا العنصر لتخزين معلومات إضافية عن الجهاز الذي قد تحتاج خدمة السحابة الإلكترونية إليه، مثل المنطقة العامة للجهاز. هناك بعض القيود على البيانات في هذا العنصر: لا تتوفّر معلومات حساسة، بما في ذلك على سبيل المثال لا الحصر، معلومات تحديد الهوية الشخصية.

otherDeviceIds المصفوفة

قائمة بمعرّفات بديلة تُستخدم لتحديد جهاز تمت مزامنته من خلال السحابة الإلكترونية لتنفيذه محليًا

[item, ...] الكائن

رقم تعريف الجهاز البديل.

agentId سلسلة

رقم تعريف الوكيل وبوجهٍ عام، هذا هو رقم تعريف المشروع في وحدة تحكم الإجراءات.

deviceId سلسلة

إنّ هذه السمة مطلوبة.

معرّف الجهاز الذي يحدّده الوكيل يجب أن يكون رقم تعريف الجهاز فريدًا.

أمثلة

مزامنة الاستجابة لنية الشراء

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "agentUserId": "1836.15267389",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.OUTLET",
        "traits": [
          "action.devices.traits.OnOff"
        ],
        "name": {
          "defaultNames": [
            "My Outlet 1234"
          ],
          "name": "Night light",
          "nicknames": [
            "wall plug"
          ]
        },
        "willReportState": false,
        "roomHint": "kitchen",
        "deviceInfo": {
          "manufacturer": "lights-out-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        },
        "otherDeviceIds": [
          {
            "deviceId": "local-device-id"
          }
        ],
        "customData": {
          "fooValue": 74,
          "barValue": true,
          "bazValue": "foo"
        }
      },
      {
        "id": "456",
        "type": "action.devices.types.LIGHT",
        "traits": [
          "action.devices.traits.OnOff",
          "action.devices.traits.Brightness",
          "action.devices.traits.ColorSetting"
        ],
        "name": {
          "defaultNames": [
            "lights out inc. bulb A19 color hyperglow"
          ],
          "name": "lamp1",
          "nicknames": [
            "reading lamp"
          ]
        },
        "willReportState": false,
        "roomHint": "office",
        "attributes": {
          "colorModel": "rgb",
          "colorTemperatureRange": {
            "temperatureMinK": 2000,
            "temperatureMaxK": 9000
          },
          "commandOnlyColorSetting": false
        },
        "deviceInfo": {
          "manufacturer": "lights out inc.",
          "model": "hg11",
          "hwVersion": "1.2",
          "swVersion": "5.4"
        },
        "customData": {
          "fooValue": 12,
          "barValue": false,
          "bazValue": "bar"
        }
      }
    ]
  }
}