Hi,

unfortunately you mixed two things together.

1. Store support.
        It’s a snapshot of messages that Kannel has in his memory (RAM) stored 
either on disk (spool, file) or in Redis.
        This store is used for a case if Kannel crashes, then messages are not 
lost.
        This is _NOT_ shared between Kannel instances, but different instance 
can read store if first instance gone for long time.

2. DLR support.
        It’s temp. DLR storage to storing messages where Kannel still waiting 
for a DLR to arrive.
        DLR storage can be shared (like same MySQL DB and table) and if one 
instance receive DLR for the message
        sent via second instance, DLR will be mapped and processed (please set 
same SMSC-IDs for both instances/binds).

DBPool is just internal Kannel Database Pool that supports multiple databases 
and is used for all database accesses in kannel.

I hope it’s a little bit clearer now.

Regards,
Alex


> Am 28.03.2020 um 15:23 schrieb Antony Stone 
> <antony.st...@kannel.open.source.it>:
> 
> Hi.
> 
> I'm using kannel talking SMPP to an upstream SMSC provider.
> 
> We can send and receive SMS fine, and DLR is working well too.  We use MySQL 
> for the DLR store.
> 
> However, we have a High-Availability setup, which means that we have two 
> machines running kannel, each with a connection to the upstream provider, and 
> inbound SMSs can arrive on either connection.
> 
> In the case of multi-part SMSs, different parts can arrive on each link, 
> resulting in one of our kannel instances having, say, parts 1 and 3, and the 
> other instance having part 2 of the same message.  There's no way either of 
> them can know what the other has seen, so the end result is that the user 
> receives three independent message parts (not necessarily even in the right 
> order).
> 
> Since we use a MySQL cluster for the DLR store, I wanted to use that also for 
> the temporary message store for multi-part SMSs, and indeed I notice in the 
> section "Compiling the Gateway" of 
> https://kannel.org/download/1.4.5/userguide-1.4.5/userguide.html 
> <https://kannel.org/download/1.4.5/userguide-1.4.5/userguide.html> that there 
> are two options (amongst others):
> 
>       --with-mysql    Enable using MySQL libraries for DBPool and DLR support.
> 
>       --with-redis    Enable using Redis for DBPool and DLR support. Requires 
> the hiredis library.
> 
> I'm assuming that "DBPool" refers to the temporary message store during 
> processing of multi-part SMSs.  I don't see the term "DBPool" defined or 
> indeed 
> even used anywhere in the documentation other than in the description of 
> these 
> options (and the related MSSQL etc options).
> 
> 
> However, under "Core configuration", the option "store-type" says "This 
> variable defines a type of backend used for store subsystem. Now two types 
> are 
> supported: a) file: writes store into one single file b) spool: writes store 
> into spool directory (one file for each message) c) redis: writes store into 
> a 
> redis key storage."
> 
> I'm assuming that "two" in the above description is simply a hang-over from a 
> previous version of the documentation, when the "redis" type was not 
> available, but my main question is "how do we select MySQL for the DBPool 
> storage?"
> 
> 
> Thanks for any pointers...
> 
> 
> Antony.
> 
> -- 
> There's no such thing as bad weather - only the wrong clothes.
> 
> - Billy Connolly
> 
>                                                   Please reply to the list;
>                                                         please *don't* CC me.
> 

Reply via email to