حدود المستخدم والمعدل

Device Access تخضع المشاريع لقيود على المستخدمين والبنية والأسعار، استنادًا إلى البيئة ونوع العرض الترويجي.

نريد من المطوّرين توفير تجارب مميّزة للمستخدمين، ولكننا نريد أيضًا أن تكون خدمة Nest وأجهزة Nest متاحة للمستخدمين في جميع الأوقات. إنّ عمليات الدمج التي تُجري عددًا كبيرًا من الطلبات في فترة زمنية معيّنة يمكن أن تؤثّر في مدى توفّر الخدمة والأجهزة، لذا تفرض واجهة برمجة التطبيقات SDM API حدودًا للمعدل. يحدّد وضع حدود قصوى لمعدّل إرسال الطلبات عدد طلبات البيانات من واجهة برمجة التطبيقات لفترة زمنية معيّنة ويمنع إساءة استخدام الموارد.

الحدود حسب البيئة

تبدأ جميع المشاريع في بيئة   Sandbox  . يهدف وضع الحماية إلى تقييم واجهة برمجة التطبيقات SDM API والاستخدام الشخصي، ويتم تحديد حدوده وفقًا لذلك. أما البيئات التي تضم قواعد مستخدمين أكبر، مثل   التطوير التجاري  ، فتفرض حدودًا مختلفة.

حدود مستخدمي وضع الحماية

يقتصر حساب المطوّر في "مساحة الاختبار" على 25 مستخدمًا في 5 بُنَى في جميع المشاريع. يمكن إنشاء 3 مشاريع كحدّ أقصى لكلّ حساب.

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

في المقابل، إذا كان المشروع يتضمّن 15 مستخدمًا على 5 هياكل، يمكن إضافة مستخدمين إضافيين فقط إلى الهياكل الخمسة الحالية، لأنّه سبق أن تمّ الوصول إلى الحدّ الأقصى للهياكل.

حدود معدّل وضع الحماية

يتمّ تقييد معدّل عمليات الربط في "المساحة الاختبارية" على 3 مستويات مختلفة. يتم ضبط الحدود على طلبات البحث في الدقيقة (QPM) ما لم يُذكر خلاف ذلك.

مستوى واجهة برمجة التطبيقات

تقتصر عدد طلبات البيانات من واجهة برمجة التطبيقات لكل مشروع ولكل مستخدم. اطّلِع على مرجع واجهة برمجة التطبيقات للحصول على مزيد من المعلومات عن methods الفردية.

طريقة واجهة برمجة التطبيقات الحدّ الأقصى للمعدل
devices.executeCommand ‫10 طلبات في الدقيقة
devices.get ‫10 طلبات في الدقيقة
devices.list ‫5 كيلو بايت في الثانية
structures.get ‫5 كيلو بايت في الثانية
structures.list ‫5 كيلو بايت في الثانية
structures.rooms.get ‫5 كيلو بايت في الثانية
structures.rooms.list ‫5 كيلو بايت في الثانية

مستوى الأوامر

تقتصر كلّ سمة من سمات الأمر (devices.executeCommand) على 5 عمليات معالجة طلبات في الدقيقة لكل مشروع، لكلّ مستخدم، لكلّ جهاز.

وهذا يعني أنّه إذا كان المشروع يتضمّن مستخدمَين يمتلكان جهازَين لكل منهما (4 أجهزة إجمالاً)، يمكن تنفيذ العبارة نفسها 5 مرات في الدقيقة لكل من هذه الأجهزة الأربعة.

ومع ذلك، إذا كان المشروع يتضمّن مستخدمَين لديهما 3 أجهزة لكل منهما، أي 6 أجهزة في المجمل، لا يمكن استدعاء الأمر نفسه 5 مرات في الدقيقة لكل من هذه الأجهزة الستة. سيؤدي ذلك إلى الحصول على 15 طلب في الدقيقة لكل مستخدم، عندما يكون الحدّ الأقصى للمعدل على مستوى devices.executeCommand API لمستخدم المشروع هو 10 طلبات في الدقيقة.

مستوى مثيل الجهاز

بالإضافة إلى ذلك، يتم تطبيق الحدود على مستوى مثيل الجهاز في جميع المشاريع والسمَات (devices.executeCommand) لحماية بطارية الجهاز. يتم تطبيق هذه الحدود على مستوى كلّ من "الطلبات في الدقيقة" و"الطلبات في الساعة"، ولا تنطبق على طريقتَي get وlist لواجهة برمجة التطبيقات.

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

إذا لم يكن نوع الجهاز مُدرَجًا أدناه، يعني ذلك أنّه لا يتضمّن حدودًا لمعدل الصعوبة على مستوى مثيل الجهاز.

نوع الجهاز الحد الأقصى لعدد أجهزة الإصدار
الترموستات ‫5 صور في الثانية أو 100 صورة في الساعة
الكاميرا ‫30 ملف في الدقيقة أو 100 ملف في الساعة
جرس الباب ‫30 ملف في الدقيقة أو 100 ملف في الساعة

الأخطاء

قد يتم عرض رموز الخطأ التالية في ما يتعلّق بهذا الدليل:

رسالة الخطأ متوسط عائد النقرة تحديد المشاكل وحلّها
معدّل الاستخدام محدود RESOURCE_EXHAUSTED يحصل كل مطوِّر على حصة تحدّ من عدد المكالمات التي يمكنه إجراؤها. إذا أجريت مكالمات أكثر من حصتك، ستتلقّى رسالة "تمّ الحد من معدّل المكالمات". لحلّ هذه المشكلة، يُرجى إعادة إرسال المكالمة بعد انتهاء صلاحية الحصة.

اطّلِع على مرجع رموز الخطأ في واجهة برمجة التطبيقات للحصول على القائمة الكاملة لرموز الخطأ في واجهة برمجة التطبيقات.