LiteOS云端对接教程09-LiteOS基于LWM2M对接华为OC平台实战

本文档详述了如何使用LiteOS的OC lwm2m抽象组件与华为OC平台进行对接,包括概述、配置准备、上云实验等步骤。在配置完成后,设备能够实现数据上报和命令接收。实验展示了通过ESP8266设备连接云端并接收命令的实例。
摘要由CSDN通过智能技术生成

1. LiteOS OC lwm2m 抽象组件

概述

为了适应各种各样的使用lwm2m接入华为OC的模式,特采用该层次接口,对上提供应用所需的接口,对下允许接入方式的灵活适配。

oclwm2magent是处理使用lwm2m协议对接华为OC的流程抽象层,允许使用流程进行对接,也允许使用NB芯片内置的流程进行对接。对于应用程序开发者而言,无需关注对接流程的实现细节,仅仅需要调用该模块提供的api即可。

OC lwm2m AL的api接口声明在 中,使用相关的接口需要包含该头文件。

配置并连接

对接服务器的所有信息保存在结构体oc_config_param_t中,其定义在oc_lwm2m_al.h中,如下:

typedef struct
{
    en_oc_boot_strap_mode_t  boot_mode;       ///< bootmode,if boot client_initialize, then the bs must be set
    oc_server_t              boot_server;     ///< which will be used by the bootstrap, if not, set NULL here
    oc_server_t              app_server;      ///< if factory or smart boot, must be set here
    fn_oc_lwm2m_msg_deal     rcv_func;        ///< receive function caller here
    void                    *usr_data;        ///< used for the user
}oc_config_param_t;

其中boot_mode是对接模式,对应华为平台的三种模式:

typedef enum
{
    en_oc_boot_strap_mode_factory = 0,
    en_oc_boot_strap_mode_client_initialize,
    en_oc_boot_strap_mode_sequence,
} en_oc_boot_strap_mode_t;

app_server参数是服务器信息,定义如下:

typedef struct
{
    char *ep_id;                  ///< endpoint identifier, which could be recognized by the server
    char *address;                ///< server address,maybe domain name
    char *port;                   ///< server port
    char *psk_id;                 ///< server encode by psk, if not set NULL here
    char *psk;
    int   psk_len;
} oc_server_t;

参数说明如下:

  • ep_id:设备标识符
  • address:服务器地址
  • port:服务器端口
  • psk_id:DTLS使用,不使用的话设置为NULL

rcv_func是回调函数的函数指针,当设备接收到l

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值