есть gprs модем ComWL
задача стоит в том чтобы при замене симки определялся провайдер, и запускалcz ppp с соответствующим скриптомpon provider
нашел в и-нете IPC::Open2
#!/usr/bin/perl -w
use IPC::Open2;
open2(*MODEM_IN,*MODEM_OUT, "cu -l /dev/ttyS0");
$_ = <MODEM_IN>;
chop;
if ( !m/^Connected/ ) {
print "$0: cu printed $_ instead of Connected";
}else{
print "HERE";
}
sub read_line {
$_ = <MODEM_IN>;
$_ || die("got eof on modem");
s/[\r\n]+$//;
if ( $_ eq "" ) {
$_ = <MODEM_IN>;
$_ || die("got eof on modem");
s/[\r\n]+$//;
}
return $_;
}
print MODEM_OUT "AT+CIMI\r\n";
my $line = read_line();
print "$line\n";
print MODEM_OUT "~.\r\n"
но что-то не так..
скрипт виснет после
open2(*MODEM_IN,*MODEM_OUT, "cu -l /dev/ttyS0");
$_ = <MODEM_IN>;
ЗЫ
Надо считать код IMSI - AT+CIMI
Ответом будет цифоровой ASCII код, типа "25099ххххххххх"
Где 250 - страна( россия) а 99 - код оператора(билайн).