-- offlinemsg.lua, created by amutex 11.01.2003 -- thx to nathanos for the fine pm-pasing botname = "Offline-Bot" function tokenize (inString,token) _WORDS = {} local matcher = "([^§"..token.."]+)" gsub(inString, matcher, function (w) tinsert(_WORDS,w) end) return _WORDS end function Get2Args(data) s,e,whoTo,from,cmd,arg,arg2 = strfind(data,"$To:%s+(%S+)%s+From:%s+(%S+)%s+$%b<>%s+(%S+)%s+(%S+)%s+(.*)") return arg,arg2 end function Main() frmHub:RegBot(botname) end function DataArrival(user, data) if(strsub(data, 1, 4) == "$To:") then data=strsub(data,1,strlen(data)-1) s,e,whoTo = strfind(data,"$To:%s+(%S+)") if (whoTo == botname) then s,e,whoTo,from,cmd = strfind(data,"$To:%s+(%S+)%s+From:%s+(%S+)%s+$%b<>%s+(%S+)") if (cmd=="#savemessage") then arg,arg2 = Get2Args(data) local handle=openfile("messages/"..arg..".msg","a") write(handle,"("..user.sName..") :"..arg2.."§") user:SendPM(botname,"Offline-Message saved ....") closefile(handle) end end end end function NewUserConnected(curUser) handle2=openfile("messages/"..curUser.sName..".msg","r") if (handle2==nil) then else line = read(handle2,"*a") line=strsub(line,1,strlen(line)-1) linearray=tokenize(line,"§") for i=1,linearray.n do curUser:SendPM("Offline-Bot",linearray[i]) end closefile(handle2) end a,b=remove("messages/"..curUser.sName..".msg") end function OpConnected(curUser) handle2=openfile("messages/"..curUser.sName..".msg","r") if (handle2==nil) then else line = read(handle2,"*a") line=strsub(line,1,strlen(line)-1) linearray=tokenize(line,"§") for i=1,linearray.n do curUser:SendPM("Offline-Bot",linearray[i]) end closefile(handle2) end a,b=remove("messages/"..curUser.sName..".msg") end