Generic Default Transition Time Client¶
The Generic DTT Client remotely controls the transition time state of a Generic Default Transition Time Server.
The client can be used to set up the server’s default transition time behavior when changing states in other models on the same element.
Extended models¶
None.
Persistent storage¶
None.
API documentation¶
include/bluetooth/mesh/gen_dtt_cli.h
subsys/bluetooth/mesh/gen_dtt_cli.c
-
group
bt_mesh_dtt_cli
API for the Generic Default Transition Time (DTT) Client.
Defines
-
BT_MESH_DTT_CLI_INIT
(_status_handler)¶ Initialization parameters for the Generic Default Transition Time Client API.
- See
- Parameters
[in] _status_handler
: Optional status message handler.
-
BT_MESH_MODEL_DTT_CLI
(_cli)¶ Generic DTT Client model composition data entry.
- Parameters
[in] _cli
: Pointer to a Generic Default Transition Time Client API instance.
Functions
-
int
bt_mesh_dtt_get
(struct bt_mesh_dtt_cli *cli, struct bt_mesh_msg_ctx *ctx, int32_t *rsp_transition_time)¶ Get the Default Transition Time of the server.
This call is blocking if the
rsp_transition_time
buffer is non-NULL. Otherwise, this function will return, and the response will be passed to the bt_mesh_dtt_cli::status_handler callback.- Parameters
[in] cli
: Client making the request.[in] ctx
: Message context to use for sending, or NULL to publish with the configured parameters.[out] rsp_transition_time
: Pointer to a response buffer, or NULL to keep from blocking. The response denotes the configured transition time in milliseconds. Can be SYS_FOREVER_MS if the current state is unknown or too large to represent.
- Return Value
0
: Successfully retrieved the status of the bound srv.-EALREADY
: A blocking operation is already in progress in this model.-EAGAIN
: The request timed out.
-
int
bt_mesh_dtt_set
(struct bt_mesh_dtt_cli *cli, struct bt_mesh_msg_ctx *ctx, uint32_t transition_time, int32_t *rsp_transition_time)¶ Set the Default Transition Time of the server.
This call is blocking if the
rsp_transition_time
buffer is non-NULL. Otherwise, this function will return, and the response will be passed to the bt_mesh_dtt_cli::status_handler callback.- Parameters
[in] cli
: Client model to send on.[in] ctx
: Message context to use for sending, or NULL to publish with the configured parameters.[in] transition_time
: Transition time to set (in milliseconds). Must be less than BT_MESH_MODEL_TRANSITION_TIME_MAX_MS.[out] rsp_transition_time
: Pointer to a response buffer, or NULL to keep from blocking. The response denotes the configured transition time in milliseconds. Can be SYS_FOREVER_MS if the current state is unknown or too large to represent.
- Return Value
0
: Successfully sent the message and populated thersp_transition_time
buffer.-EINVAL
: The given transition time is invalid.-EALREADY
: A blocking operation is already in progress in this model.-EAGAIN
: The request timed out.
-
int
bt_mesh_dtt_set_unack
(struct bt_mesh_dtt_cli *cli, struct bt_mesh_msg_ctx *ctx, uint32_t transition_time)¶ Set the Default Transition Time of the server without requesting a response.
- Parameters
[in] cli
: Client model to send on.[in] ctx
: Message context to use for sending, or NULL to publish with the configured parameters.[in] transition_time
: Transition time to set (in milliseconds). Must be less than BT_MESH_MODEL_TRANSITION_TIME_MAX_MS.
- Return Value
0
: Successfully sent the message.-EINVAL
: The given transition time is invalid.-EADDRNOTAVAIL
: A message context was not provided and publishing is not configured.-EAGAIN
: The device has not been provisioned.
-
struct
bt_mesh_dtt_cli
¶ - #include <gen_dtt_cli.h>
Generic DTT client structure.
Should be initialized using the BT_MESH_DTT_CLI_INIT macro.
Public Members
-
void (*const
status_handler
)(struct bt_mesh_dtt_cli *cli, struct bt_mesh_msg_ctx *ctx, int32_t transition_time)¶ Default Transition Time status message handler.
- Parameters
[in] cli
: Client that received the message.[in] ctx
: Message context.[in] transition_time
: Transition time presented in the message, in milliseconds.
-
struct bt_mesh_model_ack_ctx
ack_ctx
¶ Response context for tracking acknowledged messages.
-
struct bt_mesh_model_pub
pub
¶ Model publish parameters.
-
struct bt_mesh_model *
model
¶ Composition data model entry pointer.
-
void (*const
-