联犀 联犀
首页
使用指南
开发指南
技术分享
  • 中台接口 (opens new window)
  • 物联网接口 (opens new window)
在线体验 (opens new window)
  • gitee (opens new window)
  • github (opens new window)
  • 边缘网关-RHILEX (opens new window)
  • 边缘网关-opengw (opens new window)
首页
使用指南
开发指南
技术分享
  • 中台接口 (opens new window)
  • 物联网接口 (opens new window)
在线体验 (opens new window)
  • gitee (opens new window)
  • github (opens new window)
  • 边缘网关-RHILEX (opens new window)
  • 边缘网关-opengw (opens new window)
  • 应用开发

  • 后端开发

    • 服务开发

    • 物联网

      • 消息推送
        • 多协议开发方案
    • 开发指南
    • 后端开发
    • 物联网
    godLei6
    2024-08-29
    目录

    消息推送

    # 消息推送

    nats默认连接url: nats://127.0.0.1:4222

    # 默认封装结构体

    {
        "trace":"eyJUcmFjZUlEIjoiMDdjNmY2ZWVlZDM2ODYwNGY5NTdlYmUwZjIzZTY1ZDEiLCJTcGFuSUQiOiJmMTk2ODA4N2Y2NDFhMmQxIiwiVHJhY2VGbGFncyI6IjAxIiwiVHJhY2VTdGF0ZSI6IiIsIlJlbW90ZSI6ZmFsc2V9",
        "timestamp":"1670847315923",
        "data":"eyJkZXZpY2UiOnsicHJvZHVjdElEIjoiMjU0cHduS1FzdksiLCJkZXZpY2VOYW1lIjoidGVzdDUifSwidGltZXN0YW1wIjoiMTY3MDg0NzMxNTkxOSJ9"
    }
    
    1
    2
    3
    4
    5

    # 字段定义

    字段名 含义 备注
    trace 链路追踪id base64
    timestamp 消息发生时间戳 毫秒时间戳(string类型)
    data 传递的消息内容 base64

    # 设备登录状态推送

    # topic

    application.device.%s.%s.status.connected
    
    1

    设备登录状态推送 中间两个是产品id和设备名称

    # body

    {
        "device":{
            "productID":"254pwnKQsvK",
            "deviceName":"test5"
        },
        "timestamp":"1670847315919"
    }
    
    1
    2
    3
    4
    5
    6
    7
    # 字段定义
    字段名 含义 备注
    device.productID 产品id
    device.deviceName 设备名
    timestamp 设备连接,断连时间 毫秒时间戳(string类型)

    # 设备登出状态推送

    # topic

    application.device.%s.%s.status.disconnected
    
    1

    设备登出状态推送 中间两个是产品id和设备名称

    # body

    {
        "device":{
            "productID":"254pwnKQsvK",
            "deviceName":"test5"
        },
        "timestamp":"1670847315919"
    }
    
    1
    2
    3
    4
    5
    6
    7
    # 字段定义
    字段名 含义 备注
    device.productID 产品id
    device.deviceName 设备名
    timestamp 设备连接,断连时间 毫秒时间戳(string类型)

    # 设备登录状态推送

    # topic

    application.device.%s.%s.status.connected
    
    1

    设备登录状态推送 中间两个是产品id和设备名称

    # body

    {
        "device":{
            "productID":"254pwnKQsvK",
            "deviceName":"test5"
        },
        "timestamp":"1670847315919"
    }
    
    1
    2
    3
    4
    5
    6
    7
    # 字段定义
    字段名 含义 备注
    device.productID 产品id
    device.deviceName 设备名
    timestamp 设备连接,断连时间 毫秒时间戳(string类型)

    # 设备物模型事件上报通知

    # topic

    application.device.%s.%s.report.thing.event.%s.%s
    
    1

    设备物模型事件上报通知 中间两个是产品id和设备名称,最后两个是事件类型和事件id

    # body

    {
        "device":{
            "productID":"254pwnKQsvK",
            "deviceName":"test5"
        },
        "timestamp":"1670852257719",
        "identifier":"low_power",
        "type":"alert",
        "params":{
            "voltage":2.8
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    # 字段定义
    字段名 含义 备注
    device.productID 产品id
    device.deviceName 设备名
    timestamp 设备连接,断连时间 毫秒时间戳(string类型)
    identifier 推送事件的标识符
    params 事件参数 和物模型上定义的类型一致
    type 事件类型 信息:info 告警:alert 故障:fault

    # 设备物模型属性上报通知

    # topic

    application.device.%s.%s.report.thing.property.%s
    
    1

    设备物模型属性上报通知 中间两个是产品id和设备名称,最后一个是属性id

    # body

    {
        "device":{
            "productID":"254pwnKQsvK",
            "deviceName":"test5"
        },
        "timestamp":"1670850653763",
        "identifier":"GPS_Info",
        "param":{
            "latitude":0.005,
            "longtitude":0.125
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    # 字段定义
    字段名 含义 备注
    device.productID 产品id
    device.deviceName 设备名
    timestamp 设备连接,断连时间 毫秒时间戳(string类型)
    identifier 推送属性的标识符
    param 推送属性的参数 和物模型上定义的类型一致

    # 设备物模型属性多上报通知(v1.3.0+)

    # topic

    application.v2.device.%s.%s.report.thing.property
    
    1

    设备物模型属性上报通知 中间两个是产品id和设备名称

    # body

    {
        "device":{
            "productID":"254pwnKQsvK",
            "deviceName":"test5"
        },
        "timestamp":"1670850653763",
        "identifier":"GPS_Info",
        "params":{
          "GPS_Info":{
            "latitude":0.005,
            "longtitude":0.125
          },
          "swithc": 1
            
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    # 字段定义
    字段名 含义 备注
    device.productID 产品id
    device.deviceName 设备名
    timestamp 设备连接,断连时间 毫秒时间戳(string类型)
    params 推送属性的参数,key为属性标识符 和物模型上定义的类型一致
    上次更新: 2025/02/11, 16:49:10
    分布式存储使用
    多协议开发方案

    ← 分布式存储使用 多协议开发方案→

    Theme by Vdoing | Copyright © 2022-2025 昆明云物通科技有限公司|GNU | 滇ICP备2024043132号-1 |
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式