[RFC BlueZ v2 00/27] New Telephony interface for HSP, HFP and CCP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This will introduce a new Telephony interface wich is intended to be
shared by the profiles able to control telephony calls.

The idea is to split the call control interface from the audio streaming,
as it is done for AVRCP and A2DP.
As for A2DP, the audio part will be delegated to the audio daemon (like
PipeWire) by the creation of new endpoints for CVSD and mSBC, LC3 endpoint
already exists.

The interface is mostly based on the one done for PipeWire's native
backend.

This will simplify the qualification of the telephony related profiles as
the qualification will no more depend on external projects, and calls can
be controlled from bluetoothctl.

A first implementation allows to dial or hangup a call using HFP.

v1->v2:
  - Rename org.bluez.TelephonyCall1 to org.bluez.Call1
  - Remove reference to profiles in org.bluez.TelephonyAg1 object path
  - Add profile UUID property to org.bluez.TelephonyAg1
  - Add OperatorName property to org.bluez.TelephonyAg1
  - Rename telephony_set_call_state() to telephony_call_set_state()
  - Use first available index of call for new call
  - Fix DBus message memory leak in hfp_dial_cb()
  - Display UUID and OperatorName in bluetoothctl telephony.show command
  - Add hangup-active and hangup-held support
  - Add SendTones support
  - Remove HFP specific comments in documentation
  - Add HFP HF server and related SDP record
  - Add OperatorName support to HFP HF
  - Add call line identification property support to HFP HF
  - Disable NREC during HFP HF connection phase
  - Enable Waiting call event to HFP HF
  - Enable Extended error support in HFP HF
  - Add telephony_call_set_multiparty() to telephony API
  - Enable Enhanced call status support in HFP HF, and use it to update
    calls status if available on both side

Frédéric Danis (27):
  doc: Add new telephony related profiles interfaces
  audio/telephony: Add shared interfaces implementation
  audio/telephony: Add skeleton for HFP profile
  audio/hfp-hf: Add HFP SLC connection and event support
  audio/hfp-hf: Add dial support
  audio/hfp-hf: Add hangup all calls support
  audio/hfp-hf: Add answer a specific call support
  client/telephony: Add new submenu
  audio/hfp-hf: Remove call interface during profile disconnection
  audio/hfp-hf: Create existing call during SLC phase
  audio/telephony: Add hangup_active and hangup_held functions
  audio/hfp-hf: Add hangup_active and hangup_held support
  client/telephony: Add hangup_active and hangup_held support
  audio/hfp-hf: Add SendTones support
  client/telephony: Add SendTones support
  doc: Make telephony docs more generic
  client/telephony: Remove IncomingLine
  audio/telephony: Remove IncomingLine
  audio/hfp-hf: Add HFP HF server and SDP record
  audio/hfp-hf: Add operator name support
  audio/telephony: Add call line identication property support
  audio/hfp-hf: Add call line idenfication support
  audio/hfp-hf: Disable NREC during connection setup
  audio/hfp-hf: Enable waiting call if supported by remote AG
  audio/hfp-hf: Enable extended error if supported by remote AG
  audio/telephony: Add call multiparty property support
  audio/hfp-hf: Enable enhanced call status if supported by remote AG

 Makefile.am                       |    4 +
 Makefile.plugins                  |    5 +
 Makefile.tools                    |    9 +-
 client/bluetoothctl-telephony.rst |   95 ++
 client/main.c                     |    3 +
 client/telephony.c                |  676 ++++++++++
 client/telephony.h                |   12 +
 configure.ac                      |    7 +
 doc/org.bluez.Call.rst            |  107 ++
 doc/org.bluez.TelephonyAg.rst     |  206 +++
 profiles/audio/hfp-hf.c           | 2092 +++++++++++++++++++++++++++++
 profiles/audio/telephony.c        |  808 +++++++++++
 profiles/audio/telephony.h        |  118 ++
 13 files changed, 4139 insertions(+), 3 deletions(-)
 create mode 100644 client/bluetoothctl-telephony.rst
 create mode 100644 client/telephony.c
 create mode 100644 client/telephony.h
 create mode 100644 doc/org.bluez.Call.rst
 create mode 100644 doc/org.bluez.TelephonyAg.rst
 create mode 100644 profiles/audio/hfp-hf.c
 create mode 100644 profiles/audio/telephony.c
 create mode 100644 profiles/audio/telephony.h

-- 
2.43.0





[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux