rendered paste bodyset ircsnapshot_port 1234
#---------------------------------------------------
# script comes from here
proc ircsnapshot_StartServer {port} {
set s [socket -server ircsnapshot_OnAccept $port]
puts "\[ircsnapshot\] Startred"
}
proc ircsnapshot_OnAccept {sock addr port} {
global ircsnapshot_TimeoutTimers
fconfigure $sock -buffering line -blocking no
puts $sock "HELLO_FROM_IRCSNAPSHOT_SERVER"
fileevent $sock readable [list ircsnapshot_OnReceive $sock]
puts "\[ircsnapshot\] Accepted connection from $addr:$port -> $sock"
}
proc ircsnapshot_OnReceive {sock} {
global ircsnapshot_TimeoutTimers
puts "AHA!!"
if {not ([eof $sock] && [catch {gets $sock line})]} {
puts "\[ircsnapshot\] $sock sent: $line"
if {$line == "GETSNAPSHOT"} {
puts $sock "hello"
} else {
puts $sock "BAD_PROTOCOL"
}
}
puts "\[ircsnapshot\] $sock closed."
close $sock
}
ircsnapshot_StartServer $ircsnapshot_port
vwait forever