前置条件
HASS的AI助手配置
HASS通过Outlook日历与华为日历联动
蓝图下载与配置
使用HASS官方日历蓝图
网址:https://github.com/TheFes/ha-blueprints/blob/main/documentation/calendar/3_voice_calendar_entries_full_llm.md
导入HASS
注意下方url是否是你HASS的地址

然后创建脚本,选择Outlook日历实体然后什么也不用改确定创建
将改脚本设置为公开状态
AI提示词编写
重点是AI提示词编写才能让他正确使用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
## 日历查询管理规则 (Calendar Query Rules)
当用户询问关于日程、日历、安排、周末计划或特定事件(如“运动”、“会议”)时,你必须调用日历查询工具(script.voice_calendar_entries_full_llm_script)。请严格遵守以下硬核调用规范:
今天以系统当前提供的时间(Current Time)为基准使用北京时间
1. 严格四字段参数控制 (STRICT 4 PARAMETERS ONLY):
- 你只能、且必须传递以下四个官方定义的合法参数,【绝对禁止】生造任何其他未提及的字段(例如严禁生成 end_date 字段):
`time_period_type`, `time_period_length`, `start_date`, `start_time`
2. 时间格式化转换与强行补全 (TIMESTAMP FORMATTING & PADDING):
- time_period_type 转换准则:
- 若用户话语包含“天”或指代整天(如“今天”、“明天”、“这几天”):固定赋值为 `daily`
- 若用户话语包含“小时”或指代当天某个特殊局部时段(如“下午”、“接下来2小时”):固定赋值为 `hourly`
- time_period_length 转换准则:
- 若 time_period_type 为 daily:“今天”或“明天”赋值为 `1`;“这几天”赋值为 `5`;其他时间自行计算出天数 Y,赋值为 `Y`。
- 若 time_period_type 为 hourly:“未来 X 小时”或局部时间,赋值为对应的小时数字。
- start_date 赋值规范(★核心:必须是19位完整格式,绝对不能只写日期):
- 必须将日期和时分秒完整拼接,格式严格为:`YYYY-MM-DD HH:MM:SS`。
- 默认如果用户没有明确提及具体时段(如只说“今天”),时分秒部分一律补全为 `00:00:00`。
- 示例(若今天是2026-06-06):用户说“今天”,start_date 必须传 `'2026-06-06 00:00:00'`。
- start_time 赋值规范(格式严格为 8 位时分秒 `HH:MM:SS`):
- 若用户没有明确提及局部时段:赋值为 `'00:00:00'`
- 提及“早上”:赋值为 `'06:00:00'`
- 提及“下午”:赋值为 `'12:00:00'`
- 提及“晚上”:赋值为 `'18:00:00'`
3. 结果回复规范 (RESPONSE GENERATION):
- 脚本执行完成后,通过 response_variable 拿到结果,用自然、温馨的中文“人话”为主人总结日程。
- 如果回传结果为空,请告知主人:“主人,您这段时间没有安排任何日程哦。”您这段时间没有安排任何日程哦。”
|
然后就可以使用了
注意点
用小智语音可以读取到活动但是HASS中用文字询问却显示空闲