nl:: PairingCode
Tóm tắt
Liệt kê |
|
---|---|
@353
|
enum |
@354
|
enum |
@355
|
enum |
@356{
|
enum |
Hàm |
|
---|---|
GeneratePairingCode(uint8_t pairingCodeLen, char *outBuf)
|
Tạo 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 Weave.
|
IntToPairingCodeChar(int val)
|
char
Chuyển đổi một giá trị số nguyên trong phạm vi 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 một 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 trên 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 một 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 phạm vi 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ã đó.
|
Liệt kê
@353
@353
@354
@354
@355
@355
@356
@356
Thuộc tính | |
---|---|
kBitsPerCharacter
|
Số bit được mã hoá trong một ký tự mã ghép nối. |
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
|
Ghép nối độ dài mã 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ã 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 đã chỉ định. được mã hoá dưới dạng lớn-endian, chữ số base-32, cùng với ký tự kiểm tra Verhoeff theo sau. Chuỗi được tạo có độ dài cố định được chỉ định bởi tham số multipleCodeLen. Số 0 sẽ được dùng vào khoảng đệm ở bên trái nếu cần để đáp ứng độ dài này.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
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 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 không dấu đã cung cấp, được mã hoá dưới dạng chữ số lớn-endian, base-32, cùng với một ký tự kiểm tra Verhoeff theo sau. Chuỗi được tạo có độ dài cố định được chỉ định bởi tham số multipleCodeLen. Số 0 sẽ được dùng vào khoảng đệm ở bên trái nếu cần để đáp ứng độ dài này.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
||||||
Giá trị trả về |
|
IntToPairingCodeChar
char IntToPairingCodeChar( int val )
Chuyển đổi một giá trị số nguyên trong phạm vi 0..31 thành ký tự mã ghép nối Weave tương ứng.
Xin 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 | |||
---|---|---|---|
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ệ.
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 | |||
---|---|---|---|
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 một chuỗi mã ghép nối Kryptonite dựa trên mã thiết bị Kryptonite.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
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 | |||||
---|---|---|---|---|---|
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 trên mã thiết bị Nevis.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
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 | |||||
---|---|---|---|---|---|
Tham số |
|
||||
Giá trị trả về |
|
NormalizePairingCode
void NormalizePairingCode( char *pairingCode, size_t & pairingCodeLen )
Chuẩn hoá các ký tự trong một 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ệ như "I", "O", "Q" và 'Z' thành '1', '0', '0' và '2' tương ứng và xoá 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 có điểm cuối là NULL. Tuy nhiên, nếu đó là kết quả đầu ra cũng sẽ là kết thúc NULL.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
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 phạm vi 0..31.
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 | |||
---|---|---|---|
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 này phân tích cú pháp các ký tự ban đầu của chuỗi mã ghép nối Weave dưới dạng một lớn-endian, chữ số cơ sở 32 và trả về giá trị kết quả dưới dạng 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 được giải mã nằm vừa trong uint64_t.
Không cố gắng xác minh ký tự kiểm tra Verhoeff (xem VerifyPairingCode()).
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
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 | |||||
---|---|---|---|---|---|
Tham số |
|
||||
Giá trị trả về |
|