دليل الترموستات المنزلي المزوّد بأجهزة ذكية

action.devices.types.THERMOSTAT - أجهزة الترموستات هي أجهزة تتيح إدارة درجة الحرارة وتتميز بنقاط وأوضاع محدّدة. يؤدي ذلك إلى فصلها عن أجهزة التدفئة ووحدات تكييف الهواء التي قد تحتوي فقط على أوضاع وإعدادات (على سبيل المثال، مرتفعة/منخفضة) مقابل درجة حرارة مستهدفة.

يشير هذا النوع إلى أنّ الجهاز يعرض رمز Thermostat وبعض المرادفات والأسماء المستعارة ذات الصلة.

تتحكم الأجهزة من هذا النوع في درجة الحرارة، بينما تحتوي بعض وحدات التدفئة/التبريد على عناصر تحكم مختلفة وأوضاع عالية/منخفضة، ولكنها لا تحتوي على عناصر تحكم في درجة الحرارة.

إمكانات الجهاز

يمكنك الرجوع إلى وثائق السمات المقابلة لتفاصيل التنفيذ، مثل السمات والحالات التي يجب أن تدعمها خدمتك، وكيفية إنشاء استجابات EXECUTE وQUERY.

السمات المطلوبة

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

غالبًا ما يتم ربط أوامر الترموستات بالتسلسل في EXECUTE أغراض. سيصدر المستخدم الذي يقول *ضبط درجة الحرارة على 72* أمر وضع متبوعًا بإعداد درجة حرارة.

متطلبات الجودة

  • وقت الاستجابة: يجب أن يكون أقل من 700 ملي ثانية أو يساويه.
  • الموثوقية: يجب أن تزيد عن 97% أو تساويها.

مثال على الجهاز: ترموستات بسيط

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

نموذج استجابة المزامنة

طلب
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
الرد
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.THERMOSTAT",
        "traits": [
          "action.devices.traits.TemperatureSetting"
        ],
        "name": {
          "name": "Simple thermostat"
        },
        "willReportState": true,
        "attributes": {
          "availableThermostatModes": [
            "off",
            "heat",
            "cool",
            "heatcool",
            "on"
          ],
          "thermostatTemperatureRange": {
            "minThresholdCelsius": 15,
            "maxThresholdCelsius": 30
          },
          "thermostatTemperatureUnit": "F"
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

نموذج رد QUERY

طلب
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
الرد
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "thermostatMode": "cool",
        "thermostatTemperatureSetpoint": 23,
        "thermostatTemperatureAmbient": 25.1,
        "thermostatHumidityAmbient": 45.3
      }
    }
  }
}

نموذج أوامر EXECUTE

نقطة ضبط درجة الحرارة للترموستات

للاطّلاع على تفاصيل إضافية عن معلَمات الأوامر، يمكنك الاطّلاع على مرجع action.devices.traits.TemperatureSetting.

طلب
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.ThermostatTemperatureSetpoint",
                "params": {
                  "thermostatTemperatureSetpoint": 22
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
الرد
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "thermostatMode": "cool",
          "thermostatTemperatureSetpoint": 22,
          "thermostatTemperatureAmbient": 25.1
        }
      }
    ]
  }
}

نطاق مجموعة الحرارة بالترموستات

للاطّلاع على تفاصيل إضافية عن معلَمات الأوامر، يمكنك الاطّلاع على مرجع action.devices.traits.TemperatureSetting.

طلب
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.ThermostatTemperatureSetRange",
                "params": {
                  "thermostatTemperatureSetpointHigh": 26,
                  "thermostatTemperatureSetpointLow": 22
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
الرد
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "thermostatMode": "heatcool",
          "thermostatTemperatureSetpointHigh": 26,
          "thermostatTemperatureSetpointLow": 22,
          "thermostatTemperatureAmbient": 25.1
        }
      }
    ]
  }
}

وضع ضبط الترموستات

للاطّلاع على تفاصيل إضافية عن معلَمات الأوامر، يمكنك الاطّلاع على مرجع action.devices.traits.TemperatureSetting.

طلب
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.ThermostatSetMode",
                "params": {
                  "thermostatMode": "heatcool"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
الرد
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "thermostatMode": "heatcool",
          "thermostatTemperatureSetpointHigh": 26,
          "thermostatTemperatureSetpointLow": 22,
          "thermostatTemperatureAmbient": 25.1
        }
      }
    ]
  }
}

أخطاء الجهاز

راجِع القائمة الكاملة للأخطاء والاستثناءات.
  • inHeatOrCool - تعذّر تنفيذ طلبات التدفئة/التبريد/النطاق لأنّ الجهاز في درجة حرارة التدفئة أو التبريد الصريح
  • inHeatCool: تعذّر تنفيذ طلبات التدفئة أو التبريد لأنّ الجهاز في وضع التدفئة أو التبريد.
  • lockedToRange - الجهاز مقفل على نطاق درجة حرارة أو وضع، ولا يمكن إجراء التغيير المطلوب.
  • rangeTooClose - نقاط درجة الحرارة في نطاق تبريد الحرارة قريبة جدًا من بعضها.