Z-Wave Protocol Controller Reference
Z-Wave Command Class Supervision process

Process taking care of monitoring Supervision sessions that the ZPC initiated. More...

Collaboration diagram for Z-Wave Command Class Supervision process:

Classes

struct  supervised_session
 

Macros

#define SUPERVISION_REPORT_TIMEOUT   8000
 Default duration (ms) for a node to return a Supervision Report. More...
 
#define SUPERVISION_SEND_DATA_EMERGENCY_TIMER   60000
 

Typedefs

typedef struct supervised_session supervised_session_t
 

Enumerations

enum  zwave_command_class_supervision_events_t { ZWAVE_COMMAND_CLASS_SUPERVISION_START_TIMER }
 Event definitions for the Z-Wave Command Class Supervision Process. More...
 

Functions

 PROCESS_NAME (zwave_command_class_supervision_process)
 Name the of contiki process for the Supervision Command Class. More...
 
supervision_id_t zwave_command_class_supervision_find_session (uint8_t session_id, zwave_node_id_t node_id, zwave_endpoint_id_t endpoint_id)
 Retrieves a supervised session based on its ID. More...
 
supervised_session_tzwave_command_class_supervision_find_session_by_unique_id (supervision_id_t supervision_id)
 
supervision_id_t zwave_command_class_supervision_create_session (const zwave_controller_connection_info_t *connection, const zwave_tx_options_t *tx_options, on_zwave_tx_send_data_complete_t callback, void *user)
 Creates a new supe a supervised session. More...
 
sl_status_t zwave_command_class_supervision_close_session (supervision_id_t supervision_id)
 Closes a supervised session. More...
 
sl_status_t zwave_command_class_supervision_assign_session_tx_id (supervision_id_t supervision_id, zwave_tx_session_id_t tx_session_id)
 Assigns a Z-Wave TX Session ID to a supervision Session ID. More...
 
void zwave_command_class_supervision_process_log ()
 Logs the state of the Supervision process, with sessions and timers. More...
 

Detailed Description

Process taking care of monitoring Supervision sessions that the ZPC initiated.

Macro Definition Documentation

◆ SUPERVISION_REPORT_TIMEOUT

#define SUPERVISION_REPORT_TIMEOUT   8000

Default duration (ms) for a node to return a Supervision Report.

◆ SUPERVISION_SEND_DATA_EMERGENCY_TIMER

#define SUPERVISION_SEND_DATA_EMERGENCY_TIMER   60000

Typedef Documentation

◆ supervised_session_t

Object containing tracking information for a Supervision Session that the ZPC initiated and supervises

Enumeration Type Documentation

◆ zwave_command_class_supervision_events_t

Event definitions for the Z-Wave Command Class Supervision Process.

Enumerator
ZWAVE_COMMAND_CLASS_SUPERVISION_START_TIMER 

Start a timer for a Supervised session.

Function Documentation

◆ PROCESS_NAME()

PROCESS_NAME ( zwave_command_class_supervision_process  )

Name the of contiki process for the Supervision Command Class.

This is used to register the name of the Supervision Command Clas Process.

◆ zwave_command_class_supervision_assign_session_tx_id()

sl_status_t zwave_command_class_supervision_assign_session_tx_id ( supervision_id_t  supervision_id,
zwave_tx_session_id_t  tx_session_id 
)

Assigns a Z-Wave TX Session ID to a supervision Session ID.

Parameters
supervision_idThe Supervision ID to find among the supervised sessions.
tx_session_idThe Z-Wave Tx session ID to associate to the Supervision Session ID
Returns
sl_status_t indicating if the session ID was found and associated.
  • SL_STATUS_OK if the session was found and associated
  • SL_STATUS_NOT_FOUND if the session was not found
Here is the caller graph for this function:

◆ zwave_command_class_supervision_close_session()

sl_status_t zwave_command_class_supervision_close_session ( supervision_id_t  supervision_id)

Closes a supervised session.

Parameters
supervision_idThe unique Supervision Session ID to find among the supervised sessions.
Returns
sl_status_t indicating if the session was closed.
  • SL_STATUS_OK if the session was found and closed
  • SL_STATUS_NOT_FOUND if the session was not found
Here is the caller graph for this function:

◆ zwave_command_class_supervision_create_session()

supervision_id_t zwave_command_class_supervision_create_session ( const zwave_controller_connection_info_t connection,
const zwave_tx_options_t tx_options,
on_zwave_tx_send_data_complete_t  callback,
void *  user 
)

Creates a new supe a supervised session.

Parameters
connectionConnection info received for the supervision session
tx_optionsTx options received for the supervision session
callbackUser callback function for when the supervision reports statuses. Refer to on_zwave_tx_send_data_complete_t
userUser pointer to pass to the callback function.
Returns
supervision_id_t Unique handle for the Session ID INVALID_SUPERVISION_ID in case of error / multicast transmission
Here is the caller graph for this function:

◆ zwave_command_class_supervision_find_session()

supervision_id_t zwave_command_class_supervision_find_session ( uint8_t  session_id,
zwave_node_id_t  node_id,
zwave_endpoint_id_t  endpoint_id 
)

Retrieves a supervised session based on its ID.

Parameters
session_idThe Supervision Session ID to find among the supervised sessions.
node_id
endpoint_id
Returns
  • supervised_session_t Pointer of the found supervised session if the ID is found
  • NULL If the Session ID is not supervised.
Note
: be careful with the pointer, do not call zwave_command_class_supervision_create_session or zwave_command_class_supervision_close_session while reading or writing using the returned pointer.
Here is the caller graph for this function:

◆ zwave_command_class_supervision_find_session_by_unique_id()

supervised_session_t * zwave_command_class_supervision_find_session_by_unique_id ( supervision_id_t  supervision_id)
Here is the caller graph for this function:

◆ zwave_command_class_supervision_process_log()

void zwave_command_class_supervision_process_log ( )

Logs the state of the Supervision process, with sessions and timers.

Here is the caller graph for this function: