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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
| -- liquibase formatted sql
|
| -- 插入新的 hass_state 插件记录(合并 get_state 的配置字段)
| INSERT INTO ai_model_provider (id, model_type, provider_code, name, fields,
| sort, creator, create_date, updater, update_date)
| VALUES ('SYSTEM_PLUGIN_HA_STATE',
| 'Plugin',
| 'hass_state',
| 'HomeAssistant设备控制',
| JSON_ARRAY(
| JSON_OBJECT(
| 'key', 'base_url',
| 'type', 'string',
| 'label', 'HA 服务器地址',
| 'default',
| (SELECT param_value FROM sys_params WHERE param_code = 'plugins.home_assistant.base_url')
| ),
| JSON_OBJECT(
| 'key', 'api_key',
| 'type', 'string',
| 'label', 'HA API 访问令牌',
| 'default',
| (SELECT param_value FROM sys_params WHERE param_code = 'plugins.home_assistant.api_key')
| ),
| JSON_OBJECT(
| 'key', 'devices',
| 'type', 'array',
| 'label', '设备列表(名称,实体ID;…)',
| 'default',
| (SELECT param_value FROM sys_params WHERE param_code = 'plugins.home_assistant.devices')
| )
| ),
| 50, 0, NOW(), 0, NOW());
|
| -- 迁移已配置的 agent:把指向 HA_GET_STATE 的改成 HA_STATE(保留参数)
| UPDATE ai_agent_plugin_mapping
| SET plugin_id = 'SYSTEM_PLUGIN_HA_STATE'
| WHERE plugin_id = 'SYSTEM_PLUGIN_HA_GET_STATE';
|
| -- HA_SET_STATE 本来就没有配置字段(fields=[]),直接删除其 mapping
| DELETE FROM ai_agent_plugin_mapping
| WHERE plugin_id = 'SYSTEM_PLUGIN_HA_SET_STATE';
|
| -- 删除旧的插件定义
| DELETE FROM ai_model_provider
| WHERE id IN ('SYSTEM_PLUGIN_HA_GET_STATE', 'SYSTEM_PLUGIN_HA_SET_STATE');
|
|