D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
thread-self
/
root
/
usr
/
share
/
doc
/
perl-Expect
/
tutorial
/
Filename :
6.B.modem-init
back
Copy
#!/usr/bin/perl # This is a very brief script that demonstrates send_slow(). This #command is chiefly for talking to modems and the like where if you send #it stuff too fast it can get mad at you. # Also demonstrated is how to talk to a bidirectional device #handle. # # This example has been changed in 1.05 so that it actually works. :-) use Expect; $device="/dev/modem" unless $device = shift(@ARGV); # open the device open(DEVICE,"+>$device") || die "Couldn't open $device, $!\n"; # Expectize it. note the \* which we do because we didn't use the OO # method of opening the device. $modem=Expect->exp_init(\*DEVICE); # Let's watch the output. Once again, output isn't automatically # watched since it was an initialized handlde and not a process. $modem->log_stdout(1); # Put it in raw mode w/ no echoing so it will operate as expected. $modem->exp_stty('raw','-echo'); # Send it an ATZH0\r to reset its state. print "Initializing modem\n"; $modem->send_slow(.5,"ATZH0\r"); # How about we look for an OK? $modem->expect(30,'-re','^OK\r?$')|| warn "Never got OK from modem\n"; print "Modem initialized.\n"; # Now let's interact with it so the user can talk to it, dial it out, # whatever. This is basically a poor man's term program. # When you interact() with a handle it puts STDIN in raw mode so # you are assured of interacting cleanly, no escape chars, etc. # This is usually what you want. Here however it's nice to be able to # escape from the session without doing any extra work. So let's make # an escape character of ^W. print "Beginning interaction, escape character is ^W.\n"; $modem->interact(\*STDIN,"\027"); # Done? Reset the modem, close the handle. print $modem "+++"; sleep 3; print $modem "ATZH0\r"; sleep 1; # Grab any output ready on the handle, toss it. $modem->expect(0); $modem->hard_close();
Name
Size
Last Modified
Owner
Permissions
Actions
1.A.Intro
2.371
KB
May 15 2017 3:55:28
root
0644
2.A.ftp
3.013
KB
August 23 2019 2:02:45
root
0644
2.B.rlogin
3.948
KB
August 23 2019 2:02:45
root
0644
3.A.debugging
1.927
KB
August 23 2019 2:02:45
root
0644
4.A.top
0.906
KB
August 23 2019 2:02:45
root
0644
5.A.top
1.112
KB
August 23 2019 2:02:45
root
0644
5.B.top
2.393
KB
August 23 2019 2:02:45
root
0644
6.A.smtp-verify
3.184
KB
August 23 2019 2:02:45
root
0644
6.B.modem-init
1.79
KB
August 23 2019 2:02:45
root
0644
README
0.629
KB
May 15 2017 3:55:28
root
0644
2017 © D7net | D704T team