HA文档 目录

  1. 主页
  2. HA文档
  3. HA文档
  4. 配置进阶
  5. 脚本(script)

脚本(script)

这篇文章是系列文章的第1/7篇:

脚本(script)定义了一套执行动作的序列。
在HomeAssistant中,脚本有两种存在形式。首先,脚本可以独立存在,由script组件读取,script组件根据脚本的名字和内容生成实体(entity),同时将脚本注册为服务;其次,脚本代码可以直接包含在在自动化规则(或其它一些组件的配置,如Amazon Echo组件)中——这两种脚本的存在形式,在脚本的基本组成元素与相关语法上是一致的。

脚本的基本组成元素有5种。

  1. 调用一个服务
  2. 触发一个事件
  3. 判断一个条件
    当条件满足时(返回true),继续执行脚本;否则,中止脚本的执行。关于条件的详细配置语法,可以参见自动化配置中“条件”部分。
  4. 延时
    将脚本挂起一段时间,然后继续执行后续脚本。



  5. 等待
    等待某一个条件满足时继续执行脚本,否则永远等待。也可以配置timeout,表示如果在等待一段时间之后,条件还是没有满足,就继续执行。

当有几个脚本动作组成序列时,按照如下格式配置:

 

脚本在配置文件中独立存在时(如下),script组件将根据配置文件中script域的信息,在系统中生成对应的脚本实体和服务。例如,如下的配置文件,生成实体script.example_script,同时在script域中注册服务example_script。

 

如果在系统的配置文件(configuration.yaml)中包含了“script: !include scripts.yaml”,同时在配置目录下生成scripts.yaml文件(可以是空白的),就可以在HomeAssistant的WEB界面中编辑脚本。

遇到问题了?快来学习免费在线课程吧,博学老司机在线答疑,找到更多志同道合的HA玩家一起进步

此文不允许转载,如需转载请与BD@hachina.io联系。

这篇文章对您有用吗? 2 1