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

Device Access تخضع المشاريع لقيود حسب المستخدم والبنية والحدود القصوى للمعدّل، وذلك حسب البيئة ونوع العرض التجاري.

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

الحدود القصوى حسب البيئة

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

الحدود القصوى للمستخدمين في ساندبوكس

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

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

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

الحدود القصوى للمعدّل في ساندبوكس

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

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

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

طريقة واجهة برمجة التطبيقات الحد الأقصى للمعدّل
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 لمستخدم مشروع هو 10 طلبات بحث في الدقيقة.

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

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

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

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

نوع الجهاز الحد الأقصى للمعدّل على مستوى مثيل الجهاز
جهاز الترموستات 5 طلبات بحث في الدقيقة أو 100 طلب بحث في الساعة
CAMERA 30 طلب بحث في الدقيقة أو 100 طلب بحث في الساعة
DOORBELL 30 طلب بحث في الدقيقة أو 100 طلب بحث في الساعة

الأخطاء

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

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

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