huawei e220 perl smstools

Num outro artigo tinha escrito sobre o envio de sms com o huawei e220 usando a libraria do CPAN Device::Modem para este caso comigo não resultou. O envio das sms nem sempre funciona, o texto enviado pelo atsend não é emitido pelo modem.
Sem conseguir confirmar de onde originava o problema pois a mesma string pelo minicom funciona sem problemas, usando um outro pc isto tudo funciona sem problemas sobrou a possibilidade de ser diferença na $LANG ou problema de configuração dos locales mas nada tem a ver pois as config’s estão iguais muda sim a versão do perl.

Para contornar todas estas dores de cabeça decidi-me a usar o smstools que funciona sem problemas só preciso de ler as mensagens ler os dados que pretendo dos ficheiros e está a funcionar sem grandes dores de cabeça.

De qualquer modo fica o código para envio das sms usando o Device::Modem funciona no ubuntu 8.04.

# Enviar sms
sub Enviar{
my ( $number, $out, $fromqueue ) = @_;
# Start modem connection
my $OK;
my $new;

my $modem = new Device::Modem( port => ‘/dev/ttyUSB0’ );

if ( $modem->connect( baudrate => 115200 ) ) {
} else {
print “Problem with connection… \n”;
exit 0;
}

# don’t echo my output
$modem->echo (0);

# Initialize
$modem->atsend( ‘ATZ’ . Device::Modem::CR );

# set text mode
$modem->atsend( ‘AT+CMGF=1’ . Device::Modem::CR );
chomp($out);
chomp($number);
# Start sending response
$modem->atsend( ‘AT+CMGS=”‘.$number.'”‘ . Device::Modem::CR );
$modem->atsend( $out . ” \cZ”  );
$modem->atsend( “\cZ”);

# Get Answer
$OK = $modem->answer();
chomp($OK);

if ( $OK =~ /OK/ ){
print “\tenviado\n”;
return 1;
}else {
if ( $fromqueue != 1 ) {
#QueueOut($number, $out);
print “Queue to send later\n”;
}
print “\tnot enviado\n”;
}

$modem->disconnect();

}

Esta função integra-se no meio de outras que “servem um propósito maior”.

Sobre Fernando André
SysAdmin, Website and Application Developer

Deixe uma Resposta

Please log in using one of these methods to post your comment:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s

%d bloggers like this: