本文介紹在配置C Link SDK的裝置接入功能時,常見錯誤。
Link SDK通過以下兩種渠道,表達建連失敗時的內部運行狀態。您可以通過內部運行狀態,瞭解失敗原因。
API的傳回值是
int32_t
的非正數整型,即狀態代碼,狀態代碼返回0
表成功,其它值表示運行狀態。使用
retval = aiot_xxx_yyy()
方式擷取傳回值。所有傳回值唯一對應內部運行分支,詳情請參見
aiot_state_api.h
或aiot_xxx_api.h
。所有組件傳回值的範圍互不重疊,共同分別分布在
0x0000 - 0xFFFF
。
從SDK內部,調用您的日誌回呼函數。
以下為常見錯誤碼,完整的錯誤碼列表,請參見aiot_state_api.h。
MQTT接入
錯誤碼 | 說明 |
MQTT伺服器拒絕提供串連, 服務當前不可用。請稍後重試。 | |
串連時的使用者名稱或密碼非法。 | |
MQTT伺服器進行串連身分識別驗證失敗,登入密碼錯誤。請檢查裝置認證資訊是否正確。 |
HTTPS接入
錯誤碼 | 說明 |
解析收到的HTTPS報文時,無法擷取有效關於狀態的程式碼。無法擷取HTTPS | |
解析收到的HTTPS報文時,報文的Body部分已接收完畢,但沒有更多資料。 | |
HTTPS認證應答的StatusCode不是200,認證失敗。請檢查認證簽名是否正確。 | |
未完成接收HTTPS認證應答接,認證失敗。 | |
HTTPS認證應答中,未能解析到Token,認證失敗。 |
網路層
錯誤碼 | 說明 |
TCP網域名稱解析失敗,請檢查網域名稱或IP是否正確。 | |
TCP建立串連失敗。 | |
TLS報文最大長度設定為0,該設定非法,請檢查後重新設定。 | |
TLS服務端認證配置錯誤,請檢查服務端認證是否正確。 | |
TLS裝置端認證配置錯誤,請檢查用戶端認證是否正確。 | |
TLS用戶端密鑰配置錯誤,請檢查用戶端密鑰是否正確。 | |
TLS網域名稱解析失敗,請檢查網域名稱或IP是否配置正確。 | |
TLS Socket建立失敗。 | |
TLS Socket串連失敗。 | |
SSL收到的資料包出錯,請檢查TLS幀資料的長度是否過小。 |