nRF5 SDK for Mesh v5.0.0
Data Structures | Macros | Typedefs | Functions
Scene Setup server model interface

Data Structures

struct  scene_setup_server_state_cbs_t
 Transaction callbacks for the Scene states. More...
 
struct  scene_server_settings_t
 User provided settings and callbacks for the model instance. More...
 
struct  scene_server_t
 
struct  scene_setup_server_callbacks_t
 Scene server callback list. More...
 
struct  scene_setup_server_settings_t
 User provided settings and callbacks for the model instance. More...
 
struct  scene_setup_server_t
 

Macros

#define SCENE_SERVER_MODEL_ID   0x1203
 Server model ID.
 
#define SCENE_SETUP_SERVER_MODEL_ID   0x1204
 Server model ID.
 

Typedefs

typedef void(* scene_state_store_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, const scene_store_params_t *p_in, scene_register_status_params_t *p_out)
 Callback type for Scene Store/Store Unacknowledged message. More...
 
typedef void(* scene_state_delete_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, const scene_delete_params_t *p_in, scene_register_status_params_t *p_out)
 Callback type for Scene Delete/Delete Unacknowledged message. More...
 
typedef void(* scene_state_get_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, scene_status_params_t *p_out)
 Callback type for Scene Get message. More...
 
typedef void(* scene_state_register_get_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, scene_register_status_params_t *p_out)
 Callback type for Scene Register Get message. More...
 
typedef void(* scene_state_recall_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, const scene_recall_params_t *p_in, const model_transition_t *p_in_transition, scene_status_params_t *p_out)
 Callback type for Scene Recall/Recall Unacknowledged message. More...
 

Functions

uint32_t scene_server_status_publish (const scene_server_t *p_server, const scene_status_params_t *p_params)
 Publishes unsolicited Status message. More...
 
uint32_t scene_setup_server_init (scene_setup_server_t *p_s_server, uint8_t element_index)
 Initializes Scene Setup server. More...
 

Detailed Description

Typedef Documentation

◆ scene_state_store_cb_t

typedef void(* scene_state_store_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, const scene_store_params_t *p_in, scene_register_status_params_t *p_out)

Callback type for Scene Store/Store Unacknowledged message.

Parameters
[in]p_selfPointer to the model structure.
[in]p_metaAccess metadata for the received message.
[in]p_inPointer to the input parameters for the user application.
[out]p_outPointer to store the output parameters from the user application. If null, indicates that it is UNACKNOWLEDGED message and no output params are required.

Definition at line 75 of file scene_setup_server.h.

◆ scene_state_delete_cb_t

typedef void(* scene_state_delete_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, const scene_delete_params_t *p_in, scene_register_status_params_t *p_out)

Callback type for Scene Delete/Delete Unacknowledged message.

Note
: Deleting a non-existent scene number always results in a success.
Parameters
[in]p_selfPointer to the model structure.
[in]p_metaAccess metadata for the received message.
[in]p_inPointer to the input parameters for the user application.
[out]p_outPointer to store the output parameters from the user application. If null, indicates that it is UNACKNOWLEDGED message and no output params are required.

Definition at line 92 of file scene_setup_server.h.

◆ scene_state_get_cb_t

typedef void(* scene_state_get_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, scene_status_params_t *p_out)

Callback type for Scene Get message.

Parameters
[in]p_selfPointer to the model structure.
[in]p_metaAccess metadata for the received message.
[out]p_outPointer to store the output parameters from the user application.

Definition at line 104 of file scene_setup_server.h.

◆ scene_state_register_get_cb_t

typedef void(* scene_state_register_get_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, scene_register_status_params_t *p_out)

Callback type for Scene Register Get message.

Parameters
[in]p_selfPointer to the model structure.
[in]p_metaAccess metadata for the received message.
[out]p_outPointer to store the output parameters from the user application.

Definition at line 115 of file scene_setup_server.h.

◆ scene_state_recall_cb_t

typedef void(* scene_state_recall_cb_t) (const scene_setup_server_t *p_self, const access_message_rx_meta_t *p_meta, const scene_recall_params_t *p_in, const model_transition_t *p_in_transition, scene_status_params_t *p_out)

Callback type for Scene Recall/Recall Unacknowledged message.

Parameters
[in]p_selfPointer to the model structure.
[in]p_metaAccess metadata for the received message.
[in]p_inPointer to the input parameters for the user application.
[in]p_in_transitionPointer to transition parameters, if present in the incoming message, otherwise set to null.
[out]p_outPointer to store the output parameters from the user application. If null, indicates that it is UNACKNOWLEDGED message and no output params are required.

Definition at line 131 of file scene_setup_server.h.

Function Documentation

◆ scene_server_status_publish()

uint32_t scene_server_status_publish ( const scene_server_t *  p_server,
const scene_status_params_t p_params 
)

Publishes unsolicited Status message.

This API can be used to send unsolicited messages to report updated state value as a result of local action.

Parameters
[in]p_serverScene server context pointer.
[in]p_paramsMessage parameters.
Return values
NRF_SUCCESSIf the message is published successfully.
NRF_ERROR_NULLNULL pointer given to function.
NRF_ERROR_NO_MEMNo memory available to send the message at this point.
NRF_ERROR_NOT_FOUNDThe model is not initialized.
NRF_ERROR_INVALID_PARAMIncorrect message parameters, the model not bound to application key, or publish address not set.
NRF_ERROR_FORBIDDENFailed to allocate a sequence number from network.
NRF_ERROR_INVALID_STATEThere's already a segmented packet that is being to sent to this destination. Wait for the transmission to finish before sending new segmented packets.

◆ scene_setup_server_init()

uint32_t scene_setup_server_init ( scene_setup_server_t *  p_s_server,
uint8_t  element_index 
)

Initializes Scene Setup server.

Note
This function should only be called once.
The client handles the model allocation and adding.
Parameters
[in]p_s_serverScene Setup Server model context pointer.
[in]element_indexElement index to add the model
Return values
NRF_SUCCESSThe model is initialized successfully.
NRF_ERROR_NULLNULL pointer given to function.
NRF_ERROR_NO_MEMACCESS_MODEL_COUNT number of models already allocated or no more subscription lists available in memory pool (see ACCESS_SUBSCRIPTION_LIST_COUNT).
NRF_ERROR_FORBIDDENMultiple model instances per element are not allowed or changes to device composition are not allowed. Adding a new model after device is provisioned is not allowed.
NRF_ERROR_NOT_FOUNDInvalid access element index.
NRF_ERROR_RESOURCESNo more Scene Setup server instance can be allocated. Increase SCENE_SETUP_SERVER_INSTANCES_MAX.

Documentation feedback | Developer Zone | Subscribe | Updated