You asked for it, you've got it ;)

[Sorry, I'm cross-posting this one, since it's probably people interested on
both lists for different reasons]

http://www.kannel.org/~aguerrieri/SqlBox/Snapshots/sqlbox-meta-20091229.tar.gz

This snapshot is not commited to CVS yet, since it needs proper testing on
ALL DB engines: mysql, postgres, sqlite(2), sqlite3, oracle, mssql/sybase
and sdb. Volunteers are needed to test all of them (I'll do my best as well,
but any help is appreciated).

To build it, run ./bootstrap first, then ./configure --with-<dbengine>, make
and sudo make install. You need a Kannel compiled with support for the same
DB engine you're going to use of course.

WARNING: There still seems to be an issue with MO under heavy load: some
messages are lost. After further testing, this doesn't seem to be related
with meta-data at all. To reproduce the error, you need to put sqlbox
between bearerbox and smsbox and use it to capture all traffic (MO and MT).
Then, if you sent a bunch of messages from a fake smsc at high rates (100 or
more messages with .01 delay is enough to cause it), some of them are not
recorded nor forwarded to smsbox. I need to investigate it further, I've
only tried with mysql so far, so I'm not sure if this is a DB problem, or
something related with threading or so. Actually I think the same problem
would happen with a pre-meta-data kannel version (anyone can confirm this?).

NOTE: There's NO problem with MT, if you use SqlBox to send messages by
inserting on send_sms, then you won't notice any problems at all.

Last but not least, I'm out of luck building on Snow Leopard. It compiles
but segfaults afterwards. Maybe is my installation (I've upgraded over
Leopard instead of installing from scratch). The same code builds and runs
fine on CentOS 32 and 64 bit. If anyone with Snow Leopard can take a look at
it, it'll be very welcomed :)

Regards,

Alex



On Tue, Dec 29, 2009 at 11:03 AM, Willy Mularto <sangpr...@gmail.com> wrote:

> This will be our New Year's gift from Alex to us then :)
>
>
>
> Willy
> sangpr...@gmail.com
>
>
>
> On Dec 29, 2009, at 1:29 AM, Alejandro Guerrieri wrote:
>
> No, the first release aims to make sqlbox meta-data aware. I don't want to
> delay that further.
>
> After that is properly tested and committed, the next release will get the
> custom SQL functionality in place.
>
> Regards,
>
> Alex
>
> On Mon, Dec 28, 2009 at 6:21 PM, Kenny <ken.bell...@gmail.com> wrote:
>
>> Hi Alex,
>>
>> Is the new SQLBOX supporting custom SQL at this time also?
>>
>> --
>> Kenny
>> w: www.nuObjects.com
>>
>> Bulk SMS Solutions | Managed Hosting | Enterprise Application Development
>>
>>
>> On Mon, Dec 28, 2009 at 6:00 PM, Bruno Aguirre <
>> brunoaguirreris...@gmail.com> wrote:
>>
>>> Count on me for testing.
>>>
>>> 2009/12/28 Alejandro Guerrieri <alejandro.guerri...@gmail.com>
>>>
>>> I'm working on the patch to support meta-data right now. I'll have a
>>>> version for testing during this week for sure, though it'll need testing on
>>>> all DB engines.
>>>>
>>>> Regards,
>>>>
>>>>  Alex
>>>>
>>>>
>>>> On Mon, Dec 28, 2009 at 5:51 PM, Bruno Aguirre <
>>>> brunoaguirreris...@gmail.com> wrote:
>>>>
>>>>> Is there any updates? or any dev source i can test?
>>>>>
>>>>> 2009/12/8 Bruno Aguirre <brunoaguirreris...@gmail.com>
>>>>>
>>>>> Is there any stable version?, Im facing the same issue compiling older
>>>>>> sqlbox versions.
>>>>>>
>>>>>> 2009/12/7 Bruno Aguirre <brunoaguirreris...@gmail.com>
>>>>>>
>>>>>> Is there any update in the cvs to try to patch?
>>>>>>> Can i provide any help?
>>>>>>>
>>>>>>> 2009/11/27 Bruno Aguirre <brunoaguirreris...@gmail.com>
>>>>>>>
>>>>>>> Ok, thanks a lot!
>>>>>>>>
>>>>>>>>
>>>>>>>> 2009/11/27 Alejandro Guerrieri <alejandro.guerri...@gmail.com>
>>>>>>>>
>>>>>>>>> My guess is that it's the missing meta-data field support on
>>>>>>>>> sqlbox, but I still need to do some extra tests to confirm.
>>>>>>>>>
>>>>>>>>> I've the patch partially ready (missing some details on a couple of
>>>>>>>>> db engines only), will finish testing it and commit next week.
>>>>>>>>>
>>>>>>>>> Regards,
>>>>>>>>>
>>>>>>>>> Alex
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Nov 27, 2009 at 7:59 PM, Bruno Aguirre <
>>>>>>>>> brunoaguirreris...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Ok, is there any way i can help? Perhaps if you have an idea of
>>>>>>>>>> where is the issue i can help you in the fix
>>>>>>>>>>
>>>>>>>>>> 2009/11/27 Alejandro Guerrieri <alejandro.guerri...@gmail.com>
>>>>>>>>>>
>>>>>>>>>> There seems to be an issue with latest CVS'es (with meta-data) and
>>>>>>>>>>> Sqlbox.
>>>>>>>>>>>
>>>>>>>>>>> I'm working on a fix, but I've been quite busy lately, I hope to
>>>>>>>>>>> be able to finish it next week.
>>>>>>>>>>>
>>>>>>>>>>> Regards,
>>>>>>>>>>>
>>>>>>>>>>> Alex
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Nov 27, 2009 at 7:11 PM, Bruno Aguirre <
>>>>>>>>>>> brunoaguirreris...@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi to all!.
>>>>>>>>>>>> I'm having some sort of issues using sqlbox, in a test
>>>>>>>>>>>> enviroment i'm loosing 50% of the mos. In a graphical way:
>>>>>>>>>>>>
>>>>>>>>>>>>    SMPPSim       <----->      Bearerbox     <---->
>>>>>>>>>>>> Sqlbox       <-----> Smsbox <------->  HTTP
>>>>>>>>>>>> - Inyect 100Mos -       - Receives 100mos -       - Inserts
>>>>>>>>>>>> 50mos -    - Sent 50 mts -    - Inyect 50 mts -
>>>>>>>>>>>>
>>>>>>>>>>>> I'm using the SQLBox from the cvs, also i've correct the patch
>>>>>>>>>>>> from Limit per cycle for this version, at first i thought that was 
>>>>>>>>>>>> my
>>>>>>>>>>>> implementation the mistake then i've switched to the lastest cvs 
>>>>>>>>>>>> and the bug
>>>>>>>>>>>> was already there.
>>>>>>>>>>>>
>>>>>>>>>>>> My config:
>>>>>>>>>>>>
>>>>>>>>>>>>   1
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>   2 #                                 #
>>>>>>>>>>>>   3 #         CORE CONFIG - Extended Config
>>>>>>>>>>>> Setup                 #
>>>>>>>>>>>>   4
>>>>>>>>>>>> #                                                             #
>>>>>>>>>>>>   5
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>   6
>>>>>>>>>>>>   7 group = core
>>>>>>>>>>>>   8 admin-port = 13000
>>>>>>>>>>>>   9 # Administration Port
>>>>>>>>>>>>  10 admin-password = @dM1nMe
>>>>>>>>>>>>  11 # Administration Password
>>>>>>>>>>>>  12 admin-deny-ip = "*.*.*.*"
>>>>>>>>>>>>  13 # Deny all ips for Administrate
>>>>>>>>>>>>  14 admin-allow-ip = "127.0.0.1"
>>>>>>>>>>>>  15 # Allow only this IPs, semicolon separated
>>>>>>>>>>>>  16 smsbox-port = 13010
>>>>>>>>>>>>  17 # Smsbox connection Port
>>>>>>>>>>>>  18 wapbox-port = 13020
>>>>>>>>>>>>  19 # Wapbox connection Port
>>>>>>>>>>>>  20 wdp-interface-name = "*"
>>>>>>>>>>>>  21 # UDP BroadCast
>>>>>>>>>>>>  22 log-level = 0
>>>>>>>>>>>>  23 # Verbose level, 0 More debug... 4 Less debug
>>>>>>>>>>>>  24 log-file = "/var/log/kannel/bearerbox.log"
>>>>>>>>>>>>  25 # Log file path
>>>>>>>>>>>>  26 box-deny-ip = "*.*.*.*"
>>>>>>>>>>>>  27 # Deny All Ips to connect to Bearerbox
>>>>>>>>>>>>  28 box-allow-ip = "127.0.0.1"
>>>>>>>>>>>>  29 # Allow only this Ips , semicolon separated
>>>>>>>>>>>>  30 dlr-storage = mysql
>>>>>>>>>>>>  31 # Where to store temp DLR data, internal default, Mysql
>>>>>>>>>>>> recomended
>>>>>>>>>>>>  32 store-type = spool
>>>>>>>>>>>>  33 # Store type, block file is default, spool is one file per
>>>>>>>>>>>> message
>>>>>>>>>>>>  34 store-location  = "/var/spool/kannel"
>>>>>>>>>>>>  35 # Folder location of the spool
>>>>>>>>>>>>  36
>>>>>>>>>>>>  37
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>  38 #                                 #
>>>>>>>>>>>>  39 #      MYSQL CONFIG - DLR Temp Storage                    #
>>>>>>>>>>>>  40 #                                 #
>>>>>>>>>>>>  41
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>  42
>>>>>>>>>>>>  43 group = mysql-connection
>>>>>>>>>>>>  44 id = mydlr
>>>>>>>>>>>>  45 # Identification
>>>>>>>>>>>>  46 host = 127.0.0.1
>>>>>>>>>>>>  47 # IP of the MYSQL Database
>>>>>>>>>>>>  48 port = 3306
>>>>>>>>>>>>  49 # Port of the MYSQL Database
>>>>>>>>>>>>  50 username = root
>>>>>>>>>>>>  51 # Username of the connection
>>>>>>>>>>>>  52 password = mysql
>>>>>>>>>>>>  53 # Pasword of the connection
>>>>>>>>>>>>  54 database = kannel
>>>>>>>>>>>>  55 # Database name
>>>>>>>>>>>>  56 max-connections = 50
>>>>>>>>>>>>  57 # Maximun Concurrent conections
>>>>>>>>>>>>
>>>>>>>>>>>>  58
>>>>>>>>>>>>  59 group = dlr-db
>>>>>>>>>>>>  60 id = mydlr
>>>>>>>>>>>>  61 # Identification
>>>>>>>>>>>>  62 table = dlr
>>>>>>>>>>>>  63 # Table Name
>>>>>>>>>>>>  64 field-smsc = smsc
>>>>>>>>>>>>  65 # Smsc Field Name
>>>>>>>>>>>>  66 field-timestamp = ts
>>>>>>>>>>>>  67 # Timestamp Field Name
>>>>>>>>>>>>  68 field-destination = destination
>>>>>>>>>>>>  69 # Destination Field Name
>>>>>>>>>>>>  70 field-source = source
>>>>>>>>>>>>  71 # Source Field Name
>>>>>>>>>>>>  72 field-service = service
>>>>>>>>>>>>  73 # Service Field Name
>>>>>>>>>>>>  74 field-url = url
>>>>>>>>>>>>  75 # Url Field Name
>>>>>>>>>>>>  76 field-mask = mask
>>>>>>>>>>>>  77 # Dlr Mask Field Name
>>>>>>>>>>>>  78 field-status = status
>>>>>>>>>>>>  79 # Status Field Name
>>>>>>>>>>>>  80 field-boxc-id = box
>>>>>>>>>>>>  81 # Box Id  Field Name
>>>>>>>>>>>>  82
>>>>>>>>>>>>  83 group  = smpp-tlv
>>>>>>>>>>>>  84 name   = MAS_APP_ID
>>>>>>>>>>>>  85 smsc-id = "debug"
>>>>>>>>>>>>  86 tag    = 0x1401
>>>>>>>>>>>>  87 type   = nulterminated
>>>>>>>>>>>>  88 length = 4
>>>>>>>>>>>>  89
>>>>>>>>>>>>  90
>>>>>>>>>>>>  91
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>  92 #                                 #
>>>>>>>>>>>>  93 #      SMSBOX CONFIG - Handle SQLBox Instance             #
>>>>>>>>>>>>  94
>>>>>>>>>>>> #                                                             #
>>>>>>>>>>>>  95
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>  96
>>>>>>>>>>>>  97 group = smsbox
>>>>>>>>>>>>  98 #smsbox-id = smsbox
>>>>>>>>>>>>  99 # Identification
>>>>>>>>>>>> 100 bearerbox-host = localhost
>>>>>>>>>>>> 101 #bearerbox-port = 13030
>>>>>>>>>>>> 102 # Ip to the Bearerbox
>>>>>>>>>>>> 103 sendsms-port = 13013
>>>>>>>>>>>> 104 # Available port for SMS inyection
>>>>>>>>>>>> 105 log-file = "/var/log/kannel/smsbox.log"
>>>>>>>>>>>> 106 # Log file path
>>>>>>>>>>>> 107 log-level = 0
>>>>>>>>>>>> 108 # Verbose level, 0 More debug... 4 Less debug
>>>>>>>>>>>> 109 #http-request-retry = 10
>>>>>>>>>>>> 110 # Retry for the http request
>>>>>>>>>>>> 111 #http-queue-delay = 30
>>>>>>>>>>>> 112 # Delay per Retry
>>>>>>>>>>>> 113
>>>>>>>>>>>> 114
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 115 #                                     #
>>>>>>>>>>>> 116 #      WAPBOX CONFIG - Wap Gateway Main config            #
>>>>>>>>>>>> 117 #                                     #
>>>>>>>>>>>> 118
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 119
>>>>>>>>>>>> 120 group           = wapbox
>>>>>>>>>>>> 121 bearerbox-host  = 127.0.0.1
>>>>>>>>>>>> 122 # Bearerbox IP
>>>>>>>>>>>> 123 log-file        = "/var/log/kannelX1/wapbox.log"
>>>>>>>>>>>> 124 # Log file path
>>>>>>>>>>>> 125 log-level       = 4
>>>>>>>>>>>> 126 # Verbose level, 0 More debug... 4 Less debug
>>>>>>>>>>>> 127 syslog-level    = none
>>>>>>>>>>>> 128 # Log in syslog
>>>>>>>>>>>> 129
>>>>>>>>>>>> 130
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 131 #                                 #
>>>>>>>>>>>> 132 #     PUSH PROXY GATEWAY - WapPush inyection              #
>>>>>>>>>>>> 133 #                                 #
>>>>>>>>>>>> 134
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 135
>>>>>>>>>>>> 136 group             = ppg
>>>>>>>>>>>> 137 ppg-url           = /wappush
>>>>>>>>>>>> 138 # Route in the inyection
>>>>>>>>>>>> 139 ppg-port          = 8080
>>>>>>>>>>>> 140 # Port for inyection
>>>>>>>>>>>> 141 concurrent-pushes = 100
>>>>>>>>>>>> 142 # Concurrency
>>>>>>>>>>>> 143 users             = 1024
>>>>>>>>>>>> 144 # Total users connected
>>>>>>>>>>>> 145 ppg-allow-ip      = "127.0.0.1"
>>>>>>>>>>>> 146 # Allow only this Ips , semicolon separated
>>>>>>>>>>>> 147 trusted-pi        = true
>>>>>>>>>>>> 148 # Trust by default
>>>>>>>>>>>> 149 service-name      = ppg1
>>>>>>>>>>>> 150 # Service name
>>>>>>>>>>>> 151
>>>>>>>>>>>> 152 group           = wap-push-user
>>>>>>>>>>>> 153 wap-push-user   = wappush
>>>>>>>>>>>> 154 # User for the inyection
>>>>>>>>>>>> 155 ppg-username    = foo
>>>>>>>>>>>> 156 # Username for the inyection
>>>>>>>>>>>> 157 ppg-password    = bar
>>>>>>>>>>>> 158 # Password
>>>>>>>>>>>> 159 allow-ip        = "127.0.0.1"
>>>>>>>>>>>> 160 # Allow only this Ips , semicolon separated
>>>>>>>>>>>> 161
>>>>>>>>>>>> 162
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 163 #                                 #
>>>>>>>>>>>> 164 #       SEND SMS - Send messages configuration            #
>>>>>>>>>>>> 165 #                                 #
>>>>>>>>>>>> 166
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 167
>>>>>>>>>>>> 168 group = sendsms-user
>>>>>>>>>>>> 169 username = tester
>>>>>>>>>>>> 170 # Username for the inyection
>>>>>>>>>>>> 171 password = foobar
>>>>>>>>>>>> 172 # Password For the inyection
>>>>>>>>>>>> 173 user-deny-ip  = "*.*.*.*"
>>>>>>>>>>>> 174 # Deny All IPs
>>>>>>>>>>>> 175 user-allow-ip = "127.0.0.1"
>>>>>>>>>>>> 176 # Allow only this Ips , semicolon separated
>>>>>>>>>>>> 177
>>>>>>>>>>>> 178
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 179 #                                 #
>>>>>>>>>>>> 180 #       SEND SMS ROUTING - Send Messages routing          #
>>>>>>>>>>>> 181 #                                 #
>>>>>>>>>>>> 182
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 183
>>>>>>>>>>>> 184 group           = sms-service
>>>>>>>>>>>> 185 keyword         = default
>>>>>>>>>>>> 186 catch-all       = true
>>>>>>>>>>>> 187 # Catch All
>>>>>>>>>>>> 188 omit-empty      = true
>>>>>>>>>>>> 189 # Omit Empty response
>>>>>>>>>>>> 190 max-messages    = 10
>>>>>>>>>>>> 191 #max-messages    = 0
>>>>>>>>>>>> 192 # Dont send MTs synchronously
>>>>>>>>>>>> 193 get-url         = "
>>>>>>>>>>>> http://localhost:8090/mo?smsc_id=%i&short_code=%P&phone=%p&message=%a
>>>>>>>>>>>> "
>>>>>>>>>>>> 194 #text = "OK"
>>>>>>>>>>>> 195 # URL to invoke ( README for constants )
>>>>>>>>>>>> 196
>>>>>>>>>>>> 197
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 198 #                                 #
>>>>>>>>>>>> 199 #       SMSCS CONFIG - Carrier Specific Config        #
>>>>>>>>>>>> 200 #                                 #
>>>>>>>>>>>> 201
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>> 202
>>>>>>>>>>>> 203 include = "/etc/kannel/smsc/debug/carriers.conf"
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>   1
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>   2 #                                 #
>>>>>>>>>>>>   3 #       SQLBOX CONFIG - Full status storage and Queueing  #
>>>>>>>>>>>>   4 #                                 #
>>>>>>>>>>>>   5
>>>>>>>>>>>> ###############################################################
>>>>>>>>>>>>   6
>>>>>>>>>>>>   7 group = sqlbox
>>>>>>>>>>>>   8 id = sqlbox
>>>>>>>>>>>>   9 # Config Identification
>>>>>>>>>>>>  10 #smsbox-id = chunkerbox
>>>>>>>>>>>>  11 # Identification
>>>>>>>>>>>>  12 bearerbox-host = localhost
>>>>>>>>>>>>  13 # Bearerbox IP
>>>>>>>>>>>>  14 bearerbox-port = 13010
>>>>>>>>>>>>  15 # Bearerbox Port
>>>>>>>>>>>>  16 smsbox-port = 13030
>>>>>>>>>>>>  17 # Send Sms box ( From kannel core config )
>>>>>>>>>>>>  18 #limit-per-cycle = 1
>>>>>>>>>>>>  19 # SELECT limit
>>>>>>>>>>>>  20 smsbox-port-ssl = false
>>>>>>>>>>>>  21 # Usses SSL?
>>>>>>>>>>>>  22 sql-log-table = sent_sms
>>>>>>>>>>>>  23 # Sent Sms Table name
>>>>>>>>>>>>  24 sql-insert-table = send_sms
>>>>>>>>>>>>  25 # Queueing Sms Table name
>>>>>>>>>>>>  26 log-file = "/var/log/kannel/sqlbox.log"
>>>>>>>>>>>>  27 # Log File name
>>>>>>>>>>>>  28 log-level = 0
>>>>>>>>>>>>  29 # Log Verbosity
>>>>>>>>>>>>   30
>>>>>>>>>>>>  31 group = mysql-connection
>>>>>>>>>>>>  32 id = sqlbox
>>>>>>>>>>>>  33 # Identification
>>>>>>>>>>>>  34 host = 127.0.0.1
>>>>>>>>>>>>  35 # Database IP
>>>>>>>>>>>>  36 port = 3306
>>>>>>>>>>>>  37 # Database Port
>>>>>>>>>>>>  38 username = root
>>>>>>>>>>>>  39 # Username ( Grant CREATE )
>>>>>>>>>>>>  40 password = mysql
>>>>>>>>>>>>  41 # Password
>>>>>>>>>>>>  42 database = kannel
>>>>>>>>>>>>  43 # Database name
>>>>>>>>>>>>  44 max-connections = 10
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
>

Reply via email to