HELP!!!
 

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

HELP!!!

Started by D-J Valhala, 04 July, 2004, 17:49:11

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

D-J Valhala

i need stand aloun script ASAP!!!
+ip will show me all IP's that connected to the hub
thanks :D
My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

nErBoS

#1
Hi,

Hope it helps...

--#############################################################################--
--## Nick and IP logger                                                      ##--
--## Requested by D-J Valhala                                                ##--
--## Made by nErBoS                                                          ##--
--## Command:								     ##--
--##		+ip - Will show the nicks and ips of all connected users     ##--
--#############################################################################--		

sBot = "IP-Logger"

arrIP = {}
fileIP = "ip.log"

--## Configuration ##--

uLaterPtokax = 0	--## If you are using ptokax 0.3.30 or higher choose 0
			--## If you are using lower versions then ptokax 0.3.3.0 choose 1 

fileIP = "ip.log"	--## This file will be created to save the users and ips

--## End of Configuration ##--

function Main()
	LoadFromFile(fileIP)
	CheckForUser()
end

function OnExit()
	SaveToFile(fileIP , arrIP , "arrIP")
end

function NewUserConnected(user)
	arrIP[user.sName] = user.sIP
end

function UserDisconnected(user)
	arrIP[user.sName] = nil
	if (uLaterPtokax == 1) then
		SaveToFile(fileIP , arrIP , "arrIP")
	end
end

NewUserConnected = OpConnected
UserDisconnected = OpDisconnected

function DataArrival(user, data)
	if (strsub(data,1,1) == "<" or strsub(data,1,5+strlen(sBot)) == "$To: "..sBot) then
		data = strsub(data,1,strlen(data)-1)
		s,e,cmd = strfind(data, "%b<>%s+(%S+)")
		if (cmd == "+ip" and user.bOperator) then
			local sTmp,usr,ip = "Connected User's and their IP's:\r\n\r\n"
			for usr, ip in arrIP do
				sTmp = sTmp.."User: "..usr.."\tIP: "..ip.."\r\n"
			end
			user:SendPM(sBot, sTmp)
			return 1
		end
	end
end

function CheckForUser()
	local usr,ip
	for usr, ip in arrIP do	
		if (GetItemByName(usr) == nil) then
			arrIP[usr] = nil
		end
	end
end

function Serialize(tTable, sTableName, sTab)
	assert(tTable, "tTable equals nil");
	assert(sTableName, "sTableName equals nil");

	assert(type(tTable) == "table", "tTable must be a table!");
	assert(type(sTableName) == "string", "sTableName must be a string!");

	sTab = sTab or "";
	sTmp = ""

	sTmp = sTmp..sTab..sTableName.." = {\n"

	for key, value in tTable do
		local sKey = (type(key) == "string") and format("[%q]",key) or format("[%d]",key);

		if(type(value) == "table") then
			Serialize(value, sKey, sTab.."\t");
		else
			local sValue = (type(value) == "string") and format("%q",value) or tostring(value);
			sTmp = sTmp..sTab.."\t"..sKey.." = "..sValue
		end

		sTmp = sTmp..",\n"
	end

	sTmp = sTmp..sTab.."}"
	return sTmp
end

function SaveToFile(file , table , tablename)
	writeto(file)
	write(Serialize(table, tablename))
	writeto()
end

function LoadFromFile(file)
	if (readfrom(file) ~= nil) then
		readfrom(file)
		dostring(read("*all"))
		readfrom()
	end
end

Best regards, nErBoS
--## nErBoS Spot ##--

D-J Valhala

#2
hehehehe crazy dude :P
thank you again lol talk to you in my hub :P
i haven't test it yet with users but i'm sure it will work good... :)
My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

D-J Valhala

nErBoS wazzzzzap? :)
the Bot is working but it wont show the IP's :\
My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

Snooze

I noted this part of the script ...

--## Configuration ##--

uLaterPtokax = 0	--## If you are using ptokax 0.3.30 or higher choose 0
			--## If you are using lower versions then ptokax 0.3.3.0 choose 1 

fileIP = "ip.log"	--## This file will be created to save the users and ips

--## End of Configuration ##--

Have you made the correct config ?


**Snooze

nErBoS

Hi,

Little Bug corrected and tested...

--## Nick and IP logger                                              
--## Requested by D-J Valhala                                        
--## Made by nErBoS                                                     
--## Command:								  
--##		+ip - Will show the nicks and ips of all connected users  

sBot = "IP-Logger"

arrIP = {}
fileIP = "ip.log"

--## Configuration ##--

uLaterPtokax = 0	--## If you are using ptokax 0.3.30 or higher choose 0
			--## If you are using lower versions then ptokax 0.3.3.0 choose 1 

fileIP = "ip.log"	--## This file will be created to save the users and ips

--## End of Configuration ##--

function Main()
	frmHub:RegBot(sBot)
	LoadFromFile(fileIP)
	CheckForUser()
end

function OnExit()
	SaveToFile(fileIP , arrIP , "arrIP")
end

function NewUserConnected(user)
	arrIP[user.sName] = user.sIP
end

function UserDisconnected(user)
	arrIP[user.sName] = nil
	if (uLaterPtokax == 1) then
		SaveToFile(fileIP , arrIP , "arrIP")
	end
end

OpConnected = NewUserConnected
OpDisconnected = UserDisconnected

function DataArrival(user, data)
	if (strsub(data,1,1) == "<" or strsub(data,1,5+strlen(sBot)) == "$To: "..sBot) then
		data = strsub(data,1,strlen(data)-1)
		s,e,cmd = strfind(data, "%b<>%s+(%S+)")
		if (cmd == "+ip" and user.bOperator) then
			local sTmp,usr,ip = "Connected User's and their IP's:\r\n\r\n"
			for usr, ip in arrIP do
				sTmp = sTmp.."User: "..usr.."\tIP: "..ip.."\r\n"
			end
			user:SendPM(sBot, sTmp)
			return 1
		end
	end
end

function CheckForUser()
	local usr,ip
	for usr, ip in arrIP do	
		if (GetItemByName(usr) == nil) then
			arrIP[usr] = nil
		end
	end
end

function Serialize(tTable, sTableName, sTab)
	assert(tTable, "tTable equals nil");
	assert(sTableName, "sTableName equals nil");

	assert(type(tTable) == "table", "tTable must be a table!");
	assert(type(sTableName) == "string", "sTableName must be a string!");

	sTab = sTab or "";
	sTmp = ""

	sTmp = sTmp..sTab..sTableName.." = {\n"

	for key, value in tTable do
		local sKey = (type(key) == "string") and format("[%q]",key) or format("[%d]",key);

		if(type(value) == "table") then
			Serialize(value, sKey, sTab.."\t");
		else
			local sValue = (type(value) == "string") and format("%q",value) or tostring(value);
			sTmp = sTmp..sTab.."\t"..sKey.." = "..sValue
		end

		sTmp = sTmp..",\n"
	end

	sTmp = sTmp..sTab.."}"
	return sTmp
end

function SaveToFile(file , table , tablename)
	writeto(file)
	write(Serialize(table, tablename))
	writeto()
end

function LoadFromFile(file)
	if (readfrom(file) ~= nil) then
		readfrom(file)
		dostring(read("*all"))
		readfrom()
	end
end

Best regards, nErBoS
--## nErBoS Spot ##--

blackwings

could you add number on each side of the User+IP, I mean like this =

(4) User: tester   IP: 213.114.174.138 (4)

Because then it will be easier when you look at the log


witch

I did test it.....works Fine!

Thanx nErBoS! Good work man  :P



D-J Valhala

My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

NightLitch

try change Nerbos DataArrival 2 this one:

function DataArrival(user, data)
	if (strsub(data,1,1) == "<" or strsub(data,1,5+strlen(sBot)) == "$To: "..sBot) then
		data = strsub(data,1,strlen(data)-1)
		s,e,cmd = strfind(data, "%b<>%s+(%S+)")
		if (cmd == "+ip" and user.bOperator) then
			local sTmp,usr,ip = "Connected User's and their IP's:\r\n\r\n"
			local Temp = {}
			for usr, ip in arrIP do
				tinsert(Temp, {usr,ip})
			end
			for i=1,getn(Temp) do
				sTmp = sTmp.."("..i..") User: "..Temp[i][1].."\tIP: "..Temp[i][2].." ("..i..")\r\n"
			end
			user:SendPM(sBot, sTmp)
			return 1
		end
	end
end

/NL
//NL

D-J Valhala

Done! :)
thank you to mate!
My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

nErBoS

#11
Hi,

Filling some requests...

--## Nick and IP logger 
--## Added Number to Loggers                                             
--## Requested by D-J Valhala                                        
--## Made by nErBoS                                                     
--## Command:								  
--##		+ip		- Will show the nicks and ips of all connected users 
--##		+getip 	- Will give you the ip of the nick

sBot = "IP-Logger"

arrIP = {}

--## Configuration ##--

uLaterPtokax = 0	--## If you are using ptokax 0.3.30 or higher choose 0
			--## If you are using lower versions then ptokax 0.3.3.0 choose 1 

fileIP = "ip.log"	--## This file will be created to save the users and ips

--## End of Configuration ##--

function Main()
	frmHub:RegBot(sBot)
	LoadFromFile(fileIP)
	CheckForUser()
end

function OnExit()
	SaveToFile(fileIP , arrIP , "arrIP")
end

function NewUserConnected(user)
	arrIP[user.sName] = user.sIP
end

function UserDisconnected(user)
	arrIP[user.sName] = nil
	if (uLaterPtokax == 1) then
		SaveToFile(fileIP , arrIP , "arrIP")
	end
end

OpConnected = NewUserConnected
OpDisconnected = UserDisconnected

function DataArrival(user, data)
	if (strsub(data,1,1) == "<" or strsub(data,1,5+strlen(sBot)) == "$To: "..sBot) then
		data = strsub(data,1,strlen(data)-1)
		s,e,cmd = strfind(data, "%b<>%s+(%S+)")
		if (cmd == "+ip" and user.bOperator) then
			local sTmp,count,usr,ip = "Connected User's and their IP's:\r\n\r\n",0
			for usr, ip in arrIP do
				count = count + 1
				sTmp = sTmp.."("..count..") User: "..usr.."\tIP: "..ip.." ("..count..")\r\n"
			end
			user:SendPM(sBot, sTmp)
			return 1
		elseif (cmd == "+getip" and user.bOperator) then
			local s,e,usr = strfind(data, "%b<>%s+%S+%s+(%S+)")
			if (usr == nil) then
				user:SendPM(sBot, "Syntax Error, !getip , you must write a nick.")
			elseif (GetItemByName(usr) == nil) then
				user:SendPM(sBot, "The user "..usr.." isn't online.")
			else
				user:SendPM(sBot, "The user "..GetItemByName(usr).sName.." ip is: "..GetItemByName(usr).sIP)
			end
			return 1
		end
	end
end

function CheckForUser()
	local usr,ip
	for usr, ip in arrIP do	
		if (GetItemByName(usr) == nil) then
			arrIP[usr] = nil
		end
	end
end

function Serialize(tTable, sTableName, sTab)
	assert(tTable, "tTable equals nil");
	assert(sTableName, "sTableName equals nil");

	assert(type(tTable) == "table", "tTable must be a table!");
	assert(type(sTableName) == "string", "sTableName must be a string!");

	sTab = sTab or "";
	sTmp = ""

	sTmp = sTmp..sTab..sTableName.." = {\n"

	for key, value in tTable do
		local sKey = (type(key) == "string") and format("[%q]",key) or format("[%d]",key);

		if(type(value) == "table") then
			Serialize(value, sKey, sTab.."\t");
		else
			local sValue = (type(value) == "string") and format("%q",value) or tostring(value);
			sTmp = sTmp..sTab.."\t"..sKey.." = "..sValue
		end

		sTmp = sTmp..",\n"
	end

	sTmp = sTmp..sTab.."}"
	return sTmp
end

function SaveToFile(file , table , tablename)
	writeto(file)
	write(Serialize(table, tablename))
	writeto()
end

function LoadFromFile(file)
	if (readfrom(file) ~= nil) then
		readfrom(file)
		dostring(read("*all"))
		readfrom()
	end
end

Best regards, nErBoS
--## nErBoS Spot ##--

witch

..hmmm it didn't show all ip's now  :rolleyes:



NightLitch

You are welcome trying my IP-Bot that have been around for sometime:

LINK

You can view all namnes and all ips over users.

ex.

Nick > 5 ips,  IP > 8 nicks


/NL
//NL

witch

Thanx NightLitch dude!

i will give a try...  :))



D-J Valhala

hehehe cooL mate :) work perfect  :D
My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

nErBoS

#16
Hi,

Quote..hmmm it didn't show all ip's now

Try to delete the old ip.log and restart the Hub. Made also a little fix in the last script.

Best regards, nErBoS
--## nErBoS Spot ##--

witch

Done! Works fine!

Thanx nErBoS dude  :)



D-J Valhala

hehe
nErBoS = The BEST Scripter in the world :P
make all my hub bot's perfect :)
ahh BTW nErBoS please let me know if you find your server :P
My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

nErBoS

#19
Hi,

It will be hard, but thanks for the help :)

Best regards, nErBoS
--## nErBoS Spot ##--

D-J Valhala

i hope you will be the best :) coz for me you are the best! :D
My PsyIsrael Network
==================
--=[PsyIsrael DC Hub]=--
--=[PsyIsrael Website]=--
==================

SMF spam blocked by CleanTalk