[PATCH] iface-modem-3gpp: add SubscriptionState property

Aleksander Morgado aleksander at lanedo.com
Mon Sep 30 09:47:21 PDT 2013


On 09/30/2013 06:14 PM, Dan Williams wrote:
>>>> This patch adds a new property, SubscriptionState, to
>>>>> > >> > org.freedesktop.ModemManager1.Modem.Modem3gpp.  The subscription state
>>>>> > >> > is used to indicate whether an account has been provisioned, and if so,
>>>>> > >> > whether the account has any data left.
>>>>> > >> > 
>>>>> > >> > There will be two subsequent patches that will make use of this new property.
>>> > > There seems to be some conceptual overlap with the 3gpp2
>>> > > MMModemCdmaActivationState, perhaps this property could instead be a
>>> > > generic Modem interface property instead, and the 3GPP2 stuff could
>>> > > update both ActivateState and the generic SubscriptionStatus property
>>> > > from the same data?
>>> > > 
>>> > > Or are there potentially more 3GPP states for the subscription than what
>>> > > you've defined here?
>> > 
>> > Do you really think it's a good idea to merge these? If the 3GPP ones
>> > are 'unprovisioned', 'provisioned-with-data' and
>> > 'provisioned-data-exhausted'; they really have not much to do with the
>> > 3GPP2 ones. Also, I understand that not-yet-activated accounts in 3GPP2
>> > may be normal (e.g. when you buy a new device); but I don't think that's
>> > the case in 3GPP.
> You may certainly be correct here; I'm just trying to generate some
> discussion around generic activation/provisioning states.  I see quite a
> few parallels in the *behavior* between 3GPP provisioning and 3GPP2
> activation and was wondering if there was a more generic means we could
> use to represent this, such that clients don't have to care whether it's
> 3GPP2 or 3GPP.
> 
> Some clients wouldn't necessarily know how to start
> provisioning/activating, but they would certainly want to know if the
> device was provisioned or not, so they could indicate to the user that
> they have to go to some website to provision the device instead of the
> user expecting they can use it immediately after inserting the SIM.
> Which might be useful as a generic property, what do you think?

I still wonder whether users will ever try to use a non-provisioned
*new* SIM, as they will always get it provisioned when they buy it.
Another thing would be the case with valid SIMs that after some period
they no longer are valid (e.g. if you don't top-up the prepaid amount or
something). But in that case, not sure how the network will notify about
the registration failure to the device, don't know if that will be
'unprovisioned' or just a Forbidden error. That's in part why I want to
see how the code behind looks like, to understand which kind of 3GPP
specific information we get about provisioning. If it's just "with-data"
and "data-exhausted" (i.e. 'unprovisioned' could just be the fallback
case for whenever we have no data), then the info is totally different
to that of 3GPP2.

Also, for 3GPP2 the usecase is otherwise much more clear; device not
activated, you need to activate, so use Activate() or ActivateManual().
For 3GPP the provisioning step won't be doable by the user (at least not
as a ModemManager action), as far as I understand it.

-- 
Aleksander


More information about the ModemManager-devel mailing list