38 #ifndef LIGHT_CTL_CLIENT_H__ 39 #define LIGHT_CTL_CLIENT_H__ 43 #include "access_reliable.h" 44 #include "light_ctl_common.h" 45 #include "light_ctl_messages.h" 55 #define LIGHT_CTL_CLIENT_MODEL_ID 0x1305 uint32_t light_ctl_client_init(light_ctl_client_t *p_client, uint8_t element_index)
Initializes Light CTL client.
Message format for the Light CTL Temperature Range Set message.
uint16_t access_model_handle_t
Access layer handle type.
void(* light_ctl_temperature_range_state_status_cb_t)(const light_ctl_client_t *p_self, const access_message_rx_meta_t *p_meta, const light_ctl_temperature_range_status_params_t *p_in)
Callback type for Light CTL Temperature Range state related transactions.
light_ctl_temperature_set_msg_pkt_t temperature_set
Storage for the Light CTL Temperature Linear Set message.
uint32_t light_ctl_client_temperature_range_set_unack(light_ctl_client_t *p_client, const light_ctl_temperature_range_set_params_t *p_params, uint8_t repeats)
Sends a Temperature Range Set Unacknowledged message to the server.
access_model_handle_t model_handle
Model handle assigned to this instance.
bool force_segmented
If server should force outgoing messages as segmented messages.
void(* light_ctl_lightness_state_status_cb_t)(const light_ctl_client_t *p_self, const access_message_rx_meta_t *p_meta, const light_ctl_status_params_t *p_in)
Callback type for Light CTL Lightness state related transactions.
light_ctl_temperature_state_status_cb_t light_ctl_temperature_status_cb
Callback for the Light CTL Temperature Status message.
uint32_t light_ctl_client_set(light_ctl_client_t *p_client, const light_ctl_set_params_t *p_params, const model_transition_t *p_transition)
Sends a Set message to the server.
uint32_t light_ctl_client_temperature_get(light_ctl_client_t *p_client)
Sends a Temperature Get message to the server.
light_ctl_client_msg_data_t msg_pkt
Holds the raw message packet data for transactions.
void(* access_publish_timeout_cb_t)(access_model_handle_t handle, void *p_args)
Access layer publish timeout event callback.
Parameters for the Light CTL Default Status message.
light_ctl_client_settings_t settings
Model settings and callbacks for this instance.
access_reliable_cb_t ack_transaction_status_cb
Callback to call after the acknowledged transaction has ended.
light_ctl_temperature_range_set_msg_pkt_t temperature_range_set
Storage for the Light Temperature Range Set message.
Message format for the CTL Temperature Set message.
uint32_t light_ctl_client_default_set(light_ctl_client_t *p_client, const light_ctl_default_set_params_t *p_params)
Sends a Default Set message to the server.
uint32_t light_ctl_client_temperature_range_set(light_ctl_client_t *p_client, const light_ctl_temperature_range_set_params_t *p_params)
Sends a Temperature Range Set message to the server.
uint32_t light_ctl_client_temperature_range_get(light_ctl_client_t *p_client)
Sends a Temperature Range Get message to the server.
access_publish_timeout_cb_t periodic_publish_cb
callback called at the end of the each period for the publishing
uint32_t light_ctl_client_default_get(light_ctl_client_t *p_client)
Sends a Default Get message to the server.
Union for holding current message packet.
void(* light_ctl_default_state_status_cb_t)(const light_ctl_client_t *p_self, const access_message_rx_meta_t *p_meta, const light_ctl_default_status_params_t *p_in)
Callback type for Light CTL Default state related transactions.
light_ctl_default_state_status_cb_t light_ctl_default_status_cb
Callback for Light CTL Default Status message.
const light_ctl_client_callbacks_t * p_callbacks
Callback list.
void(* light_ctl_temperature_state_status_cb_t)(const light_ctl_client_t *p_self, const access_message_rx_meta_t *p_meta, const light_ctl_temperature_status_params_t *p_in)
Callback type for Light CTL Temperature state related transactions.
Access layer acknowledged publish parameter structure.
uint32_t light_ctl_client_set_unack(light_ctl_client_t *p_client, const light_ctl_set_params_t *p_params, const model_transition_t *p_transition, uint8_t repeats)
Sends a Set Unacknowledged message to the server.
uint32_t light_ctl_client_default_set_unack(light_ctl_client_t *p_client, const light_ctl_default_set_params_t *p_params, uint8_t repeats)
Sends a Default Set Unacknowledged message to the server.
nrf_mesh_transmic_size_t
Message MIC size selection.
uint32_t light_ctl_client_temperature_set_unack(light_ctl_client_t *p_client, const light_ctl_temperature_set_params_t *p_params, const model_transition_t *p_transition, uint8_t repeats)
Sends a Temperature Set Unacknowledged message to the server.
uint32_t light_ctl_client_get(light_ctl_client_t *p_client)
Sends a Get message to the server.
Client callback structure.
Message format for the CTL Default Set message.
Message format for the Light CTL Temperature Set message.
Message format for the Light CTL Default Set message.
uint32_t timeout
Reliable message timeout in microseconds.
light_ctl_lightness_state_status_cb_t light_ctl_status_cb
Callback for the Light CTL Status message.
void(* access_reliable_cb_t)(access_model_handle_t model_handle, void *p_args, access_reliable_status_t status)
Access layer acknowledged message callback type.
light_ctl_default_set_msg_pkt_t default_set
Storage for the Light CTL Default Set message.
Parameters for the Light CTL Temperature Status message.
light_ctl_temperature_range_state_status_cb_t light_ctl_temperature_range_status_cb
Callback for Light CTL Temperature Range Status message.
User provided settings and callbacks for the model instance.
Parameters for the Light CTL Status message.
uint32_t light_ctl_client_temperature_set(light_ctl_client_t *p_client, const light_ctl_temperature_set_params_t *p_params, const model_transition_t *p_transition)
Sends a Temperature Set message to the server.
Message format for the CTL Temperature Range Set message.
Packed message structure typedefs are used for packing and unpacking byte stream. ...
Parameters for the Light CTL Temperature Range Status message.
Generic Transition parameters for the model messages.
Unpacked message structure typedefs are used for API interfaces and for implementing model code...
nrf_mesh_transmic_size_t transmic_size
TransMIC size used by the outgoing server messages.