
# 节能操作建议生成通知
#### 功能介绍
应用服务器在调用设施云平台的创建规则触发条件（Resource:energy.eff，Event:advice）、创建规则动作、修改规则触发条件接口配置并激活规则后，当设施云平台中的操作建议产生时，设施云平台会向应用服务器推送通知消息。
#### URI
POST /应用服务器创建操作建议通知规则时的Url决定
#### 请求参数
表1请求Body参数 
| 参数          | 是否必选 | 参数类型                                                                                                                       | 描述                                                                                                                          |
|:---|:---|:---|:---|
| resource    | 是    | String                                                                                                                     | **参数说明**：订阅的资源名称。 **取值范围**：energy.eff。                                              |
| event       | 是    | String                                                                                                                     | **参数说明**：订阅的资源事件。 **取值范围**：advice。                                                   |
| event_time  | 是    | String                                                                                                                     | **参数说明**：操作建议事件生成时间。 **取值范围**：yyyy-MM-dd'T'HH:mm:ss.SSS'Z'，例如2023-08-04T10:01:59.815Z。 |
| notify_data | 是    | [EnergyEffAdviceNotifyData] object | **参数说明**：推送消息。                                                                                                              |
   
 表2EnergyEffAdviceNotifyData 
| 参数     | 是否必选 | 参数类型                                                                                                                                   | 描述                   |
|:---|:---|:---|:---|
| header | 是    | [EnergyEffAdviceNotifyDataHeader] object | **参数说明**：推送消息header。 |
| body   | 是    | [EnergyEffAdvice] object                                 | **参数说明**：推送消息body。   |
   
 表3EnergyEffAdviceNotifyDataHeader 
| 参数          | 是否必选 | 参数类型   | 描述                                                                           |
|:---|:---|:---|:---|
| instance_id | 否    | String | **参数说明**：实例ID。 **取值范围**：长度为8-32的字符串。 |
   
 表4EnergyEffAdvice 
| 参数                     | 是否必选 | 参数类型                                                                                                                                         | 描述                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| advice_id              | 否    | String                                                                                                                                       | 操作建议ID。                                                                                                                                                                                                                                                                                                                         |
| root_zone_id           | 否    | String                                                                                                                                       | 空间ID                                                                                                                                                                                                                                                                                                                            |
| source                 | 否    | [EnergyEffAdviceSource] object                           | 操作建议来源                                                                                                                                                                                                                                                                                                                          |
| scene_type             | 否    | String                                                                                                                                       | 场景类型，chiller：冷站场景，compressor：空压站场景。                                                                                                                                                                                                                                                                                             |
| scene_id               | 否    | String                                                                                                                                       | 场景ID                                                                                                                                                                                                                                                                                                                            |
| status                 | 否    | String                                                                                                                                       | 操作建议状态，toBeExecuted：待执行，executing：执行中，failure:手动执行失败,expired:已过期,manualSucceed：手动执行成功，systemSucceed系统执行成功，noExecute不执行，notice通知                                                                                                                                                                                                 |
| content                | 否    | String                                                                                                                                       | 操作建议内容                                                                                                                                                                                                                                                                                                                          |
| level                  | 否    | String                                                                                                                                       | 建议级别,SUGGEST：建议,WARNING：通知                                                                                                                                                                                                                                                                                                      |
| advice_operate_type    | 否    | String                                                                                                                                       | 操作类型,ADD_MACHINE：加机,SUB_MACHINE：减机，ADD_TOWER：加冷却塔，SUB_TOWER：减冷却塔，ADD_COOL_DOWN_WATER_PUMP：加冷却泵，SUB_COOL_DOWN_WATER_PUMP：减冷却泵，ADD_CHILLER_WATER_PUMP：加冷冻泵，SUB_CHILLER_WATER_PUMP：减冷冻泵，MACHINE_BROKEN:设备故障，TEMP_SUPPLY：供水温度推荐，COOLING_TOWER_WATER_TEMP：冷却塔水温，CHILLED_WATER_SUPPLY_WATER_TEMPERATURE：冷冻总管供水温度，BATCH_OPERATION：批量操作 |
| advice_operate_content | 否    | Array of [EnergyEffAdviceOperateContent] objects | 操作内容列表                                                                                                                                                                                                                                                                                                                          |
| description            | 否    | String                                                                                                                                       | 描述                                                                                                                                                                                                                                                                                                                              |
| expect_start_time      | 否    | String                                                                                                                                       | 期望执行时间，格式为："yyyy-MM-dd''T''HH:mm:ss.SSS''Z''"                                                                                                                                                                                                                                                                                   |
| create_time            | 否    | String                                                                                                                                       | 创建时间，格式为："yyyy-MM-dd''T''HH:mm:ss.SSS''Z''"                                                                                                                                                                                                                                                                                     |
   
 表5EnergyEffAdviceSource 
| 参数        | 是否必选 | 参数类型                                                                                                                                 | 描述        |
|:---|:---|:---|:---|
| rule      | 否    | [EnergyEffAdviceRuleSource] object           | 建议来源，规则   |
| algorithm | 否    | [EnergyEffAdviceAlgorithmSource] object | 建议来源，ai算法 |
   
 表6EnergyEffAdviceRuleSource 
| 参数      | 是否必选 | 参数类型   | 描述   |
|:---|:---|:---|:---|
| rule_id | 否    | String | 规则ID |
   
 表7EnergyEffAdviceAlgorithmSource 
| 参数                       | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| algorithm_source_feature | 否    | String | **参数说明**: 算法来源特性（算法功能）。 **取值范围**: 预置算法可以取下列枚举值： - preset_5_minute_all_day_cooling_capacity: 预置5分钟全天冷量   - preset_5_minute_all_day_power：预置5分钟全天功率   - preset_30_minute_maximum_power：预置30分钟最大功率   - preset_morning_peak_cool_capacity：预置早高峰冷量   - cold_site_cooling_load_all_day_prediction_algorithm：冷负荷日前预测算法   - coldsite_allocation_optimization： 冷站分配调优算法    ModelArts算法可以取下列枚举值： |
   
 表8EnergyEffAdviceOperateContent 
| 参数         | 是否必选 | 参数类型                                                                                                                                                         | 描述                                                                                           |
|:---|:---|:---|:---|
| device_id  | 否    | String                                                                                                                                                       | **参数说明**：设备ID。 **取值范围**：长度不超过128，只允许字母、数字、以及_-字符的组合。 |
| properties | 否    | Array of [EnergyEffAdviceOperateContentProperty] objects | 具体操作内容                                                                                       |
   
 表9EnergyEffAdviceOperateContentProperty 
| 参数    | 是否必选 | 参数类型   | 描述     |
|:---|:---|:---|:---|
| path  | 否    | String | 物模型属性  |
| value | 否    | String | 目标状态/值 |
   
#### 响应参数
**状态码：200**
表10响应Body参数 
| 参数 | 参数类型   | 描述 |
|:---|:---|:---|
| -  | String | -  |
   
**状态码：400**
表11响应Body参数 
| 参数         | 参数类型   | 描述                                                                       |
|:---|:---|:---|
| error_code | String | **参数说明**：错误码。 **取值范围**：长度8-36。   |
| error_msg  | String | **参数说明**：错误描述。 **取值范围**：长度2-512。 |
   
#### 请求示例
```
{
  "resource" : "energy.eff",
  "event" : "advice",
  "event_time" : "2022-12-26T02:52:49.999Z",
  "notify_data" : {
    "header" : {
      "instance_id" : "616c70686100000000000001"
    },
    "body" : {
      "advice_id" : "196a2a9dccdb0ebc6e358c99",
      "root_zone_id" : "18b0f2e23d49d9cd2a41a275",
      "source" : [ {
        "rule" : [ {
          "rule_id" : "191c16b93481491e287d2928"
        } ],
        "algorithm" : [ {
          "algorithmSourceFeature" : "preset_5_minute_all_day_cooling_capacity"
        } ]
      } ],
      "scene_type" : "chiller",
      "scene_id" : "191c12abbee423e6340cad76",
      "status" : "expired",
      "content" : "【加机】符合加机条件，请加开一台冷机",
      "level" : "SUGGEST",
      "advice_operate_type" : "ADD_MACHINE",
      "advice_operate_content" : [ {
        "operation" : [ {
          "properties" : [ {
            "InfoService/SmallRequiredNumSp" : [ {
              "value" : 1
            } ]
          }, {
            "InfoService/BigRequiredNumSp" : [ {
              "value" : 2
            } ]
          } ]
        } ]
      }, {
        "device_name" : "G1-冷站"
      }, {
        "device_id" : "16087212bc75410c9ad77163b4cf6aba"
      } ],
      "description" : "加机操作建议",
      "expect_start_time" : "2022-12-26T01:52:49.999Z",
      "create_time" : "2022-12-26T01:52:49.999Z"
    }
  }
}
```
#### 响应示例
**状态码：200**
OK
```
{
  "result" : "success"
}
```
#### 状态码
| 状态码 | 描述          |
|:---|:---|
| 200 | OK          |
| 400 | Bad Request |
   
