;Idea: Kitten of SwiftIRC.net ;Script by RussellReal ;Source: http://www.cmmei.com/stabb.htm on $*:TEXT:/^[@!](state|abb)/Si:#:{ set $+(%,abrev,.,$nick,.,style) $iif($right($1,-1) == state,state,abb) if ($($+(%,abrev,.,$nick,.,style),2) == State) { if ($len($2-) >= 3) { .notice $nick That is too long to be an abbreviation. unset $+(%,abrev,.,$nick,.,style) halt } } set $+(%,abrev,.,$nick,.,dest) $iif($left($1,1) == @,msg $chan,$iif($left($1,1) == !,.notice $nick,halt)) set $+(%,abrev,.,$nick,.,lookup) $2- sockopen $+(abrev,.,$nick) www.cmmei.com 80 } on *:SOCKOPEN:abrev.*:{ sockwrite -n $sockname GET /stabb.htm HTTP/1.1 sockwrite -n $sockname Host: www.cmmei.com $+ $crlf $+ $crlf } on *:SOCKREAD:abrev.*:{ if ($sockerr) { $($+(%,$sockname,.dest),2) $sockerror | sockclose $sockname } var $+(%,$sockname,.,result) | sockread -f $+(%,$sockname,.result) if (*Street Address Abbreviation* iswm $htmlfree($($+(%,$sockname,.result),2))) { $($+(%,$sockname,.dest),2) Sorry $right($sockname,-6) Your $replace($($+(%,$sockname,.,style),2),abb,Abbreviation,state,State) search for $($+(%,$sockname,.,lookup),2) Returned no results. sockclose $sockname unset $+(%,$sockname,.,*) halt } if ($($+(%,$sockname,.,style),2) == state) { if ($htmlfree($($+(%,$sockname,.result),2)) == $($+(%,$sockname,.,lookup),2)) { sockread -f $+(%,$sockname,.result) $($+(%,$sockname,.dest),2) The state for the abbreviation: $($+(%,$sockname,.,lookup),2) is: $htmlfree($($+(%,$sockname,.result),2)) $+ . unset $+(%,$sockname,.,*) sockclose $sockname halt } } if ($($+(%,$sockname,.,style),2) == abb) { if ($htmlfree($($+(%,$sockname,.result),2)) == $($+(%,$sockname,.,lookup),2)) { $($+(%,$sockname,.dest),2) The Abbreviation for the State: $($+(%,$sockname,.,lookup),2) is: $($+(%,$sockname,.prev),2) $+ . sockclose $sockname unset $+(%,$sockname,.,*) halt } else { set $+(%,$sockname,.prev) $htmlfree($($+(%,$sockname,.result),2)) } } } alias htmlfree { var %x, %i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x), %x = $remove(%x, ) return %x }