找回密码
 立即注册

微信扫码登录

搜索
查看: 2389|回复: 5

[UI界面] 求教,做终端前台都有哪些路子?

[复制链接]

179

主题

2714

回帖

9150

积分

元老级技术达人

积分
9150
金钱
6242
HASS币
80
发表于 2024-1-18 12:49:12 | 显示全部楼层
隔壁的王叔叔 发表于 2024-1-18 10:22
直接网页做,做完了对接ha的api

正解,直接html5+css3+js,做个网页,直接对接ha的api,在ha里改,会麻烦很多,有很多限制
回复

使用道具 举报

179

主题

2714

回帖

9150

积分

元老级技术达人

积分
9150
金钱
6242
HASS币
80
发表于 2024-1-19 17:14:43 | 显示全部楼层
本帖最后由 bugensui 于 2024-1-19 17:22 编辑
drwu 发表于 2024-1-19 16:17
找了两天没找到可以入门的示例。。。
比如怎么接入ha的websocket api方法 然后怎么调用实体状态什么的。 ...

ha官方文档是有api的具体使用方法,一两句话说不清楚,不同种类,操作,方法不一样,大致是,你自己得用html做好前端页面,就是基础ui,然后可以配合js+get请求来获取实体的状态相关属性,举列代码如下,这个代码是获取家里路由器连接设备的数量,我是想在ha里实时看到家里设备的连接数量,展示访客wifi的密码,当然路由器需要接入ha哦,这个只是举例子,其他设备也是一样,需要在ha里配置好长期令牌,然后发送xmlhttp.open请求的时候,需要携带令牌,然后前端页面处理返回的数据,插入ul页面即可,需要点技术基础,效果见下面图片。

我之前是想,ha的前端页面完全自己做,用html也代替,用api跟ha对接,但是需要花很多精力,就放弃了,如果你会html、css、js的话,可以做出很炫酷的ha界面。
<!--
var xmlhttp;
try{
xmlhttp= new ActiveXObject('Msxml2.XMLHTTP');
}catch(e){
try{
xmlhttp= new ActiveXObject('Microsoft.XMLHTTP');
}catch(e){
try{
xmlhttp= new XMLHttpRequest();
}catch(e){}
}}


xmlhttp.open("get","/api/states/sensor.192_168_0_1_devices_connected");
微信图片_20240119171303.jpg



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-7-19 14:09 , Processed in 0.281889 second(s), 8 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表