- This tracks the current Location Area Code / Cell ID and PLMN. If any
of these change, the assembly is notified. This is required to
implement proper CBS message duplicate detection according to 23.041
This should get kernel-assisted Phonet autoconfiguration to work (and it
shouldn't hurt in other cases). Otherwise, the upper layers will try to
send packets, which will fail. Then they will probably just time out.
The SMS address can actually contain other characters than 0-9, +, *, #,
particularly when the alphanumeric address type is used. This is
commonly used by services such as Google or carrier specific SMS
services.
Rework the SMS address storage to simply re-use the SMS address pdu
format, which consists of up to 12 hex-encoded bytes.
On modems that don't support +CMT (or for class 2 SMSes) the messages are
stored in the modem and then read and deleted from there in two separate
steps with no warranty that deletion succeeds or (more likely) power is
cut before the deletion happens. Over time the memory may become full
and if we don't want to deal with this condition we need to check on
startup if there are messages we haven't deleted.
We can't differentiate between those messages and those the user already
had on the SIM / modem before installing ofono or switching phones, so we
might want to deliver messages with REC READ status with some kind of
indication that these are potentially old so the UI doesn't emit spurious
alerts. We don't do this now and just deliver as usual.
- Introduce new enum gsm_dialect instead of unsigned char arguments
- Use ISO639 3 letter codes for conversion tables
- Use a single lookup table instead of 4 different ones
Add API for supporting character conversion using national language
variants. Also, add conversion tables for Turkish, Spanish and
Portuguese, and fix the default table. The lookup algorithms were
tweaked to support multiple tables.