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]

Reply via email to