integer handle; integer channel; integer isLive; integer debug_mode; string url; string response; string request; key token; key server; key session; list users; list mailboxes; list tokens; list sessions; list db; integer avchan(key i){return (integer)("0x"+llGetSubString((string)i,0,7))+1337;} key genSessionKey(key i){ integer s=llListFindList(sessions,(list)i);if(s==-1){ session=llGenerateKey(); }else{ session=llList2Key(sessions,s-1); sessions+=[i,s]; } return session; } debug(string n,string m){//name,message if(!debug_mode)return; string o=llGetObjectName(); llSetObjectName(n); llOwnerSay(m); llSetObjectName(o); string t=llGetUnixTime(); logs+=[t+" - "+n+": "+m]; return; } default{ state_entry(){ channel=88881118; handle=llListen(channel,"","",""); llSensorRepeat("","",AGENT,96,TWO_PI,20); } sensor(integer i){ do{ key user=llDetectedKey(i); if(llListFindList(users,(list)user){ return; }else{ llRegionSayTo(user,avchan(user),"!ping"); } }while(i>-1); } no_sensor(){ } }