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

 找回密码
 立即注册
查看: 2032|回复: 10

[技术探讨] 【已解决】求助 homepod 16.4更新以后TTS调用失败

[复制链接]

7

主题

92

帖子

825

积分

高级会员

Rank: 4

积分
825
金钱
733
HASS币
0
发表于 2023-4-7 12:34:04 | 显示全部楼层 |阅读模式
本帖最后由 ycj1989 于 2023-5-10 10:21 编辑

显示“调用服务tts/edge_tts_say失败。no response to ANNOUNCE rtsp://10.0.0.118/ (RTSP/1.0)
Home Assistant 2022.2.0.dev20220126  群晖DOCKER安装

根据友友mosss提供的git,可以通过更改服务的timeout时长解决,研究了好久昨天终于成功了,唯一的缺点就是比原本响应速度慢几秒,可以接受。方法如下:
第一步:群晖控制面板,开启SSH功能
第二步:putty连群晖,输入用户名密码后,sudo -i输入密码,获取ROOT权限
第三步:docker exec -it $(docker ps -f name=homeassistant -q) bash
(需要将name改为自己docker里容器的名字)
第四步:返回bash-5.1以后,右击插入  vi /usr/local/lib/python3.10/site-packages/pyatv/support/http.py  按回车,打开http.py
(我的HA版本较老是python3.9,注意按需修改)
第五步:找到async with async_timeout.timeout(4):,类似的行,可以关注一下HA日志报警里的行,大概就在那附近,我是回车一行一行找的
找到以后键盘按“ss”,进入修改模式,把4变为10,改完以后光标移动到最底下输入:w,退出保存,ctrl+z退出vi
第六步:重复之前操作打开HTTP.PY,检查是否修改成功,重启HA就成功了。


回复

使用道具 举报

0

主题

37

帖子

1214

积分

金牌会员

Rank: 6Rank: 6

积分
1214
金钱
1177
HASS币
0
发表于 2023-4-7 13:51:32 | 显示全部楼层
https://github.com/home-assistant/core/issues/88014 临时方案 增大timeout时长
回复

使用道具 举报

7

主题

92

帖子

825

积分

高级会员

Rank: 4

积分
825
金钱
733
HASS币
0
 楼主| 发表于 2023-4-7 15:24:04 | 显示全部楼层
mosss 发表于 2023-4-7 13:51
https://github.com/home-assistant/core/issues/88014 临时方案 增大timeout时长

具体怎么操作呀?
回复

使用道具 举报

0

主题

37

帖子

1214

积分

金牌会员

Rank: 6Rank: 6

积分
1214
金钱
1177
HASS币
0
发表于 2023-4-7 15:59:36 | 显示全部楼层
编辑 这个文件/usr/local/lib/python3.10/site-packages/pyatv/support/http.py  把async with async_timeout.timeout(4) 改成async with async_timeout.timeout(10) 然后重启就可以了
回复

使用道具 举报

7

主题

92

帖子

825

积分

高级会员

Rank: 4

积分
825
金钱
733
HASS币
0
 楼主| 发表于 2023-4-17 12:56:25 | 显示全部楼层
mosss 发表于 2023-4-7 15:59
编辑 这个文件/usr/local/lib/python3.10/site-packages/pyatv/support/http.py  把async with async_timeo ...

大神,我群晖docker安装的。根本找不到这个文件。。。
回复

使用道具 举报

0

主题

37

帖子

1214

积分

金牌会员

Rank: 6Rank: 6

积分
1214
金钱
1177
HASS币
0
发表于 2023-4-17 13:41:12 | 显示全部楼层
ycj1989 发表于 2023-4-17 12:56
大神,我群晖docker安装的。根本找不到这个文件。。。

docker安装的也会有的,需要进入的容器里面替换, 使用docker exec -it homeassistant bash
回复

使用道具 举报

7

主题

44

帖子

299

积分

中级会员

Rank: 3Rank: 3

积分
299
金钱
255
HASS币
10
发表于 2023-4-26 22:44:15 | 显示全部楼层
mosss 发表于 2023-4-7 15:59
编辑 这个文件/usr/local/lib/python3.10/site-packages/pyatv/support/http.py  把async with async_timeo ...

测试了,没有效果
回复

使用道具 举报

7

主题

92

帖子

825

积分

高级会员

Rank: 4

积分
825
金钱
733
HASS币
0
 楼主| 发表于 2023-5-10 10:07:52 | 显示全部楼层
study321 发表于 2023-4-26 22:44
测试了,没有效果

你是不是没有改对?
回复

使用道具 举报

7

主题

92

帖子

825

积分

高级会员

Rank: 4

积分
825
金钱
733
HASS币
0
 楼主| 发表于 2023-5-10 10:17:34 | 显示全部楼层
第一步:群晖控制面板,开启SSH功能
第二步:putty连群晖,输入用户名密码后,sudo -i输入密码,获取ROOT权限
第三步:docker exec -it $(docker ps -f name=homeassistant -q) bash
(需要将name改为自己docker里容器的名字)
第四步:返回bash-5.1以后,右击插入  vi /usr/local/lib/python3.10/site-packages/pyatv/support/http.py  按回车,打开http.py
(我的HA版本较老是python3.9,注意按需修改)
第五步:找到async with async_timeout.timeout(4):,类似的行,可以关注一下HA日志报警里的行,大概就在那附近,我是回车一行一行找的
找到以后键盘按“ss”,进入修改模式,把4变为10,改完以后光标移动到最底下输入:w,退出保存,ctrl+z退出vi
第六步:重复之前操作打开HTTP.PY,检查是否修改成功,重启HA就成功了。

回复

使用道具 举报

7

主题

44

帖子

299

积分

中级会员

Rank: 3Rank: 3

积分
299
金钱
255
HASS币
10
发表于 2023-5-10 10:18:51 | 显示全部楼层
ycj1989 发表于 2023-5-10 10:07
你是不是没有改对?

该对了,我还翻了github issues,进docker该了重新启动再确认了一边代码已经完成更改生效的。 但是之前确实用不了,后来我重新更新了homeassistant的docker镜像,发现可以用了。只是延迟很大,成功率60%
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-9 06:46 , Processed in 0.346784 second(s), 31 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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