xzaz Posted October 27, 2007 Share Posted October 27, 2007 expandcollapse popup#include <GUIConstants.au3> #Include <GuiList.au3> #include <Array.au3> Opt("GUICoordMode", 1) Opt("GuiOnEventMode",1) Opt("TCPTimeout",100) ;Setting the vars $Line = 0 $waittime = 5 ;Howmuch ms for refresh resv $SA_login = 0 $Disconnect = 1 ;Globals Global $recvwin,$begin,$SA_login,$socket,$IP,$Port,$serverlist,$Disconnect,$Array2 Global $GUI1,$GUI2 ;Startup the TCP/UDP ;Create GUI $GUI1 = GUICreate("Teamspeak",580,300) GUICtrlCreateLabel("Consol line:",10,8) $input = GUICtrlCreateInput("",100,5,200,25) GUICtrlSetState(-1,$GUI_FOCUS) $recvwin = GUICtrlCreateEdit("",10,30,400,255) $butt = GUICtrlCreateButton("Send",310,5,80,20) GUICtrlSetState(-1,$GUI_DEFBUTTON) $butt_reset = GUICtrlCreateButton("Reset",400,5,80,20) $butt_SAlogin = GUICtrlCreateButton("SA login",490,5,80,20) $IP = GuiCtrlCreateInput("10.0.0.3",415,240,70) $Port = GuiCtrlCreateInput("51234",490,240,45) $butt_Connect = GUICtrlCreateButton("Connect",415,265,80,20) $butt_DisConnect = GUICtrlCreateButton("Disconnect",500,265,80,20) $butt_fs = GUICtrlCreateButton("Find servers",415,75,80,20) $listview = GUICtrlCreateCombo ("",415,30,157) GUICtrlSetData(-1,"Help|Player list|Channel list|Version|Global information|Server information|Message to server|Message to user|(SA)Send Message (all servers)|Login to server", "") $serverlist = GUICtrlCreateCombo ("",415,50,157) GUICtrlSetState($input,$GUI_DISABLE) GUICtrlSetData($input,"Not connected to server") GUICtrlSetState($recvwin,$GUI_DISABLE) GUICtrlSetState($butt,$GUI_DISABLE) GUICtrlSetState($butt_SAlogin,$GUI_DISABLE) GUICtrlSetState($butt_reset,$GUI_DISABLE) GUICtrlSetState($butt_fs,$GUI_DISABLE) GUICtrlSetState($listview,$GUI_DISABLE) GUICtrlSetState($serverlist,$GUI_DISABLE) GUISetOnEvent($GUI_EVENT_CLOSE, 'quit') GUICtrlSetOnEvent($butt_DisConnect, 'disconnect') GUICtrlSetOnEvent($butt_Connect, 'connect') GUICtrlSetOnEvent($butt_fs, 'findservers') GUICtrlSetOnEvent($butt, 'sending') GUICtrlSetOnEvent($butt_reset, 'reset') GUICtrlSetOnEvent($butt_SAlogin, 'LoginSA') GUICtrlSetOnEvent($listview, 'listview') GUICtrlSetOnEvent($serverlist, 'serverlist') GUISetBkColor(0xA3A3CB) GUISetState(@SW_SHOW,$GUI1) ;Begin check every x seconds for new output $begin = TimerInit() #Region Loop ;begin loop While 1 Sleep(100) ;Check the differentce $dif = TimerDiff($begin) if $disconnect = 1 Then Else if $dif > $waittime Then recv() ;begin reset $begin = TimerInit() EndIf EndIf ;End Loop Wend #EndRegion End Loop #Region Functions func serverlist() $serverselect = GUICtrlRead($serverlist) SetConsole("Login on TS server: "&$serverselect) sending_list("sel "&$serverselect) EndFunc func listview() $data_list = GUICtrlRead($listview) Select Case $data_list = "Version" sending_list("ver") Case $data_list = "Channel list" sending_list("cl") Case $data_list = "Server information" sending_list("si") Case $data_list = "Global information" sending_list("gi") Case $data_list = "Player list" GUI2() Case $data_list = "Help" sending_list("Help") Case $data_list = "(SA)Send Message (all servers)" $msg_send = InpuTBox("Message to all servers","Typ the message to be send") sending("msgall "&$msg_send) EndSelect EndFunc func LoginSA() $SAinfo = InputBox("Login SA","<Username> <password> " & @CRLF &" Example: Jhon Myserverpass","","*") TCPSend($socket,"slogin " & $SAinfo & @CRLF) EndFunc func reset() GUICtrlSetData($recvwin,"") EndFunc func findservers() Sleep(300) $disconnect = 1 SplashTextOn("Getting serverlist","Finding server list....",200,25,-1,-1,0,"",10) TCPSend($socket,"sl" & @CRLF) Sleep(300) $recv = TCPRecv($socket, 100000) $Array = StringSplit($recv,@CRLF) _ArraySort( $Array,1,1) _ArrayDelete($Array,0) _ArrayDelete($Array,0) $rules = UBound($array)-1 for $i=$rules to 0 step -1 if $Array[$i]= "" then _ArrayDelete($Array,$i) Else GuiCtrlSetData($Serverlist,$Array[$i],$Array[0]) EndIf Next $disconnect = 0 SplashOff() EndFunc func connect() TCPStartUp() SetConsole("Connecting to:" &GUICtrlRead($IP)&":"&GUICtrlRead($Port)) $socket = TCPConnect( GUICtrlRead($IP), GUICtrlRead($Port)) recv() If $socket = -1 Then SetConsole("Error! No TeamSpeak server found") Else GUICtrlSetState($input,$GUI_ENABLE) GUICtrlSetData($input,"Type: 'Help' for commands") GUICtrlSetState($recvwin,$GUI_ENABLE) GUICtrlSetState($butt,$GUI_ENABLE) GUICtrlSetState($butt_SAlogin,$GUI_ENABLE) GUICtrlSetState($butt_reset,$GUI_ENABLE) GUICtrlSetState($butt_fs,$GUI_ENABLE) GUICtrlSetState($listview,$GUI_ENABLE) GUICtrlSetState($serverlist,$GUI_ENABLE) $load_vservers = msgBox(4,"Question","Do you want to load the virtual servers?") if $load_vservers == 6 Then findservers() endIf EndIf $disconnect = 0 EndFunc func disconnect() sending("quit") TCPShutdown ( ) TCPCloseSocket($socket) SetConsole("Disconnected") GUICtrlSetState($input,$GUI_DISABLE) GUICtrlSetData($input,"Not connected to teamspeak server") GUICtrlSetState($recvwin,$GUI_DISABLE) GUICtrlSetState($butt,$GUI_DISABLE) GUICtrlSetState($butt_SAlogin,$GUI_DISABLE) GUICtrlSetState($butt_reset,$GUI_DISABLE) GUICtrlSetState($butt_fs,$GUI_DISABLE) GUICtrlSetState($listview,$GUI_DISABLE) GUICtrlSetState($serverlist,$GUI_DISABLE) $Disconnect = 1 EndFunc Func SetConsole($Text) $Line = $Line + 1 GUICtrlSetData ($recvwin, $Text & @CRLF, $Line) EndFunc Func recv() _GUICtrlListClear ($recvwin) $recv = TCPRecv($socket, 100000) if $recv <> "" Then SetConsole($recv) EndIf EndFunc func sending($send_data) $send_data = GUICtrlRead($input) TCPSend($socket,$send_data & @CRLF) EndFunc func sending_list($send_data) TCPSend($socket,$send_data & @CRLF) EndFunc func GUI2() $GUI2 = GUICreate("Test",300,300) $okbutton = GUICtrlCreateButton("close",5,5) $findusers = GUICtrlCreateButton("Find",30,30) GUICtrlSetOnEvent($okbutton, "close_window") GUICtrlSetOnEvent($findusers, "findusers") GuiSetState(@SW_SHOW,$GUI2) EndFunc func findusers() TCPSend($socket,"pl" & @CRLF) Sleep(300) $recv = TCPRecv($socket, 100000) $Array2 = StringSplit($recv,@CRLF) _ArraySort( $Array2,1,1) _ArrayDelete($Array2,0) _ArrayDelete($Array2,0) _ArrayDelete($Array2,0) $rules = UBound($array2)-1 for $i=$rules to 0 step -1 if $Array2[$i] = "" Then _ArrayDelete($Array2,$i) Endif Next $lines = Ubound($Array2) -1 msgBox(0,"Lines",$lines) _ArrayDisplay($Array2,"test") Local $Info[UBound($Array2)-1] For $x = 0 To $lines msgBox(0,"|Test",$Array2[$x]) $Split = StringSplit($Array2[$x], '""',1) if isarray($Split) and UBound($Split)>2 then $Info[$x]=$Split[2] Next _ArrayDisplay($Info, "Test for $Info") endFunc func close_window() GUIDelete($GUI2) EndFunc Func quit() Switch @GUI_WinHandle Case $GUI1 Exit Case $GUI2 GUIDelete($sub) EndSwitch EndFunc func msg($zeg) msgBox(0,"Test",$zeg) Endfunc #EndRegion End Functions Small program to control your TS server. I use it sometimes, but it aint finished. So do wat you want to do with it Small Color Picker v0.2 | Travian bot Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now