Closed Bug 1117813 Opened 9 years ago Closed 8 years ago

Make PlivoUtil use a valid 'answer_url' with a valid Plivo XML

Categories

(Firefox OS Graveyard :: Gaia::UI Tests, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: viorela, Assigned: jlorenzo)

References

Details

Attachments

(1 file, 2 obsolete files)

The Plivo call is killed 2 sec after the call is connected. The issue is reproducible locally by running test_dialer_set_up_conference_call.py: http://jenkins1.qa.scl3.mozilla.com/job/flame-kk-319.mozilla-central.ui.functional.non-smoke.2/87/HTML_Report/

#STR:
1. Make a phone call from Plivo to the phone
2. Answer the Plivo call 
3. Wait for 2 seconds and observe the call

#Expected results;
The Plivo call remains connected until we tap the hangup button

#Actual results:
The Plivo call is hangup immediately

Device firmware (base) 	L1TC10011880
Device firmware (date) 	05 Jan 2015 01:34:36
Device firmware (incremental) 	eng.cltbld.20150105.043425
Device firmware (release) 	4.4.2
Device identifier 	flame
Gaia date 	02 Jan 2015 16:08:34
Gaia revision 	c2bf20d23851
Gecko build 	20150105010205
Gecko revision 	636498d041b5
Gecko version 	37.0a1

This requires further investigation
I think this is related to the machine detection system[1]. The default action is: when Plivo detects that a phone call has been answered in less than 5000ms, it considers that a machine picked up and Plivo hangs up. We are able to configure that in our PlivoUtil class[2].

Nonetheless, I tried to place some calls where 'machine_detection_time' is reduced to 2000ms. Then, I answered them after 10 seconds. The call is still being hung up from the Plivo side.

I opened an issue with their service support (ticket #13304). I've been asked to provide some call_uuids. I reproduce the issue 3 more times and I gave them these uuids:
 * 7f9f6da4-959e-11e4-a62f-5f3678f14188
 * 04a43de0-959f-11e4-adc0-db8949c35fd6
 * 253b5002-959f-11e4-b7ab-db8949c35fd6

I wait for an answer now.

[1] https://www.plivo.com/docs/api/call/
[2] https://github.com/mozilla/gaia/blob/master/tests/python/gaia-ui-tests/gaiatest/utils/plivo/plivo_util.py#L43
Assignee: nobody → jlorenzo
I've got an answer from support:

> We see that in all the calls you have set the answer_url
> as http://example.com/answer_url.  Please enter a valid url
> that returns a valid Plivo xml so that Plivo knows how to
> proceed with the call.

We need to change this line then: https://github.com/mozilla-b2g/gaia/blob/29370b92526d4ad526182764f6a069e6078ccb90/tests/python/gaia-ui-tests/gaiatest/utils/plivo/plivo_util.py#L41
QA Whiteboard: [fxosqa-auto-s8][fxosqa-auto-points=2]
Summary: Investigate why Plivo received call is closing 2 seconds after answering it → Make PlivoUtil use a valid 'answer_url' with a valid Plivo XML
Attached patch PlivoUtil first workaround (obsolete) — Splinter Review
Hey Viorela,

Does this patch fix the issue on your side? If so, we'll need to move the github pages I created[1] to the mozilla-b2g github account.

[1] https://github.com/JohanLorenzo/plivo-responses
Attachment #8546470 - Flags: feedback?(viorela.ioia)
Yes, this patch is fixing the issue described in comment 0. 
Johan, can you please open a patch to add the page you created to the gaia repo? Thanks!
Flags: needinfo?(jlorenzo)
Attachment #8546470 - Flags: feedback?(viorela.ioia) → feedback+
We can't import the page in the Gaia repo because we need an HTTP server to deliver the XML file to Plivo. If I'm correct, due to bug 1112191, we need to have a server more specific than a regular Apache or nginx.

I'll look into this during Sprint 8.
Flags: needinfo?(jlorenzo)
Attached file Gaia PR
In order to serve the XML needed here and to receive the asynchronous calls needed in bug 1112191. I created a small web server[1] which lives on one of our Stackato[2] instances[3]. It's currently running so you guys would be able to test this small patch.

To make sure that it was worth it to create a real webserver, I had to implement the callback for bug 1112191, first. So I propose to leave the code review of this server in that bug.

[1] https://github.com/JohanLorenzo/plivo-handler
[2] http://paas.allizom.org/
[3] http://plivo-handler.paas.allizom.org/
Attachment #8546470 - Attachment is obsolete: true
Attachment #8549681 - Flags: review?(viorela.ioia)
Attachment #8549681 - Flags: review?(gmealer)
Blocks: 1112191
Same basic concerns as 1112191, so I won't repeat them here. Concept is sound but we need to resolve ownership and cost of standing up a server.
Comment on attachment 8549681 [details] [review]
Gaia PR

See bug 1112191 comment 10.
Attachment #8549681 - Flags: review?(viorela.ioia)
Attachment #8549681 - Flags: review?(gmealer)
Blocks: 1098442
Depends on: 1123652
Attachment #8561870 - Attachment is obsolete: true
Gaia UI tests are not run or maintained anymore.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: