Zephyr API Documentation 4.4.0-rc1
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
ccp.h
Go to the documentation of this file.
1
5
6/*
7 * Copyright (c) 2024 Nordic Semiconductor ASA
8 *
9 * SPDX-License-Identifier: Apache-2.0
10 */
11
12#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CCP_H_
13#define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CCP_H_
14
34
35#include <stddef.h>
36
37#include <zephyr/autoconf.h>
40#include <zephyr/sys/slist.h>
41
42#ifdef __cplusplus
43extern "C" {
44#endif
55
79 struct bt_ccp_call_control_server_bearer **bearer);
80
98
113 struct bt_ccp_call_control_server_bearer *bearer, const char *name);
114
130 struct bt_ccp_call_control_server_bearer *bearer, char *name, size_t name_size);
131
144 char uci[BT_TBS_MAX_UCI_SIZE]);
145 /* End of group bt_ccp_call_control_server */
147
153
159
165
168#if defined(CONFIG_BT_TBS_CLIENT_GTBS)
170 struct bt_ccp_call_control_client_bearer *gtbs_bearer;
171#endif /* CONFIG_BT_TBS_CLIENT_GTBS */
172
173#if defined(CONFIG_BT_TBS_CLIENT_TBS)
175 size_t tbs_count;
176
179 *tbs_bearers[CONFIG_BT_CCP_CALL_CONTROL_CLIENT_BEARER_COUNT];
180#endif /* CONFIG_BT_TBS_CLIENT_TBS */
181};
182
202 void (*discover)(struct bt_ccp_call_control_client *client, int err,
203 struct bt_ccp_call_control_client_bearers *bearers, void *user_data);
204
205#if defined(CONFIG_BT_TBS_CLIENT_BEARER_PROVIDER_NAME) || defined(__DOXYGEN__)
221 const char *name, void *user_data);
222#endif /* CONFIG_BT_TBS_CLIENT_BEARER_PROVIDER_NAME */
223
224#if defined(CONFIG_BT_CCP_CALL_CONTROL_CLIENT_CB_USER_DATA) || defined(__DOXYGEN__)
227#endif /* CONFIG_BT_CCP_CALL_CONTROL_CLIENT_CB_USER_DATA */
228
231 sys_snode_t _node;
233};
234
254 struct bt_ccp_call_control_client **out_client);
255
266
277
288 struct bt_ccp_call_control_client_bearers *bearers);
289
306 struct bt_ccp_call_control_client_bearer *bearer); /* End of group bt_ccp_call_control_client */
308#ifdef __cplusplus
309}
310#endif
311
315
316#endif /* ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_CCP_H_ */
Bluetooth connection handling.
int bt_ccp_call_control_client_discover(struct bt_conn *conn, struct bt_ccp_call_control_client **out_client)
Discovers the Telephone Bearer Service (TBS) support on a remote device.
int bt_ccp_call_control_client_read_bearer_provider_name(struct bt_ccp_call_control_client_bearer *bearer)
Read the bearer provider name of a remote TBS bearer.
int bt_ccp_call_control_client_unregister_cb(struct bt_ccp_call_control_client_cb *cb)
Unregister callbacks for the Call Control Client.
int bt_ccp_call_control_client_register_cb(struct bt_ccp_call_control_client_cb *cb)
Register callbacks for the Call Control Client.
int bt_ccp_call_control_client_get_bearers(struct bt_ccp_call_control_client *client, struct bt_ccp_call_control_client_bearers *bearers)
Get the bearers of a client instance.
int bt_ccp_call_control_server_get_bearer_provider_name(struct bt_ccp_call_control_server_bearer *bearer, char *name, size_t name_size)
Get the bearer provider name.
int bt_ccp_call_control_server_register_bearer(const struct bt_tbs_register_param *param, struct bt_ccp_call_control_server_bearer **bearer)
Register a Telephone Bearer.
int bt_ccp_call_control_server_unregister_bearer(struct bt_ccp_call_control_server_bearer *bearer)
Unregister a Telephone Bearer.
int bt_ccp_call_control_server_get_bearer_uci(struct bt_ccp_call_control_server_bearer *bearer, char uci[6])
Get the bearer UCI.
int bt_ccp_call_control_server_set_bearer_provider_name(struct bt_ccp_call_control_server_bearer *bearer, const char *name)
Set a new bearer provider name.
#define BT_TBS_MAX_UCI_SIZE
Maximum size of bearer uniform caller identifier (UCI).
Definition tbs.h:209
struct _snode sys_snode_t
Single-linked list node structure.
Definition slist.h:39
Abstract Call Control Client bearer structure.
Struct with information about bearers of a client.
Definition ccp.h:167
Struct to hold the Telephone Bearer Service client callbacks.
Definition ccp.h:188
void * user_data
User data that will be supplied to all callbacks.
Definition ccp.h:226
void(* bearer_provider_name)(struct bt_ccp_call_control_client_bearer *bearer, int err, const char *name, void *user_data)
Callback function for bt_ccp_call_control_client_read_bearer_provider_name().
Definition ccp.h:220
void(* discover)(struct bt_ccp_call_control_client *client, int err, struct bt_ccp_call_control_client_bearers *bearers, void *user_data)
Callback function for bt_ccp_call_control_client_discover().
Definition ccp.h:202
Abstract Call Control Client structure.
Abstract Call Control Server Telephone Bearer structure.
Opaque type representing a connection to a remote device.
Parameters for registering a Telephone Bearer Service.
Definition tbs.h:479
Public APIs for Bluetooth Telephone Bearer Service.