中文教程:https://www.hachina.io/docs/2073.html

英文网教程:https://www.home-assistant.io/components/conversation/

会话组件允许您与Home Assistant交谈。您可以通过按前端中的麦克风(仅支持的浏览器(无iOS))或通过conversation/process使用转录文本调用服务来进行交谈。

1实践

在配置文件中添加

# Allows you to issue voice commands from the frontend in enabled browsers
# 意图生成组件,匹配语法规则后生成对应意图
conversation:
intents:
# 意图类型(名称),以及对应的语法匹配规则
OpenLight:
- 打开{item}灯
- 把{item}灯打开
CloseLight:
- 关上{item}灯
- 关闭{item}灯 # 意图执行组件,根据配置文件决定对不同意图的执行命令
intent_script:
# 意图类型(名称)
OpenLight:
# speech返回
speech:
text: 已打开{{ item }}灯
# 执行动作
action:
service: light.turn_on
data_template:
entity_id: >
{% if item=="卧室" %}
light.test2_rgb_mqtt
{% endif %} CloseLight:
speech:
text: 已关闭{{ item }}灯
action:
service: light.turn_off
data_template:
entity_id: >
{% if item=="卧室" %}
light.test2_rgb_mqtt
{% endif %}

  重启hass使得配置可用

或者直接重载配置

2调用此服务

本应该点击谷歌游览器下,语音输入按钮,按下后你说什么,但是我的一直显示语音没输入

第二种 测试,直接调用这个服务

【conversation.process服务】
conversation组件在系统中注册了服务conversation.process。conversation.process接受的信息格式为:
{"text":"输入的自然语言"}

然后我再MQTT对应话题发现 on  和 off ,完美

现在要搞清楚,谷歌网页语音输入为何什么不行

还把插座混到灯里

2 扩展

(4)HomeAssistant 语言控制的更多相关文章

  1. Raspberry Pi3 ~ C语言控制串口

    注明出处:http://www.cnblogs.com/einstein-2014731/p/5551846.html 使用C语言控制树莓派3B的串口,实现使用串口收发数据的目的.之前以为这个串口是被 ...

  2. STM32 用c语言控制4个LED灯从左向右无限流动

    在用c语言写LED流水灯的前提条件是配置好其他环境,这里我就不说环境了, 想让LED灯无限循环时,首先要想到的是无限循环函数,我这里利用的是for函数 无限循环. #include "stm ...

  3. Python语言控制运算的优先级

    Python语言碰上计算式同时出现在一个指令内时,除了括号"(".")"最优外,其余计算优先次序如下: 次方(**). 乘法.除法.求余数(%).求整数(//) ...

  4. 6.裸机C语言控制LED

    C语言版LED灯 汇编完成C语言的环境配置 C语言完成点亮LED灯 程序编写 汇编程序start.S .global _start /* 全局标号 */ /* * 描述: _start函数,程序从此函 ...

  5. Linux 下终端 C 语言控制光标的技巧

    // 清除屏幕 #define CLEAR() printf("\033[2J") // 上移光标 #define MOVEUP(x) printf("\033[%dA& ...

  6. 12.C语言控制窗口

    void main() { //创建一个窗口编号变量,寻找QQ的窗口 HWND win = FindWindowA("TXGuiFoundation", "QQ" ...

  7. 【转】从Go、Swift语言出发

    Google于2009年第一次提出了Go的构思,Facebook在去年春天引入了Hack,随后不久Apple也发布了其Swift语言. 在战争中,胜利者写历史书:在科技中,赢的公司都在写编程语言.互联 ...

  8. 从Go、Swift出发:语言的选择需谨慎

    本文转自 : http://www.csdn.net/article/2014-12-09/2823025 摘要:无论是开源的Go,还是闭源的Swift,新的语言总是利弊一体.不过可以确定的是,新的语 ...

  9. 1-STM32嵌入LUA开发(控制小灯闪耀)

    今天因为想让STM32完美的处理字符串,所以就想着让STM32嵌入lua,本来想用f103c8t6,但是一编译就提示内存不足...... 所以单片机的型号选择的 \ 我下载到了RBT6的芯片上测试的 ...

随机推荐

  1. shell 备份 source code

    1. 利用shell脚本备份源码 首先mkdir创建三个目录  backup存放备份代码,script 存放shell脚本,www存放源码 2.创建文件 3. 编写shell脚本 #!bin/sh b ...

  2. MessageChannel 消息通道

    一.初识 MessageChannel 对象 通过构造函数 MessageChannel() 可以创建一个消息通道,实例化的对象会继承两个属性:port1 和 port2 port1 和 port2 ...

  3. c#无边框窗体移动

    [DllImport("user32.dll")]//拖动无窗体的控件 public static extern bool ReleaseCapture(); [DllImport ...

  4. Ehcache配置详解及CacheManager使用

    <?xml version="1.0" encoding="UTF-8"?><ehcache xmlns:xsi="http://w ...

  5. iOS------Xcode 的clang 扫描器可以检测出所有的内存泄露吗

    在苹果没有出ARC(自动内存管理机制)时,我们几乎有一半的开发时间都耗费在这么管理内存上.后来苹果很人性的出了ARC,虽然在很大程度上,帮助我们开发者节省了精力和时间.但是我们在开发过程中,由于种种原 ...

  6. [Java]Socket和ServerSocket学习笔记

    对于即时类应用或者即时类的游戏,HTTP协议很多时候无法满足于我们的需求.这会,Socket对于我们来说就非常实用了.下面是本次学习的笔记.主要分异常类型.交互原理.Socket.ServerSock ...

  7. recovery&linux系统升级数据更新分析总结

    先说说对升级的理解吧.系统升级是软件更新及BUG修复的主要方式,升级的主要原理就是数据搬移的过程,把我们需要的数据,从某个地方,更新到另外的一个地方.这个过程就叫做升级.一般是当我们系统有了新的功能增 ...

  8. java任意n以内连续的和等于n

    import java.util.Scanner; /** * Created by Admin on 2017/3/25. */ public class test01 { public stati ...

  9. SQL2008无法附加数据库,提示“无法显示请求的对话框”(nColIndex实际值是-1)图文解决方法

    SQL2008无法附加数据库,提示“无法显示请求的对话框”(nColIndex实际值是-1)图文解决方法 SQL2008无法附加数据库,提示“无法显示请求的对话框”(nColIndex实际值是-1)图 ...

  10. 四、Tableau如何设置数据格式

    一.要求 ‘销售额’:K为单位 ‘利润’:        M为单位,负值用括号括起来,但是正值 ‘利润率’:带百分号,负值用括号括起来仍然时负值 二.解决方案 1.‘销售额’:m为单位 2.‘利润’: ...