『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 1207|回复: 7

[教程系列] 不用小爱TTS,几行代码让小爱说话!

[复制链接]

1

主题

19

帖子

100

积分

注册会员

Rank: 2

积分
100
金钱
81
HASS币
0
发表于 2024-12-12 04:26:51 | 显示全部楼层 |阅读模式
本帖最后由 abh1953 于 2024-12-12 08:15 编辑
原理:在Node-Red中处理想要播放的文字内容,最终通过sensor节点将值转到HA中,将这段字符设置为小爱音响播放文本的实体的值即可。

                               
登录/注册后可看大图


实现:

1、在nodered中新建sensor节点:目的是在HA中生成一个设备,方便HA自动化监控

                               
登录/注册后可看大图

2、将建好的sensor节点打包成一个子流程,设置1个输入、1个输出,便于后期使用。

                               
登录/注册后可看大图


3、部署后,在HA的NR集成中就可以看到新的设备

                               
登录/注册后可看大图

                               
登录/注册后可看大图


4、复制这个实体ID和小爱音箱的“播放文本”这个实体的ID备用

                               
登录/注册后可看大图

                               
登录/注册后可看大图


5、将以下代码替换掉ID后,粘贴到automations.yaml文件中,重新加载配置文件即可
- alias: ...... Node-RED ..................
  trigger:
  - platform: state
    entity_id: 填入小爱讲话这个实体的ID
  action:
  - service: text.set_value
    target:
      entity_id: 填入小爱音响的播放文本这个实体的ID
    data:
      value: '{{ states(''填入小爱讲话这个实体的ID'') }}'



回复

使用道具 举报

2

主题

90

帖子

428

积分

中级会员

Rank: 3Rank: 3

积分
428
金钱
333
HASS币
20
发表于 2024-12-13 11:46:14 | 显示全部楼层
还要代码吗?直接用实体啊。我2个小爱都是这样用
11111111111.jpg 22222222222.jpg
回复

使用道具 举报

5

主题

128

帖子

1052

积分

金牌会员

Rank: 6Rank: 6

积分
1052
金钱
924
HASS币
0
发表于 2024-12-13 12:03:48 | 显示全部楼层
lovelyelfpop 发表于 2024-12-13 11:46
还要代码吗?直接用实体啊。我2个小爱都是这样用

回去试试
回复

使用道具 举报

23

主题

254

帖子

1615

积分

金牌会员

Rank: 6Rank: 6

积分
1615
金钱
1361
HASS币
0
发表于 2024-12-14 23:48:46 | 显示全部楼层
lovelyelfpop 发表于 2024-12-13 11:46
还要代码吗?直接用实体啊。我2个小爱都是这样用

你是用哪个控件的?  
回复

使用道具 举报

1

主题

37

帖子

213

积分

中级会员

Rank: 3Rank: 3

积分
213
金钱
176
HASS币
0
发表于 7 天前 | 显示全部楼层
回头试试
回复

使用道具 举报

4

主题

58

帖子

444

积分

中级会员

Rank: 3Rank: 3

积分
444
金钱
386
HASS币
0
发表于 7 天前 | 显示全部楼层
确实可以直接用实体,找到实体“ Mi AI Speaker Pro ”然后设置 Mi AI Speaker Pro Play Text 的值就可以。
回复

使用道具 举报

1

主题

19

帖子

100

积分

注册会员

Rank: 2

积分
100
金钱
81
HASS币
0
 楼主| 发表于 7 天前 | 显示全部楼层
lovelyelfpop 发表于 2024-12-13 11:46
还要代码吗?直接用实体啊。我2个小爱都是这样用

这种怎么设置动态的内容?比如根据输入流的数据进行播报?
怎么把输入的数据传入到action节点的data里面
回复

使用道具 举报

2

主题

35

帖子

562

积分

高级会员

Rank: 4

积分
562
金钱
527
HASS币
0
发表于 3 天前 | 显示全部楼层
我用  xiaomi_miot 插件 实现, 目前的插件版本有点问题 ,居然要用 播放控制才能发声,估计是bug
1.png
2.png
3.png
4.png
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-12-22 12:16 , Processed in 0.071318 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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