0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何学习智能家居?8:Text文本实体使用方法

AIoT行业洞察 来源:AIoT行业洞察 作者:AIoT行业洞察 2024-07-15 14:06 次阅读

hello,伙伴们最近一直在弄AiPi-Eyes-R3的资料,渲染、3D 外壳设计......一直没时间开发新的 HomeAssistant MQTT 实体,最新的实体估计也是在本月初开发完的,一直没来得及给大家写使用教程

不过在写教程之前,有必要给大家看看上周的成果:

wKgaomaUvEuAFegJAABWBpWi5v480.jpeg

Text 实体介绍

Text 实体,也就是文本实体,它支持在 HomeAssistant 输入文字之后,通过 MQTT 下发内容到设备当中。可以理解成一个文本输入框,我们可以输入任意文字,然后发给设备。

也可以利用自动化,更新文本,例如:天气信息更新到设备。之所以叫它文本输入框,是因为在 HomeAssitant 它呈现的方式是这样的:

wKgZomaUvE2AXmp3AABV8Rq1a1I47.jpeg

Text 实体创建

1.开启资源

和其他实体一样,在 HomeAssistant-C 当中,默认不开启 Text 资源,需要自行启用,在 homeAssistantDevConfig.h 中把 #define CONFIG_ENTITY_ENABLE_TEXT1,就能启用 Text 资源:

wKgaomaUvE6AQJ7WAAB9hyojyAc35.jpeg

2.实体创建

创建 Text 实体也是在连接上 MQTT 服务器之后创建,只需要对 name 和 unique_id 就行,然后添加以下实体:

static ha_text_entity_t text_1 = {
.name = "文字",
.unique_id = "text1",
};
homeAssistant_device_add_entity(CONFIG_HA_ENTITY_TEXT, &text_1);
wKgZomaUvE6AQ3ilAABaYW3oU-Y67.jpeg

烧录并启动之后,就能看到 HomeAssistant 有文本实体。

Text 实体使用

1.接收 Text 内容

同样的 Text 内容下发也会触发事件,Text 的内容下发事件为 HA_EVENT_MQTT_COMMAND_TEXT_VALUE,所以需要在 HA 事件回调函数(ha_event_cb)当中添加 HA_EVENT_MQTT_COMMAND_TEXT_VALUE 的事件处理,并打印内容:

case HA_EVENT_MQTT_COMMAND_TEXT_VALUE:
LOG_I("< << << << << < HA_EVENT_MQTT_COMMAND_TEXT_VALUE,value=%s", ha_dev- >entity_text->command_text->text_value);
break;
wKgaomaUvE-ASXG6AAA3j2jqcek33.jpeg

有细心的同学可能发现了,信息获取的来源都是通过一个以 command_xx 命名的结构体来获取的!所以以后获取信息内容,就是用对应结构体的 command_xx 成员来读取就行。

验证示例:

wKgZomaUvE-AMJd7AABj2upm7hg76.jpeg

2.Text 内容更新

和其他实体更新的方法一样,也是用 homeAssistant_device_send_entity_state 函数进行发布,只不过需要重新给 Text 实体的 text_value 参数进行赋值

使用示例:

读取到 HomeAssistant 下发的内容之后,返回 12345678 给 HomeAssistant。

case HA_EVENT_MQTT_COMMAND_TEXT_VALUE:
LOG_I("< << << << << < HA_EVENT_MQTT_COMMAND_TEXT_VALUE,value=%s", ha_dev- >entity_text->command_text->text_value);
//查找实体
ha_text_entity_t* text = homeAssistant_fine_entity(CONFIG_HA_ENTITY_TEXT, "text1");
//清空原有的内容
memset(text->text_value, 0, strlen(text->text_value));
//赋值内容为 12345678
sprintf(text->text_value, "%d", 12345678);
//更新内容
homeAssistant_device_send_entity_state(CONFIG_HA_ENTITY_TEXT, text, 0);
break;

验证结果

输入之后下发,然后刷新一下网页就能发现,文字备改变了。

wKgaomaUvFCAaDqiAABfjwRMw0w564.gif

总结

Text 实体的使用和其他实体差不多,没有什么特殊的参数需要配置,所以简单说说就行,这周给大家开发 number 实体!

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 智能家居
    +关注

    关注

    1922

    文章

    9351

    浏览量

    181360
  • MQTT
    +关注

    关注

    5

    文章

    620

    浏览量

    22230
收藏 人收藏

    评论

    相关推荐

    洞悉智能家居发展新趋势

    的投资CA3161E购买嵌墙屏幕,无需购买平板电脑,用家里已有的电视可以省去大笔终端投资,老人小孩也无需学习平板的使用方法即可通过电视使用智能家居系统。  总之,物联网智能家居系统能够
    发表于 09-24 17:06

    智能家居

    们设计了 卧室灯和客厅灯 每盏灯均可单独控制 我们单独编写的安卓APP控制~使智能家居灯更加灵活的运用在我们的生活中时间安排:进我们最大的业余时间学习芯片 然后完成我们的作品~希望我们的项目能允许采纳~
    发表于 11-05 18:59

    究竟什么才是智能家居的“入口”?

    8,6,7,9,8,5,0,7,2咨询电话程先生0,2,1,-5,5,2,3,3,3,5,2智能家居群39,0,0,1,3,7,9,8路由器——“双重入口”路由器位于智能终端的上一层
    发表于 10-06 11:03

    【MiCOKit申请】智能家居的远程控制系统

    和Blu4,现从事ARM Linux嵌入式的工作。现对智能家居具有深厚的兴趣,前期申请了基于OK210的智能家居系统的体验,该体验的第一阶段已经接近尾声,功能基本实现,但由于基本上都是“仿真”,没有实在
    发表于 08-22 17:28

    小米不玩期货 靠线下玩智能家居

    的好好的,现在开了实体店提供销售,发展线下销售渠道,画风转变挺快的!其实,这里边有猫腻!小米最主要的目的还是在准备为智能家居做好线下平台,通过线下渠道扩张智能家居市场。智想要通过线下渠道发展
    发表于 09-17 11:12

    【蓝牙4.1申请】智能家居项目开发

    申请理由:还是在校学生,专业是电气自动化,想研究智能家居方向,基于蓝牙与无线通讯开发一套智能家居平台,熟悉嵌入式编程,并且想趁还是在校学生多学习点发发经验,并向从事智能家居方向研究,自
    发表于 10-09 14:16

    【DragonBoard 410c申请】基于DragonBoard的智能家居原型机设计

    申请理由:项目描述:DragonBoard功能强大,板载丰富的通信装置和多种传感装置,是智能家居的理想之选。我将依托DragonBoard的官方文档和社区资料学习了解DragonBoard
    发表于 09-01 11:17

    智能家居系统、智能家居解决方案及智能家居定制开发

    右侧客服。智能家居系统一般具有:环境安防、智能门锁、立体音乐、环境监测(红外亮度、然气感应)、视频监视、可视对讲、厨房室内可视分机、灯光、空调、电动窗帘(百叶窗、气窗)、集中控制和远程APP控制等
    发表于 06-12 10:27

    智能家居合适可以真正进入我们生活?

    近年来,智能家居已经逐渐被消费者熟悉,越来越多的消费者有意愿和需求在生活中引入智能家居,但在智能家居市场被看好的如今,无论是产品还是平台,“智能”似乎总是有点不尽如人意。从2014年谷
    发表于 01-19 11:13

    求教智能家居学习资料求一份

    智能家居学习资料求一份
    发表于 03-06 13:56

    【HarmonyOS HiSpark Wi-Fi IoT HarmonyOS 智能家居套件试用 】 基于HarmonyOS智能家居应用探索和开发

    智能家居产品上一定会有很好的发展和应用项目计划:1.根据文档,学习开发环境搭建、版本编译构建、烧录、源码修改、调试验证等方法。通过学习,对HiSpark Wi-Fi IoT
    发表于 09-25 10:06

    【HarmonyOS HiSpark Wi-Fi IoT HarmonyOS 智能家居套件试用 】智能家居项目

    项目名称:智能家居项目试用计划:申请理由本人在智能家居研发有两年的学习和开发经验,亲自开发过多款用于控制、检测智能家居的产品,包括空调、窗帘、灯光、门锁、新风、地暖等的控制,温湿度、光
    发表于 10-29 14:16

    STM32+ESP8266+小程序的智能家居学习

    1、STM32+ESP8266+小程序的智能家居学习文章目录1、STM32+ESP8266+小程序的智能家居学习1.1 准备知识,了解整个项目的过程1.1.1 Esp82661.1.1
    发表于 08-12 06:50

    智能家居图纸8

    智能家居图纸8智能家居图纸8智能家居图纸8智能家居
    发表于 01-18 14:40 15次下载

    2023年,智能家居实体门店如何选品?

    作者|启明编辑|小沐出品|智哪儿zhinaer.cn2023年,是智能家居实体门店的机会与破局之年,作为智能家居实体门店老板,我们应该具备什么样的增长思维呢?上篇文章智哪儿谈了
    的头像 发表于 02-22 11:00 396次阅读
    2023年,<b class='flag-5'>智能家居</b><b class='flag-5'>实体</b>门店如何选品?