Audio Input Control Service Server API
src/le-audio/gatt-service/audio_input_control_service_server.h
typedef struct {
btstack_linked_item_t item;
hci_con_handle_t con_handle;
// service
uint16_t start_handle;
uint16_t end_handle;
uint8_t index;
aics_info_t * info;
att_service_handler_t service_handler;
btstack_context_callback_registration_t scheduled_tasks_callback;
uint8_t scheduled_tasks;
// ORG_BLUETOOTH_CHARACTERISTIC_AUDIO_INPUT_STATE
uint16_t audio_input_state_value_handle;
uint8_t audio_input_state_change_counter;
uint16_t audio_input_state_client_configuration_handle;
uint16_t audio_input_state_client_configuration;
btstack_context_callback_registration_t audio_input_state_callback;
// ORG_BLUETOOTH_CHARACTERISTIC_GAIN_SETTINGS_ATTRIBUTE
uint16_t gain_settings_properties_value_handle;
// ORG_BLUETOOTH_CHARACTERISTIC_AUDIO_INPUT_TYPE
uint16_t audio_input_type_value_handle;
// ORG_BLUETOOTH_CHARACTERISTIC_AUDIO_INPUT_STATUS
uint16_t audio_input_status_value_handle;
aics_audio_input_status_t audio_input_status;
uint16_t audio_input_status_client_configuration_handle;
uint16_t audio_input_status_client_configuration;
btstack_context_callback_registration_t audio_input_status_callback;
// ORG_BLUETOOTH_CHARACTERISTIC_AUDIO_INPUT_CONTROL_POINT
uint16_t audio_input_control_value_handle;
// ORG_BLUETOOTH_CHARACTERISTIC_AUDIO_INPUT_DESCRIPTION
uint16_t audio_input_description_value_handle;
uint8_t audio_input_description_len;
uint16_t audio_input_description_client_configuration_handle;
uint16_t audio_input_description_client_configuration;
btstack_context_callback_registration_t audio_input_description_callback;
} audio_input_control_service_server_t;
/**
* @brief Init Audio Input Control Service Server with ATT DB
* @param aics service storage
*/
void audio_input_control_service_server_init(audio_input_control_service_server_t * aics);
/**
* @brief Set audio input state of the AICS service. If successful, all registered clients will be notified of change.
* @param aics service
* @param audio_input_state see aics_audio_input_state_t
* @return status ERROR_CODE_SUCCESS if successful, otherwise ERROR_CODE_INVALID_HCI_COMMAND_PARAMETERS if gain setting is out of a valid range [gain_settings_minimum, gain_settings_maximum] .
*/
uint8_t audio_input_control_service_server_set_audio_input_state(audio_input_control_service_server_t * aics, aics_audio_input_state_t * audio_input_state);
/**
* @brief Set audio input status of the AICS service. If successful, all registered clients will be notified of change.
* @param aics service
* @param audio_input_status see aics_audio_input_status_t
*/
void audio_input_control_service_server_set_audio_input_status(audio_input_control_service_server_t * aics, aics_audio_input_status_t audio_input_status);
/**
* @brief Set audio input description of the AICS service. If successful, all registered clients will be notified of change.
* @param aics service
* @param audio_input_desc
*/
void audio_input_control_service_server_set_audio_input_description(audio_input_control_service_server_t * aics, const char * audio_input_desc);