Skip to content
chipengliu edited this page Mar 12, 2018 · 20 revisions

物联云设备端SDK

腾讯物联云SDK依靠安全且性能强大的数据通道,为物联网领域开发人员提供终端(如传感器, 执行器, 嵌入式设备或智能家电等等)和云端的双向通信能力。

物联云为客户提供了如下能力:

  1. 嵌入式设备快速接入(设备端SDK)
  2. 设备管理
  3. 设备和数据信息安全
  4. 桥接到腾讯云其他产品,对设备数据进行转发消息队列,对设备数据存储/计算

以车联网为例,设备端SDK就是将车载终端连接到腾讯物联云IoT Hub的部分, 也是这组维基页面将要详细介绍的

设备端SDK的概述

架构图

目录和文件组成

+-- LICENSE                 : 软件许可证, 物联云SDK使用MIT协议许可
+-- makefile                : 基于 GNU Make 编译 SDK 的 Makefile
+-- make.settings           : 功能模块配置,可配置是否编译单元测试、是否启用 TLS 加密连接、是否启用 MQTT 消息去重功能等等
+-- README.md               : 快速开始导引, 可浏览该文件快速体验如何在腾讯云创建设备获取设备ID等信息, 并结合设备端SDK连接
+-- external_libs           : 第三方库,包含 googletest 用作单元测试、mbedtls 用作 tls 加密、jsmn 用作 json 解析
+-- certs                   : 客户端非对称加密证书及密钥 key 模板存储目录
+-- samples                 : 示例目录
|   +-- coap                : 演示如何使用通信模块 CoAP 的 API
|   +-- mqtt                : 演示如何使用通信模块 MQTT 的 API
|   +-- ota                 : 演示如何使用模块 OTA 的 API
|   +-- shadow              : 演示如何使用设备影子模块 API
|   +-- scenarized          : 演示官网文档快速开始中场景化开闭门/空调交互的示例
+-- src
    +-- sdk-impl            : SDK 的接口层, 暴露总的接入头文件,和一些 API 的接口封装,以及日志模块实现
    +-- mqtt                : 通信模块, 实现以 MQTT 协议接入
    +-- coap                : 通信模块, 实现以 CoAP 协议接入
    +-- ota                 : 服务模块, 实现 OTA 功能
    +-- shadow              : 服务模块, 实现设备影子
    +-- platform            : 硬件平台抽象层, 存放不同嵌入式设备的抽象层接口实现, 支撑以上模块形成跨平台 SIM7000C 相关文件
    +-- configs             : 硬件平台编译配置, 存放编译系统需要读入的各平台编译方式, 如交叉编译工具链的设置, 软件模块的裁剪等
    +-- scripts             : 编译过程使用的脚本文件目录, 用户不必关注
    +-- device              : 基础模块, 实现全局信息保存, 如连接时的设备名称、产品名称、设备 ID,服务端 CA 证书
    +-- utils               : 基础模块, 实现工具函数, 如 json, http, time 等
+-- sdk-tests               : SDK 测试目录
    +-- multi_thread_test   : 多线程测试目录,针对多线程运行情况下的函数级测试
    +-- unit_test           : 单元测试目录,针对通信模块及服务模块的函数级测试

设备端SDK的编译

关于SDK的编译方法,请查看编译页面

设备端SDK模块介绍

关于SDK模块的组成,请查看模块介绍页面