通过Node-RED实现极氪车辆状态与Home Assistant的打通,本文提供了一个通用方案,解决了新老款车型数据获取难题,让车辆信息一目了然,为车主提供了深度定制的基础。
智能速览
通过Node-RED流程实现极氪车辆与Home Assistant的对接。
方案兼容新老款极氪车型,已测试001和7X。
支持抓包获取token和手机短信验证码两种登录方式。
优化了此前方案,修复了新款车型无法获取状态的bug。
提供了可直接导入的flows.json文件,简化操作。
精华内容
对于喜欢折腾智能家居和爱车的车主,将二者结合无疑是最佳体验。下面将具体介绍实现步骤和注意事项。
核心工具
整个方案的核心是基于Node-RED构建一个数据流。作者提供了一个可直接导入使用的flows.json文件,用户无需从零开始编写代码,只需将其导入到自己的Node-RED环境中即可。这个流程封装了与极氪服务器交互的复杂逻辑,极大地降低了技术门槛。
登录方式
为了获取车辆数据,首先需要完成身份验证。流程提供了两种登录方法:一种是技术性较强的抓包方式,通过获取登录接口的jwtToken来验证;另一种是更便捷的手机短信验证码登录。需要注意的是,使用短信验证码登录会导致该账号在其他设备上掉线,建议使用分享车辆功能的副号进行操作,避免影响主账号正常使用。
获取状态
成功登录后,获取车辆状态的操作非常简单。在Node-RED界面中点击指定的注入按钮,流程便会自动请求服务器数据。如果一切正常,可以在调试窗口中观察到名为“vehicle status”的节点输出的详细车辆状态信息。该方案还支持一个账号下的多辆车辆,会分别输出每辆车的独立数据。
后续展望
当前方案以Node-RED流的形式提供,虽然功能强大,但对普通用户仍有安装门槛。作者在文末发出呼吁,期待有能力的开发者能将其封装成更易用的Home Assistant官方插件。同时,也鼓励社区用户将获取到的车辆状态完善为HA实体,并分享出来,共同丰富极氪车辆的智能化生态。
此方案为极氪车主打通了车辆数据与智能家居的壁垒,提供了极大的可玩性。未来若能发展成成熟的插件,将惠及更多用户,期待社区的共同完善。