Generic OnOff Client¶
The Generic OnOff Client model remotely controls the state of a Generic OnOff Server model.
Extended models¶
None.
Persistent storage¶
None.
API documentation¶
include/bluetooth/mesh/gen_onoff_cli.h
subsys/bluetooth/mesh/gen_onoff_cli.c
-
group
bt_mesh_onoff_cli
API for the Generic OnOff Client model.
Defines
-
BT_MESH_ONOFF_CLI_INIT
(_status_handler)¶ Initialization parameters for a Generic OnOff Client model instance.
- Parameters
[in] _status_handler
: Optional status message handler.
-
BT_MESH_MODEL_ONOFF_CLI
(_cli)¶ Generic OnOff Client model composition data entry.
- Parameters
[in] _cli
: Pointer to a Generic OnOff Client model instance.
Functions
-
int
bt_mesh_onoff_cli_get
(struct bt_mesh_onoff_cli *cli, struct bt_mesh_msg_ctx *ctx, struct bt_mesh_onoff_status *rsp)¶ Get the status of the bound srv.
This call is blocking if the
rsp
buffer is non-NULL. Otherwise, this function will return, and the response will be passed to the bt_mesh_onoff_cli::status_handler callback.- Parameters
[in] cli
: Client model to send on.[in] ctx
: Message context, or NULL to use the configured publish parameters.[out] rsp
: Status response buffer, or NULL to keep from blocking.
- Return Value
0
: Successfully sent the message and populated thersp
buffer.-EALREADY
: A blocking request is already in progress.-EADDRNOTAVAIL
: A message context was not provided and publishing is not configured.-EAGAIN
: The device has not been provisioned.-ETIMEDOUT
: The request timed out without a response.
-
int
bt_mesh_onoff_cli_set
(struct bt_mesh_onoff_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_onoff_set *set, struct bt_mesh_onoff_status *rsp)¶ Set the OnOff state in the srv.
This call is blocking if the
rsp
buffer is non-NULL. Otherwise, this function will return, and the response will be passed to the bt_mesh_onoff_cli::status_handler callback.- Parameters
[in] cli
: Client model to send on.[in] ctx
: Message context, or NULL to use the configured publish parameters.[in] set
: New OnOff parameters to set.set::transition
can either point to a transition structure, or be left to NULL to use the default transition parameters on the server.[out] rsp
: Status response buffer, or NULL to keep from blocking.
- Return Value
0
: Successfully sent the message and populated thersp
buffer.-EALREADY
: A blocking request is already in progress.-EADDRNOTAVAIL
: A message context was not provided and publishing is not configured.-EAGAIN
: The device has not been provisioned.-ETIMEDOUT
: The request timed out without a response.
-
int
bt_mesh_onoff_cli_set_unack
(struct bt_mesh_onoff_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_onoff_set *set)¶ Set the OnOff state in the srv without requesting a response.
- Parameters
[in] cli
: Client model to send on.[in] ctx
: Message context, or NULL to use the configured publish parameters.[in] set
: New OnOff parameters to set.set::transition
can either point to a transition structure, or be left to NULL to use the default transition parameters on the server.
- Return Value
0
: Successfully sent the message.-EADDRNOTAVAIL
: A message context was not provided and publishing is not configured.-EAGAIN
: The device has not been provisioned.
-
struct
bt_mesh_onoff_cli
¶ - #include <gen_onoff_cli.h>
Generic OnOff Client structure.
Should be initialized with the BT_MESH_ONOFF_CLI_INIT macro.
Public Members
-
void (*const
status_handler
)(struct bt_mesh_onoff_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_onoff_status *status)¶ OnOff status message handler.
- Parameters
[in] cli
: Client that received the status message.[in] ctx
: Context of the incoming message.[in] status
: OnOff Status of the Generic OnOff Server that published the message.
-
uint8_t
tid
¶ Current Transaction ID.
-
struct bt_mesh_model_ack_ctx
ack_ctx
¶ Response context for tracking acknowledged messages.
-
struct bt_mesh_model_pub
pub
¶ Publish parameters.
-
struct bt_mesh_model *
model
¶ Access model pointer.
-
void (*const
-