שינוי יכולות בזמן ריצה
מכיוון שאפשר להפעיל תכונות חדשות (למשל שינוי גודל של מאגר נתונים זמני) על ידי שדרוג הקושחה של הספק, אנחנו רוצים לספק דרך לקבל את היכולות של הספק בזמן ריצה. כדי למנוע שליחת שאילתות חוזרות ונשנות, הספק צריך קודם לשלוח את גרסת הקושחה למבקש באמצעות זרם הודעות כשהוא מחובר. אנחנו מוסיפים קוד הודעה חדש לקבוצת ההודעות הקיימת – אירוע פרטי המכשיר.
השם של קבוצת ההודעות | תמורה לכסף |
---|---|
אירוע מידע מהמכשירים שלך | 0x03 |
שם קוד ההודעה | תמורה לכסף |
---|---|
שכתוב קושחה | 0x09 |
לאחר קבלת קוד הגרסה של הקושחה, המחפש יבדוק אותו מול הקוד שנשמר במטמון. אם גרסת הקושחה שונתה, המחפש יעדכן את גרסת הקושחה של המטמון וישלח שאילתה לגבי היכולות באמצעות Message Stream.
אנחנו גם מאפשרים לספק לדחוף יכולות ישירות למחפש ללא בקשה קודם, כי אנחנו מניחים שבעתיד, מכשירים מתוחכמים יותר (אולי מבוססי Android) יבצעו הגדרות דינמיות על סמך דגלים לאותה גרסת קושחה.
לכן נוסיף למטה קבוצת הודעות חדשה וקודים חדשים של הודעות.
השם של קבוצת ההודעות | תמורה לכסף |
---|---|
אירוע של סנכרון יכולת המכשיר | 0x06 |
שם קוד ההודעה | תמורה לכסף |
---|---|
בקשת עדכון של היכולת (נשלחה מהמחפש) | 0x01 |
מעקב FMDN | 0x03 |
לאחר קבלת 0x0601
,
- אם הספק הפעיל תמיכה במעקב FMDN, הוא אמור להגיב כך:
8 תווים | סוג הנתונים | תיאור | תמורה לכסף |
---|---|---|---|
0 | uint8 | אירוע של סנכרון יכולת המכשיר | 0x06 |
1 | uint8 | מעקב FMDN | 0x03 |
3 - 2 | uint16 | אורך הנתונים הנוסף | 0x0007 |
4 | uint8 | מצב הקצאת FMDN | 0x00 אם לא הוקצה 0x01, אם הוקצה 0x01 על ידי חשבון כלשהו |
5 - 10 | uint8[] | כתובת ה-BLE MAC הנוכחית של המכשיר | משתנה |