Zephyr API Documentation 4.1.99
A Scalable Open Source RTOS
 4.1.99
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
ccp.h
Go to the documentation of this file.
1
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
35#include <stddef.h>
36
37#include <zephyr/autoconf.h>
40#include <zephyr/sys/slist.h>
41
42#ifdef __cplusplus
43extern "C" {
44#endif
51struct bt_ccp_call_control_server_bearer;
52
76 struct bt_ccp_call_control_server_bearer **bearer);
77
94int bt_ccp_call_control_server_unregister_bearer(struct bt_ccp_call_control_server_bearer *bearer);
95
96 /* End of group bt_ccp_call_control_server */
97
104struct bt_ccp_call_control_client;
105
107struct bt_ccp_call_control_client_bearer;
108
111#if defined(CONFIG_BT_TBS_CLIENT_GTBS)
113 struct bt_ccp_call_control_client_bearer *gtbs_bearer;
114#endif /* CONFIG_BT_TBS_CLIENT_GTBS */
115
116#if defined(CONFIG_BT_TBS_CLIENT_TBS)
118 size_t tbs_count;
119
121 struct bt_ccp_call_control_client_bearer
122 *tbs_bearers[CONFIG_BT_CCP_CALL_CONTROL_CLIENT_BEARER_COUNT];
123#endif /* CONFIG_BT_TBS_CLIENT_TBS */
124};
125
142 void (*discover)(struct bt_ccp_call_control_client *client, int err,
143 struct bt_ccp_call_control_client_bearers *bearers);
144
147 sys_snode_t _node;
149};
150
169int bt_ccp_call_control_client_discover(struct bt_conn *conn,
170 struct bt_ccp_call_control_client **out_client);
171
182
193
203int bt_ccp_call_control_client_get_bearers(struct bt_ccp_call_control_client *client,
204 struct bt_ccp_call_control_client_bearers *bearers);
205
206 /* End of group bt_ccp_call_control_client */
207#ifdef __cplusplus
208}
209#endif
210
215#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_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_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.
struct _snode sys_snode_t
Single-linked list node structure.
Definition slist.h:39
Struct with information about bearers of a client.
Definition ccp.h:110
Struct to hold the Telephone Bearer Service client callbacks.
Definition ccp.h:131
void(* discover)(struct bt_ccp_call_control_client *client, int err, struct bt_ccp_call_control_client_bearers *bearers)
Callback function for bt_ccp_call_control_client_discover().
Definition ccp.h:142
Parameters for registering a Telephone Bearer Service.
Definition tbs.h:471
Public APIs for Bluetooth Telephone Bearer Service.