دليل الصنابير الذكية للمنزل

action.devices.types.FAUCET - يمكن أن تضخّ الصنابير السوائل بكميات مختلفة وإعدادات مسبقة مختلفة. قد تتضمّن الصنابير أوضاعًا مختلفة ولكل وضع إعداداته ذات الصلة. تكون هذه القيم خاصة بجهاز التحكّم في تدفق المياه ويتم تفسيرها بشكل عام.

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

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

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

يُنصح باستخدام هذه السمات إذا كانت مناسبة لجهازك. ومع ذلك، يمكنك الجمع بين جميع السمات المتاحة لمطابقة وظائف المنتج الحالية على أفضل نحو.

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

  • وقت الاستجابة: يجب أن يكون أقل من أو يساوي 800 ملي ثانية.
  • الموثوقية: يجب أن تكون أكبر من أو تساوي %97.

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

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

مثال على استجابة SYNC

الطلبالردّ
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.FAUCET",
        "traits": [
          "action.devices.traits.Dispense",
          "action.devices.traits.TemperatureControl",
          "action.devices.traits.OnOff"
        ],
        "name": {
          "name": "Simple faucet"
        },
        "willReportState": true,
        "attributes": {
          "supportedDispenseItems": [
            {
              "item_name": "water_key",
              "item_name_synonyms": [
                {
                  "lang": "en",
                  "synonyms": [
                    "Water"
                  ]
                },
                {
                  "lang": "es",
                  "synonyms": [
                    "Agua"
                  ]
                },
                {
                  "lang": "fr",
                  "synonyms": [
                    "Eau"
                  ]
                }
              ],
              "supported_units": [
                "TEASPOONS",
                "TABLESPOONS",
                "FLUID_OUNCES",
                "CUPS",
                "PINTS",
                "QUARTS",
                "GALLONS",
                "MILLILITERS",
                "LITERS",
                "DECILITERS"
              ],
              "default_portion": {
                "amount": 2,
                "unit": "CUPS"
              }
            }
          ],
          "supportedDispensePresets": [
            {
              "preset_name": "cat_water_bowl_key",
              "preset_name_synonyms": [
                {
                  "lang": "en",
                  "synonyms": [
                    "Cat water bowl",
                    "Cat water dish",
                    "Cat water cup"
                  ]
                },
                {
                  "lang": "es",
                  "synonyms": [
                    "Plato de agua para gato",
                    "Bebedero para gato"
                  ]
                },
                {
                  "lang": "fr",
                  "synonyms": [
                    "Bol d'eau de chat",
                    "Bac \u00e0 eau pour chat",
                    "Tasse d'eau de chat"
                  ]
                }
              ]
            }
          ],
          "temperatureRange": {
            "minThresholdCelsius": 25,
            "maxThresholdCelsius": 100
          },
          "temperatureUnitForUX": "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,
        "on": false,
        "temperatureSetpointCelsius": 30,
        "dispenseItems": [
          {
            "itemName": "water_key",
            "amountLastDispensed": {
              "amount": 2.5,
              "unit": "CUPS"
            },
            "isCurrentlyDispensing": false
          }
        ]
      }
    }
  }
}

أمثلة على أوامر EXECUTE

التوزيع

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

الطلبالردّ
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.Dispense",
                "params": {
                  "amount": 1,
                  "unit": "CUPS",
                  "item": "water_key"
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "dispenseItems": [
            {
              "itemName": "water_key",
              "amountLastDispensed": {
                "amount": 1,
                "unit": "CUPS"
              },
              "isCurrentlyDispensing": true
            }
          ]
        }
      }
    ]
  }
}

SetTemperature

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

الطلبالردّ
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.SetTemperature",
                "params": {
                  "temperature": 65
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "temperatureSetpointCelsius": 65
        }
      }
    ]
  }
}

OnOff

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

الطلبالردّ
{
  "requestId": "6894439706274654520",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OnOff",
                "params": {
                  "on": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
{
  "requestId": "6894439706274654520",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "on": true
        }
      }
    ]
  }
}

أخطاء الجهاز

اطّلِع على القائمة الكاملة للأخطاء والاستثناءات.