Simulated product dispenser

Dependencies:   HTS221

Fork of mbed-cloud-workshop-connect-HTS221 by Jim Carver

Embed: (wiki syntax)

« Back to documentation index

sn_coap_protocol.h File Reference

sn_coap_protocol.h File Reference

CoAP C-library User protocol interface header file. More...

Go to the source code of this file.

Functions

int16_t sn_coap_protocol_build (struct coap_s *handle, sn_nsdl_addr_s *dst_addr_ptr, uint8_t *dst_packet_data_ptr, sn_coap_hdr_s *src_coap_msg_ptr, void *param)
 Builds Packet data from given CoAP header structure to be sent.
int8_t sn_coap_protocol_exec (struct coap_s *handle, uint32_t current_time)
 Sends CoAP messages from re-sending queue, if there is any.
void sn_coap_protocol_clear_retransmission_buffer (struct coap_s *handle)
 If re-transmissions are enabled, this function removes all messages from the retransmission queue.
int8_t sn_coap_convert_block_size (uint16_t block_size)
 Utility function to convert block size.
int8_t sn_coap_protocol_handle_block2_response_internally (struct coap_s *handle, uint8_t handle_response)
 This function change the state whether CoAP library sends the block 2 response automatically or not.
void sn_coap_protocol_clear_sent_blockwise_messages (struct coap_s *handle)
 This function clears all the sent blockwise messages from the linked list.
void sn_coap_protocol_send_rst (struct coap_s *handle, uint16_t msg_id, sn_nsdl_addr_s *addr_ptr, void *param)
 This function sends a RESET message.
uint16_t sn_coap_protocol_get_configured_blockwise_size (struct coap_s *handle)
 Get configured CoAP payload blockwise size.

Detailed Description

CoAP C-library User protocol interface header file.

Definition in file sn_coap_protocol.h.


Function Documentation

int8_t sn_coap_convert_block_size ( uint16_t  block_size )

Utility function to convert block size.

Parameters:
block_sizeBlock size to convert.
Returns:
Value of range 0 - 6

Definition at line 2316 of file sn_coap_protocol.c.

int16_t sn_coap_protocol_build ( struct coap_s *  handle,
sn_nsdl_addr_s dst_addr_ptr,
uint8_t *  dst_packet_data_ptr,
sn_coap_hdr_s src_coap_msg_ptr,
void *  param 
)

Builds Packet data from given CoAP header structure to be sent.

Parameters:
*dst_addr_ptris pointer to destination address where CoAP message will be sent (CoAP builder needs that information for message resending purposes)
*dst_packet_data_ptris pointer to destination of built Packet data
*src_coap_msg_ptris pointer to source of built Packet data
paramvoid pointer that will be passed to tx/rx function callback when those are called.
Returns:
Return value is byte count of built Packet data.
Note: If message is blockwised, all payload is not sent at the same time
In failure cases:
-1 = Failure in CoAP header structure
-2 = Failure in given pointer (= NULL)
-3 = Failure in Reset message
-4 = Failure in Resending message store
If there is not enough memory (or User given limit exceeded) for storing resending messages, situation is ignored.

Definition at line 407 of file sn_coap_protocol.c.

void sn_coap_protocol_clear_retransmission_buffer ( struct coap_s *  handle )

If re-transmissions are enabled, this function removes all messages from the retransmission queue.

Parameters:
*handlePointer to CoAP library handle

Definition at line 330 of file sn_coap_protocol.c.

void sn_coap_protocol_clear_sent_blockwise_messages ( struct coap_s *  handle )

This function clears all the sent blockwise messages from the linked list.

Parameters:
*handlePointer to CoAP library handle

Definition at line 258 of file sn_coap_protocol.c.

int8_t sn_coap_protocol_exec ( struct coap_s *  handle,
uint32_t  current_time 
)

Sends CoAP messages from re-sending queue, if there is any.

Cleans also old messages from the duplication list and from block receiving list

This function can be called e.g. once in a second but also more frequently.

Parameters:
*handlePointer to CoAP library handle
current_timeis System time in seconds. This time is used for message re-sending timing and to identify old saved data.
Returns:
0 if success -1 if failed

Definition at line 787 of file sn_coap_protocol.c.

uint16_t sn_coap_protocol_get_configured_blockwise_size ( struct coap_s *  handle )

Get configured CoAP payload blockwise size.

Parameters:
*handlePointer to CoAP library handle

Definition at line 1052 of file sn_coap_protocol.c.

int8_t sn_coap_protocol_handle_block2_response_internally ( struct coap_s *  handle,
uint8_t  handle_response 
)

This function change the state whether CoAP library sends the block 2 response automatically or not.

Parameters:
*handlePointer to CoAP library handle
handle_response1 if CoAP library handles the response sending otherwise 0.
Returns:
0 = success, -1 = failure

Definition at line 221 of file sn_coap_protocol.c.

void sn_coap_protocol_send_rst ( struct coap_s *  handle,
uint16_t  msg_id,
sn_nsdl_addr_s addr_ptr,
void *  param 
)

This function sends a RESET message.

Parameters:
*handlePointer to CoAP library handle
msg_idMessage id.
addr_ptrPointer to destination address where CoAP message will be sent
paramPointer that will be passed to tx function callback

Definition at line 1032 of file sn_coap_protocol.c.