napalm` commented on a Page, phrases  -  Oct 30, 2010

Just an example of how to use sockets to return phrases. This is in NO way a finished product.

on *:TEXT:!phrase:#:{
  if (%phrase.f) { set -u3 %phrase.f 1 | return }
  phrase # | set -u3 %phrase.f 1
}
alias phrase {
  sockopen phrase www.smartphrase.com 80
  sockmark phrase $1-
}
on 1:sockopen:phrase:{
  if ($sockerr) echo $color(kick) -s PHRASE SOCKOPEN ERROR: $sock($1).wsmsg 
  sockwrite -n $sockname POST $+(/cgi-bin/randomphrase.cgi?spanish&,$gettok(serious:humorous,$r(1,2),58),&normal) HTTP/1.1
  sockwrite -n $sockname Host: www.smartphrase.com
  sockwrite -n $sockname $crlf
}
on 1:sockread:phrase:{
  var %r | sockread %r
  if ($sockerr) echo $color(kick) -s PHRASE SOCKREAD ERROR: $sock($1).wsmsg 
  elseif ($regex(%r,<HTML>)) set -u10 %phrase.c 0
  elseif (%r == <TD ALIGN="center" WIDTH=420 BGCOLOR="#DCDCFF">) {
    sockread %r | inc %phrase.c
    if (%phrase.c == 2) $iif($sock($sockname).mark ischan,msg $v1,echo $color(info) -a PHRASE:) $regsubex(%r,.+<P>(.+),\1)
  }
  elseif ($regex(%r,<.HTML>)) { unset %phrase.c | sockclose $sockname }
}
 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.