mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-02 09:01:50 -05:00
bluez5: backend-native: Support of ATA and AT+CHUP
Allow to answer, reject or terminate a call. Answering or rejecting a call can only be done on an incoming call. Terminating a call can only be done on active, dialing or alerting call.
This commit is contained in:
parent
e9b82252f7
commit
4a89a13bda
3 changed files with 238 additions and 0 deletions
|
|
@ -45,6 +45,7 @@ enum call_setup {
|
|||
};
|
||||
|
||||
struct mm_ops {
|
||||
void (*send_cmd_result)(bool success, enum cmee_error error, void *user_data);
|
||||
void (*set_modem_service)(bool available, void *user_data);
|
||||
void (*set_modem_signal_strength)(unsigned int strength, void *user_data);
|
||||
void (*set_modem_operator_name)(const char *name, void *user_data);
|
||||
|
|
@ -56,6 +57,10 @@ struct mm_ops {
|
|||
#ifdef HAVE_BLUEZ_5_BACKEND_NATIVE_MM
|
||||
void *mm_register(struct spa_log *log, void *dbus_connection, const struct mm_ops *ops, void *user_data);
|
||||
void mm_unregister(void *data);
|
||||
bool mm_is_available(void *modemmanager);
|
||||
unsigned int mm_supported_features();
|
||||
bool mm_answer_call(void *modemmanager, void *user_data, enum cmee_error *error);
|
||||
bool mm_hangup_call(void *modemmanager, void *user_data, enum cmee_error *error);
|
||||
#else
|
||||
void *mm_register(struct spa_log *log, void *dbus_connection, const struct mm_ops *ops, void *user_data)
|
||||
{
|
||||
|
|
@ -65,6 +70,30 @@ void *mm_register(struct spa_log *log, void *dbus_connection, const struct mm_op
|
|||
void mm_unregister(void *data)
|
||||
{
|
||||
}
|
||||
|
||||
bool mm_is_available(void *modemmanager)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
unsigned int mm_supported_features()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
bool mm_answer_call(void *modemmanager, void *user_data, enum cmee_error *error)
|
||||
{
|
||||
if (error)
|
||||
*error = CMEE_OPERATION_NOT_SUPPORTED;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool mm_hangup_call(void *modemmanager, void *user_data, enum cmee_error *error)
|
||||
{
|
||||
if (error)
|
||||
*error = CMEE_OPERATION_NOT_SUPPORTED;
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue