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 כמספר גדול של endian, לפי בסיס 32 ומחזירה את הערך שמתקבל כמספר שלם ללא סימן. מחרוזת הקלט יכולה להיות בכל אורך >= 2, כל עוד המספר השלם המפוענח מתאים למחרוזת uint64_t.
לא נעשה ניסיון לאמת את תו הביקורת Verhoeff (ניתן לעיין ב-VerifyPairingCode() ).
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
ערכים מוחזרים |
|
VerifyPairingCode
WEAVE_ERROR VerifyPairingCode( const char *pairingCode, size_t pairingCodeLen )
אימות קוד התאמה ל-Weave מול תו הבדיקה שלו.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
ערכים מוחזרים |
|