Re: [PATCH] DLR with field_dst not supported in Mysql/Pgsql

Olivier Dormond <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Organization Mobile News Channel SA
Message-ID <[email protected]>
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]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.