nl:: PairingCode
Tóm tắt
Bảng liệt kê |
|
---|---|
@353
|
enum |
@354
|
enum |
@355
|
enum |
@356{
|
enum |
Hàm |
|
---|---|
GeneratePairingCode(uint8_t pairingCodeLen, char *outBuf)
|
Tạo một mã ghép nối ngẫu nhiên.
|
IntToPairingCode(uint64_t val, uint8_t pairingCodeLen, char *outBuf)
|
Mã hoá một giá trị số nguyên dưới dạng mã ghép nối của Weave.
|
IntToPairingCodeChar(int val)
|
char
Chuyển đổi một giá trị số nguyên trong khoảng 0..31 thành ký tự mã ghép nối Weave tương ứng.
|
IsValidPairingCodeChar(char ch)
|
bool
Trả về true nếu ký tự đã cung cấp là ký tự mã ghép nối Weave hợp lệ.
|
KryptoniteDeviceIdToPairingCode(uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize)
|
Tạo chuỗi mã ghép nối Kryptonite dựa trên mã thiết bị Kryptonite.
|
KryptonitePairingCodeToDeviceId(const char *pairingCode, uint64_t & deviceId)
|
Trả về mã thiết bị được mã hoá bằng mã ghép nối Kryptonite.
|
NevisDeviceIdToPairingCode(uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize)
|
Tạo chuỗi mã ghép nối Nevis dựa vào mã thiết bị Nevis.
|
NevisPairingCodeToDeviceId(const char *pairingCode, uint64_t & deviceId)
|
Trả về mã thiết bị được mã hoá bằng mã ghép nối Nevis.
|
NormalizePairingCode(char *pairingCode, size_t & pairingCodeLen)
|
void
Chuẩn hoá các ký tự trong chuỗi mã ghép nối.
|
PairingCodeCharToInt(char ch)
|
int
Chuyển đổi ký tự mã ghép nối Weave thành một giá trị số nguyên trong khoảng 0..31.
|
PairingCodeToInt(const char *pairingCode, size_t pairingCodeLen, uint64_t & val)
|
Giải mã mã ghép nối Weave dưới dạng giá trị số nguyên.
|
VerifyPairingCode(const char *pairingCode, size_t pairingCodeLen)
|
Xác minh mã ghép nối Weave dựa trên ký tự kiểm tra của mã đó.
|
Bảng liệt kê
@353
@353
@354
@354
@355
@355
@356
@356
Thuộc tính | |
---|---|
kBitsPerCharacter
|
Số bit được mã hoá bằng một ký tự mã ghép nối duy nhất. |
kKryptonitePairingCodeLength
|
Độ dài mã ghép nối cho Kryptonite. |
kPairingCodeLenMin
|
Độ dài tối thiểu của mã ghép nối. |
kStandardPairingCodeLength
|
Độ dài mã ghép nối cho hầu hết các sản phẩm Nest. |
Hàm
GeneratePairingCode
WEAVE_ERROR GeneratePairingCode( uint8_t pairingCodeLen, char *outBuf )
Tạo một mã ghép nối ngẫu nhiên.
Hàm này tạo một chuỗi mã ghép nối Weave ngẫu nhiên có độ dài được chỉ định, được mã hoá dưới dạng chữ số cuối lớn, cơ số 32 và ký tự kiểm tra Verhoeff ở cuối. Chuỗi đã tạo có độ dài cố định được chỉ định bởi tham sốPairCodeLen. Để đáp ứng độ dài này, chuỗi sẽ được thêm số 0 vào bên trái.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
IntToPairingCode
WEAVE_ERROR IntToPairingCode( uint64_t val, uint8_t pairingCodeLen, char *outBuf )
Mã hoá một giá trị số nguyên dưới dạng mã ghép nối của Weave.
Hàm này tạo một chuỗi mã ghép nối Weave bao gồm một giá trị số nguyên chưa ký đã cung cấp, được mã hoá dưới dạng chữ số cuối lớn, cơ số 32 và ký tự kiểm tra Verhoeff theo sau. Chuỗi đã tạo có độ dài cố định được chỉ định bởi tham sốPairCodeLen. Để đáp ứng độ dài này, chuỗi sẽ được thêm số 0 vào bên trái.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
IntToPairingCodeChar
char IntToPairingCodeChar( int val )
Chuyển đổi một giá trị số nguyên trong khoảng 0..31 thành ký tự mã ghép nối Weave tương ứng.
Lưu ý rằng hàm này luôn tạo ra các ký tự viết hoa.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Ký tự mã ghép nối tương ứng với giá trị số nguyên được chỉ định hoặc 0 nếu giá trị số nguyên nằm ngoài phạm vi.
|
IsValidPairingCodeChar
bool IsValidPairingCodeChar( char ch )
Trả về true nếu ký tự đã cung cấp là ký tự mã ghép nối Weave hợp lệ.
Xin lưu ý rằng hàm này không phân biệt chữ hoa chữ thường.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Đúng nếu ký tự được cung cấp là ký tự mã ghép nối Weave hợp lệ.
|
KryptoniteDeviceIdToPairingCode
WEAVE_ERROR KryptoniteDeviceIdToPairingCode( uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize )
Tạo chuỗi mã ghép nối Kryptonite dựa trên mã thiết bị Kryptonite.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
KryptonitePairingCodeToDeviceId
WEAVE_ERROR KryptonitePairingCodeToDeviceId( const char *pairingCode, uint64_t & deviceId )
Trả về mã thiết bị được mã hoá bằng mã ghép nối Kryptonite.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
NevisDeviceIdToPairingCode
WEAVE_ERROR NevisDeviceIdToPairingCode( uint64_t deviceId, char *pairingCodeBuf, size_t pairingCodeBufSize )
Tạo chuỗi mã ghép nối Nevis dựa vào mã thiết bị Nevis.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
NevisPairingCodeToDeviceId
WEAVE_ERROR NevisPairingCodeToDeviceId( const char *pairingCode, uint64_t & deviceId )
Trả về mã thiết bị được mã hoá bằng mã ghép nối Nevis.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
NormalizePairingCode
void NormalizePairingCode( char *pairingCode, size_t & pairingCodeLen )
Chuẩn hoá các ký tự trong chuỗi mã ghép nối.
Hàm này chuyển đổi tất cả ký tự chữ cái thành chữ hoa, ánh xạ các ký tự không hợp lệ 'I', 'O', 'Q' và 'Z' thành '1', '0', '0' và '2', tương ứng và xóa tất cả các ký tự mã không ghép nối khác khỏi chuỗi đã cho.
Chuỗi đầu vào không bắt buộc phải là giá trị NULL. Tuy nhiên, nếu đó là giá trị đầu ra, thì giá trị đầu ra cũng sẽ bị chấm dứt là NULL.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
PairingCodeCharToInt
int PairingCodeCharToInt( char ch )
Chuyển đổi ký tự mã ghép nối Weave thành một giá trị số nguyên trong khoảng 0..31.
Xin lưu ý rằng hàm này không phân biệt chữ hoa chữ thường.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Một giá trị số nguyên tương ứng với ký tự mã ghép nối được chỉ định hoặc -1 nếu ch không phải là ký tự hợp lệ.
|
PairingCodeToInt
WEAVE_ERROR PairingCodeToInt( const char *pairingCode, size_t pairingCodeLen, uint64_t & val )
Giải mã mã ghép nối Weave dưới dạng giá trị số nguyên.
Hàm phân tích cú pháp các ký tự đầu tiên của chuỗi mã ghép nối Weave dưới dạng một số cuối lớn, cơ số 32 và trả về giá trị kết quả là một số nguyên không dấu. Chuỗi đầu vào có thể có độ dài bất kỳ >= 2 miễn là số nguyên đã giải mã nằm trong uint64_t.
Không có lần thử nào để xác minh ký tự kiểm tra Verhoeff (xem VerifyPairingCode()).
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
VerifyPairingCode
WEAVE_ERROR VerifyPairingCode( const char *pairingCode, size_t pairingCodeLen )
Xác minh mã ghép nối Weave dựa trên ký tự kiểm tra của mã đó.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|