Closed Bug 960537 Opened 10 years ago Closed 10 years ago

[Messages] Unable to send MMS

Categories

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

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: viorela, Unassigned)

Details

Attachments

(6 files, 4 obsolete files)

Steps to reproduce:
1. Launch the messeges app
2. Tap the new message button
3. Enter a phone number
2. Tap the attachment button -> select Gallery -> attach a photo 
3. After the photo is attached tap the send button

Expected Results:
The message is being sent, after loading the image

Actual results: 
The message is not sent, the loading wheel continuously spins, till it fails. 

Device Hamachi
Gecko  http://hg.mozilla.org/mozilla-central/rev/81bced59e8b3
Gaia  255a56ac67e5b28f1fc78307969cc83391c9652f
BuildID 20140115041401
Version 29.0a1
Summary: Unable to send MMS → [Messages] Unable to send MMS
Can you check that your data is enabled? 

Settings -> Cellular & Data -> Data Connection (make sure this is switched on)
I checked and it is switched on.
And your service has a data plan? Sorry if that's a silly question, I'm just trying to get through the easy/usual issues.

Can you do this: 

1. Enable developer mode on the device:
  Settings -> Device Information -> More Information -> Developer -> Remote Debugging: checked (or in newer versions select "ADB and Devtools" or 'ADB only"_
2. Assuming you have ADB installed, run this: `adb shell logcat`
3. Complete your STR, save the logcat and attach it to this bug
I have no idea what these message errors are.

But usually, MMS issues are due to bad APN configuration. Can you check it's correct according to your carrier in "Settings > Cellular & Data > Message settings" ?
We didn't have any issue with sending MMS while running our manual smoketest for the latest master build,
though, I recall similar issue happened to us in the past - see bug 937894...
(In reply to Natalya Kot [:nkot] from comment #6)
> We didn't have any issue with sending MMS while running our manual smoketest
> for the latest master build,
> though, I recall similar issue happened to us in the past - see bug 937894...

That likely implies this is a RIL problem, rather than a UI problem. It's likely SIM dependent.
Component: Gaia::SMS → RIL
We need RIL debug logs here.

Can you help get RIL logs by following the directions here - https://wiki.mozilla.org/B2G/QA/Tips_And_Tricks#Changing_preferences & get including a logcat with the pref network.dns.disablePrefetch set & console enabled set?
Flags: needinfo?(viorela.ioia)
This is likely a regression also, as this is first time we've seen this fail in our automation runs over in Romania.
blocking-b2g: --- → 1.4?
Keywords: regression
Ah, if this is happening in Romania, we had a similar bug report from Romania some time ago too, never fixed it. I can't find the bug out of bugzilla right now though...
Attached image messages.png
Flags: needinfo?(viorela.ioia)
Attached file logcat.txt (obsolete) —
I added the logcat, following your instructions. I also added a screenshot of the issue. Hope it helps.
Hsin-Yi - Any ideas why MMS is failing in Romania on the Moz RIL? Does the log here help? Or do we need something else to help debug this?
Flags: needinfo?(htsai)
(In reply to Jason Smith [:jsmith] from comment #14)
> Hsin-Yi - Any ideas why MMS is failing in Romania on the Moz RIL? Does the
> log here help? Or do we need something else to help debug this?

Hi Jason and Viorela,

Sadly attachment 8361741 [details] contains very few RIL messages. Please help make sure the logcat records the whole test run. Also, in addition to RIL messages (set "ril.debugging.enabled" to true), please turn on mms debugger by following https://wiki.mozilla.org/B2G/QA/Tips_And_Tricks#Changing_preferences  

Hopefully we get more clues then!

b.t.w., I noticed a weird message: |RIL Worker[0]: RIL Worker errorundefined| but haven't got any idea right now.
Flags: needinfo?(htsai)
See the above comment. Can you retest following comment 15?
Flags: needinfo?(viorela.ioia)
(In reply to Jason Smith [:jsmith] from comment #16)
> See the above comment. Can you retest following comment 15?

Specifically - you want to retest this with:

pref("ril.debugging.enabled", true);
pref("mms.debugging.enabled", true);

And include the logcat here.
Attached file logcat.txt (obsolete) —
Logcat of the issue, after setting on ril and mms debugging prefs.
Attachment #8361741 - Attachment is obsolete: true
Flags: needinfo?(viorela.ioia)
(In reply to Viorela Ioia [:viorela] from comment #18)
> Created attachment 8362381 [details]
> logcat.txt
> 
> Logcat of the issue, after setting on ril and mms debugging prefs.

So I'm definitely seeing logcat messages that only show up in debug mode (example below):

I/Gecko   (  136): RIL Worker[0]: Solicited response for request type 28, token 16, error 0

Which comes from http://mxr.mozilla.org/mozilla-central/source/dom/system/gonk/ril_worker.js#141.

Does this log give more clarity on the problem here?
Flags: needinfo?(htsai)
(In reply to Jason Smith [:jsmith] from comment #19)
> (In reply to Viorela Ioia [:viorela] from comment #18)
> > Created attachment 8362381 [details]
> > logcat.txt
> > 
> > Logcat of the issue, after setting on ril and mms debugging prefs.
> 
> So I'm definitely seeing logcat messages that only show up in debug mode
> (example below):
> 
> I/Gecko   (  136): RIL Worker[0]: Solicited response for request type 28,
> token 16, error 0
> 
> Which comes from
> http://mxr.mozilla.org/mozilla-central/source/dom/system/gonk/ril_worker.
> js#141.
> 
> Does this log give more clarity on the problem here?
Yes, this log contains RIL log but no MMS log. 
I just learned that the tips on  https://wiki.mozilla.org/B2G/QA/Tips_And_Tricks#Changing_preferences isn't up-to-date. Please refer to https://bugzilla.mozilla.org/show_bug.cgi?id=960789#c7 to get the messages we need. Thanks for the help again.

Another question is: does this issue happen when we turn on data connection? For sending out MMS, it's not necessary to turn data connection on. I am asking to understand the test scenario more.
Flags: needinfo?(htsai) → needinfo?(viorela.ioia)
Yes, the issue happens when we turn on data connection. I will run the script that enables mms and ril and then attach the logcat
Flags: needinfo?(viorela.ioia)
Some observation from attachment 8362381 [details]:
1) line#7257: gecko receives apnSettings with apn type default and mms. This looks fine.
2) However, in line#7448, gecko receives an update for apnSettings again. At this moment, only apn with default type left. No entries for type mms.
3) line#7617, gecko sets up a data call with default type apn, instead of mms. Per comment 21, this is for data connection, and seems fine. However, we are expecting to see another 'setupdatacall' request for mms but I didn't see that. I guess that may be the reason why sending mms fails. A log with MMS debugging should help further investigation. 

Also, I am wondering what triggers 2). Does STR in comment #0 cover every step in detail? Without mms apn, the mms connection cannot be established.
Attached file logcat.txt (obsolete) —
Attachment #8362381 - Attachment is obsolete: true
(In reply to Hsin-Yi Tsai  [:hsinyi] from comment #24)
> Created attachment 8362404 [details] [diff] [review]
> More RIL log

Hi Viorela,

Sorry for need-info you again.

If you are able to rebuild the code, in addition to enabling debugger, could you also please apply this patch under gecko/ folder to help us grab more information? Thanks!
Flags: needinfo?(viorela.ioia)
(In reply to Hsin-Yi Tsai  [:hsinyi] from comment #25)
> (In reply to Hsin-Yi Tsai  [:hsinyi] from comment #24)
> > Created attachment 8362404 [details] [diff] [review]
> > More RIL log
> 
> Hi Viorela,
> 
> Sorry for need-info you again.
> 
> If you are able to rebuild the code, in addition to enabling debugger, could
> you also please apply this patch under gecko/ folder to help us grab more
> information? Thanks!

To my understanding, I don't think the Romanian contractors have a build environment setup for FxOS to build custom gecko patches. If we want to have these debug statements tested, then we'll need to check that patch into m-c.
Keywords: qablocker
Whiteboard: [xfail]
Hi Viorela,

Sorry to say that we didn't see the Mms related log from the latest log attached.
Would you please help us to do the following steps to capture the correct logs?
1. Connect your device to your pc and make sure your pc can detect your device by "adb devices" to list the connected devices to your pc.
2. Run the attached script to enable the debug flags of mms/ril.
3. Reboot the device and start the test.

Once the log is captured successfully, you shall be able to see the log tags of 'MmsService' and 'RadioInterfaceLayer' in the log you captured.

Thanks & regards,
Bevis Tseng
(In reply to Jason Smith [:jsmith] from comment #26)
> (In reply to Hsin-Yi Tsai  [:hsinyi] from comment #25)
> > (In reply to Hsin-Yi Tsai  [:hsinyi] from comment #24)
> > > Created attachment 8362404 [details] [diff] [review]
> > > More RIL log
> > 
> > Hi Viorela,
> > 
> > Sorry for need-info you again.
> > 
> > If you are able to rebuild the code, in addition to enabling debugger, could
> > you also please apply this patch under gecko/ folder to help us grab more
> > information? Thanks!
> 
> To my understanding, I don't think the Romanian contractors have a build
> environment setup for FxOS to build custom gecko patches. If we want to have
> these debug statements tested, then we'll need to check that patch into m-c.

Oh... I see. Then we are going to add the additional logs on Bug 960961. But please don't wait for that bug landed. Please just go ahead, help attach a new log following Bevis' instruction on comment 27.
(In reply to Hsin-Yi Tsai  [:hsinyi] from comment #22)
> Some observation from attachment 8362381 [details]:
> 1) line#7257: gecko receives apnSettings with apn type default and mms. This
> looks fine.
> 2) However, in line#7448, gecko receives an update for apnSettings again. At
> this moment, only apn with default type left. No entries for type mms.
> 3) line#7617, gecko sets up a data call with default type apn, instead of
> mms. Per comment 21, this is for data connection, and seems fine. However,
> we are expecting to see another 'setupdatacall' request for mms but I didn't
> see that. I guess that may be the reason why sending mms fails. A log with
> MMS debugging should help further investigation. 
> 
> Also, I am wondering what triggers 2). Does STR in comment #0 cover every
> step in detail? Without mms apn, the mms connection cannot be established.

Hey Viorela, 

Does STR in comment 0 (as follows) contain every every single step?:
1. Launch the messeges app
2. Tap the new message button
3. Enter a phone number
4. Tap the attachment button -> select Gallery -> attach a photo 
5. After the photo is attached tap the send button

Did you tap on any menu on Settings APP before the above steps? If yes, please describe those as well. :)
(In reply to Hsin-Yi Tsai  [:hsinyi] from comment #29)
> (In reply to Hsin-Yi Tsai  [:hsinyi] from comment #22)
> > Some observation from attachment 8362381 [details]:
> > 1) line#7257: gecko receives apnSettings with apn type default and mms. This
> > looks fine.
> > 2) However, in line#7448, gecko receives an update for apnSettings again. At
> > this moment, only apn with default type left. No entries for type mms.
> > 3) line#7617, gecko sets up a data call with default type apn, instead of
> > mms. Per comment 21, this is for data connection, and seems fine. However,
> > we are expecting to see another 'setupdatacall' request for mms but I didn't
> > see that. I guess that may be the reason why sending mms fails. A log with
> > MMS debugging should help further investigation. 
> > 
> > Also, I am wondering what triggers 2). Does STR in comment #0 cover every
> > step in detail? Without mms apn, the mms connection cannot be established.
> 
> Hey Viorela, 
> 
> Does STR in comment 0 (as follows) contain every every single step?:
> 1. Launch the messeges app
> 2. Tap the new message button
> 3. Enter a phone number
> 4. Tap the attachment button -> select Gallery -> attach a photo 
> 5. After the photo is attached tap the send button
> 
> Did you tap on any menu on Settings APP before the above steps? If yes,
> please describe those as well. :)

In steps to reproduce, I would make a change in step 4. Instead of selecting Gallery, we are actually selecting Camera, take a photo and attach it to the message. Sorry for not paying attention at this step. 
Before the above steps, we use a script that connects to cell data.  We don't use the settings app in this test.
Flags: needinfo?(viorela.ioia)
(In reply to Bevis Tseng [:bevistseng] (btseng@mozilla.com) from comment #27)
> Created attachment 8362768 [details]
> Shell Script to Enable RIL/MMS Logs
> 
> Hi Viorela,
> 
> Sorry to say that we didn't see the Mms related log from the latest log
> attached.
> Would you please help us to do the following steps to capture the correct
> logs?
> 1. Connect your device to your pc and make sure your pc can detect your
> device by "adb devices" to list the connected devices to your pc.
> 2. Run the attached script to enable the debug flags of mms/ril.
> 3. Reboot the device and start the test.
> 
> Once the log is captured successfully, you shall be able to see the log tags
> of 'MmsService' and 'RadioInterfaceLayer' in the log you captured.
> 
> Thanks & regards,
> Bevis Tseng

Hi Bevis,

I followed these steps and got the logcat. Still, I didn't see any MmsService log tags in that file. Please take a look at the logcat I'll attach and let me know if it helps. Thanks!
Attached file logcat.txt (obsolete) —
Attachment #8362401 - Attachment is obsolete: true
Hi Viorela,

Sorry to say that it difficult to clarify the mms problem if the mms related logs are not captured.

Hence, to ensure that the related logs are enabled, I have enforced the debug flag directly by modifying the omni.ja file as attached from the ENG build with the same build ID(20140115041401) in comment#0.

Would you please help us to do the following steps to capture the log again for further analysis?
1. Flash the Device with the PVT+ENG Build with the same build id:
   https://pvtbuilds.mozilla.org/pvt/mozilla.org/b2gotoro/nightly/mozilla-central-hamachi-eng/2014/01/2014-01-15-04-14-01/
2. Replace the omni.ja with the attached one by the following steps:
   - adb remount
   - adb push omni.ja /system/b2g/
   - adb reboot

Hopefully, we can capture the related log for further analysis.

Thanks & regards,
Bevis Tseng
Flags: needinfo?(viorela.ioia)
Viorela, in version 1.3, you can also use a MMS without an attachment by adding a subject (in the SMS app, press the settings button (top right) and then tap "add subject") and adding some text in it. Might be useful to see whether the bug reproduces without an attachment.
Attached file logcat.txt
Attachment #8362832 - Attachment is obsolete: true
Flags: needinfo?(viorela.ioia)
Hi Bevis,

After modifying the omni.ja file I ran the test and got the logcat, which contains mmsService log tags.
(In reply to Viorela Ioia [:viorela] from comment #36)
> Hi Bevis,
> 
> After modifying the omni.ja file I ran the test and got the logcat, which
> contains mmsService log tags.

Cool, we got logs we are looking forward to! Thanks!

The problem becomes clear now, but I have more questions, Viorela :)

From the log I see gaia changes 'ril.data.apnSettings' several times. At the last time (line#7028), the apn settings don't contain settings for mms. Therefore, when trying to setup data call for mms (line#9579), gecko cannot find the apn for mms that leads to failure in setting up mms connection.

===========
9579 I/Gecko   (  566): -*- RadioInterface[0]: setupDataCallByType: mms
9580 I/Gecko   (  566): -*- RadioInterface[0]: No apn setting for type: mms
===========

I have no idea about the test script, but I am wondering if the test script have the apn settings correctly set. From the log, looks like a) the test script doesn't contain the apn for mms, or b) the script have correct default settings. But as comment 22 said, somehow step2 in comment #22 was triggered. That step 2 cleared the mms apn that leads to empty entry for mms apn on gecko side. So, we have no settings for mms... Do you have any idea about the script code, Viorela?

More, have you manually test MMS sending, not via test script, with the same SIM card? How was the result?
Flags: needinfo?(viorela.ioia)
I checked the apn settings for mms and they are setted correctly. 
I tried to send an mms manually, with the same SIM card, following the steps in the STR, but I got the same result. The phone wasn't able to send the mms.
Flags: needinfo?(viorela.ioia)
Hi Viorela,

From the log, we found that the MMS apn settings were cleared before sending the MMS.
1. The APNS are read correctly at line#6839.
2. But it was changed by the Marionette script at line#7026 and the new APN Settings didn't contain any APN settings for MMS.
Hence, it is not reasonable that we are not able to send MMS in this condition.
Need script owner's help to clarify this instead.

--
Correct APN Settings for vodafone.ro:
-*- RadioInterface[0]: 'ril.data.apnSettings' is now [[{"carrier":"Vodafone live!","apn":"live.vodafone.com","user":"live","password":"vodafone","proxy":"193.230.161.231","port":"8080","types":["default"]},{"carrier":"Vodafone MMS","apn":"mms.vodafone.ro","user":"mms","password":"vodafone","mmsc":"http://multimedia/servlets/mms","mmsproxy":"193.230.161.231","mmsport":"8080","types":["mms"]},{"carrier":"Vodafone live!","apn":"live.vodafone.com","user":"live","password":"vodafone","proxy":"193.230.161.231","port":"8080","types":["supl"]}],[]]
--
APN Settings was changed by the script.
I/Gecko   (  566): 1390297234349	Marionette	DEBUG	Got request: executeWithCallback, data: {"to":"0","sessionId":"3-b2g","name":"executeAsyncScript","parameters":{"specialPowers":true,"scriptTimeout":null,"newSandbox":true,"args":[],"filename":"gaia_test.py","script":"return GaiaDataLayer.setSetting(\"ril.data.apnSettings\", [[{\"authtype\": \"notDefined\", \"apn\": \"internet.vodafone.ro\", \"user\": \"internet.vodafone.ro\", \"password\": \"internet\", \"port\": \"\", \"types\": [\"default\"], \"proxy\": \"\"}]])","line":216}}, id: {93bd1b10-77aa-4fd6-a8e2-99228bcfd78a}
--
RadioInterface Got new APN Settings without MMS.
-*- RadioInterface[0]: 'ril.data.apnSettings' is now [[{"authtype":"notDefined","apn":"internet.vodafone.ro","user":"internet.vodafone.ro","password":"internet","port":"","types":["default"],"proxy":""}]]
Flags: needinfo?(viorela.ioia)
Keywords: regression
(In reply to Bevis Tseng [:bevistseng] (btseng@mozilla.com) from comment #39)
> Hi Viorela,
> 
> From the log, we found that the MMS apn settings were cleared before sending
> the MMS.
> 1. The APNS are read correctly at line#6839.
> 2. But it was changed by the Marionette script at line#7026 and the new APN
> Settings didn't contain any APN settings for MMS.
> Hence, it is not reasonable that we are not able to send MMS in this
> condition.

Sorry for typo.

Hence, it is reasonable that we are not able to send MMS in this condition.

> Need script owner's help to clarify this instead.
> 
> --
> Correct APN Settings for vodafone.ro:
> -*- RadioInterface[0]: 'ril.data.apnSettings' is now [[{"carrier":"Vodafone
> live!","apn":"live.vodafone.com","user":"live","password":"vodafone","proxy":
> "193.230.161.231","port":"8080","types":["default"]},{"carrier":"Vodafone
> MMS","apn":"mms.vodafone.ro","user":"mms","password":"vodafone","mmsc":"http:
> //multimedia/servlets/mms","mmsproxy":"193.230.161.231","mmsport":"8080",
> "types":["mms"]},{"carrier":"Vodafone
> live!","apn":"live.vodafone.com","user":"live","password":"vodafone","proxy":
> "193.230.161.231","port":"8080","types":["supl"]}],[]]
> --
> APN Settings was changed by the script.
> I/Gecko   (  566): 1390297234349	Marionette	DEBUG	Got request:
> executeWithCallback, data:
> {"to":"0","sessionId":"3-b2g","name":"executeAsyncScript","parameters":
> {"specialPowers":true,"scriptTimeout":null,"newSandbox":true,"args":[],
> "filename":"gaia_test.py","script":"return
> GaiaDataLayer.setSetting(\"ril.data.apnSettings\", [[{\"authtype\":
> \"notDefined\", \"apn\": \"internet.vodafone.ro\", \"user\":
> \"internet.vodafone.ro\", \"password\": \"internet\", \"port\": \"\",
> \"types\": [\"default\"], \"proxy\": \"\"}]])","line":216}}, id:
> {93bd1b10-77aa-4fd6-a8e2-99228bcfd78a}
> --
> RadioInterface Got new APN Settings without MMS.
> -*- RadioInterface[0]: 'ril.data.apnSettings' is now
> [[{"authtype":"notDefined","apn":"internet.vodafone.ro","user":"internet.
> vodafone.ro","password":"internet","port":"","types":["default"],"proxy":
> ""}]]
Over to UI Tests - this sounds like a problem in either how the tests are being ran or a problem in setup portion of the MMS test cases with APN settings.
blocking-b2g: 1.4? → ---
Component: RIL → Gaia::UI Tests
Viorela - Can you also double check if you can manually reproduce this outside of automation?
Whiteboard: [xfail]
Yes, I checked this again and I was able to reproduce it manually.
Flags: needinfo?(viorela.ioia)
(In reply to Viorela Ioia [:viorela] from comment #43)
> Yes, I checked this again and I was able to reproduce it manually.

Hi Viorela,

For the automation test, the previous log indicates there seems something wrong in test script. We are not sure what the root cause for the failure in the manual tests. It would be great if you could attach a log for the manual test. And please also provide the expected mms apn setting so that we could check if gaia/gecko has the correct data. Thanks!
Flags: needinfo?(viorela.ioia)
Hi Hsin-Yi,

As I saw that the mms settings are ok, but I'm still not able to send an mms, I contacted the Customer Service from Vodafone to see what's wrong with my mms. They informed me that my SIM doesn't have the mms service activated. I didn't know that, since I don't remember to have ran this test locally lately.  
I suppose I'll be able to send mms after activating the service. I'll let you know if I still have problems after that. 
Sorry for the the inconvenience.
Flags: needinfo?(viorela.ioia)
Sounds like this is expected behavior then if MMS failed with MMS not enabled on the SIM. Closing out as invalid.
Status: NEW → RESOLVED
Closed: 10 years ago
Keywords: qablocker
Resolution: --- → INVALID
(In reply to Viorela Ioia [:viorela] from comment #45)
> Hi Hsin-Yi,
> 
> As I saw that the mms settings are ok, but I'm still not able to send an
> mms, I contacted the Customer Service from Vodafone to see what's wrong with
> my mms. They informed me that my SIM doesn't have the mms service activated.
> I didn't know that, since I don't remember to have ran this test locally
> lately.  
> I suppose I'll be able to send mms after activating the service. I'll let
> you know if I still have problems after that. 
> Sorry for the the inconvenience.

No problem. At least we got the root cause ;)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: