RESTFER命令


此集成可以将常规的REST命令视为服务。可以从a中调用服务脚本或者自动化

要使用此组件,请将以下行添加到您的configuration.yaml.文件:

#示例configuration.yaml条目rest_command:example_request:url:“http://example.com/”

配置变量

服务名称 地图 必需的

用于公开服务的名称。例如,在上面的示例中,它将是'rest_command.example_request'。

URL. 模板 必需的

用于发送请求的URL(支持模板)。

方法 细绳 可选的,默认:获得的)

要使用的HTTP方法(获取,修补,邮寄,放置或删除)。

标题 地图 可选的的)

请求的标题。

有效载荷 模板 可选的的)

要使用请求发送的字符串/模板。

用户名 细绳 可选的的)

基本HTTP身份验证的用户名(不支持摘要)。

密码 细绳 可选的的)

基本HTTP身份验证的密码(不支持摘要)。

暂停 细绳 可选的,默认:10的)

在几秒钟内请求的超时。

内容类型 细绳 可选的的)

请求的内容类型。

验证_ssl. 布尔 可选的,默认:true的)

验证端点的SSL证书。

例子

使用PUT方法和有效载荷作为表单数据编码的基本示例

此示例实现了2个REST命令以添加服务调用缺少iTunes集成的Shuffle功能。

rest_command:shuffle_on:url:“http:// your_itunes-api_server_ip:8181 / shuffle”方法:put content_type:“application / x-www-form-ullencoded”有效载荷:“mode = songs”shuffle_off:url:“http:// your_itunes-api_server_ip:8181 / shuffle“方法:put content_type:”application / x-www-form-ullencoded“有效载荷:”mode =关闭“

使用模板根据实体更改有效载荷

命令可以是动态的,使用模板来插入其他实体的值。服务调用支持变量用于使用模板进行事件。

在此示例中,使用模板用于动态参数。

#示例configuration.yaml条目rest_command:my_request:url:https://slack.com/api/users.profile.set方法:邮寄标题:授权:!secret rest_headers_secret接受:“application / json,text / html”用户 -代理:'mozilla / 5.0 {{useragent}}'有效载荷:'{“station_text”:{{{status}}“,”status_emoji“:”{{emoji}}“}}'content_type:'应用/ JSON;charset = UTF-8'验证_ssl:true

如何测试您的新休息命令

拨打新服务开发者工具在侧边栏中有一些数据喜欢:

{“状态”:“我的状态走到这里”,“emoji”:“:plex:”}

使用REST命令作为自动化中的动作

自动化: - 别名:“到达工作”触发器:平台:区域Entity_ID:dement_tracker.my_device区域:zone.work事件:输入操作: - 服务:rest_command.my_request数据:状态:“在工作”emoji:““