Closed Bug 891732 Opened 11 years ago Closed 11 years ago

[User Story] A-GPS Settings Runtime Customization by SIM

Categories

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

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(b2g-v1.2 fixed)

RESOLVED FIXED
Tracking Status
b2g-v1.2 --- fixed

People

(Reporter: pdol, Assigned: aus)

References

Details

(Keywords: feature, verifyme, Whiteboard: [ucid:System26, FT:systems-fe, KOI:P2][systemsfe])

User Story

Note that the implementation of A-GPS Settings is actually such that the settings get reconfigured when the SIM is changed (not just during First Run Experience) which is a superior implementation.

Attachments

(1 file)

User Story:

As an OEM, I want to be able to specify which A-GPS APN, Identifer, Password, HTTP proxy host and HTTP proxy port should be used on the device based on the MNC/MCC setting from the SIM card inserted during the First Run Experience in order to target customizations to locales without needing to use separate builds.


Acceptance Criteria:

"1. If a certain A-GPS settings (including APN, Identifier, Password, HTTP proxy host and HTTP proxy port) are specified to be included for an MNC/MCC combination, and a SIM card with that MNC/MCC combination is in the device during the First Run Experience, the A-GPS settings used by the device are those specified by the A-GPS settings.
2. If no SIM card is inserted during the First Run Experience, the specified default A-GPS settings are used by the device.
3. If no SIM card is inserted during the First Run Experience, and no default A-GPS settings are specified, the Mozilla defined default settings should apply."
Whiteboard: [ucid:System26] → [ucid:System26, FT:systems-fe, KOI:P2]
Depends on: 898409
Ghislain 'Aus' Lacroix changed story state to started in Pivotal Tracker
Assignee: nobody → aus
This is complete but lacks unit tests. The work for Data + MMS also took care of this. Adding tests today...
Status: NEW → ASSIGNED
Attachment #805591 - Attachment mime type: text/plain → text/html
Attachment #805591 - Flags: review?(kyle)
Comment on attachment 805591 [details]
Patch - v1 - Add unit tests for AGPS/SUPL settings based on MCC/MNC pair

r-'ing because I don't think we're supposed to bump the apns version? Also adding jaoo as extra reviewer since he found a bunch of stuff in my work on customizations last week.
Attachment #805591 - Flags: review?(kyle)
Attachment #805591 - Flags: review?(josea.olivera)
Attachment #805591 - Flags: review-
I've updated the Pull Request. It no longer updates the apns_conf_local.xml version attribute.
Comment on attachment 805591 [details]
Patch - v1 - Add unit tests for AGPS/SUPL settings based on MCC/MNC pair

NOTE: Please see https://wiki.mozilla.org/Release_Management/B2G_Landing to better understand the B2G approval process and landings.

[Approval Request Comment]
[Bug caused by] (feature/regressing bug #): None.
[User impact] if declined: Potential for Operator Variant AGPS/SUPL Settings to fail to apply as expected.
[Testing completed]: Unit Test
[Risk to taking this patch] (and alternatives if risky): Extremely Low
[String changes made]: None.

This patch simply adds unit testing to already existing functionality.
Attachment #805591 - Flags: approval-gaia-v1.2?(anygregor)
Comment on attachment 805591 [details]
Patch - v1 - Add unit tests for AGPS/SUPL settings based on MCC/MNC pair

LGTM, apn.json database is rebuilt correctly and tests pass. r=me

Just a comment: IMHO we should change the bug name to reflect better what we are doing here. AGPS settings are related to the AGPS server address and port and we are not handling them at all. The APN settings the SUPL APN were handled by in bug 891725.
Attachment #805591 - Flags: review?(josea.olivera) → review+
Comment on attachment 805591 [details]
Patch - v1 - Add unit tests for AGPS/SUPL settings based on MCC/MNC pair

Test Only
Attachment #805591 - Flags: approval-gaia-v1.2?(anygregor) → approval-gaia-v1.2+
Tests landed on Master. https://github.com/mozilla-b2g/gaia/commit/602e128405bde98fd7a36551a0e6d1867e3dbc48

Still need to land on v1.2 train.
Closing per comment 10. Uplift will happen post resolved fixed.
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Keywords: verifyme
Resolution: --- → FIXED
Ghislain 'Aus' Lacroix changed story state to finished in Pivotal Tracker
Ghislain 'Aus' Lacroix changed story state to accepted in Pivotal Tracker
Ghislain 'Aus' Lacroix changed story state to accepted in Pivotal Tracker
Flags: in-moztrap?
(In reply to Ghislain 'Aus' Lacroix from comment #15)
> Uplifted to v1.2 branch:
> https://github.com/mozilla-b2g/gaia/commit/
> 106a675ca55cddf40bf32234fc2cb5a63fd734e5

Please remember to set the status flag appropriately for a branch landing.
Aus - I'm trying to get the reference customization to include an A-GPS SIM customization. Can you provide a sample json customization file (with the correct filename) that showcases the syntax of this customization?
Flags: needinfo?(aus)
See https://github.com/mozilla-b2g/gaia/tree/master/shared/resources/apn for the README.md

See https://github.com/mozilla-b2g/gaia/blob/master/shared/resources/apn.json#L3179 for what is the final output file that we actually load and parse at run-time. I pointed you to the test data we use.

A-GPS is driven by SUPL.
Flags: needinfo?(aus)
Whiteboard: [ucid:System26, FT:systems-fe, KOI:P2] → [ucid:System26, FT:systems-fe, KOI:P2][systemsfe]
Flags: in-moztrap? → in-moztrap?(jhammink)
Verified as fixed on 1.2 and 1.3 builds. The three specified cases in the user story perform as expected on the latest version of these builds.

Buri 1.2
Environmental Variables
Device: Buri v1.2 COM RIL
Build ID: 20131203004002
Gecko: http://hg.mozilla.org/releases/mozilla-b2g26_v1_2/rev/244e98241b2c
Gaia: c8f14ad3950d59ba13d7639eff02d080060bb3ce
Platform Version: 26.0
RIL Version: 01.02.00.019.102 
Firmware Version: V1.2_US_20131115

Buri 1.3
Environmental Variables
Device: Buri v1.3 Mozilla RIL
Build ID: 20131203040236
Gecko: http://hg.mozilla.org/mozilla-central/rev/8648aa476eef
Gaia: 31808a29cfcffa584b6a88b4f1e515387f485a1b
Platform Version: 28.0a1
RIL Version: 01.02.00.019.102 
Firmware Version: v1.2_20131115
Status: RESOLVED → VERIFIED
Removing verifyme keyword.
Keywords: verifyme
(In reply to rkunkel from comment #20)
> Verified as fixed on 1.2 and 1.3 builds. The three specified cases in the
> user story perform as expected on the latest version of these builds.
> 
> Buri 1.2
> Environmental Variables
> Device: Buri v1.2 COM RIL
> Build ID: 20131203004002
> Gecko: http://hg.mozilla.org/releases/mozilla-b2g26_v1_2/rev/244e98241b2c
> Gaia: c8f14ad3950d59ba13d7639eff02d080060bb3ce
> Platform Version: 26.0
> RIL Version: 01.02.00.019.102 
> Firmware Version: V1.2_US_20131115
> 
> Buri 1.3
> Environmental Variables
> Device: Buri v1.3 Mozilla RIL
> Build ID: 20131203040236
> Gecko: http://hg.mozilla.org/mozilla-central/rev/8648aa476eef
> Gaia: 31808a29cfcffa584b6a88b4f1e515387f485a1b
> Platform Version: 28.0a1
> RIL Version: 01.02.00.019.102 
> Firmware Version: v1.2_20131115

I need more clarity on the test cases that were ran here. What did you run to test this?
Status: VERIFIED → RESOLVED
Closed: 11 years ago11 years ago
Keywords: verifyme
"1. If a certain A-GPS settings (including APN, Identifier, Password, HTTP proxy host and HTTP proxy port) are specified to be included for an MNC/MCC combination, and a SIM card with that MNC/MCC combination is in the device during the First Run Experience, the A-GPS settings used by the device are those specified by the A-GPS settings."

-- For this case I specified everything after the FTE as there was no option to do so during the process. Because this bug was written 7-09 I assumed the process may have changed and wanted to verify the user could still set the changes based on their SIM card and preferences. 

"2. If no SIM card is inserted during the First Run Experience, the specified default A-GPS settings are used by the device."

-- For this case I removed my SIM Card and ran through the FTE. When brought to the home screen I went to settings > Cellular & Data > A-GPS settings and made sure Cingular 410 was selected.

3. If no SIM card is inserted during the First Run Experience, and no default A-GPS settings are specified, the Mozilla defined default settings should apply.

-- For this case I repeated the initial steps for case 2 and also checked the advanced settings to makes sure the expected default settings were filled out.
(In reply to rkunkel from comment #23)
> "1. If a certain A-GPS settings (including APN, Identifier, Password, HTTP
> proxy host and HTTP proxy port) are specified to be included for an MNC/MCC
> combination, and a SIM card with that MNC/MCC combination is in the device
> during the First Run Experience, the A-GPS settings used by the device are
> those specified by the A-GPS settings."
> 
> -- For this case I specified everything after the FTE as there was no option
> to do so during the process. Because this bug was written 7-09 I assumed the
> process may have changed and wanted to verify the user could still set the
> changes based on their SIM card and preferences. 
> 
> "2. If no SIM card is inserted during the First Run Experience, the
> specified default A-GPS settings are used by the device."
> 
> -- For this case I removed my SIM Card and ran through the FTE. When brought
> to the home screen I went to settings > Cellular & Data > A-GPS settings and
> made sure Cingular 410 was selected.
> 
> 3. If no SIM card is inserted during the First Run Experience, and no
> default A-GPS settings are specified, the Mozilla defined default settings
> should apply.
> 
> -- For this case I repeated the initial steps for case 2 and also checked
> the advanced settings to makes sure the expected default settings were
> filled out.

I don't think that's the right testing approach here. John owns testing of this feature, so he could give you more details on what to focus on here.
Flags: needinfo?(jhammink)
(In reply to rkunkel from comment #23)
> "1. If a certain A-GPS settings (including APN, Identifier, Password, HTTP
> proxy host and HTTP proxy port) are specified to be included for an MNC/MCC
> combination, and a SIM card with that MNC/MCC combination is in the device
> during the First Run Experience, the A-GPS settings used by the device are
> those specified by the A-GPS settings."
> 
> -- For this case I specified everything after the FTE as there was no option
> to do so during the process. Because this bug was written 7-09 I assumed the
> process may have changed and wanted to verify the user could still set the
> changes based on their SIM card and preferences. 

See the testsuite https://moztrap.mozilla.org/manage/cases/?filter-suite=369 for the correct flow (as best as we understand it)
This is the correct approach, as I understand it also.   Since it's not possible to take the SIM card out during the FTE on Buri (but may be possible on other/future devices) then only options are to take out the SIM before starting the phone, or else after FTE, shut down the phone and remove SIM card and then check the settings again.

> "2. If no SIM card is inserted during the First Run Experience, the
> specified default A-GPS settings are used by the device."
> 
> -- For this case I removed my SIM Card and ran through the FTE. When brought
> to the home screen I went to settings > Cellular & Data > A-GPS settings and
> made sure Cingular 410 was selected.

This is how I would do it.
 
> 3. If no SIM card is inserted during the First Run Experience, and no
> default A-GPS settings are specified, the Mozilla defined default settings
> should apply.
> -- For this case I repeated the initial steps for case 2 and also checked
> the advanced settings to makes sure the expected default settings were
> filled out.

Also, how I would do it.   Gregor or Aus  - where would we find these "Mozilla" default settings specified?

My suggestion is that for first few testruns on 1.3, we take SIM customization testing on our side (or else TEF side)as there are alot of steps and room for error.
Flags: needinfo?(jhammink)
Flags: needinfo?(anygregor)
I think we require a sim card right now.
Flags: needinfo?(anygregor) → needinfo?(aus)
That's correct. These settings require a SIM card.
Flags: needinfo?(aus)
Some devices allow power through the USB charger so technically one could potentially pull the battery and swap SIMs during FTE; having said that that scenario seems more or less an edge case.

We could potentially test this out with the same build without reflashing, via reseting the phone in various conditions.  ie no sim, T-mobile SIM, AT&T SIM, etc.
User Story: (updated)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: