AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke teamspeak server online benutzer ermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

teamspeak server online benutzer ermitteln

Ein Thema von lbccaleb · begonnen am 14. Nov 2007 · letzter Beitrag vom 17. Nov 2007
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#1

teamspeak server online benutzer ermitteln

  Alt 14. Nov 2007, 18:38
hy there,

gibt es eine möglichkeit, von einem teamspeak server die momentan angemeldeten benutzer zu ermitteln?? wenn ja wie?? hat da jemand vllt nen kleinen code oder so?? es würde auch schon reichen wenn ich erstmal raus bekomme ob überhaupt noch jemand auf dem server eingeloggt ist oder nicht...

danke für eure hilfe mfg caleb
Martin
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: teamspeak server online benutzer ermitteln

  Alt 15. Nov 2007, 18:02
sorry muss mal pushen... ich komm da echt nicht weiter wie bekomm ich nur ermittelt ob noch welche on sind oder nicht??
Martin
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#3

Re: teamspeak server online benutzer ermitteln

  Alt 15. Nov 2007, 18:06
Es gibt ein PHP Script, das nennt sich TSViewer. Das zeigt alle Channels und die User in den Channels an. Die gleiche Methode die der TS Viewer nutzt kannst Du auch verwenden.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.415 Beiträge
 
Delphi XE5 Professional
 
#4

Re: teamspeak server online benutzer ermitteln

  Alt 15. Nov 2007, 18:06
hast 2 möglichkeiten
a) über die DLL die beiliegt bei client inkl. Pas-Beispiel
b) über den TCP Managementport - siehe Server Doku
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: teamspeak server online benutzer ermitteln

  Alt 15. Nov 2007, 19:11
joa danke ich denk mal das wird mir schon weiter helfen...
Martin
  Mit Zitat antworten Zitat
cyxcyx

Registriert seit: 16. Nov 2007
6 Beiträge
 
#6

Re: teamspeak server online benutzer ermitteln

  Alt 16. Nov 2007, 16:56
Sers @ all!

Es wird benötigt:
  • 1x TIdTCPClient
  • 1x TListBox
  • 1x TButton


Delphi-Code + erklärung:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  PlayerID, PlayerName: String;
  EOfRead: Boolean; //End Of Read
  aLine: String;
  I: Integer;
begin
  with IdTCPClient1 do
  begin
    Host := '127.0.0.1'; //Server IP-Adresse
    Port := 51234; //Server TCP-Port
    Connect(); //Verbindung herstellen

    if (Connected) then //Verbindung erfolgreich aufgebaut, dann...
    begin
      aLine := ReadLn; //1. Zeile aus dem Buffer holen
      if not (aLine = '[TS]') then //Wenn die erste Zeile nicht "[TS]" ist dann
      begin
        Disconnect(); //Disconnecten vom Server
        MessageDlg('Kein TeamSpeak 2 Server', //Fehler meldung zeigen
                   mtError,[mbOK],0);
        Exit; //Procedure beenden
      end;

      WriteLn('SEL 8767'); //Server auswählen, "SEL " + UDP Port
      aLine := ReadLn; //Zeile aus dem Buffer holen
      if not (aLine = 'OK') then //Wenn Server nicht ausgwählt werden kann, dann...
      begin
        Disconnect(); //Disconnecten vom Server
        MessageDlg('UDP-Port Falsch!', //Fehler meldung zeigen
                   mtError,[mbOK],0);
        Exit; //Procedure beenden
      end;

      WriteLn('PL'); //Player Liste anfordern!
      EOfRead := False; //Ende der Repeat schleife = False
      repeat
        aLine := ReadLn; //Nächste Zeile aus dem Buffer
        if (aLine[1] +
            aLine[2] +
            aLine[3] +
            aLine[4] = 'p_id') then aLine := ReadLn; //Wenn die erste Zeile p_id ist dann
                                                                       //MUSS nochmal eine Zeile ausgelesen werden!!

        if (UpperCase(aLine[1] +
                      aLine[2] +
                      aLine[3] +
                      aLine[4] +
                      aLine[5]) = 'ERROR') or (aLine = 'OK') then
                      EOfRead := True // Wenn niemand auf dem Server ist wird direkt nach p_id,
                                                                       //"error" oder "OK" ausgegeben, damit die App nicht abstürzt MUSS dies auch sein!
        else begin
          PlayerID := aLine; //Sollte einleuchtend sein
          Delete(PlayerID,Pos(#9,PlayerID),Length(PlayerID)); //Die "ID" vom rest trennen

          PlayerName := aLine;
          for I := 1 to 3 do Delete(PlayerName,1,Pos('"',PlayerName)); //Dies muss 3x durch geführt werden weil als erstes die IP ausgegeben wird, dann erst der Name!
          Delete(PlayerName,Pos('"',PlayerName),Length(PlayerName)); //Ab dem nächsten " den rest löschen!

          ListBox1.Items.Add(PlayerID + ' ' + PlayerName); //ID und Name in die ListBox eintragen!
        end;
        Application.ProcessMessages; //Alle nachrichten verarbeiten
      until (EOfRead) or (ReadLnTimedOut); //Auf EOfRead = True oder ReadLnTimedOut = True warten
    end;
    Disconnect(); //Verbindung Trennen
  end;
end;
Mit freundlichen Grüßen, Andre
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: teamspeak server online benutzer ermitteln

  Alt 16. Nov 2007, 17:11
aha, danke dafür, nur was ist tidtcpclient??? wp bekomm ich die komponente her??

mfg
Martin
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#8

Re: teamspeak server online benutzer ermitteln

  Alt 16. Nov 2007, 17:16
Zitat von lbccaleb:
aha, danke dafür, nur was ist tidtcpclient??? wp bekomm ich die komponente her?? ...
Das ist von den Indys. Wenn Du sie nicht hast solltest Du sie hier bekommen.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: teamspeak server online benutzer ermitteln

  Alt 16. Nov 2007, 17:32
ok danke, das hab cih auch hinnbekommen, und wenn ich jetzt aber auf meinen server connecten will, dann kommt eine fehler message mit dem fehlertext:

---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EIdSocketError with message 'Socket Error # 10060
Connection timed out.'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------


woran könnte es liegen das er keine verbindung zum server auf baut, ich bin mit meinem tsclient auch auf dem server eingeloggt, könnte es daran liegen??
Martin
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#10

Re: teamspeak server online benutzer ermitteln

  Alt 16. Nov 2007, 17:43
Und wo bleibt der Debugger stehen?
Du hast Server-Adresse und Port schon für Deinen TS-Server angepasst, oder?
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz