מגבלות משתמשים ותעריפים

Device Access הפרויקטים מוגבלים בהתאם למשתמשים, למבנה ולמגבלות הקצב של יצירת הבקשות, בהתאם לסביבה ולסוג של המבצע המסחרי.

אנחנו רוצים שהמפתחים ייצרו חוויות משתמש מעניינות, אבל אנחנו גם רוצים שהשירות והמכשירים של Nest תמיד יהיו זמינים למשתמש. שילובים שמבצעים מספר גדול של בקשות בפרק זמן נתון יכולים להשפיע על זמינות השירותים והמכשירים, ולכן ה-SDM API מחיל מגבלות על יצירת בקשות. הגבלת הקצב מגבילה את מספר הקריאות ל-API בפרק זמן נתון, ומונעת ניצול יתר של המשאבים.

מגבלות לפי סביבה

כל הפרויקטים מתחילים בסביבה   Sandbox  . Sandbox מיועד להערכה של SDM API ולשימוש אישי, והמגבלות מוגבלות בהתאם. לסביבות עם בסיסי משתמשים גדולים יותר, למשל   פיתוח מסחרי  , יש מגבלות שונות.

מגבלות למשתמשי Sandbox

חשבון הפיתוח ב-Sandbox מוגבל ל-25 משתמשים ב-5 מבנים בכל הפרויקטים. אפשר ליצור עד 3 פרויקטים לכל חשבון.

כל מבנה מוגבל ל-5 משתמשים, לכן המערכת תמצה את מגבלת המשתמשים רק כשבכל 5 המבנים יהיו 5 משתמשים לכל היותר. חשבון הפיתוח (שהבעלים של הפרויקט) לא נכלל במגבלה של 5 משתמשים למבנה.

לעומת זאת, אם לפרויקט יש 15 משתמשים ביותר מ-5 מבנים, תוכלו להוסיף משתמשים רק ל-5 המבנים הקיימים, כי כבר הגעתם למגבלת המבנה.

הגבלות קצב של יצירת בקשות ב-Sandbox

קצב ה-Sandbox מוגבל ב-3 רמות שונות. המגבלות מוגדרות לשאילתות לדקה (QPM), אלא אם צוין אחרת.

רמת ממשק API:

הקריאות ל-API מוגבלות לכל פרויקט, לכל משתמש. במאמר מידע על API תוכלו לקרוא מידע נוסף על שיטות ספציפיות.

שיטת ה-API מגבלת קצב ליצירת בקשות
devices.executeCommand 10 QPM
devices.get 10 QPM
devices.list 5 QPM
structures.get 5 QPM
structures.list 5 QPM
structures.rooms.get 5 QPM
structures.rooms.list 5 QPM

רמת הפקודה

כל פקודת trait (devices.executeCommand) מוגבלת ל-5 QPM לפרויקט, לכל משתמש ולכל מכשיר.

כלומר, אם בפרויקט יש 2 משתמשים עם 2 מכשירים כל אחד (4 מכשירים בסה"כ), אפשר לקרוא לאותה פקודה 5 פעמים בדקה בכל אחד מ-4 המכשירים.

עם זאת, אם בפרויקט יש 2 משתמשים שלכל אחד מהם 3 מכשירים ל-6 מכשירים בסך הכול, ייתכן שאותה פקודה לא תופעל 5 פעמים בדקה בכל אחד מששת המכשירים האלה. כתוצאה מכך, לכל משתמש יתקבלו 15 QPM, כשמגבלת הקצב ליצירת בקשות ברמת ה-API devices.executeCommand למשתמש בפרויקט היא 10 QPM.

רמת המופע של המכשיר

בנוסף, כדי להגן על סוללת המכשיר, חלות המגבלות ברמת המופע של המכשיר בכל הפרויקטים והפקודות (devices.executeCommand). המגבלות האלה חלות גם ברמת ה-QPM וגם ברמת השאילתות לשעה (QPH), ולא חלות על שיטות ה-API get ו-list.

לדוגמה, נניח שלפרויקט א' ולפרויקט ב' יש גישה לאותו מכשיר, מכשיר א' (ייתכן שהמשתמש אישר שני שילובים מסחריים שונים שמשתמשים באותו מכשיר). אם פרויקט א' שלח 4 פקודות למכשיר א' תוך דקה, הוא יכול לשלוח פקודה אחת למכשיר א' רק באותה דקה לפני שהגעתם למגבלת הקצב של יצירת הבקשות ברמת המופע של המכשיר. בשלב הזה, פקודות משני הפרויקטים למכשיר A מווסתות עד סוף הדקה שהתחילה בפקודה הראשונה למכשיר A.

אם סוג מכשיר מסוים לא מופיע ברשימה שבהמשך, אין לו מגבלות על קצב יצירת הבקשות ברמת המופע של המכשיר.

סוג מכשיר מגבלת קצב של מופעי מכשיר
תרמוסטט 5 QPM או 100 QPH
מצלמה 30 QPM או 100 QPH
פעמון דלת 30 QPM או 100 QPH

שגיאות

ניתן להחזיר את קודי השגיאה הבאים ביחס למדריך זה:

הודעת שגיאה הכנסה לקליק פתרון בעיות
דירוג מוגבל. RESOURCE_EXHAUSTED לכל מפתח יש מכסה שמגבילה את מספר השיחות שהוא יכול לבצע. אם יהיו לכם שיחות שחורגות מהמכסה שלכם, תקבלו את ההודעה על הגבלת הקצב של יצירת הבקשות. כדי לפתור את הבעיה, צריך לשלוח מחדש את השיחה כשפג התוקף של המכסה.

בחומר העזר בנושא קוד שגיאה של API מופיעה הרשימה המלאה של קודי השגיאות של ה-API.