defcom skip=skip;; defcom getserv=getserv S;; typeof remain=I;; typeof service=S;; fun _connected()= _SETtext message strloc loc "CONSOLV" service::nil; _on _channel skip []; _on _channel getserv [service];; fun __servis(a,b)= _closechannel; if b==nil then (_SETtext message loc "NOTAVAIL";nil) else contact b;; fun _closed()= contact NEXTtry;; fun _time(a,b)= _SETtext message strloc loc "TIMEOUT" URLservice::(itoa remain)::nil; set remain=remain-1; if remain>=0 then nil else (contact NEXTtry; _closechannel);; fun ipreq(s)= set service=s; set remain=10; _rfltimer _starttimer _channel 1000 @_time 0;;