 |
m2mb API docs
30.00.007
m2mb API sets documentation
|
Go to the documentation of this file.
22 #ifndef M2M_M2MB_LWM2M_API_H
23 #define M2M_M2MB_LWM2M_API_H
28 #define LWM2M_STRING_MAX_LENGTH ( 20 )
29 #define LWM2M_STAT_STRING_MAX_LENGTH ( 10 )
30 #define LWM2M_STS_ISBSTSRV_MAX_VALUE ( 1 )
31 #define LWM2M_STS_EXTRA_CHARS_IN_URL ( 3 )
32 #define LWM2M_STS_MIN_DATA_SIZE ( 128 )
33 #define M2MB_LWM2M_ONE_BYTE ( 1 )
34 #define M2MB_LWM2M_MAX_ENDPOINT_NAME_LEN ( 64 )
35 #define M2MB_LWM2M_DTLS_PSK_MAX_KEY_LEN ( 64 )
38 typedef HANDLE M2MB_LWM2M_HANDLE;
42 M2MB_LWM2M_URI_0_FIELDS = 0,
43 M2MB_LWM2M_URI_1_FIELDS,
44 M2MB_LWM2M_URI_2_FIELDS,
45 M2MB_LWM2M_URI_3_FIELDS,
46 M2MB_LWM2M_URI_4_FIELDS,
47 M2MB_LWM2M_URI_MAX_NUM
48 } M2MB_LWM2M_URI_LENGTH_E;
52 M2MB_LWM2M_MODE_NO_ACK,
55 M2MB_LWM2M_MODE_MAX_NUM
56 } M2MB_LWM2M_EN_MODE_E;
60 M2MB_LWM2M_ACTION_ACK = 1,
61 M2MB_LWM2M_ACTION_DEFER,
62 M2MB_LWM2M_ACTION_MAX_NUM
63 } M2MB_LWM2M_ACK_ACTION_E;
67 M2MB_LWM2MENA_CMD_TYPE_SET = 0,
68 M2MB_LWM2MENA_CMD_TYPE_READ,
69 M2MB_LWM2MENA_CMD_TYPE_MAX_NUM
70 } M2MB_LWM2MENA_CMD_TYPE_E;
75 M2MB_LWM2M_ENABLE_RES = 0,
76 M2MB_LWM2M_DISABLE_RES,
83 M2MB_LWM2M_GET_STAT_RES,
86 M2MB_LWM2M_NEW_INST_RES,
87 M2MB_LWM2M_NFYACK_STATUS_RES,
88 M2MB_LWM2M_NFYACK_URI_RES,
89 M2MB_LWM2M_NFYACK_LIST_RES,
90 M2MB_LWM2M_GET_TYPE_RES,
93 M2MB_LWM2M_INJKEYS_RES,
96 M2MB_LWM2M_UPD_REG_IND = 30,
97 M2MB_LWM2M_SMS_PUSH_IND,
98 M2MB_LWM2M_NOTIFY_IND,
99 M2MB_LWM2M_NOTIFY_MON_IND,
102 M2MB_LWM2M_CONN_REQ_IND = 60,
103 M2MB_LWM2M_SESSION_END_IND,
104 M2MB_LWM2M_SESSION_INFO_IND,
105 M2MB_LWM2M_SRV_INFO_IND,
106 M2MB_LWM2M_MON_INFO_IND,
107 M2MB_LWM2M_NFYACK_INFO_IND,
108 M2MB_LWM2M_EVENT_MAX_NUM
114 M2MB_LWM2M_CONNREQ_CAUSE_BOOTSTRAP,
115 M2MB_LWM2M_CONNREQ_CAUSE_REGISTRATION,
116 M2MB_LWM2M_CONNREQ_CAUSE_REREG,
117 M2MB_LWM2M_CONNREQ_CAUSE_UPDATE,
118 M2MB_LWM2M_CONNREQ_CAUSE_SMS,
119 M2MB_LWM2M_CONNREQ_CAUSE_NOTIFY,
120 M2MB_LWM2M_CONNREQ_CAUSE_DEREGISTRATION,
121 M2MB_LWM2M_CONNREQ_CAUSE_MAX_NUM
122 } M2MB_LWM2M_CONNREQ_CAUSE_E;
128 M2MB_LWM2M_RES_SUCCESS = 0,
130 M2MB_LWM2M_RES_FAIL_NO_ACTION,
131 M2MB_LWM2M_RES_FAIL_UNSUPPORTED,
132 M2MB_LWM2M_RES_FAIL_NOT_ALLOWED,
133 M2MB_LWM2M_RES_FAIL_BAD_ARGS,
134 M2MB_LWM2M_RES_FAIL_BAD_URI,
137 M2MB_LWM2M_RES_NETWORK_ERROR = 50,
138 M2MB_LWM2M_RES_HOST_UNREACH,
139 M2MB_LWM2M_RES_SOCKET_ERROR,
140 M2MB_LWM2M_RES_DTLS_ERROR,
143 M2MB_LWM2M_RES_PROT_SUCCESS = 200,
144 M2MB_LWM2M_RES_PROT_NOT_FOUND,
145 M2MB_LWM2M_RES_PROT_NOT_ALLOWED,
146 M2MB_LWM2M_RES_PROT_UNSUPPORTED,
147 M2MB_LWM2M_RES_PROT_INTERNAL,
148 M2MB_LWM2M_RES_PROT_UNKNOWN
149 } M2MB_LWM2M_RESULT_E;
153 M2MB_LWM2M_IF_STATE_NONE,
155 M2MB_LWM2M_IF_STATE_DISABLED,
156 M2MB_LWM2M_IF_STATE_ACK_WAIT,
157 M2MB_LWM2M_IF_STATE_ACTIVE,
158 M2MB_LWM2M_IF_STATE_IDLE,
159 M2MB_LWM2M_IF_STATE_DEREG_WAIT,
160 M2MB_LWM2M_IF_STATE_DEREGISTERING,
162 M2MB_LWM2M_IF_STATE_MAX
163 } M2MB_LWM2M_IF_STATE_E;
168 M2MB_LWM2M_CL_STATE_DISABLED,
169 M2MB_LWM2M_CL_STATE_BOOTSTRAPPING,
170 M2MB_LWM2M_CL_STATE_BOOTSTRAPPED,
171 M2MB_LWM2M_CL_STATE_REGISTERING,
172 M2MB_LWM2M_CL_STATE_REGISTERED,
173 M2MB_LWM2M_CL_STATE_DEREGISTERING,
174 M2MB_LWM2M_CL_STATE_SUSPENDED,
176 M2MB_LWM2M_CL_STATE_MAX
177 } M2MB_LWM2M_CL_STATE_E;
181 M2MB_LWM2M_SET_DATA_TYPE_INTEGER,
182 M2MB_LWM2M_SET_DATA_TYPE_FLOAT,
183 M2MB_LWM2M_SET_DATA_TYPE_STRING,
184 M2MB_LWM2M_SET_DATA_TYPE_HEX_BINARY,
186 M2MB_LWM2M_SET_DATA_TYPE_MAX
187 } M2MB_LWM2M_SET_DATA_TYPE_E;
191 M2MB_LWM2M_INFO_FOTA_REBOOT,
192 M2MB_LWM2M_INFO_DEVICE_REBOOT,
193 M2MB_LWM2M_INFO_RESOURCE_EXECUTE,
195 M2MB_LWM2M_INFO_ID_MAX
196 } M2MB_LWM2M_INFO_ID_E;
200 M2MB_LWM2M_MON_DISABLE = 0,
201 M2MB_LWM2M_MON_ENABLE,
202 M2MB_LWM2M_MON_MAX_NUM
203 } M2MB_LWM2M_MON_ACTION_E;
207 M2MB_LWM2M_MON_MODE_SET_CMD = 0,
208 M2MB_LWM2M_MON_MODE_READ_CMD,
209 M2MB_LWM2M_MON_MODE_MAX_NUM
210 } M2MB_LWM2M_MON_MODE_E;
291 M2MB_LWM2M_EN_MODE_E mode;
293 UINT8 guardRequestEventSecs;
294 UINT8 guardReleaseEventSecs;
295 M2MB_LWM2MENA_CMD_TYPE_E commandType;
300 M2MB_LWM2M_ACK_ACTION_E action;
325 UINT8 bootstrapRequest;
326 UINT32 serverTableId;
337 CHAR endpoint_name[M2MB_LWM2M_MAX_ENDPOINT_NAME_LEN+1];
338 CHAR identity[M2MB_LWM2M_DTLS_PSK_MAX_KEY_LEN+1];
339 CHAR secret_key[M2MB_LWM2M_DTLS_PSK_MAX_KEY_LEN+1];
355 M2MB_LWM2M_RESULT_E result;
356 M2MB_LWM2M_IF_STATE_E status;
357 M2MB_LWM2M_EN_MODE_E mode;
359 UINT8 guardRequestEventSecs;
360 UINT8 guardReleaseEventSecs;
361 CHAR clStatusString[LWM2M_STAT_STRING_MAX_LENGTH];
366 M2MB_LWM2M_RESULT_E result;
367 M2MB_LWM2M_IF_STATE_E status;
372 M2MB_LWM2M_RESULT_E result;
373 M2MB_LWM2M_IF_STATE_E status;
378 M2MB_LWM2M_RESULT_E result;
387 M2MB_LWM2M_RESULT_E result;
397 M2MB_LWM2M_RESULT_E result;
403 M2MB_LWM2M_RESULT_E result;
411 M2MB_LWM2M_RESULT_E result;
419 M2MB_LWM2M_RESULT_E result;
420 M2MB_LWM2M_IF_STATE_E status;
421 M2MB_LWM2M_CL_STATE_E clStatus;
422 UINT32 remainingSecs;
423 UINT32 remainingMsecs;
428 M2MB_LWM2M_RESULT_E result;
433 M2MB_LWM2M_RESULT_E result;
440 M2MB_LWM2M_CONNREQ_CAUSE_E reason;
447 M2MB_LWM2M_RESULT_E result;
448 M2MB_LWM2M_IF_STATE_E status;
454 M2MB_LWM2M_INFO_ID_E info;
461 M2MB_LWM2M_CL_STATE_E info;
470 M2MB_LWM2M_MON_MODE_E mode;
471 M2MB_LWM2M_MON_ACTION_E action;
476 M2MB_LWM2M_RESULT_E result;
477 M2MB_LWM2M_MON_MODE_E mode;
495 M2MB_LWM2M_RESULT_E result;
591 typedef void ( *m2mb_lwm2m_ind_callback )( M2MB_LWM2M_HANDLE h,
M2MB_LWM2M_EVENT_E event, UINT16 resp_size,
void *resp_struct,
void *userdata );
643 M2MB_RESULT_E
m2mb_lwm2m_init( M2MB_LWM2M_HANDLE *h, m2mb_lwm2m_ind_callback cb,
void *cb_user_param );
M2MB_RESULT_E m2mb_lwm2m_get_stat(M2MB_LWM2M_HANDLE h)
m2mb_lwm2m_get_stat reads the current status of the LwM2M client
the m2mb_lwm2m_fota_ack request data structure
Definition: m2mb_lwm2m.h:577
M2MB_LWM2M_FOTA_MODE_E
the fota modes supported by the m2mb lwm2m
Definition: m2mb_lwm2m.h:216
Definition: m2mb_lwm2m.h:269
Definition: m2mb_lwm2m.h:313
Definition: m2mb_lwm2m.h:289
Definition: m2mb_lwm2m.h:445
Definition: m2mb_lwm2m.h:482
M2MB_RESULT_E m2mb_lwm2m_get_resource_type(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri, UINT16 *resType)
m2mb_lwm2m_get_resource_type propagates the resource type for a required resource.
Definition: m2mb_lwm2m.h:265
the m2mb_lwm2m_fota_ack response data structure
Definition: m2mb_lwm2m.h:586
M2MB_LWM2M_FOTA_ACK_E action
Definition: m2mb_lwm2m.h:579
M2MB_LWM2M_FOTA_MODE_E mode
Definition: m2mb_lwm2m.h:559
M2MB_LWM2M_NFY_STATE_E nfyState
Definition: m2mb_lwm2m.h:549
M2MB_LWM2M_FOTA_MODE_E mode
Definition: m2mb_lwm2m.h:569
Definition: m2mb_lwm2m.h:274
Definition: m2mb_lwm2m.h:91
UINT16 agent
Definition: m2mb_lwm2m.h:521
Definition: m2mb_lwm2m.h:241
M2MB_LWM2M_RESULT_E result
Definition: m2mb_lwm2m.h:532
Definition: m2mb_lwm2m.h:275
Definition: m2mb_lwm2m.h:258
Definition: m2mb_lwm2m.h:232
Definition: m2mb_lwm2m.h:474
Definition: m2mb_lwm2m.h:364
Definition: m2mb_lwm2m.h:335
Definition: m2mb_lwm2m.h:264
Definition: m2mb_lwm2m.h:271
M2MB_RESULT_E m2mb_lwm2m_get(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri, void *outbuf, UINT16 outbuflen)
m2mb_lwm2m_get reads the value of a LwM2M resource at module side
M2MB_RESULT_E m2mb_lwm2m_enable(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_ENABLE_REQ_T *en_params)
m2mb_lwm2m_enable starts LwM2M client registration
Definition: m2mb_lwm2m.h:283
M2MB_LWM2M_RESULT_E result
Definition: m2mb_lwm2m.h:568
M2MB_RESULT_E m2mb_lwm2m_ack(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_ACK_REQ_T *ack)
m2mb_lwm2m_ack informs LwM2M client about network availability
Definition: m2mb_lwm2m.h:285
Definition: m2mb_lwm2m.h:468
M2MB_LWM2M_KEY_ACTION_E
Definition: m2mb_lwm2m.h:252
M2MB_RESULT_E m2mb_lwm2m_fota_ack(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_FOTA_ACK_REQ_T *ack_params)
m2mb_lwm2m_fota_ack sends the ack for the required operation.
Definition: m2mb_lwm2m.h:221
Definition: m2mb_lwm2m.h:452
Definition: m2mb_lwm2m.h:417
Definition: m2mb_lwm2m.h:304
M2MB_RESULT_E m2mb_lwm2m_newinst(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri, M2MB_LWM2M_NEW_INST_REQ_T *new_inst_params)
m2mb_lwm2m_newinst creates a specified instance for a specified object
M2MB_RESULT_E m2mb_lwm2m_deinit(M2MB_LWM2M_HANDLE h)
m2mb_lwm2m_deinit deinitializes LwM2M service for current client.
Definition: m2mb_lwm2m.h:370
M2MB_RESULT_E m2mb_lwm2m_disable(M2MB_LWM2M_HANDLE h)
m2mb_lwm2m_disable triggers LwM2M client deregistration.
Definition: m2mb_lwm2m.h:242
Definition: m2mb_lwm2m.h:395
Definition: m2mb_lwm2m.h:376
Definition: m2mb_lwm2m.h:488
Definition: m2mb_lwm2m.h:92
Definition: m2mb_lwm2m.h:438
Definition: m2mb_lwm2m.h:544
Definition: m2mb_lwm2m.h:278
UINT16 agent
Definition: m2mb_lwm2m.h:533
M2MB_RESULT_E m2mb_lwm2m_write(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri, void *inbuf, UINT16 inbuflen)
m2mb_lwm2m_write writes the LwM2M resource at the given URI
Definition: m2mb_lwm2m.h:218
M2MB_LWM2M_DATA_TYPE_E
Definition: m2mb_lwm2m.h:260
Definition: m2mb_lwm2m.h:385
Definition: m2mb_lwm2m.h:256
Definition: m2mb_lwm2m.h:431
Definition: m2mb_lwm2m.h:267
UINT16 agent
Definition: m2mb_lwm2m.h:508
UINT16 agent
Definition: m2mb_lwm2m.h:547
Definition: m2mb_lwm2m.h:220
Definition: m2mb_lwm2m.h:493
M2MB_RESULT_E m2mb_lwm2m_injkeys(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_KEY_ACTION_E action, M2MB_LWM2M_KEYS_T *keys)
m2mb_lwm2m_injkeys allows to inject or delete Endpoint Name and Keys for a given agent.
M2MB_RESULT_E m2mb_lwm2m_set(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri, void *inbuf, UINT16 inbuflen)
m2mb_lwm2m_set sets the value of a LwM2M resource at module side
M2MB_LWM2M_RESULT_E result
Definition: m2mb_lwm2m.h:588
the m2mb_lwm2m_fota_cfg request data structure
Definition: m2mb_lwm2m.h:557
Definition: m2mb_lwm2m.h:348
Definition: m2mb_lwm2m.h:286
Definition: m2mb_lwm2m.h:298
Definition: m2mb_lwm2m.h:262
Definition: m2mb_lwm2m.h:409
M2MB_LWM2M_OBJ_URI_T uri
Definition: m2mb_lwm2m.h:546
Definition: m2mb_lwm2m.h:243
M2MB_LWM2M_RESULT_E result
Definition: m2mb_lwm2m.h:350
M2MB_LWM2M_EVENT_E
Definition: m2mb_lwm2m.h:72
M2MB_RESULT_E m2mb_lwm2m_nfy_ack_uri(M2MB_LWM2M_HANDLE h, BOOLEAN add, M2MB_LWM2M_OBJ_URI_T *uri)
m2mb_lwm2m_nfy_ack_uri adds or removes a resource URI to the list for Notify Ack reporting
Definition: m2mb_lwm2m.h:254
Definition: m2mb_lwm2m.h:401
M2MB_LWM2M_OBJ_URI_T * uriList
Definition: m2mb_lwm2m.h:534
Definition: m2mb_lwm2m.h:270
Definition: m2mb_lwm2m.h:277
Definition: m2mb_lwm2m.h:426
Definition: m2mb_lwm2m.h:257
Definition: m2mb_lwm2m.h:268
Definition: m2mb_lwm2m.h:222
the m2mb_lwm2m_fota_cfg response data structure
Definition: m2mb_lwm2m.h:566
M2MB_LWM2M_RESULT_E result
Definition: m2mb_lwm2m.h:507
UINT8 listElementsNumber
Definition: m2mb_lwm2m.h:535
M2MB_RESULT_E m2mb_lwm2m_mon(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri, M2MB_LWM2M_MON_REQ_T *mon_params)
m2mb_lwm2m_mon sets the monitoring status an LwM2M resource at module side
M2MB_RESULT_E m2mb_lwm2m_agent_config(M2MB_LWM2M_HANDLE h, UINT16 agentID)
m2mb_lwm2m_agent_config propagates the specified client for a specific operation (such as read,...
Definition: m2mb_lwm2m.h:518
Definition: m2mb_lwm2m.h:505
M2MB_LWM2M_RESULT_E result
Definition: m2mb_lwm2m.h:520
M2MB_RESULT_E m2mb_lwm2m_sts(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_STS_URI_T *reqStsStructure)
m2mb_lwm2m_sts sets the next server's address
Definition: m2mb_lwm2m.h:231
M2MB_RESULT_E m2mb_lwm2m_read(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri, void *outbuf, UINT16 outbuflen)
m2mb_lwm2m_read reads the LwM2M resource at the given URI
BOOLEAN enabled
Definition: m2mb_lwm2m.h:509
Definition: m2mb_lwm2m.h:255
Definition: m2mb_lwm2m.h:219
M2MB_RESULT_E m2mb_lwm2m_nfy_ack_status(M2MB_LWM2M_HANDLE h, BOOLEAN set, BOOLEAN enable)
m2mb_lwm2m_nfy_ack_status sets or gets the flag to enable or disable Notify Ack reporting
Definition: m2mb_lwm2m.h:279
M2MB_RESULT_E m2mb_lwm2m_fota_cfg(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_FOTA_CFG_REQ_T *cfg_params)
m2mb_lwm2m_fota_cfg sets and stores the fota mode.
Definition: m2mb_lwm2m.h:459
M2MB_RESULT_E m2mb_lwm2m_nfy_ack_list(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uriList, UINT8 listElementsNumber)
m2mb_lwm2m_nfy_ack_list retrieves the list for Notify Ack reporting
M2MB_RESULT_E m2mb_lwm2m_init(M2MB_LWM2M_HANDLE *h, m2mb_lwm2m_ind_callback cb, void *cb_user_param)
m2mb_lwm2m_init initializes, for current client, the capability to interact with LwM2M agent.
Definition: m2mb_lwm2m.h:280
Definition: m2mb_lwm2m.h:353
M2MB_LWM2M_NFY_STATE_E
Definition: m2mb_lwm2m.h:239
Definition: m2mb_lwm2m.h:319
M2MB_RESULT_E m2mb_lwm2m_exec(M2MB_LWM2M_HANDLE h, M2MB_LWM2M_OBJ_URI_T *uri)
m2mb_lwm2m_exec executes the LwM2M resource at the given URI
Definition: m2mb_lwm2m.h:266
UINT16 shServerId
Definition: m2mb_lwm2m.h:548
M2MB_LWM2M_FOTA_ACK_E
Definition: m2mb_lwm2m.h:229
Definition: m2mb_lwm2m.h:530
Definition: m2mb_lwm2m.h:276