Closed Bug 857795 Opened 12 years ago Closed 12 years ago

DTMF tones are not working over bluetooth

Categories

(Firefox OS Graveyard :: Gaia::Dialer, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(blocking-b2g:tef+, b2g18 fixed, b2g18-v1.0.0 wontfix, b2g18-v1.0.1 fixed)

RESOLVED FIXED
1.0.1 IOT1 (10may)
blocking-b2g tef+
Tracking Status
b2g18 --- fixed
b2g18-v1.0.0 --- wontfix
b2g18-v1.0.1 --- fixed

People

(Reporter: ggrisco, Assigned: arthurcc)

References

Details

(Whiteboard: [CR 459932] QARegressExclude)

Attachments

(2 files)

Attached file hci dump
Steps to reproduce: 1. Connect phone with a carkit which supports sending DTMF tones. 2. Make a call and listen to DTMF tones on other side while pressing num keys on car kit. no DTMF tones are heard
blocking-b2g: --- → leo?
(leo+ as this is mandatory for HFP cert)
blocking-b2g: leo? → leo+
assign to Eric. Feel free to reassign to Shawn or Gina.
Assignee: nobody → echou
Duplicate of 831632, will help to follow up.
Status: NEW → ASSIGNED
The problem here is Bluetooth car kit sends "AT+VTS=<DTMF>". BluetoothHfpManager would call NotifyDialer which indicates Dialer to handle DTMF command. In dialer.js, btCommandHandler(message) shall parse command "VTS=<DTMF command>" and use TonePlayer to play DTMF tone. Command would looks like VTS=1, DTMF command should be one of 0-9, '*' or '#'.
Assignee: echou → shuang
Hi Etienne, Since implementation requires to change in gaia dialer part, would you help to modify dialer.js?
Shawn, I will help on the gaia part.
Arthur, usually DTMF tone for Bluetooth, there are two requirements that gaia part could help to achieve: 1. Generate DTMF tone sound, so user can hear DTMF tone through Bluetooth SCO (optional) * TonePlayer 2. Send DTMF tone through network (mandatory) * navigator.mozTelephony.startTone
Assignee: shuang → arthur.chen
(In reply to Arthur Chen [:arthurcc] from comment #7) > Shawn, I will help on the gaia part. Cool, let me know if you need any help.
Etienne, could you help review the change? Thanks!
Attachment #736111 - Flags: review?(etienne)
Comment on attachment 736111 [details] Link to https://github.com/mozilla-b2g/gaia/pull/9105 Not a big fan of faking mouse events internally for this. The requirement is clear: play the DTMF tone and let the user hear it, and we have pretty accessible functions to do that. My suggestion is to add only a |press(value)| method to the KeypadManager that will directly: - call |telephony.startTone(key)| - call |TonePlayer.start(gTonesFrequencies[value], true)| (we're always doing short presses via Bluetooth, so we should pass true as a second parameter) - set a "nextTick" timeout that calls: + |telephony.stopTone()| + |TonePlayer.stop()| Then instead of having a |click(value)| function in oncall.js you can just call |KeypadManager.press(value)|
Attachment #736111 - Flags: review?(etienne) → review-
Comment on attachment 736111 [details] Link to https://github.com/mozilla-b2g/gaia/pull/9105 I didn't realize that we only need to play the tone. Patch updated, please help review it, thanks!
Attachment #736111 - Flags: review- → review?(etienne)
Attachment #736111 - Flags: review?(etienne) → review+
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Component: Bluetooth → Gaia::Dialer
Haven't fixed the queries yet, so I'm using qawanted for now. Someone needs to see if this bug also reproduces on v1.01.
Keywords: qawanted
Mozilla QA doesn't have access to a carkit, so someone with one will need to see if this repros on 1.0.1.
Not going to be really easy to test on 1.01 and I question if we care about if we need this on 1.01. Michael - Let's say this bug reproduces on 1.01. Would we tef+ if it reproduces? If not, then QA probably doesn't need to spend time here figuring out if it reproduces on 1.01.
Flags: needinfo?(mvines)
Keywords: qawanted
This is not a v1.0.1 requirement from our POV
Flags: needinfo?(mvines)
This blocks HFP AG_TDC test case. Please refer to test case TC_AG_TDC_BV_01_I
Supporting DTMF tone is mandatory for HFP spec. Blocking certification test case.
(In reply to Shawn Huang from comment #22) > This blocks HFP AG_TDC test case. Please refer to test case TC_AG_TDC_BV_01_I tef?
blocking-b2g: leo+ → tef?
Michael, based in comment 21 you think is not a blocker for tef+ but it seems withot this fixed, it is not possible to pass certification, can you please clarify?
Flags: needinfo?(mvines)
Sure, the bug was raised against v1.1 by our test folks but that's because this test case was not covered as a part of our v1.0 test. So by comment 21, I was merely saying that we have no opinion regarding it blocking v1.0. Comment 23 seems to say that this might be BT cert so that seems like a good reason to block on it
Flags: needinfo?(mvines)
blocking-b2g: tef? → tef+
Target Milestone: --- → 1.0.1 IOT1 (10may)
Arthur, can you land it in 1.0.1 as it is tef+
Flags: needinfo?(arthur.chen)
Unable to test this issue. Don't have a bluetooth car kit. Marking as QARegressExclude
Whiteboard: [CR 459932] → [CR 459932] QARegressExclude
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: