零基础打造全屋智能控制系统 篇二十五:利用若琪WEBHOOK实现TTS主动播报及伪主动问询

2019-02-19 16:21:26 22点赞 264收藏 20评论

其实TTS播报这事在智能家居玩家群体里时非常稀松平常的一件事,玩的人也非常多。一般以两个流派为主,一个是DLNA串流播报,不过因为国内主(PIAN)流(YI)的智能音箱对DLNA的支持基本都不是很好,例如天猫精灵是先天残疾。小爱同学是后天被打残的,至今未愈。而叮咚依旧是”智障“本身,DLNA之后会出现不可预期的状况。所以更多人选择了第二个流派,就是蓝牙播报,而蓝牙播报的话,其实对音箱是不是智能的就毫无要求了,哪怕是普通的蓝牙音箱也可以胜任。但是,无论是DLNA还是蓝牙连接,都需要我们先自行做好TTS的转换,也就是先要自己把文字内容转化成音频文件,然后系统再将音频文件串流到音箱上进行播报。当然,TTS这部分其实也是有多个开放平台可以使用的,例如百度和微软。这方面的文章其实网上也有许多,不过今天在这要说的是使用一个非(YOU)主(DIAN)流(GUI)的智能音箱——若琪自带的WEBHOOK来实现TTS语音播报以及伪主动询问的案例。

一、TTS播报有什么用?

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

在很长的时间里,我一直觉得TTS播报这事是没有啥意义的,所以这功能我也一直没有去仔细研究。因为我自己更期望的功能是主动问询,比如当你在家,气温有点热的时候,音箱就能主动询问说”是否需要打开空调?“当然,空调只是举例,是冷是热我自己会不知道么,还需要你来提醒。但是在domoticz群里交流的时候,@blindlight 点化了下,说是如果连TTS都不做,从何去谈主动询问。并且即使不能实现主动询问,语音播报也能作为自动提醒功能,例如室外空气质量较差,TTS就可以提醒你关窗。出门时候,TTS也能提醒天气情况等等。当然,还是那句话,不管你用不用,技术就在那,但是千万别为了用技术而去用,从而导致音箱整天就在那呱噪的想个不停,例如我目前在用的其实只有回家欢迎播报并询问是否需要打开客厅电视以及抽油烟机和净化器自动开启告知,因为新风系统的自动控制,家里颗粒物污染除了做菜时会高以外,其余时刻都挺好,而如果不是在做菜或有人抽烟啥的,PM浓度上升必然有蹊跷,所以适当提醒,可以杜绝某些隐患(例如锅烧糊了)。

二、如何利用若琪实现TTS播报?

虽然若琪在国内智能家居生态圈里的占比并不十分大(主要还是贵),但是若琪官方却提供了非常完善的API可以方便大家折腾。例如这次TTS使用的技能就是官方提供的WEBHOOK功能。详细点击连接

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

其实根据官方说明,这个WEBHOOK的用法非常简单,就是通过http post相关信息至指定URL,然后智能音箱执行指定操作,除了TTS播报外,还能执行ASR指令(利用文本来执行指令),串流音乐。这儿我们只需要在若琪APP-家庭-设置(右上角小齿轮)-Webhook里创建一条新的Webhook并记录下其URL:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

然后再去我的页面抄录下TTS播报所使用的若琪的序列号。如果你有多个若琪的话,可以全部记录下来,播报时可以通过指定序列号来选择不同的设备进行播报:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

准备工作做完了之后,我们就可以找一个在线http post测试的网页进行测试:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

如果看到Response里面出现Congratulations! You've triggered the webhook就说明一切就绪,你也可以打开若琪app查看:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

”可以看到各位值友,大家好~i“已被若琪正确播报,不过我多打了i。下面进入实战应用。

三、实战应用

在本文前段就提过,若琪的价格相对天猫,叮咚,甚至小爱来说都是偏贵的。而根据楼主的一番查询,用于播报最便宜的若琪设备是若琪梵星:

ROKID Mini RP105 若琪梵星 智能语音遥控器 智能音箱 wifi无线蓝牙迷你音响 合作专供 黑色399元京东去购买

这款产品在京东的售价为399元,并且标明为合作专供。这主要是因为梵星这款产品并不是直接面向消费者的,一般都是合作定制款,所以我们可以转战”闲鱼“

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

我是在闲鱼上花了200元收了一台全新未拆封的,基本也是梵星在闲鱼平台的均价了。要是拆封二手的价格还会更低一些,不过也就差一杯咖啡钱。

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

收到货,和卖家描述一致,原封未拆,是电信版的,据说是电信套餐送的,为啥我就没?回头抽空了也去电信问问。

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

侧边写的清清楚楚,这是一台智能语音遥控器,并非智能音箱,不过其内容资源并没有阉割,可能只是因为音质太差,不配使用音箱这个名字。

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

打开包装,其简介也符合遥控器定位,只宣传语音控制功能。

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

整套遥控器包括主机,数据线,电源和说明书。

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

主机上贴膜有简单的使用说明。

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

背面铭牌再次强调,我只是个遥控器。

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

电源接口与时俱进用了TYPE C,以及还有一个3.5mm立体声耳机接口,可以连接其他音箱。

联网配置啥的就不说了,语音提示,step by step就好。我配好了之后就把它粘在冰箱上了:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

白色配白色,毫不起眼,真是完美。

接着就是系统了,如果你是home assitant玩家,那么祝贺你,hassbian论坛上有各种现成插件,直接配置使用就好了,例如囧大的:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

而即使你是domoticz玩家,也没关系,因为py脚本我已经给你准备好了:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

代码不长,就不给文件了,自己注意空格问题。第二段elif的内容其实与第一段相同,只是在text字段多了he, siri的字段,用于唤醒siri,假装是主动询问。这里的he并不是笔误,实测hey, siri无法唤醒siri。你也可以把这个换成天猫精灵,小爱同学,叮咚,叮咚等你需要主动唤醒的其他智能音箱。而在执行时,domo内脚本如下:

不触发siri的命令:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

触发siri的命令:

利用若琪WEBHOOK实现TTS主动播报及伪主动问询

中间的变量可以自己设。基本上就是播报和主动询问,这里主动询问的话还需要另一台智能音箱来执行,略显复杂,但是我就是这么任性。当然,如果若琪的接口ASR能设定一个文本唤醒词,通过webhook唤醒音箱的话,就可以直接使用一台若琪来实现了。

至于主动询问,开始时我的思路是播报时就将相关的设备开关设定到待机状态,然后SIRI里有一个场景就叫”好的“这样询问完成后,我只要回答”好的“,相应设备就执行动作。不过在配置的时候发现,其实直接回复”打开XX“也并不比”好的“麻烦,就给省了。而关于若琪,其实单单作为TTS播报设备来说有点浪费,因为其绑定QQ音乐,资源相对还是比较丰富的,不过本篇文章主要还是讲解TTS的,所以其余内容就不做展开。

当然,Webhook里还有个ASR功能,只要将脚本里"type" : "tts"改成"type" : "asr",text的内容为指令就能执行,例如每天早上起来后可以触发”今天天气怎么样?“的asr指令,若琪就会为您播报当天天气,提醒出行注意事项。

最后祝大家玩的开心。

展开 收起

Rokid 若琪 Pebble 月石 智能音箱

Rokid 若琪 Pebble 月石 智能音箱

暂无报价

Rokid 若琪 Me 觅 随身智能音箱 可口可乐限量版

Rokid 若琪 Me 觅 随身智能音箱 可口可乐限量版

暂无报价

Rokid 若琪 一夜狼人杀卡牌 月石智能音箱专属桌游

Rokid 若琪 一夜狼人杀卡牌 月石智能音箱专属桌游

暂无报价

Rokid 若琪 Me 觅 随身智能音箱

Rokid 若琪 Me 觅 随身智能音箱

暂无报价

Rokid 若琪 Me 若琪·觅 AI智能音箱

Rokid 若琪 Me 若琪·觅 AI智能音箱

暂无报价

Rokid 若琪 RP105 智能音箱

Rokid 若琪 RP105 智能音箱

暂无报价

Rokid 若琪 RM101 可口可乐版 智能蓝牙音箱 红色

Rokid 若琪 RM101 可口可乐版 智能蓝牙音箱 红色

暂无报价

Rokid 若琪 RM103 智能音箱 (京都·粉)

Rokid 若琪 RM103 智能音箱 (京都·粉)

暂无报价

Rokid 若琪 RM101 音响 (京都·粉)

Rokid 若琪 RM101 音响 (京都·粉)

暂无报价

Rokid 若琪 Rokid Me 智能音箱

Rokid 若琪 Rokid Me 智能音箱

暂无报价

Xiaomi 小米 小爱音箱Play 增强版 黑色

Xiaomi 小米 小爱音箱Play 增强版 黑色

83.9元起

Xiaomi 小米 Sound Pro 智能音箱 黑色

Xiaomi 小米 Sound Pro 智能音箱 黑色

729元起

Xiaomi 小米 小爱音箱Play「米家」

Xiaomi 小米 小爱音箱Play「米家」

80元起

Xiaomi 小米 AI音箱 二代 智能音箱 白色

Xiaomi 小米 AI音箱 二代 智能音箱 白色

156.8元起

Xiaomi 小米 小爱音箱 Pro 智能音箱

Xiaomi 小米 小爱音箱 Pro 智能音箱

159元起

Redmi 红米 小爱触屏音箱 8英寸 白色

Redmi 红米 小爱触屏音箱 8英寸 白色

299元起
20评论

  • 精彩
  • 最新
  • 好希望智慧如你 [得意]

    校验提示文案

    提交
    我这都是小聪明,你是真本事

    校验提示文案

    提交
    收起所有回复
  • 来看主动问询的,没具体方法啊,虽然打开Xx也不麻烦,但是主动问询还是很能提升逼格的感觉

    校验提示文案

    提交
    简单地说就是询问的同时设定一个变量对应具体要操作的开关,然后语音出发后系统去找变量被标记的开关对齐进行操作

    校验提示文案

    提交
    收起所有回复
  • 树莓派已经实现了蓝牙tts

    校验提示文案

    提交
    树莓派,群晖都可以,文章开头就说了,只是懒。所以挑了个最简单的

    校验提示文案

    提交
    收起所有回复
  • 问下作者,京东上的和移动、电信送的这三种到底有什么区别啊?不知道怎么选……

    校验提示文案

    提交
    没有区别。。。哪个便宜买哪个

    校验提示文案

    提交
    好。谢谢!

    校验提示文案

    提交
    收起所有回复
  • emmm若琪配ha或者domotize能实现语音控制其他设备(甚至于自制的8266设备)吗?

    校验提示文案

    提交
    若琪能接入ha,domoticz不行

    校验提示文案

    提交
    收起所有回复
  • 这个asr是通过ha给若琪的,我还以为若琪能asr给ha,然后调用ha的conversation,这样就真的能实现无线扩展了。另外,楼主,主动问询的办法找到了吗?

    校验提示文案

    提交
    主动问询有办法,但是太折腾了,没必要

    校验提示文案

    提交
    啥办法?能指点一下么。。。

    校验提示文案

    提交
    收起所有回复
  • 我家有个去年捡到的外星人智能管家,就是没电了,它说要用核电厂专门给它充一百年的电就可以使用了

    校验提示文案

    提交
  • 群晖也可以?配合哪些音箱可以?目前有腾讯闲置呢

    校验提示文案

    提交
  • 能加个好友嘛,我最近准备装修,想装个全智能的,能给个方案和意见啥的?

    校验提示文案

    提交
  • 接传统音箱或者蓝牙音箱可以调节音量吗 求解答

    校验提示文案

    提交
  • 说起来若琪+HA,平时语言控制走若琪还是ha

    校验提示文案

    提交
  • z轴放置rokid mini会影响拾音

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
264
扫一下,分享更方便,购买更轻松