
ViCare 認證機制大改版OAuth2 Client ID 三步搞定告別 401 報錯【免費下載鏈接】core:house_with_garden: Open source home automation that puts local control and privacy first.項目地址: https://gitcode.com/GitHub_Trending/co/coreHome Assistant 的 Viessmann ViCare 集成把認證機制從配置里存明文密碼改為 OAuth2 令牌流程。存量配置會自動遷移升級后設備照常在線認證失敗不再反復出現。新舊方案對比從明文密碼到 OAuth2 令牌舊方案用戶名、密碼、Client ID 直接寫在集成配置里每次靠它們調威仕曼云。新方案集成走 OAuth2 PKCEHA 只保存訪問令牌密碼不再落盤。左側是舊數據流憑證跟著每個請求走右側是新數據流令牌先找認證服務器要再帶著令牌訪問業務 API。核心原理令牌怎么拿、舊配置怎么遷遷移邏輯在homeassistant/components/vicare/__init__.py的async_migrate_entry中# 舊配置 1.2 - 2.1 的關鍵步驟 await async_import_client_credential(hass, DOMAIN, ClientCredential(client_id, , username)) token await hass.async_add_executor_job( obtain_token_via_basic_auth_pkce, client_id, username, password) data.pop(CONF_USERNAME) data.pop(CONF_PASSWORD) # 明文憑證從配置中移除白話說系統把你原來填的 Client ID 導入到 HA 的應用憑證框架application_credentials再用一次性的用戶名密碼 PKCE換回令牌存進配置隨后把密碼從配置里刪掉。令牌文件名定義在homeassistant/components/vicare/const.py的VICARE_TOKEN_FILENAME遷移完成即刪除舊文件。動手配置三步完成 Client ID 申請與集成接入申請 Client ID登錄威仕曼開發者門戶application_credentials提示頁會給出入口創建新應用勾選 IoT 與 Offline Access 權限。填寫重定向 URI填/auth/external/callback必須與 HA 實際回調路徑完全一致復制生成的 Client ID 與 Client Secret。在 HA 接入設置 → 設備與服務 → 添加集成 → Viessmann ViCare按提示粘貼 Client ID / Client Secret跳轉威仕曼登錄頁授權瀏覽器回到 HA 后集成自動加載?? 重定向 URI 寫錯一個字符令牌就換不回來表現為重定向 URI 不匹配需要回門戶改完再來。踩坑速查三個高頻問題現象日志出現OAuth2 token is invalid, please re-authenticate。原因令牌過期且刷新失敗或 Client Secret 被輪換。解法面板會彈出重新認證通知點一下走一遍授權即可設備列表不需要重建。現象vicare_token.save文件找不到。原因新版不再使用這個文件遷移時 HA 會主動刪掉它。解法無需處理如果手動升級后集成掉線重新觸發一次重新認證就能恢復。現象日志出現Vicare API rate limit exceeded設備狀態刷新變慢。原因輪詢頻率超過威仕曼云端限流閾值。解法降低自動化里的輪詢間隔。HA 也會按設備數量自動拉長緩存時長默認 60 秒 × 設備數多設備家庭屬正常行為。收尾用 OAuth 令牌取代明文密碼是云集成認證的正確方向。存量用戶無需手動操作升級后按配置問題面板的通知把重定向 URI 更新一下即可其余交給自動遷移。【免費下載鏈接】core:house_with_garden: Open source home automation that puts local control and privacy first.項目地址: https://gitcode.com/GitHub_Trending/co/core創作聲明:本文部分內容由AI輔助生成(AIGC),僅供參考