使用 Device::Gsm,我可以读取在我的 umts-modem 上收到的短信。有时,由于一条短信长度的限制,一条短信被分成两条或多条短信。有没有办法找出一组短信是否是一条消息的一部分?例如,Wammu 给我穿上属于一个文本的短信。
#!/usr/bin/perl
use warnings; use strict;
use Device::Gsm;
my $modem = new Device::Gsm( port => '/dev/ttyUSB0' );
if( $modem->connect() ) {
print "connected!\n";
}
else {
print "sorry, no connection with serial port!\n";
}
my @msg = $modem->messages;
if( @msg ) {
my $n = 0;
for( @msg ) {
my $sms = $_;
next unless defined $sms;
print "\nMESSAGE N. $n\n";
print 'Text [', $sms->text(), "]\n";
$n++;
}
}
else {
print "No message on SIM, or error during read!\n";
}
连接的!
消息 N. 0 文本 [消息 1 第 1 部分]
消息 N. 1 文本 [消息 1 第 2 部分]
消息 N. 2 文本 [消息 1 第 3 部分]
消息 N. 3 文本 [消息 2]
消息 N. 4 文本 [消息 3]