在LwM2M简介中有提到对象定义及资源定义,LwM2M Model即LwM2M协议定义的对象资源模型。LwM2M定义了资源模型,所有信息都可以抽象为资源以提供访问。资源是对象的内在组成,隶属于对象,LwM2M客户端可以拥有任意数量的资源。和对象一样,资源也可以有多个实例。

OMA资源模型由OMA统一管理,现有模型列表参照
https://github.com/OpenMobileAlliance/lwm2m-registry
https://devtoolkit.openmobilealliance.org/OEditor/Default

OMA定义了7个标准对象,LwM2M协议为这些对象及其资源已经定义了固定的ID。用户也可以自定义对象,但需要在GitHub提出issue。对象ID的分配范围如下:

oma Range 0 – 1023 保留给OMA工作组定义的对象。
ext Range 2048 – 10240 专用于第三方标准组织或联盟。
x Range 10241 – 26240 专用于公司或个人。
x Range 26241 – 32768 专用于供应商生产的对象以供重复使用。
x Range 32769 – 42768 专用于供应商保留的对象块(最多50个)

以上在LwM2M对象资源的创建注册标准中都有提到
http://www.openmobilealliance.org/documents/whitepapers/OMA-ORG-Guidelines_Creation_Registration_LwM2M_Objects_Resources-V1_0_1-20190115-A.pdf

那么如何定义申请model呢?可以借助LwM2M 编辑器:
https://devtoolkit.openmobilealliance.org/OEditor/LWMOEdit

编辑手册参考如下:
https://wiki.openmobilealliance.org/display/TOOL/eLwM2M+Editor
https://github.com/OpenMobileAlliance/lwm2m-registry/wiki/Guidelines

定义申请步骤如下:

步骤描述:


附model.xml文件示例:

<?xml version="1.0" encoding="utf-8"?>
<LWM2M  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://openmobilealliance.org/tech/profiles/LWM2M.xsd"><Object ObjectType="MODefinition"><Name>Temperature</Name><Description1>Description: This IPSO object should be used with a temperature sensor to report a temperature measurement.  It also provides resources for minimum/maximum measured values and the minimum/maximum range that can be measured by the temperature sensor. An example measurement unit is degrees Celsius (ucum:Cel).</Description1><ObjectID>3303</ObjectID><ObjectURN>urn:oma:lwm2m:ext:3303</ObjectURN><MultipleInstances>Multiple</MultipleInstances><Mandatory>Optional</Mandatory><Resources><Item ID="5700"><Name>Sensor Value</Name><Operations>R</Operations><MultipleInstances>Single</MultipleInstances><Mandatory>Mandatory</Mandatory><Type>Float</Type><RangeEnumeration></RangeEnumeration><Units>Defined by “Units” resource.</Units><Description>Last or Current Measured Value from the Sensor</Description></Item><Item ID="5601"><Name>Min Measured Value</Name><Operations>R</Operations><MultipleInstances>Single</MultipleInstances><Mandatory>Optional</Mandatory><Type>Float</Type><RangeEnumeration></RangeEnumeration><Units>Defined by “Units” resource.</Units><Description>The minimum value measured by the sensor since power ON or reset</Description></Item><Item ID="5602"><Name>Max Measured Value</Name><Operations>R</Operations><MultipleInstances>Single</MultipleInstances><Mandatory>Optional</Mandatory><Type>Float</Type><RangeEnumeration></RangeEnumeration><Units>Defined by “Units” resource.</Units><Description>The maximum value measured by the sensor since power ON or reset</Description></Item><Item ID="5603"><Name>Min Range Value</Name><Operations>R</Operations><MultipleInstances>Single</MultipleInstances><Mandatory>Optional</Mandatory><Type>Float</Type><RangeEnumeration></RangeEnumeration><Units>Defined by “Units” resource.</Units><Description>The minimum value that can be measured by the sensor</Description></Item><Item ID="5604"><Name>Max Range Value</Name><Operations>R</Operations><MultipleInstances>Single</MultipleInstances><Mandatory>Optional</Mandatory><Type>Float</Type><RangeEnumeration></RangeEnumeration><Units>Defined by “Units” resource.</Units><Description>The maximum value that can be measured by the sensor</Description></Item><Item ID="5701"><Name>Sensor Units</Name><Operations>R</Operations><MultipleInstances>Single</MultipleInstances><Mandatory>Optional</Mandatory><Type>String</Type><RangeEnumeration></RangeEnumeration><Units></Units><Description>Measurement Units Definition e.g. “Cel” for Temperature in Celsius.</Description></Item><Item ID="5605"><Name>Reset Min and Max Measured Values</Name><Operations>E</Operations><MultipleInstances>Single</MultipleInstances><Mandatory>Optional</Mandatory><Type>String</Type><RangeEnumeration></RangeEnumeration><Units></Units><Description>Reset the Min and Max Measured Values to Current Value</Description></Item></Resources><Description2></Description2></Object>
</LWM2M>

定义申请OMA LwM2M Model Object相关推荐

  1. AttributeError: 'Model' object has no attribute 'target_tensors'

    使用TPU时候碰到的问题, 完整问题复现如下: WARNING:tensorflow:Keras support is now deprecated in support of TPU Strateg ...

  2. AttributeError: ‘Model‘ object has no attribute ‘predict_classes‘ 的解决方案

    使用keras训练好了mnist数字识别模型后,准备拿来做预测. 以下是预测代码: #coding:utf-8 import cv2 import numpy as np from keras.mod ...

  3. python里的class定义类为什么括号有object

    很多同学有疑问,为什么python里的class定义类括号有object 当我在python编辑器里输入object后,然后按住ctrl键+鼠标左键 即可查看object里的方法 class obje ...

  4. 初学者-python中自定义类的已有self定义,后面使用出现object has no attribute问题

    修改别人python代码,会遇到在类的init中已定义self,但后面使用还是找不到定义的self.*,其中一个原因是init中self定义顺序的问题,比如:如下为正确的 class LSTM(obj ...

  5. python2中为什么在进行类定义时最好要加object

    class Student(object):def __init__(self, name, score):self.name = nameself.score = scoredef print_sc ...

  6. AttributeError: ‘Model‘ object has no attribute ‘_get_distribution_strategy

    先参考了以下两位博主的方法,发现不行: https://blog.csdn.net/weixin_39653948/article/details/105002087 https://blog.csd ...

  7. Django Model 定义语法

    版本:1.7 主要来源:https://docs.djangoproject.com/en/1.7/topics/db/models/ 简单用法 from django.db import model ...

  8. BC26通过LWM2M接入电信AEP平台(非透传模式 Json格式)

    透传模式接入可以看 https://blog.csdn.net/qlexcel/article/details/117217287 LWM2M协议简介   LwM2M(lightweight Mach ...

  9. 【IoT】基于NB-IoT的LWM2M协议浅析

    LWM2M 协议是 OMA 组织制定的轻量化的 M2M 协议,主要面向基于蜂窝的窄带物联网(Narrow Band Internet of Things, NB-IoT)场景下物联网应用,聚焦于低功耗 ...

最新文章

  1. C# DataSet与DataTable的区别和用法
  2. docker dockerfile 映射端口范围 批量映射端口
  3. 没学过python、但是还是有公司要-学习python 基础都会了 为什么还是做不出项目呢?...
  4. 小米网抢购系统开发实践和我的个人观察
  5. #pragma comment和#pragma 预处理指令详解
  6. python实现模糊搜索_Python 代码实现模糊查询
  7. 解决ajax无法给js全局变量赋值的问题
  8. Mapreduce和yarn-内存设置
  9. c语言兔子序列答案,C语言经典题目——兔子生兔子(示例代码)
  10. FR公式形态定义及运用范例
  11. 最详细的JavaScript高级教程(十一)正则表达式
  12. 探索变量之间的关系(python3)
  13. Gentoo 教程:基本系统安装
  14. C#渐变色方法 实例
  15. 中国省市地图json数据包及解析
  16. JAVA使用jacob判断word附件是否加密
  17. Java基础-基础知识汇总
  18. python标点符号分中英文嘛_Python处理中文标点符号大集合
  19. uniapp页面显示服务器图片,uniapp实现加载图片失败显示占位图
  20. 小米网络信号测试软件,小米11信号怎么样_小米11信号测试

热门文章

  1. ubuntu linux通过rclone 挂载onedrive 到本地磁盘
  2. 阶段总结【博学谷学习记录】超强总结,用心分享
  3. 微软e5服务器,微软发布Office 365 E5计划
  4. vscode latex 字数统计
  5. 当window.opener无法调用时的原因与解决方案
  6. 什么是实时操作系统(RTOS)
  7. 共享内存shmget的郁闷
  8. Java根据两点经纬度计算距离
  9. Ghost高级教程——克隆备份
  10. Oracle - 优化器(Optimizer)- 01概念