Send PM on user login
 

News:

29 December 2022 - PtokaX 0.5.3.0 (20th anniversary edition) released...
11 April 2017 - PtokaX 0.5.2.2 released...
8 April 2015 Anti child and anti pedo pr0n scripts are not allowed anymore on this board!
28 September 2015 - PtokaX 0.5.2.1 for Windows 10 IoT released...
3 September 2015 - PtokaX 0.5.2.1 released...
16 August 2015 - PtokaX 0.5.2.0 released...
1 August 2015 - Crowdfunding for ADC protocol support in PtokaX ended. Clearly nobody want ADC support...
30 June 2015 - PtokaX 0.5.1.0 released...
30 April 2015 Crowdfunding for ADC protocol support in PtokaX
26 April 2015 New support hub!
20 February 2015 - PtokaX 0.5.0.3 released...
13 April 2014 - PtokaX 0.5.0.2 released...
23 March 2014 - PtokaX testing version 0.5.0.1 build 454 is available.
04 March 2014 - PtokaX.org sites were temporary down because of DDOS attacks and issues with hosting service provider.

Main Menu

Send PM on user login

Started by Alexandros, 03 December, 2004, 01:17:14

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Alexandros

Is there any script that do this? i want to receibe IP and nick of that user, because i have someone allways with different IP that log in, advert and log out (the server is not on my PC)
would be good to have a command to turn it on and off from the client.
thanks

Alex

bastya_elvtars

QuoteOriginally posted by Alexandros
Is there any script that do this? i want to receibe IP and nick of that user, because i have someone allways with different IP that log in, advert and log out (the server is not on my PC)
would be good to have a command to turn it on and off from the client.
thanks

Alex

what you need is IP logging. search for a script that fits you if not found then i will somehow get the lawmaker userlogging part... but only next wek
Everything could have been anything else and it would have just as much meaning.

Dj_OcTaGoN

Isnt it able to use a regular anti-advertiser as well?

Like this one
--Lucifer 6.6.6-- updated version
--This is a Powerful AntiAdvertising Script
--Powered by Demone.Astaroth and OpiumVolage
--History: Base='multiline antiadvertise' by OpiumVolage (your tables simplify the work I did until that moment). Here its features:
--             1)Script can block this types of advertisement: A)  example.no-ip.com
--					       B)  e x a m p l e . n o - i p . c o m
--					       C)example.
--					          no-
--					          ip.
--					          com
--					       D)e
--					          x
--					          a
--					          m
--					          p
--					          l
--					          e
--					          .
--					          n
--					          o
--					          -					      
--					          i
--					          p
--					          .
--					          c
--					          o
--					          m
--             2)You can insert valid addresses (like yours) in trigs, so bot won't kick you
--             3)Users conversating with ops don't get kicked
--             4)Why the Timer? It cleans memory.
--             Demone.Astaroth addons: 1)added an huge list of addresses
--		   	      2)When advertising: user advised on Pm before disconnection; Bot sends to all in main chat the kicking message (without IP); 
--	                                         advertise-infos send to Op-chat directly without troubling any Op with Pms! Infos contain user's IP, user To(if PM) and last message
--			         Just replace INSERT.HERE.YOUR.OP-CHAT.NAME fields with yours.
--	     	                      3)inserted Disconnect and TimeBan (15 minutes) instead of gagging user
--		   	      4)Prevented very splitted addresses (with more tabAdvert lines)
--                                	      5)added Control-addresses: user isn't kicked for these addresses but Ops are informed in any case.
--                                                  	                                 this is useful for friend-hubs addresses, if u also want to control them
-- 	                                      6)added ControlUser status: if u're scary about your vips advertising their hubs and stealing you user, 
--                   	                                                                  you can't insert the tag [VIP] or anything else in the specific space: they will not
--                                     	                                                  get kicked for any addresses, but in case of typing a Control-address, Ops will be
--                                                        	                                  informed.
--	                                      7)Fixed some bug (Thanks Opium)
--			      8)Added a new string-pieces find way to catch advertises
BotName = "?Lucifer?" 

advtrigs = {"dns2go","myftpsite","servebeer","mine.nu","ip.com","dynip","depecheconnect.com","zapto.org",
	"staticip","serveftp","ipactive","ip.org","no-ip","servegame","gotdns.org","ip.net","ip.co.uk",
	"ath.cx","dyndns","68.67.18.75","clanpimp","idlegames","sytes","unusualperson.com",
	"24.184.64.48","uni.cc","151.198.149.60","homeunix","24.209.232.97","ciscofreak.com",
	"deftonzs.com","24.187.50.121","flamenap","xs4all","serveftp","point2this.com","ip.info",
	"myftp","d2g","151.198.149.60","24.184.64.48","orgdns","myip.org","stufftoread.com",
	"ip.biz","dynu.com","mine.org","kick-ass.net","darkdata.net","ipme.net","udgnet.com","homeip.net",
	"e-net.lv","newgnr.com","bst.net","bsd.net","ods.org","x-host","bounceme.net","myvnc.com",
	"kyed.com","lir.dk","finx.org","sheckie.net","vizvaz.net","snygging.net","kicks-ass.com","nerdcamp.net",
	"cicileu.","3utilities.com","myftp.biz","redirectme.net","servebeer.com","servecounterstrike.com",
	"servehalflife.com","servehttp.com","serveirc.com","servemp3.com","servepics.com","servequake.com",
	"damnserver.com","ditchyourip.com","dnsiskinky.com","geekgalaxy.com","net-freaks.com","ip.ca",
	"securityexploits.com","securitytactics.com","servehumour.com","servep2p.com","servesarcasm.com",
	"workisboring.com","hopto","64.246.26.135","213.145.29.222","dnsalias"} 
validtrigs = {"myhub.no-ip.com","multihub2.no-ip.com", "greatfriend.no-ip.com"} --insert here your addresses (like yours or multihub ones or great friend's hub ;) )

controltrigs={["hub1"]=1,["hub2"]=2,["hub3"]=3, ["hub4"]=4, ["hub5"]=5} --insert here addresses you want to be informed (no kick)

tabAdvert = {}

function Main()
	frmHub:RegBot(BotName)
	SetTimer(60000)
	StartTimer()
end

function OnTimer()
	for key, value in tabAdvert do
		if (tabAdvert[key].iClock > clock()+60) then
			tabAdvert[key]=nil
		end
	end
end

function DataArrival(user, data)
	if not user.bOperator then
		if strsub(data, 1, 1) == "<" then
			local _, _, msg = strfind(data, "^%b<>%s+(.*)|")
			if Verify(user.sName, msg) then 
				catch=strsub(user.sName,1,5)         --5 is counting chars of the tag below: if u change [VIP], change it!
				if catch=="[VIP]" then                  --ControlUser status : insert users Tag u don't want to get kicked
				else
					tabAdvert[user.sName]=nil
					SendToAll( BotName, user.sName.." get slaughtered by Lucifer for advertising!")
					user:SendPM(BotName, "I slaughtered you! Don't try again to advertise!") 
					user:Disconnect();
					user:TimeBan(15); 
					s,e,onlymes = strfind(data, "%b<> (.*)")
					SendPmToOps ("INSERT.HERE.YOUR.OP-CHAT.NAME", "User "..user.sName.." with IP "..user.sIP.." advertised in main chat saying: "..onlymes.."")
				end
			end
			for key, value in controltrigs do
				if( strfind( strlower(data), key) ) then
					s,e,onlymes = strfind(data, "%b<> (.*)")
					SendPmToOps ("INSERT.HERE.YOUR.OP-CHAT.NAME", "Control: User "..user.sName.." with IP "..user.sIP.." told in main: "..onlymes.."")
				end
			end
			spam=0
			if( strfind( strlower(data), "no",1,1) ) and ( strfind( strlower(data), "ip.",1,1) ) then
				if ( strfind( strlower(data), "com",1,1) ) or ( strfind( strlower(data), "org",1,1) ) or ( strfind( strlower(data), "info",1,1) ) then
			spam=spam+1; end; end;
			if( strfind( strlower(data), "dns",1,1) ) and ( strfind( strlower(data), "2",1,1) ) and ( strfind( strlower(data), "go",1,1) ) then
			spam=spam+1; end
			if( strfind( strlower(data), "dy",1,1) ) and ( strfind( strlower(data), "nu",1,1) ) then
				if( strfind( strlower(data), ".net",1,1) ) or ( strfind( strlower(data), ".com",1,1) ) then
			spam=spam+1;end; end
			if( strfind( strlower(data), "d n s a",1,1) ) or ( strfind( strlower(data), "d n s .",1,1) ) or ( strfind( strlower(data), "d n s 2",1,1) ) or ( strfind( strlower(data), "o d s .",1,1) ) or ( strfind( strlower(data), "d y n",1,1) ) then
			spam=spam+1;end
			if spam>0 then
					SendToAll( BotName, user.sName.." get slaughtered by Lucifer for advertising!")
					user:SendPM(BotName, "I slaughtered you! Don't try again to advertise!") 
					user:Disconnect();
					user:TimeBan(15); 
					s,e,onlymes = strfind(data, "%b<> (.*)")
					SendPmToOps ("INSERT.HERE.YOUR.OP-CHAT.NAME", "User "..user.sName.." with IP "..user.sIP.." advertised in main chat saying: "..onlymes.."")
			end

		elseif strsub(data, 1, 4) == "$To:" then
			local _, _, to, from, msg = strfind(data, "^%$To:%s+(%S+)%s+From:%s+(%S+)%s-%$%b<>%s+(.*)|")
			local nick = GetItemByName(to)
			if not nick.bOperator then
				local userdata = to.." "..from
				if Verify(userdata, msg) then 
					catch=strsub(user.sName,1,16) 
					if catch=="['??SemiDeus??']" then
					else
						tabAdvert[userdata] = nil
						SendToAll( BotName, user.sName.." get slaughtered by Lucifer for advertising!")
						user:SendPM(BotName, "I slaughtered you! Don't try again to advertise!") 
						user:Disconnect();
						user:TimeBan(15); 
						s,e,whoTo,from,mes = strfind(data,"$To:%s+(%S+)%s+From:%s+(%S+)%s+$%b<>%s+(.*)")  
						SendPmToOps ("INSERT.HERE.YOUR.OP-CHAT.NAME", "User "..user.sName.." with IP "..user.sIP.." advertised in main chat saying to "..whoTo.." this: "..mes.."")
					end
				end
				for key, value in controltrigs do
					if( strfind( strlower(data), key) ) then
						s,e,whoTo,from,mes = strfind(data,"$To:%s+(%S+)%s+From:%s+(%S+)%s+$%b<>%s+(.*)")  
						SendPmToOps ("INSERT.HERE.YOUR.OP-CHAT.NAME", "Control: User "..user.sName.." with IP "..user.sIP.." said to "..whoTo.." this: "..mes.."")
					end
				end
				spam=0
				if( strfind( strlower(data), "no",1,1) ) and ( strfind( strlower(data), "ip.",1,1) ) then
					if ( strfind( strlower(data), "com",1,1) ) or ( strfind( strlower(data), "org",1,1) ) or ( strfind( strlower(data), "info",1,1) ) then
				spam=spam+1; end; end;
				if( strfind( strlower(data), "dns",1,1) ) and ( strfind( strlower(data), "2",1,1) ) and ( strfind( strlower(data), "go",1,1) ) then
				spam=spam+1; end
				if( strfind( strlower(data), "dy",1,1) ) and ( strfind( strlower(data), "nu",1,1) ) then
				if( strfind( strlower(data), ".net",1,1) ) or ( strfind( strlower(data), ".com",1,1) ) then
				spam=spam+1;end; end
				if( strfind( strlower(data), "d n s a",1,1) ) or ( strfind( strlower(data), "d n s .",1,1) ) or ( strfind( strlower(data), "d n s 2",1,1) ) or ( strfind( strlower(data), "o d s .",1,1) ) or ( strfind( strlower(data), "d y n",1,1) ) then
				spam=spam+1;end
				if spam>0 then
				SendToAll( BotName, user.sName.." get slaughtered by Lucifer for advertising!")
						user:SendPM(BotName, "I slaughtered you! Don't try again to advertise!") 
						user:Disconnect();
						user:TimeBan(15); 
						s,e,whoTo,from,mes = strfind(data,"$To:%s+(%S+)%s+From:%s+(%S+)%s+$%b<>%s+(.*)")  
						SendPmToOps ("INSERT.HERE.YOUR.OP-CHAT.NAME", "User "..user.sName.." with IP "..user.sIP.." advertised in main chat saying to "..whoTo.." this: "..mes.."")
				end
			end
		end
	end
end
function Verify(userdata, msg)
	if not msg then return end
	tmp =""
	gsub(strlower(msg), "([a-z0-9.:%-])", function(x) tmp = tmp..x end)
	if not tabAdvert[userdata] then
		tabAdvert[userdata] = { iClock = clock(), l1 = "", l2 = "", l3 = "", l4= "", l5= "",l6= "",l7= "",l8= "",l9 = tmp}
	else
		tabAdvert[userdata].iClock = clock()
		tabAdvert[userdata].l1 = tabAdvert[userdata].l2
		tabAdvert[userdata].l2 = tabAdvert[userdata].l3
		tabAdvert[userdata].l3 = tabAdvert[userdata].l4
		tabAdvert[userdata].l4 = tabAdvert[userdata].l5
		tabAdvert[userdata].l5 = tabAdvert[userdata].l6
		tabAdvert[userdata].l6 = tabAdvert[userdata].l7
		tabAdvert[userdata].l7 = tabAdvert[userdata].l8
		tabAdvert[userdata].l8 = tabAdvert[userdata].l9
		tabAdvert[userdata].l9 = tmp
	end
	local Lines = tabAdvert[userdata].l1..tabAdvert[userdata].l2..tabAdvert[userdata].l3..tabAdvert[userdata].l4..tabAdvert[userdata].l5..tabAdvert[userdata].l6..tabAdvert[userdata].l7..tabAdvert[userdata].l8..tabAdvert[userdata].l9
	for key, value in advtrigs do
		if (strfind(Lines, strlower(value), 1, 1)) then
			for key2, value2 in validtrigs do
				if (strfind(Lines, strlower(value2), 1, 1)) then
					return nil
				end
			end
			return 1
		end
	end
end


SMF spam blocked by CleanTalk