Diafaan SMS Server has an internal database to store the messages while they waiting to be sent. After the messages are sent (or failed after a number of retries), they are stored in a separate internal log database.
The log items can be automatically removed after a certain time, but if you want to keep all log items than this is also possible. It is not recommended though for situation with high message traffic .
But using some other connector than the Sql Connector, then the message isn't stored in a database-table, but somehow internally in the SMS Server?
Somehow I'm so database oriented that for me it would be natural that all connectors would use a database-table to store messages.
Having sent a message to the SMS-Server (with other than Sql Connector), for how long a period after that can I request the status of the message, ie. for how long time is the message stored on the server?
Absolutely. By default, Diafaan SMS Server tries to send the message 3 times per GSM modem when the first send attempt(s) fails. If desired, his can be increased to a higher number of retries.
It is also possible to assign one or more backup gateway(s) in case (one of) the primary gateway(s) cannot send the message.
You already have some kind of built-in HTTP web service in Diafaan SMS Server. Doesn't this in any way store the message, eg. to a database-table. Doesn't the server try to send a failed message again?
I mean, isn't there any reoccurring of failed messages until they have been sent or until som maxtry-counter has been reached?
PS. Sorry for not have yet had time to test Diafaan. But we will probably test it.
Using the SQL database directly from Diafaan SMS Server locally or over a network connection is the most reliable way to add SMS to an Internet service. If you do not want to expose the database connection to the Internet then you will have to build the necessary interface yourself.
Since this is outside the scope of the functionality in Diafaan SMS Server, I am afraid I am not able to give any examples on how to create such an interface.
You usually want to protect your Sql-Server by using some kind of data-access layer, eg. by using web-services. By using web-services it's also possible to make business rules that all application-programmers should be aware of, ie. not letting programmers access tables directly, writing and interpreting data wrong.
On the other hand, using SSL you should perhaps not need any further encryption, just some kind of username and password for the web-service. And it's of course a problem of ours to install and protect the server.
I am not sure what you want to achieve. Most SQL servers have the ability to be used over the Internet and most are also able to use an encrypted connection like SSL.
If you have a web service with a (MySQL) database that is accessible over the Internet then you can use the SQL Connector to retrieve messages to send from the database and to store incoming SMS messages without the need to encrypt/decrypt anything in the web service.
Suppose that I would like to use the "Sql Connector" and send records to the Sql Server over internet (https I suppose). The best way would perhaps be to build a Web Service that inserts records into the "database-table that is being polled for messages to be sent". And web-services checking the status of the log-table etc.
Considering all kind of encrypting/decrypting that should be done in such web-services, are there any prebuilt example web-services considering this kind of problems? Or should one consider another connector than the Sql Connector?
Most Users Ever Online: 494
Currently Browsing this Page:
Guest Posters: 410
Newest Members:, Henk Helmantel
Administrators: Henk Helmantel: 649