PNG  IHDR* pHYs+ IDATx]n#; cdLb Ǚ[at¤_:uP}>!Usă cag޿ ֵNu`ݼTâabO7uL&y^wFٝA"l[|ŲHLN밪4*sG3|Dv}?+y߉{OuOAt4Jj.u]Gz*҉sP'VQKbA1u\`& Af;HWj hsO;ogTu uj7S3/QzUr&wS`M$X_L7r2;aE+ώ%vikDA:dR+%KzƉo>eOth$z%: :{WwaQ:wz%4foɹE[9<]#ERINƻv溂E%P1i01 |Jvҗ&{b?9g=^wζXn/lK::90KwrюO\!ջ3uzuGv^;騢wq<Iatv09:tt~hEG`v;3@MNZD.1]L:{ծI3`L(÷ba")Y.iljCɄae#I"1 `3*Bdz>j<fU40⨬%O$3cGt]j%Fߠ_twJ;ABU8vP3uEԑwQ V:h%))LfraqX-ۿX]v-\9I gl8tzX ]ecm)-cgʒ#Uw=Wlێn(0hPP/ӨtQ“&J35 $=]r1{tLuǮ*i0_;NƝ8;-vݏr8+U-kruȕYr0RnC]*ެ(M:]gE;{]tg(#ZJ9y>utRDRMdr9㪩̞zֹb<ģ&wzJM"iI( .ꮅX)Qw:9,i좜\Ԛi7&N0:asϓc];=ΗOӣ APqz93 y $)A*kVHZwBƺnWNaby>XMN*45~ղM6Nvm;A=jֲ.~1}(9`KJ/V F9[=`~[;sRuk]rєT!)iQO)Y$V ی ۤmzWz5IM Zb )ˆC`6 rRa}qNmUfDsWuˤV{ Pݝ'=Kֳbg,UҘVz2ﴻnjNgBb{? ߮tcsͻQuxVCIY۠:(V뺕 ٥2;t`@Fo{Z9`;]wMzU~%UA蛚dI vGq\r82iu +St`cR.6U/M9IENDB`#!/bin/sh # -*- tcl -*- # The next line is executed by /bin/sh, but not tcl \ exec tclsh "$0" ${1+"$@"} package require Expect # weather - Expect script to get the weather (courtesy University of Michigan) # Don Libes # Version 1.10 # local weather is retrieved if no argument # argument is the National Weather Service designation for an area # I.e., WBC = Washington DC (oh yeah, that's obvious) # Notes from Larry Virden about the new host, # rainmaker.wunderground.com: "[the] new site requires the # machine doing the request be located in reverse dns lookup # or it refuses to provide data." This appears to be a blind error # condition on the part of rainmaker. exp_version -exit 5.0 if {$argc>0} {set code $argv} else {set code "WBC"} proc timedout {} { send_user "Weather server timed out. Try again later when weather server is not so busy.\n" exit 1 } set timeout 60 set env(TERM) vt100 ;# actual value doesn't matter, just has to be set if {[file executable /usr/bin/telnet] == 0} { send_user "It seems that telnet is not installed. Please install telnet in order to use this script.\n" exit 1 } spawn telnet rainmaker.wunderground.com 3000 while {1} { expect timeout { send_user "failed to contact weather server\n" exit } "Press Return to continue*" { # this prompt used sometimes, eg, upon opening connection send "\r" } "Press Return for menu*" { # this prompt used sometimes, eg, upon opening connection send "\r" } "M to display main menu*" { # sometimes ask this if there is a weather watch in effect send "M\r" } "Change scrolling to screen*Selection:" { break } eof { send_user "failed to telnet to weather server\n" exit } } send "C\r" expect timeout timedout "Selection:" send "4\r" expect timeout timedout "Selection:" send "1\r" expect timeout timedout "Selection:" send "1\r" expect timeout timedout "city code:" send "$code\r" expect $code ;# discard this while {1} { expect timeout { timedout } "Press Return to continue*:*" { send "\r" } "Press Return to display statement, M for menu:*" { send "\r" } -re "(.*)CITY FORECAST MENU.*Selection:" { break } } send "X\r" expect