广联达筑联:工业级物联网云平台 广联达筑联:工业级物联网云平台
首页
开发侧文档
用户侧文档
首页
开发侧文档
用户侧文档
  • 平台介绍

  • 物联网平台

  • 边缘计算平台

    • 云平台

    • 边缘服务

    • 边缘SDK

      • edge-subdevice-sdk-go sdk
        • 1、功能介绍:
        • 2、开发者接入方式:
          • 2.1、new 设备struct
          • 2.2、struct实现接口
          • 2.3 、new sdk
          • 2.4、请求子设备拓扑关系,获取子设备的id slice
          • 2.5、请求子设备的配置信息:
          • 2.6、设备上线:
          • 2.7、业务逻辑处理
        • 3、注意事项:
    • debug工具

  • 应用硬件开发平台

  • API文档

  • 开发侧文档
  • 边缘计算平台
  • 边缘SDK
2021-11-29

edge-subdevice-sdk-go sdk

# edge-subdevice-sdk-go sdk

# 1、功能介绍:

子设备管理,包括:子设备上下线、属性上报、命令上报、子设备拓扑管理、命令执行等。

# 2、开发者接入方式:

目前暂支持 golang 开发的服务接入。在服务中导入 sdk,执行以下步骤:

# 2.1、new 设备struct

根据子设备特点新建子设备的 struct, 比如

type Bluetooth struct {
     
}
1
2
3

# 2.2、struct实现接口

新的 struct 需要实现 DeviceOperator interface{} 的方法:

type DeviceOperator interface {
    PropertiesSet(models.Props)                                // 属性配置
    DeviceConfig([]models.DeviceConfig)                        // 设备配置
    CommandExec(cmd models.CmdReq) (models.CmdResponse, error) // 处理云端的命令请求
    DeviceTopChange([]models.Topo)                             // 修改拓扑关系
}
1
2
3
4
5
6

# 2.3 、new sdk

new 一个本 sdk 提供的 struct SubDeviceHandler:

h, err := handler.New(deviceOperator DeviceOperator, mqUrl string)
1

第一个参数为第一步新建的子设备 struct 类型的实例; mqUrl 为 nats 服务的连接信息,使用边缘计算方案部署的服务 默认为nats://127.0.0.1:4222,

# 2.4、请求子设备拓扑关系,获取子设备的id slice

h.GetTopos()
1

# 2.5、请求子设备的配置信息:

h.GetConfig(deviceIds []string)
1

# 2.6、设备上线:

调用上线方法

h.Online()
1

# 2.7、业务逻辑处理

h.ReportProperties // 属性上报
h.ReportEvent(msg []models.Event)  // 时间上报
h.Offline(msg []string) // 设备离线
1
2
3

# 3、注意事项:

(1). 多条数据上报,单次默认限制最大100条 (2). sdk example/bluetooth 目录提供了一个简单的例子。

上次更新: 2021-12-01 16:48:01

← 云边安全策略 edge-debug使用说明→

  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式