nl:: PairingCode
סיכום
ערכים של ספירה |
|
---|---|
@353
|
טיפוסים בני מנייה (enum) |
@354
|
טיפוסים בני מנייה (enum) |
@355
|
טיפוסים בני מנייה (enum) |
@356{
|
טיפוסים בני מנייה (enum) |
פונקציות |
|
---|---|
GeneratePairingCode(uint8_t pairingCodeLen, char *outBuf)
|
יצירת קוד התאמה אקראי.
|
IntToPairingCode(uint64_t val, uint8_t pairingCodeLen, char *outBuf)
|
קידוד ערך של מספר שלם כקוד התאמה של Weave.
|
IntToPairingCodeChar(int val)
|
char
ממירים ערך של מספר שלם בטווח 0..31 לתו של קוד ההתאמה המתאים ב-Weave.
|
IsValidPairingCodeChar(char ch)
|
bool
מחזירה true אם התו שסופק הוא תו חוקי של קוד התאמה ל-Weave.
|
KryptoniteDeviceIdToPairingCode(uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize)
|
יצירת מחרוזת קוד התאמה של Kryptonite עם מזהה מכשיר Kryptonite.
|
KryptonitePairingCodeToDeviceId(const char *pairingCode, uint64_t & deviceId)
|
הפונקציה מחזירה את מזהה המכשיר שמקודד בקוד ההתאמה של Kryptonite.
|
NevisDeviceIdToPairingCode(uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize)
|
יוצרת מחרוזת קוד התאמה של Nevis עם מזהה מכשיר של Nevis.
|
NevisPairingCodeToDeviceId(const char *pairingCode, uint64_t & deviceId)
|
הפונקציה מחזירה את מזהה המכשיר שמקודד בקוד ההתאמה של Nevis.
|
NormalizePairingCode(char *pairingCode, size_t & pairingCodeLen)
|
void
נרמול התווים במחרוזת קוד התאמה.
|
PairingCodeCharToInt(char ch)
|
int
ממירים תו קוד התאמה של Weave לערך של מספר שלם בטווח 0..31.
|
PairingCodeToInt(const char *pairingCode, size_t pairingCodeLen, uint64_t & val)
|
פענוח קוד התאמה של Weave כערך מספר שלם.
|
VerifyPairingCode(const char *pairingCode, size_t pairingCodeLen)
|
אימות קוד התאמה של Weave מול תו הביקורת שלו.
|
ערכים של ספירה
@353
@353
@354
@354
@355
@355
@356
@356
מאפיינים | |
---|---|
kBitsPerCharacter
|
מספר הביטים שמקודדים בתו של קוד התאמה אחד. |
kKryptonitePairingCodeLength
|
אורך קוד ההתאמה עבור Kryptonite. |
kPairingCodeLenMin
|
אורך מינימלי של קוד התאמה. |
kStandardPairingCodeLength
|
אורך הקוד להתאמה ברוב מוצרי Nest. |
פונקציות
GeneratePairingCode
WEAVE_ERROR GeneratePairingCode( uint8_t pairingCodeLen, char *outBuf )
יצירת קוד התאמה אקראי.
הפונקציה יוצרת מחרוזת קוד התאמה אקראית של Weave באורך מוגדר. מקודד כספרה big-endian, ספרה בסיס-32 וגם תו ביקורת Verhoeff בסוף. למחרוזת שנוצרה יש אורך קבוע שצוין על ידי הפרמטר matchingCodeLen. החלק השמאלי מכניס למחרוזת אפסים לפי הצורך, כדי שהאורך יתאים לאורך הזה.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
מוחזר ערכים |
|
IntToPairingCode
WEAVE_ERROR IntToPairingCode( uint64_t val, uint8_t pairingCodeLen, char *outBuf )
קידוד ערך של מספר שלם כקוד התאמה של Weave.
הפונקציה יוצרת מחרוזת קוד הצמדה של Weave שמורכבת מערך מספר שלם שאינו חתום, המקודדת כספרה Big-endian מסוג בסיס-32 ותו ביקורת Verhoeff. למחרוזת שנוצרה יש אורך קבוע שצוין על ידי הפרמטר matchingCodeLen. החלק השמאלי מכניס למחרוזת אפסים לפי הצורך, כדי שהאורך יתאים לאורך הזה.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
IntToPairingCodeChar
char IntToPairingCodeChar( int val )
ממירים ערך של מספר שלם בטווח 0..31 לתו של קוד ההתאמה המתאים ב-Weave.
שימו לב שהפונקציה תמיד יוצרת תווים באותיות רישיות.
פרטים | |||
---|---|---|---|
פרמטרים |
|
||
החזרות |
תו של קוד ההתאמה שתואם לערך המספר השלם שצוין, או 0 אם הערך של המספר השלם נמצא מחוץ לטווח.
|
IsValidPairingCodeChar
bool IsValidPairingCodeChar( char ch )
מחזירה true אם התו שסופק הוא תו חוקי של קוד התאמה ל-Weave.
חשוב לשים לב שהפונקציה הזו לא תלוית אותיות רישיות (case-sensitive).
פרטים | |||
---|---|---|---|
פרמטרים |
|
||
החזרות |
הערך הוא True אם התו שסופק הוא תו חוקי של קוד התאמה ל-Weave.
|
KryptoniteDeviceIdToPairingCode
WEAVE_ERROR KryptoniteDeviceIdToPairingCode( uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize )
יצירת מחרוזת קוד התאמה של Kryptonite עם מזהה מכשיר Kryptonite.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
KryptonitePairingCodeToDeviceId
WEAVE_ERROR KryptonitePairingCodeToDeviceId( const char *pairingCode, uint64_t & deviceId )
הפונקציה מחזירה את מזהה המכשיר שמקודד בקוד ההתאמה של Kryptonite.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
מוחזר ערכים |
|
NevisDeviceIdToPairingCode
WEAVE_ERROR NevisDeviceIdToPairingCode( uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize )
יוצרת מחרוזת קוד התאמה של Nevis עם מזהה מכשיר של Nevis.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
NevisPairingCodeToDeviceId
WEAVE_ERROR NevisPairingCodeToDeviceId( const char *pairingCode, uint64_t & deviceId )
הפונקציה מחזירה את מזהה המכשיר שמקודד בקוד ההתאמה של Nevis.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
מוחזר ערכים |
|
NormalizePairingCode
void NormalizePairingCode( char *pairingCode, size_t & pairingCodeLen )
נרמול התווים במחרוזת קוד התאמה.
הפונקציה הזו ממירה את כל התווים באותיות רישיות, ממפה את התווים הלא חוקיים 'I', 'O', 'Q' ו-Z עד '1', '0', '0' ו-'2', בהתאמה, ומסיר את כל תווי הקוד האחרים שלא מותאמים מהמחרוזת הנתונה.
אין צורך במחרוזת הקלט כדי לסיים את הערך NULL, אבל אם המחרוזת הזו היא התוצאה תהיה גם NULL.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
PairingCodeCharToInt
int PairingCodeCharToInt( char ch )
ממירים תו קוד התאמה של Weave לערך של מספר שלם בטווח 0..31.
חשוב לשים לב שהפונקציה הזו לא תלוית אותיות רישיות (case-sensitive).
פרטים | |||
---|---|---|---|
פרמטרים |
|
||
החזרות |
ערך של מספר שלם שתואם לתו קוד ההתאמה שצוין, או 1- אם ch אינו תו חוקי.
|
PairingCodeToInt
WEAVE_ERROR PairingCodeToInt( const char *pairingCode, size_t pairingCodeLen, uint64_t & val )
פענוח קוד התאמה של Weave כערך מספר שלם.
הפונקציה מנתחת את התווים הראשוניים של מחרוזת קוד ההתאמה של Weave כספרה big-endian, מסוג base-32 ומחזירה את הערך שמתקבל כמספר שלם לא חתום. מחרוזת הקלט יכולה להיות בכל אורך >= 2, כל עוד המספר השלם המפוענח מתאים ל-uint64_t.
לא נעשה ניסיון לאמת את תו הביקורת Verhoeff (מידע נוסף זמין בכתובת VerifyPairingCode() ).
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
VerifyPairingCode
WEAVE_ERROR VerifyPairingCode( const char *pairingCode, size_t pairingCodeLen )
אימות קוד התאמה של Weave מול תו הביקורת שלו.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
מוחזר ערכים |
|