[multiple-modem] How to purge the spool of one specific modem ?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[multiple-modem] How to purge the spool of one specific modem ?

Hakim Bimazgane
Hi,

I use 2 modems (MultiTech MultiConnect Cell 100) on 1 kannel server (v1.5.0) and sometimes, a modem is unusable (it need a hard USB reconnect to work again).

So, on top of a playSMS server that use many of my Kannel servers, I got a custom application with a resending function for SMS that tried to go on the unusable modem.

My problem is that when I hard reboot the modem (maybe 1 day after the disconnection), some SMS are still in the spool and are sent (but I don't want it because my resending function used some other modems to send those SMS).

So I want to purge the spool (/var/spool/kannel/store), with 1 modem it's easy, but with 2 modems it use the same spool, so I don't know what to delete (I don't want to delete the 2nd-modem SMS).

The only way I see to do what I want is to have 1 kannel for 1 modem, but it's really sad to make it that way...

Is there any way to split the spool, one for each modem ? or to know the modem for each SMS in the spool ?


here is my conf:
# CORE
group = core
admin-port = 13000
admin-password = xxxxxx
status-password = xxxxxx
log-file = /var/log/kannel/kannel.log
log-level = 0
access-log = /var/log/kannel/access.log
smsbox-port = 13001
store-type = spool
store-location = /var/spool/kannel/store
smsbox-max-pending = 100
sms-resend-retry = 1

# SMSBOX
group = smsbox
bearerbox-host = localhost
bearerbox-port = 13001
sendsms-port = 13131
sendsms-chars = "0123456789+ .-"
log-file = /var/log/kannel/smsbox.log
log-level = 0
access-log = /var/log/kannel/access.log
mo-recode = true

## SMSC multic1
group = smsc
smsc = at
smsc-id = multic1
allowed-smsc-id = multic1
preferred-smsc-id = multic1
my-number = ""
sms-center = "+33660003000"
unified-prefix = "+33,0033,33,0;+,00"
allowed-prefix = "+336;00336;336;06;+337;00337;337;07"
device = /dev/ttyACM3
speed = 115200
pin = 0000
validityperiod = 167
sim-buffering = true
max-error-count = 1
log-file = /var/log/kannel/smsc-gsm1.log
log-level = 0

group = modems
id = multic1
name = "Multitech"
detect-string = "332"
need-sleep = true
sendline-sleep = 2500
message-storage = ME"AT+CSQ;+CREG=2;+CREG?;+CSMP=49,167,0,0;+CGSMS=3;+CNMI=2,3,0,1,0;+CPMS="ME","ME","ME";"
init-string = "AT+CSQ;+CREG?;+CGDCONT=1,"IP","mmsbouygtel.com";+CSMP=49,167,0,0;+CGSMS=3;+CNMI=2,3,0,1,0;+CPMS="ME","ME","ME";#SGACTCFG=1,3,200"
reset-string = "AT+CFUN=1,1"

## SMSC multic2
group = smsc
smsc = at
smsc-id = multic2
allowed-smsc-id = multic2
preferred-smsc-id = multic2
my-number = ""
sms-center = "+33660003000"
unified-prefix = "+33,0033,33,0;+,00"
allowed-prefix = "+336;00336;336;06;+337;00337;337;07"
device = /dev/ttyACM9
speed = 115200
pin = 0000
validityperiod = 167
sim-buffering = true
max-error-count = 1
log-file = /var/log/kannel/smsc-gsm2.log
log-level = 0

group = modems
id = multic2
name = "Multitech 2"
detect-string = "332"
need-sleep = true
sendline-sleep = 2500
message-storage = ME
init-string = "AT+CSQ;+CREG?;+CGDCONT=1,"IP","mmsbouygtel.com";+CSMP=49,167,0,0;+CGSMS=3;+CNMI=2,3,0,1,0;+CPMS="ME","ME","ME";#SGACTCFG=1,3,200"
reset-string = "AT+CFUN=1,1"

# SENDSMS-USER
group = sendsms-user
default-smsc = multic1
username = playsms
password = XXXXXX
max-messages = 8
concatenation = true
omit-empty = true

# SMS SERVICE
group = sms-service
keyword = default
omit-empty = true
max-messages = 0
get-url = "<a href="http://localhost/playsms/index.php?app=call&amp;cat=gateway&amp;plugin=kannel&amp;access=geturl&amp;t=%t&amp;q=%q&amp;a=%a&amp;Q=%Q&amp;smsc=%i">http://localhost/playsms/index.php?app=call&cat=gateway&plugin=kannel&access=geturl&t=%t&q=%q&a=%a&Q=%Q&smsc=%i"

Thanks,
 

Hakim BIMAZGANE
Lead Developer 

Vitalliance
Loading...