|
|
SMS Server Tools 3 Community |
Welcome, Guest. The forum is currently read-only, but will open soon. |
Tue Jul 01, 2025 10:33 |
Page: 1
Keywords: Mode: All keywords (AND) |
Thu Sep 23, 2010 13:49
|
take:
However, I do not see this as a bug. It's a limitation of the original script, only plain text is supported. Right now I do not have plans for enhancing the script to handle any formats properly, because it would be a too big work. Perhaps some external program could be found to do this conversion, but I do not know of them.
I agree, this isn't a bug per definition, but since result look like one I suppose bug repots
is proper place for the discussion.
I also agree that actually fixing that is an huge work, since there's a lots of to take care of, basically you'd need to have almost fully functional email ciient with full MIME-suppport to really fix this. I did try to write something as dirty as that previous perl-thingy with MIME-tools, but it would take a much more time than I have to spare now.
However, this would be an great improvement for sms3tools, since properly functioning email2sms -gateway helps integrating sms3tools to other services (virtually for any purpose).
Another big improvement would be an framework, which would take care of incoming messages and launch commands, send email etc. accordingly, but that's a whole another topic.
|
Thu Sep 23, 2010 09:19
|
take: Hello again,
I don't know if I fixed this at the right point, but I had an issue with quoted-printable mails from our ticket system. The result was that I received messages where ä, ö and others were =C3, =A4 etc.
So, I wrote a small addition to email2sms -script, here's a diff for original email2sms (from this post):
38a39
> TMPOUTFILE=$(mktemp /var/spool/sms/tmp/smsgw.out.XXXXXX)
40c41
< formail -f -I "To: $destination" < $tmp > $OUTFILE
---
> formail -f -I "To: $destination" < $tmp > $TMPOUTFILE
41a43
> /usr/local/bin/decodequoted.pl $TMPOUTFILE > $OUTFILE
And here's the (butt ugly) decodequoted.pl:
#!/usr/bin/perl
my $file = $ARGV[0];
unless(-e $file) {
die "$file not found!\n";
}
# If there's no MIME -header just pass the file trough
# This IS NOT an fool proof way, but hopefully enough
my $mimetest=`grep '^MIME-Version' $file|wc -l`;
if($mimetest == 0) {
open CONTENT, $file or die "ARRG!\n";
while (<CONTENT>) {
if($_ =~ /^To:\s+.*<(\S+\@\S+)>.*$/) {
print "To: ".$1."\n";
} else {
print $_;
}
}
exit 0;
}
my $metamail=`metamail -w -x -y $file`;
my @rows = split("\n",$metamail);
my $headers;
my $headerson=1;
my $tmpfile;
foreach (@rows) {
if($headerson==1) {
if($_ =~ /^To:\s+.*<(\S+\@\S+)>.*$/) {
$headers.="To: ".$1."\n";
} else {
$headers.=$_."\n";
}
}
if($_=~/^$/) {
$headerson=0;
}
if($_=~/^Wrote.file/) {
$tmpfile=$_;
$tmpfile=~s/Wrote.file.//;
}
}
open CONTENT, $tmpfile or die "ARGG!\n";
print $headers."\n";
while (<CONTENT>) {
print $_;
}
close CONTENT;
unlink($tmpfile);
unlink($file);
This seems to work (with my needs), but if you break something you own all the parts ;) I have not tested this properly trough, so I don't have ANY idea about how it'll handle ie. multipart messages (ie. html & plaintext).
Obviously the real solution would be to rewrite original email2sms to handle quoted printable and other issues properly, but since I don't have the time for that right now I just wrote that workaround.
|
Tue Sep 21, 2010 17:32
|
take: This seems to work just fine. Thanks for the quick fix! I've just been too busy to actually test it out earlier.
Another thing, merely an feature request, but anyway, it'd be nice to have an option to send either subject or the body. However my needs are a bit more complex, since I'd need to do that based on the sender etc, that I suppose I'll craft something by myself when I find the time for it.
|
Mon Sep 13, 2010 19:50
|
take: Hello!
I just created an fresh installation of smstools for our system monitoring. However there seems to be an issue with email which has more than 1 recipient, only first recipient receives mail.
I suppose I could go around this with tweaking postfix and/or fetchmail, but that feels like going around the problem. On sent messages I have an header like this:
To: 35850xxxxxx @sms.myhost.fi, 35840xxxxxx@sms.myhost.fi
(There's an additional space intentionally, forum makes a mess if there's a "valid" mail address)
The first number receives the SMS just like it should, but the second doesn't and there's nothing on the logs either, so it seems like that the another number is discarded.
|
Sun Nov 15, 2009 16:22
|
take: Thank you for your very fast and very accurate reply! That did the trick and now I can start building some functionality with that and i.e. my nagios3 environment.
|
Sun Nov 15, 2009 15:40
|
take: Operating system name and version: Debian Lenny
Version of smsd: 3.1.5
Smsd installed from: sources
Name and model of a modem / phone: Vodafone Mobile Connect
Interface: pcmcia
Hopefully someone can find an solution to my problem. I tried the same with Debian packaged smstools (3.1.2) with different results, there the problem was that I couldn't decode messages received.
But now with the new version I can't get any messages out from the system. Everything seems to run smoothly, and I can send messages (with some issues, but more about that after investigation).
I tried to send message via my cellphone, just like I would send an reqular SMS but all I can see on log is this:
2009-11-15 17:17:00,6, GSM1: Checking device for incoming SMS
2009-11-15 17:17:00,6, GSM1: Checking if modem is ready
2009-11-15 17:17:01,7, GSM1: -> AT
2009-11-15 17:17:01,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:01,7, GSM1: <- OK
2009-11-15 17:17:01,6, GSM1: Pre-initializing modem
2009-11-15 17:17:01,7, GSM1: -> ATE0+CMEE=1
2009-11-15 17:17:01,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:01,7, GSM1: <- OK
2009-11-15 17:17:01,7, GSM1: -> AT+CSQ
2009-11-15 17:17:01,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:02,7, GSM1: <- +CSQ: 10,0 OK
2009-11-15 17:17:02,6, GSM1: Checking if Modem is registered to the network
2009-11-15 17:17:02,7, GSM1: -> AT+CREG?
2009-11-15 17:17:02,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:02,7, GSM1: <- +CREG: 0,1 OK
2009-11-15 17:17:02,6, GSM1: Modem is registered to the network
2009-11-15 17:17:02,6, GSM1: Selecting PDU mode
2009-11-15 17:17:02,7, GSM1: -> AT+CMGF=0
2009-11-15 17:17:02,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:03,7, GSM1: <- OK
2009-11-15 17:17:03,6, GSM1: Checking memory size
2009-11-15 17:17:03,7, GSM1: -> AT+CPMS?
2009-11-15 17:17:03,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:03,7, GSM1: <- +CPMS: "SM",0,20,"SM",0,20,"SM",0,20 OK
2009-11-15 17:17:03,6, GSM1: Used memory is 0 of 20
2009-11-15 17:17:03,6, GSM1: No SMS received
2009-11-15 17:17:13,6, GSM1: Checking device for incoming SMS
2009-11-15 17:17:13,6, GSM1: Checking if modem is ready
2009-11-15 17:17:13,7, GSM1: -> AT
2009-11-15 17:17:13,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:13,7, GSM1: <- OK
2009-11-15 17:17:13,6, GSM1: Pre-initializing modem
2009-11-15 17:17:14,7, GSM1: -> ATE0+CMEE=1
2009-11-15 17:17:14,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:14,7, GSM1: <- OK
2009-11-15 17:17:14,7, GSM1: -> AT+CSQ
2009-11-15 17:17:14,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:15,7, GSM1: <- +CSQ: 12,0 OK
2009-11-15 17:17:15,6, GSM1: Checking if Modem is registered to the network
2009-11-15 17:17:15,7, GSM1: -> AT+CREG?
2009-11-15 17:17:15,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:15,7, GSM1: <- +CREG: 0,1 OK
2009-11-15 17:17:15,6, GSM1: Modem is registered to the network
2009-11-15 17:17:15,6, GSM1: Selecting PDU mode
2009-11-15 17:17:15,7, GSM1: -> AT+CMGF=0
2009-11-15 17:17:15,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:15,7, GSM1: <- OK
2009-11-15 17:17:15,6, GSM1: Checking memory size
2009-11-15 17:17:16,7, GSM1: -> AT+CPMS?
2009-11-15 17:17:16,7, GSM1: Command is sent, waiting for the answer
2009-11-15 17:17:16,7, GSM1: <- +CPMS: "SM",0,20,"SM",0,20,"SM",0,20 OK
2009-11-15 17:17:16,6, GSM1: Used memory is 0 of 20
2009-11-15 17:17:16,6, GSM1: No SMS received
Here's my smsd.conf:
devices = GSM1
outgoing = /var/spool/sms/outgoing
checked = /var/spool/sms/checked
incoming = /var/spool/sms/incoming
logfile = /var/log/smsd.log
infofile = /var/run/smstools/smsd.working
pidfile = /var/run/smstools/smsd.pid
outgoing = /var/spool/sms/outgoing
checked = /var/spool/sms/checked
failed = /var/spool/sms/failed
incoming = /var/spool/sms/incoming
sent = /var/spool/sms/sent
stats = /var/log/smstools/smsd_stats
loglevel = 7
receive_before_send = no
autosplit = 3
[GSM1]
device = /dev/noz0
incoming = yes
memory_start = 0
baudrate = 38400
cs_convert=yes
I didn't try and see if I can retrieve messages manually, but I doubt that if I manually give the same commads the results will be the same as well.
So, any ideas?
|
Page: 1
Time in this board is UTC.
|
|
|
 |
|
 |
|