Hello,
Stipe Tolj wrote:
same with me... The problem is that it's not trivial.
And by having a generic discussion about it *NOW*, will have us on the
way in solving it.
Ok, can you express an architecture concept on how MSISDN scheme policy
should be handled?
I think the simplest thing would be to handle all long number
internally as international number (they would all start by a +)
and keep the short number as is.
Translation of the phone number to other format should only occur
during input/output operations:
- For outgoing messages (be it bearerbox -> smsc or smsbox -> app)
it's pretty simple. If the message start with a + a simple mapping
is applied to replace the +<country code> with what the user wants.
Otherwise it is left as is.
The present unified_prefix mechanism is nice for this (it would even
gets simpler as we map +<country code> to <local prefix>, so no
multiple value mapping).
N+1 config parameters are needed, 1 for the smsbox -> app and N for
the N smsc configured. Potentially, a fallback value might be
introduced to avoid duplicating the value N times.
- For incoming messages (smsc -> bearerbox or app -> smsbox) we need
to figure out if the number is a short number or not. So here the
best thing would be to use a list of regular expressions. With
this approach the problem is how to specify these regex in the
configuration file. Maybe something like:
"<regex with one group>",...:<country code to replace the group>
(the + would also be prepended so it's not needed in the config).
It might also be possible to use some kind of unified_prefix
mapping plus a size threshold. This is a more restricted approach
but it might provides room for a backward compatibility if a
default threshold (6?) is given. In this second scenario, if the
number is larger than the threshold but it doesn't match any
prefix than an error should be raised or a + prepended and a
warning issued.
This more complicated mechanism is needed to handle the use of
a modem as a smsc because a modem can receive messages from both
long and short numbers and also because the app might send pretty
much everything.
So that give essentially also N+1 or N+2 configuration values
where N is the number of smscs and we have a +1 for the app ->
smsbox and a +1 for the threshold.
- For internal messages (bearerbox <-> smsbox) nothing happens.
For the routing feature I don't know what is needed as I've never
used that feature.
Cheers,
Olivier
--
----------------------------------------------------------------------
Mobile News Channel Direct phone: +41 21 317 50 25
Olivier Dormond Central: +41 21 317 50 20
Av. de la Gare 10
1003 Lausanne Email: [EMAIL PROTECTED]