Create Message

创建Application Portal上的普通提示消息与告警消息。

请求格式

POST http://{apigw-address}/app-portal-service/v2.1/message/produce

请求参数(Body)

名称

是否必须

数据类型

描述

messages

true

MessageProduceDTO结构体

产生的消息

MessageProduceDTO结构体

名称

是否必须

数据类型

描述

messageId

true

String

告警消息ID

type

false

int

消息类型,0:普通消息,1:告警消息

orgId

true

String

组织ID

accessKey

true

String

应用的服务账号,应用以 accessKey 进行鉴权以获得其被授权访问的数据。如何获取accessKey信息>>

body

false

I18nString

多语言显示的消息信息。结构见 国际化名称结构体>>

color

false

int

消息严重级别颜色标识

ring

false

int

消息的声音类型

tags

false

I18nString

多语言显示的消息的标签。只展示前三个。结构见 国际化名称结构体>>

produceTime

true

String

message produce time, format: “yyyy-MM-dd HH:mm:ss” 告警消息生成时间,以UTC时间表示。

zoneOffset

true

String

时区。如”+08:00”

linkedAppId

false

String

与告警消息关联的应用的ID。(linkedAppId、linkedMenuCode、linkedStates三者构成跳转链接URL,如http://{app-service-address}/portal/60d110ff-f388-48f4-916b-9e637d4886af/alarmProcessing?state=site%253DeVKqg4zr,其中,{app-service-address}为能够展示全部告警的服务地址,“60d110ff-f388-48f4-916b-9e637d4886af”为 linkedAppId,“alarmProcessing”为 linkedMenuCode,“site%253DeVKqg4zr”为 linkedStates

linkedMenuCode

false

String

与消息关联的应用内的菜单标识符

linkedStates

false

String

message linked states,与消息关联的URL state

feature

false

I18nString

多语言显示的用户自定义描述。结构见 国际化名称结构体>>

assetId

false

String

与告警消息相关的资产的ID。若告警消息与资产无关,则可不提供。

authUnitId

true

String

在EnOS平台的资产树中打了“auth_unit:true”标签的资产,可以是assetId,也可能是assetId的父节点,是同步到Application Portal中的资产ID,用于校验应用对此资产的权限。如一个光伏电站下有若干个光伏面板,每个光伏面板有各自的资产ID:assetId1、assetId2等。此光伏电站在EnOS平台的资产树被打了“auth_unit:true”的标签。当此光伏电站被成功同步到Application Portal后(authUnitId有效),如果某个组织拥有appId表示的应用,那么在Application Portal中对光伏面板这一资产可见的用户可以收到相应的告警消息。在此例中,assetId为某个光伏面板的ID,authUnitId为光伏电站ID。

callbackUrl

true

String

为用户在消息弹窗中点击 ActionName 对应按钮后,Application Portal回调的完整URL(可支持URL Encode)。此回调为Get请求。例如http://{app-service-address}/callback?appId=3b7aac51-8d3a-4e4f-a16d-7fe297a316e6&messageId=messagett0q22w1299或者https%3a%2f%2f%7bapp-service-address%7d%2fcallback%3fappId%3d3b7aac51-8d3a-4e4f-a16d-7fe297a316e6%26messageId%3dmessagett0q22w1299+,其中{app-service-address}为能够接受并处理回调请求的服务器地址。

actionName

true

I18nString

消息弹框中自定义按钮上的文字。建议中文两字符,英文三个字符,如“确认”和“ACK”。如不提供则不展示。结构见 国际化名称结构体>>

响应参数

名称

数据类型

描述

data

data结构体

null

示例

请求示例

POST
http://{apigw-address}/app-portal-service/v2.1/message/produce
{
  "messages": [
    {
      "zoneOffset": "+08:00",
      "linkedMenuCode": "menucode",
      "linkedAppId": "accessKey",
      "color": 1,
      "ring": 1,
      "messageId": "yunfan01",
      "produceTime": "24/7/2019 11:22:01",
      "body": {
        "default": "This is a test3335",
        "en_US": "This is a test3335",
        "zh_CN": "这是个测试233335"
      },
      "type": 1,
      "tags": [
        {
          "default": "Severe",
          "en_US": "Severe",
          "zh_CN": "严重"
        },
        {
          "default": "Performance Alarm",
          "en_US": "Performance Alarm",
          "zh_CN": "性能告警"
        },
        {
          "default": "Inverter",
          "en_US": "Inverter",
          "zh_CN": "逆变器"
        }
      ],
      "orgId": "yourOrgId",
      "createdAt": "24/7/2019 10:11:18",
      "authUnitId": "7Uq6uP77",
      "deletedAt": "1/1/1970 00:00:00",
      "feature": {
        "default": "This is a feature test3343",
        "en_US": "This is a feature test3343",
        "zh_CN": "这是个特征测试1"
      },
      "assetId": "7Uq6uP77",
      "accessKey": "yourAccessKey",
      "state": 0,
      "linkedStates": "states",
      "updatedAt": "24/7/2019 10:11:18",
      "callbackUrl":"http://{app-service-address}/app-portal/test/v1/callback?appId=3b7aac51-8d3a-4e4f-a16d-7fe297a316e6&messageId=messagett0q22w1299",
      "actionName":
        {
         "en_US":"ACK",
         "zh_CN":"确认"
        }
    }
  ]
}

返回示例

{
  "code": 200,
  "message": "",
  "data": null
}