#!/usr/bin/perl # # Simple test program that executes a modem `shell' # to monitor AT command results. # # ****************************************** # If it does not work, try with baud = 9600 # # $Id: shell.pl,v 1.6 2005/04/30 21:45:47 cosimo Exp $ use strict; use Device::Modem; if( $> && $< ) { print "\n*** REMEMBER to run this program as root if you cannot connect on serial port!\n"; sleep 3; } print "Your serial port? [/dev/ttyS0]\n"; my $port = ; chomp $port; $port ||= '/dev/ttyS0'; print "Your baud rate? [19200]\n"; my $baud = ; chomp $baud; $baud ||= 19200; my $modem = new Device::Modem ( port => $port ); my $stop; die "Could not connect to $port!\n" unless $modem->connect( baudrate => $baud ); print "Connected to $port.\n\n"; while( not $stop ) { print "insert AT command (`stop' to quit)\n"; print "> "; my $AT = ; chomp $AT; if( $AT eq 'stop' ) { $stop = 1; } else { $modem->atsend( $AT . "\r\n" ); print $modem->answer(), "\n"; } } print "Done.\n";