Closed Bug 1091960 Opened 10 years ago Closed 6 years ago

Gaia incorrectly checking for CMAS alerts settings

Categories

(Firefox OS Graveyard :: Gaia::Network Alerts, defect)

x86
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: cyang, Unassigned)

References

Details

(Keywords: feature, Whiteboard: [caf priority: p2][CR 749037])

There looks to be a few issues with the Gaia checks for CMAS alerts:

1) All CMAS alerts may be blocked by Gaia based on the cmas.enabled setting [2]. However, alerts like Presidential Alerts should always be displayed (reference [1], table under section 9.4.1.2.2 for 'Not settable by MMI').
2) The check at [3] specifically checks the range for GSM CMAS values. CDMA CMAS values are not taken into account.

Should these checks be in Gaia?

[1] http://www.etsi.org/deliver/etsi_ts/123000_123099/123041/11.06.00_60/ts_123041v110600p.pdf
[2] https://github.com/mozilla-b2g/gaia/blob/v2.1/apps/network-alerts/js/index.js#L37
[3] https://github.com/mozilla-b2g/gaia/blob/v2.1/apps/network-alerts/js/index.js#L20
Whiteboard: [CR 749037]
Whiteboard: [CR 749037] → [caf priority: p2][CR 749037]
NI Bevis, are you the right person to discuss about the CMAS architecture?
Component: Gaia::Settings → Gaia::Network Alerts
Flags: needinfo?(btseng)
(In reply to Carol Yang [:cyang] from comment #0)
> There looks to be a few issues with the Gaia checks for CMAS alerts:
> 

Add Gaia owner(Steve) into CC list.

NI reporter for the following questions to be clarified:

> 1) All CMAS alerts may be blocked by Gaia based on the cmas.enabled setting
> [2]. However, alerts like Presidential Alerts should always be displayed
> (reference [1], table under section 9.4.1.2.2 for 'Not settable by MMI').

1. Does that means we always has to display CMAS Message message-id with 4370 or 4383 no matter |cmas.enabled setting| is true or not?
2. Could you point out the reason why this is needed because I didn't see related statements in [1].

> 2) The check at [3] specifically checks the range for GSM CMAS values. CDMA
> CMAS values are not taken into account.

We haven't been informed to support CMAS Message in CDMA yet.
Could you help us to point out where the standard is for further study?
Is it the same to normal CDMA broadcast message and what we only have to do is to identify the CMAS message by checking the value of |cdmaServiceCategory| in [4].
Is there any attributes for CDMA CMAS Message that are not exposed by the structure in |MozCellBroadcastMessage.webidl| but are required?

BTW, in current design, to identify a cellbroadcast message is from CDMA network or not is to check
whether |cdmaServiceCategory| in [4] is null or not.

> Should these checks be in Gaia?
If checking |cdmaServiceCategory| is the only thing we have to do to support CMAS message in CDMA, then the answer is YES, IMO.
> 
> [1]
> http://www.etsi.org/deliver/etsi_ts/123000_123099/123041/11.06.00_60/
> ts_123041v110600p.pdf
> [2]
> https://github.com/mozilla-b2g/gaia/blob/v2.1/apps/network-alerts/js/index.
> js#L37
> [3]
> https://github.com/mozilla-b2g/gaia/blob/v2.1/apps/network-alerts/js/index.
> js#L20

[4] http://dxr.mozilla.org/mozilla-central/source/dom/webidl/MozCellBroadcastMessage.webidl#72
Flags: needinfo?(btseng) → needinfo?(cyang)
[Blocking Requested - why for this release]:
blocking-b2g: --- → 2.1?
(In reply to Bevis Tseng [:bevistseng] (btseng@mozilla.com) from comment #2)
> (In reply to Carol Yang [:cyang] from comment #0)
> > There looks to be a few issues with the Gaia checks for CMAS alerts:
> > 
> 
> Add Gaia owner(Steve) into CC list.
> 
> NI reporter for the following questions to be clarified:
> 
> > 1) All CMAS alerts may be blocked by Gaia based on the cmas.enabled setting
> > [2]. However, alerts like Presidential Alerts should always be displayed
> > (reference [1], table under section 9.4.1.2.2 for 'Not settable by MMI').
> 
> 1. Does that means we always has to display CMAS Message message-id with
> 4370 or 4383 no matter |cmas.enabled setting| is true or not?
Yes for 4370. Although for 4383, there is a note that it is dependent on the language indicated in the CBS message. Specifically, section 9.4.1.2.3 of TS 23.041 says "Even if the Message Identifier is not settable by MMI, the message shall still be discarded if the language is not set to be displayed.". However, I'd imagine that an operator would only be broadcasting messages in a language in which the network supports.

> 2. Could you point out the reason why this is needed because I didn't see
> related statements in [1].
I'm looking at the phrase "Not settable by MMI." Also, please note from TS 22.268, section 6.2:
"A CMAS-capable User Interface (UI) shall support the ability for the user to opt-out of only the Imminent Threat and Child Abduction Emergency Warning Notifications. When a Presidential Warning Notification is received, it is always presented to the user whenever Cell Broadcast Service is enabled on the UE."

> 
> > 2) The check at [3] specifically checks the range for GSM CMAS values. CDMA
> > CMAS values are not taken into account.
> 
> We haven't been informed to support CMAS Message in CDMA yet.
> Could you help us to point out where the standard is for further study?
> Is it the same to normal CDMA broadcast message and what we only have to do
> is to identify the CMAS message by checking the value of
> |cdmaServiceCategory| in [4].
> Is there any attributes for CDMA CMAS Message that are not exposed by the
> structure in |MozCellBroadcastMessage.webidl| but are required?
> 
> BTW, in current design, to identify a cellbroadcast message is from CDMA
> network or not is to check
> whether |cdmaServiceCategory| in [4] is null or not.
> 
> > Should these checks be in Gaia?
> If checking |cdmaServiceCategory| is the only thing we have to do to support
> CMAS message in CDMA, then the answer is YES, IMO.
> > 
> > [1]
> > http://www.etsi.org/deliver/etsi_ts/123000_123099/123041/11.06.00_60/
> > ts_123041v110600p.pdf
> > [2]
> > https://github.com/mozilla-b2g/gaia/blob/v2.1/apps/network-alerts/js/index.
> > js#L37
> > [3]
> > https://github.com/mozilla-b2g/gaia/blob/v2.1/apps/network-alerts/js/index.
> > js#L20
> 
> [4]
> http://dxr.mozilla.org/mozilla-central/source/dom/webidl/
> MozCellBroadcastMessage.webidl#72
Flags: needinfo?(cyang)
(In reply to Carol Yang [:cyang] from comment #0)
> There looks to be a few issues with the Gaia checks for CMAS alerts:
> 
> 1) All CMAS alerts may be blocked by Gaia based on the cmas.enabled setting
> [2]. However, alerts like Presidential Alerts should always be displayed
> (reference [1], table under section 9.4.1.2.2 for 'Not settable by MMI').

So, it seems like we always need to display 4370, but I'm not sure about whether we need to deal with 4383. Carol, since you said "operator would only be broadcasting messages in a language in which the network supports", do we still need to check message language and MMI?
> 2) The check at [3] specifically checks the range for GSM CMAS values. CDMA
> CMAS values are not taken into account.
> 
Hi Hsinyi, do we still need to check cdmaServiceCategory if we didn't support CMAS Message in CDMA yet?
Flags: needinfo?(htsai)
Flags: needinfo?(cyang)
(In reply to Steve Chung [:steveck] from comment #5)
> (In reply to Carol Yang [:cyang] from comment #0)
> > There looks to be a few issues with the Gaia checks for CMAS alerts:
> > 
> > 1) All CMAS alerts may be blocked by Gaia based on the cmas.enabled setting
> > [2]. However, alerts like Presidential Alerts should always be displayed
> > (reference [1], table under section 9.4.1.2.2 for 'Not settable by MMI').
> 
> So, it seems like we always need to display 4370, but I'm not sure about
> whether we need to deal with 4383. Carol, since you said "operator would
> only be broadcasting messages in a language in which the network supports",
> do we still need to check message language and MMI?

I think we could just display 4838 without worrying too much about language indication, based on the spec statement "For this range the ME can use language filter mechanisms and the MS may use the language(s) selected through the MMI to determine whether a particular CBS message should be displayed". 

> > 2) The check at [3] specifically checks the range for GSM CMAS values. CDMA
> > CMAS values are not taken into account.
> > 
> Hi Hsinyi, do we still need to check cdmaServiceCategory if we didn't
> support CMAS Message in CDMA yet?

In the current circumstance, it's fine to not check cdmaServiceCategory.
Flags: needinfo?(htsai)
(In reply to Steve Chung [:steveck] from comment #5)
> (In reply to Carol Yang [:cyang] from comment #0)
> > There looks to be a few issues with the Gaia checks for CMAS alerts:
> > 
> > 1) All CMAS alerts may be blocked by Gaia based on the cmas.enabled setting
> > [2]. However, alerts like Presidential Alerts should always be displayed
> > (reference [1], table under section 9.4.1.2.2 for 'Not settable by MMI').
> 
> So, it seems like we always need to display 4370, but I'm not sure about
> whether we need to deal with 4383. Carol, since you said "operator would
> only be broadcasting messages in a language in which the network supports",
> do we still need to check message language and MMI?

I would agree with what Hsynyi said already, could probably just display 4838. I also checked Android code and it doesn't even look like they defined a value for 4838. IMO, might be ok to just treat this the same way as 4370.

> > 2) The check at [3] specifically checks the range for GSM CMAS values. CDMA
> > CMAS values are not taken into account.
> > 
> Hi Hsinyi, do we still need to check cdmaServiceCategory if we didn't
> support CMAS Message in CDMA yet?
Flags: needinfo?(cyang)
(In reply to Hsin-Yi Tsai [:hsinyi] from comment #6)
> > > 2) The check at [3] specifically checks the range for GSM CMAS values. CDMA
> > > CMAS values are not taken into account.
> > > 
> > Hi Hsinyi, do we still need to check cdmaServiceCategory if we didn't
> > support CMAS Message in CDMA yet?
> 
> In the current circumstance, it's fine to not check cdmaServiceCategory.

Sorry for late response of this topic.

By after further study for CDMA CMAS, if CDMA CMAS alert is sent from the CDMA SMS Broadcast Message, it is possible to receive CMAS alert by current design. The only difference is that there are some extra information like |severity|, |urgency|, etc is available in CMAS Alert PDU. (See 4.3 CMAS Message in [1] for more detailed information.)
Then, similiar problem to have CDMA CMAS Alert be received in both NetworkAlert App/System App will be happened.

According to 9.3.3 Commercial Mobile Alert Service (CMAS) in 3GPP2 C.R1001[2], Gaia can have another filter in cdmaServiceCategory to filter out CDMA CMAS Alert (0x1000~0x10FF) from normal CDMA Broadcast Message:
---------+------------------------------------
0x1000   | Presidential-Level Alert  
---------+------------------------------------
0x1001   | Extreme Threat to Life and Property 
---------+------------------------------------
0x1002   | Severe Threat to Life and Property
---------+------------------------------------
0x1003   | AMBER (Child Abduction Emergency)
---------+------------------------------------
0x1004   | CMAS Test Message
---------+------------------------------------
0x1005 – |
0x10FF   |RESERVED 


Set NI to Carol to double confirm the filter approach mentioned above for CDMA CMAS Alert.

[1] http://ftp.tiaonline.org/tr-45/tr-45.5/incoming/2009/20091207__Maui/TR-455/WG2/520-09120806__Editor_TIA-1149-0-1_CMASoverCDMA_Baseline.pdf
[2] http://www.3gpp2.org/public_html/specs/C.R1001-G_v1.0_Param_Administration.pdf
Flags: needinfo?(cyang)
(In reply to Bevis Tseng [:bevistseng] (btseng@mozilla.com) from comment #8)
> (In reply to Hsin-Yi Tsai [:hsinyi] from comment #6)
> > > > 2) The check at [3] specifically checks the range for GSM CMAS values. CDMA
> > > > CMAS values are not taken into account.
> > > > 
> > > Hi Hsinyi, do we still need to check cdmaServiceCategory if we didn't
> > > support CMAS Message in CDMA yet?
> > 
> > In the current circumstance, it's fine to not check cdmaServiceCategory.
> 
> Sorry for late response of this topic.
> 
> By after further study for CDMA CMAS, if CDMA CMAS alert is sent from the
> CDMA SMS Broadcast Message, it is possible to receive CMAS alert by current
> design. The only difference is that there are some extra information like
> |severity|, |urgency|, etc is available in CMAS Alert PDU. (See 4.3 CMAS
> Message in [1] for more detailed information.)
> Then, similiar problem to have CDMA CMAS Alert be received in both
> NetworkAlert App/System App will be happened.
> 
> According to 9.3.3 Commercial Mobile Alert Service (CMAS) in 3GPP2
> C.R1001[2], Gaia can have another filter in cdmaServiceCategory to filter
> out CDMA CMAS Alert (0x1000~0x10FF) from normal CDMA Broadcast Message:
> ---------+------------------------------------
> 0x1000   | Presidential-Level Alert  
> ---------+------------------------------------
> 0x1001   | Extreme Threat to Life and Property 
> ---------+------------------------------------
> 0x1002   | Severe Threat to Life and Property
> ---------+------------------------------------
> 0x1003   | AMBER (Child Abduction Emergency)
> ---------+------------------------------------
> 0x1004   | CMAS Test Message
> ---------+------------------------------------
> 0x1005 – |
> 0x10FF   |RESERVED 
> 
> 
> Set NI to Carol to double confirm the filter approach mentioned above for
> CDMA CMAS Alert.

Hi Bevis,

Sure, using cdmaServiceCategory sounds good to me.

So the fields to check for GSM vs CDMA would be slightly different given the new fields you've mentioned above (severity, urgency, etc) in addition to cdmaServiceCategory. Also, fields like aMessageClass at [3] seems to only apply to CB messages, and not CMAS, correct?

> 
> [1]
> http://ftp.tiaonline.org/tr-45/tr-45.5/incoming/2009/20091207__Maui/TR-455/
> WG2/520-09120806__Editor_TIA-1149-0-1_CMASoverCDMA_Baseline.pdf
> [2]
> http://www.3gpp2.org/public_html/specs/C.R1001-G_v1.0_Param_Administration.
> pdf

[3] http://dxr.mozilla.org/mozilla-central/source/dom/cellbroadcast/interfaces/nsICellBroadcastService.idl?from=nsICellBroadcastService.idl#20
Flags: needinfo?(cyang)
blocking-b2g: 2.1? → 2.1+
Because of the workaround mentioned at https://bugzilla.mozilla.org/show_bug.cgi?id=1091751#c22, and also because bug 1091751 will no longer land on QC specific 2.1 branch, this bug is not needed for 2.1 either.
No longer blocks: CAF-v2.1-CC-metabug
blocking-b2g: 2.1+ → ---
(In reply to Carol Yang [:cyang] from comment #9)
> Hi Bevis,
> 
> Sure, using cdmaServiceCategory sounds good to me.
> 
> So the fields to check for GSM vs CDMA would be slightly different given the
> new fields you've mentioned above (severity, urgency, etc) in addition to
> cdmaServiceCategory. Also, fields like aMessageClass at [3] seems to only
> apply to CB messages, and not CMAS, correct?
Yes, actually, the aMessageClass is meaningful only for GSM CB Message. :)
> 
> > 
> > [1]
> > http://ftp.tiaonline.org/tr-45/tr-45.5/incoming/2009/20091207__Maui/TR-455/
> > WG2/520-09120806__Editor_TIA-1149-0-1_CMASoverCDMA_Baseline.pdf
> > [2]
> > http://www.3gpp2.org/public_html/specs/C.R1001-G_v1.0_Param_Administration.
> > pdf
> 
> [3]
> http://dxr.mozilla.org/mozilla-central/source/dom/cellbroadcast/interfaces/
> nsICellBroadcastService.idl?from=nsICellBroadcastService.idl#20
Carol, Anshul, Bevis,

in [1] I read that the message identifier could go from 4352 to 6399 (included). But in bug 1051795 and bug 1091751 we used the range 4370 to 4399 (included).

Therefore I'd like to know if you think we used an incorrect range here.
Thanks for your insight.

[1] http://www.gsma.com/mobilefordevelopment/wp-content/uploads/2013/01/Mobile-Network-Public-Warning-Systems-and-the-Rise-of-Cell-Broadcast.pdf
Flags: needinfo?(cyang)
Flags: needinfo?(btseng)
Flags: needinfo?(anshulj)
Hi Julien,

Here is my understanding of how messages ids are distributed. 
Not all the ids in 4352-6399 are specified, some of them are reserved for furture extension.
You can double check the table in |9.4.1.2.2 Message Identifier| in [1]:
1. 4352 - 4356 -> ETWS
2. 4357 - 4359 -> Future extension for ETWS.
3. 4360 - 4369 -> Intended for standardization in future versions of this document.
4. 4370 - 4395 -> CMAS
5. 4396 - 4399 -> Intended as CMAS and/or EU-Alert range in future versions of this document.
6. 4400 - 6399 -> Intended as PWS range in future versions of the present document.

Hence, current implementation looks okay to me unless Gaia would like to have ETWS controlled by Network Alert as well and ETWS message can be identified if etws attribute is presented in [2].

[1] http://www.etsi.org/deliver/etsi_ts/123000_123099/123041/12.07.00_60/ts_123041v120700p.pdf
[2] https://dxr.mozilla.org/mozilla-central/source/dom/webidl/MozCellBroadcastMessage.webidl#69
Flags: needinfo?(btseng)
I think we want to support all PWS (so this is including ETWS). Is ETWS really different than what we did with CMAS? Does it need a specific handling?

NI our owner Wilfred as well.
Flags: needinfo?(wmathanaraj)
(In reply to Julien Wajsberg [:julienw] from comment #14)
> I think we want to support all PWS (so this is including ETWS). Is ETWS
> really different than what we did with CMAS? Does it need a specific
> handling?
> 
> NI our owner Wilfred as well.

As I know, besides "warning type", ETWS contains additional attributes about whether "alerting"/"pop up" of this notification is needed or not. More detailed information is addressed in |9.4.1.2.1 Serial Number| in [1]

[1] http://www.etsi.org/deliver/etsi_ts/123000_123099/123041/12.07.00_60/ts_123041v120700p.pdf
Flags: needinfo?(anshulj)
Flags: needinfo?(wmathanaraj)
Keywords: feature
(In reply to Julien Wajsberg [:julienw] from comment #12)
> Carol, Anshul, Bevis,
> 
> in [1] I read that the message identifier could go from 4352 to 6399
> (included). But in bug 1051795 and bug 1091751 we used the range 4370 to
> 4399 (included).
> 
> Therefore I'd like to know if you think we used an incorrect range here.
> Thanks for your insight.
> 
> [1]
> http://www.gsma.com/mobilefordevelopment/wp-content/uploads/2013/01/Mobile-
> Network-Public-Warning-Systems-and-the-Rise-of-Cell-Broadcast.pdf

Looks like Bevis covered this in comment 13.
Flags: needinfo?(cyang)
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.