Received SMS and where they'll be stored

Aleksander Morgado aleksander at aleksander.es
Tue May 23 16:50:33 UTC 2017


On 23/05/17 15:19, colin.helliwell at ln-systems.com wrote:
> I'm re-exploring what happens through MM with received SMS - and could do
> with some clarification on how it all interacts (modem vs. MM).
> 
> # mmcli -m 0 --messaging-status
> /org/freedesktop/ModemManager1/Modem/0
>   ----------------------------
>   Messaging | supported storages: 'me, sm'
>             |    default storage: 'me'
> 
> 
> I'm currently in a situation where I have (as shown by mmcli
> --messaging-list-sms) four messages in ME storage  -  this is the max number
> the modem's ME can hold. (I also, from some playing about in the past, have
> a few messages in SM).
> When I send it a new message, it doesn't seem to be getting delivered. I
> haven't dug into any info available from delivery reports etc, but basically
> there's no +CMTI occurring. Because, I assume, ME is full.
> Then I delete one of the msgs in ME, and a while later the new msg arrives -
> again going into ME.
> 
> So I'm wondering how to avoid (or at least give time to cater for) the ME
> storage filling up.
> Presumably (?) the SIM is going to be capable of storing more than 4 msgs,
> so it would seem wise to select SM storage for received msgs instead of ME.
> Is this something that can be controlled through MM, or is it more a case of
> having to set it 'manually' in the modem itself and MM then just gets what
> it gets?

ModemManager chooses which "default storage" to use both for storing
received messages or creating new outgoing messages before sending them.
IIRC, if "ME" is available it will choose that one as default.

Truth be told, the Messaging API doesn't have any APIs that would allow
us to work with the storage full condition: there is neither an API to
report that the storage is full, nor an API to select the default
storage. We should definitely have these APIs defined and implemented, e.g.:
  * A read-only property including the list of available storages with
details (e.g. capacity, full indication...)
  * A SetDefaultStorage() that would allow updating the default storage
to use when receiving new SMS or when a new outgoing SMS is created.
  * A new possible "Storage" key in Messaging.Create() that would allow
the user to specify in which storage the SMS should be stored,
overriding the default one set.

What do you think?

-- 
Aleksander
https://aleksander.es


More information about the ModemManager-devel mailing list