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

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

[技术讨论] 小白求助,如用建立一个让ha打开特定网址的自动化?

[复制链接]

1

主题

8

帖子

46

积分

新手上路

Rank: 1

积分
46
金钱
38
HASS币
0
发表于 2025-2-13 16:46:51 | 显示全部楼层 |阅读模式
起因是我想用小爱音箱控制 我的moode播放器,发现只是简单发送http://moode.local/command/index.php?cmd=pause、play这样的网址即可控制。
但如何在ha里建立一个自动化,让小爱同学产生虚拟事件,引发ha执行打开相应网址呢?
回复

使用道具 举报

50

主题

1923

帖子

7548

积分

论坛元老

Rank: 8Rank: 8

积分
7548
金钱
5615
HASS币
40
发表于 2025-2-13 16:57:33 | 显示全部楼层
nodered        
折腾精神永存,感恩感谢论坛每一位愿意分享和帮助过我的大佬,论坛有你更精彩
回复

使用道具 举报

162

主题

2607

帖子

8072

积分

元老级技术达人

积分
8072
金钱
5460
HASS币
30
发表于 2025-2-13 16:59:56 | 显示全部楼层
shell_command:
    web_get: curl -G "http://*************"
configuration.yaml加入这个代码试试,修改下url,前提是url是固定的,重载yaml,动作里,选择:shell_command:web_get
回复

使用道具 举报

1

主题

8

帖子

46

积分

新手上路

Rank: 1

积分
46
金钱
38
HASS币
0
 楼主| 发表于 2025-2-13 20:47:21 | 显示全部楼层
bugensui 发表于 2025-2-13 16:59
configuration.yaml加入这个代码试试,修改下url,前提是url是固定的,重载yaml,动作里,选择:shell_comm ...

url是局域网音乐小主机的固定的ip,但是如果是多个网址怎么做,比如播放,暂停, 上一,下一,等等
回复

使用道具 举报

162

主题

2607

帖子

8072

积分

元老级技术达人

积分
8072
金钱
5460
HASS币
30
发表于 2025-2-13 21:56:20 | 显示全部楼层
mixian 发表于 2025-2-13 20:47
url是局域网音乐小主机的固定的ip,但是如果是多个网址怎么做,比如播放,暂停, 上一,下一,等等 ...

试试,
web_get: curl -G "http://*************"
web_get2: curl -G "http://*************"


回复

使用道具 举报

1

主题

8

帖子

46

积分

新手上路

Rank: 1

积分
46
金钱
38
HASS币
0
 楼主| 发表于 2025-2-14 12:57:27 | 显示全部楼层
已经试了,可以添加这个执行动作,但成功运行后,不会发生作用。
回复

使用道具 举报

2

主题

378

帖子

2586

积分

金牌会员

Rank: 6Rank: 6

积分
2586
金钱
2203
HASS币
30
发表于 2025-2-14 14:51:34 | 显示全部楼层
nodered
http node
回复

使用道具 举报

2

主题

66

帖子

335

积分

中级会员

Rank: 3Rank: 3

积分
335
金钱
269
HASS币
0
发表于 4 天前 | 显示全部楼层
要在 Home Assistant(HA)里建立一个自动化,让小爱同学产生虚拟事件,从而引发 HA 执行打开相应网址以控制 Moode 播放器,可以按照以下步骤操作:

### 1. 确保小爱音箱与 Home Assistant 集成
你需要先将小爱音箱集成到 Home Assistant 中。这通常可以通过在 Home Assistant 中添加“小爱同学”集成来实现。在 Home Assistant 的界面中,点击“配置” -> “设备与服务” -> “添加集成”,搜索“小爱同学”并按照提示完成配置。

### 2. 创建一个“RESTful 命令”
RESTful 命令允许 Home Assistant 向特定的 URL 发送 HTTP 请求。你可以在 `configuration.yaml` 文件中添加以下配置:

```yaml
rest_command:
  moode_pause:
    url: "http://moode.local/command/index.php?cmd=pause"
  moode_play:
    url: "http://moode.local/command/index.php?cmd=play"
```

添加完成后,保存文件并重启 Home Assistant 使配置生效。你可以在“开发者工具” -> “服务”中查看是否成功添加了 `rest_command.moode_pause` 和 `rest_command.moode_play` 服务。

### 3. 创建自动化
接下来,你可以创建一个自动化规则,当小爱同学接收到特定语音指令时,触发相应的 RESTful 命令。

#### 3.1 打开自动化配置界面
在 Home Assistant 界面中,点击“配置” -> “自动化” -> “添加自动化”。

#### 3.2 设置触发条件
- 选择“触发”类型为“小爱同学语音指令”。
- 在“语音指令”字段中输入你希望小爱同学识别的指令,例如“暂停音乐”或“播放音乐”。

#### 3.3 设置动作
- 选择“动作”类型为“调用服务”。
- 在“服务”字段中选择之前创建的 RESTful 命令,例如 `rest_command.moode_pause` 或 `rest_command.moode_play`。

#### 3.4 保存自动化规则
完成设置后,点击“保存”保存自动化规则。

### 示例自动化配置
如果你更喜欢直接编辑 YAML 文件来创建自动化规则,可以在 `automations.yaml` 文件中添加以下内容:

```yaml
- alias: "小爱同学暂停音乐"
  trigger:
    platform: xiaomi_smart_home
    command: "暂停音乐"
  action:
    service: rest_command.moode_pause

- alias: "小爱同学播放音乐"
  trigger:
    platform: xiaomi_smart_home
    command: "播放音乐"
  action:
    service: rest_command.moode_play
```

保存文件后,Home Assistant 会自动加载新的自动化规则。

### 测试
现在,你可以对小爱同学说“暂停音乐”或“播放音乐”,小爱同学会将指令发送给 Home Assistant,Home Assistant 会根据你设置的自动化规则向 Moode 播放器发送相应的 HTTP 请求,从而实现对播放器的控制。

### 注意事项
- 确保 Home Assistant 和 Moode 播放器在同一局域网内,并且 `http://moode.local` 可以正常访问。如果无法通过 `moode.local` 访问,可以尝试使用 Moode 播放器的 IP 地址。
- 如果小爱同学无法识别语音指令,可能需要检查小爱音箱的网络连接和语音识别设置。
大佬发的教程往往让新人卡在第一步
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2025-2-22 21:23 , Processed in 0.053397 second(s), 29 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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