Anmelden Register

Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
ConnectionCounter
#1
Ich habs mit Kromo mal darüber gehabt, oben rechts auf uhuc.de eine kleine Tabelle zu machen, die die Anzahl der gerade verbundenen Usern für #uhuc, mumble und minecraft anzeigt.

Ich hab hier jetzt 2 kleine Skripte gebastelt, die für Minecraft und Mumble funktionieren sollten (hab sie noch nicht richtig getestet). Für den IRC-Counter müsste ein Bot oder so die Anzahl der User im Channel auslesen.

Funktionsweise:
Der Server ermittelt die Anzahl der TCP-Verbindungen am $port und schreibt diese in ein File. Das File sollte hierbei über HTTP(s) öffentlich zugänglich sein.

Der Client liest die Config aus und läd sich die Informationen herunter. Diese schreibt gebündelt in ein File, welches zb via PHP oder so ausgelesen und in die HP eingefügt werden kann.

Server:
Code:
#!/bin/sh
# Version 0.1
anzahl=0
port=80
file=/tmp/anzahl.txt

anzahl=$(netstat -tn | grep -i ${port} | grep ESTABLISHED | wc -l)
anzahl > file

Client:
Code:
#!/usr/bin/python2
# -*- coding: utf-8 -*-
# Version: 0.1
import os
import sys
import urllib2

path="pfadZurConfig"
outputfile="pfadZumOutput"

# Liest die config
temp = open(path, "r")
config = {}
for line in temp:
    config[ line.split(";")[0] ] = line.split(";")[1]
temp.close()

o = ""
for key in config:
    response = urllib2.urlopen(config[key])
    anzahl = response.read()
    o = key+";"+anzahl+"\n"

f = open('/anyfile','w')
f.write(o)
f.close()

Das Format der Config: name;url\n
Das Format des Outputfiles: name;anzahl\n

Bei Änderungen am Code bitte das komplette Programm (Server und/oder Client) posten.
#2
Wenn ich mich richtig erinnere, hatten wir eine API mit der man die User in einem Channel anzeigen konnte. Muss da aber v2px fragen, wenn er mal wieder online ist, weil ich keine Ahnung habe, ob es die ueberhaupt noch gibt. :D
#3
Da ja zumindest die MC-bezogenen Daten auf meinem Server gesammelt werden, wäre ich verlockt einfach die gesamte mc.uhuc.de-Seite auf FCGI umzustellen und die Api dann in den entsprechenden Daemon zu integrieren (Abruf dann selbstverständlich per https und evtl. in mc.uhuc.de eingebunden?)
#4
(09.06.2012, 16:50)Greg10 schrieb: Da ja zumindest die MC-bezogenen Daten auf meinem Server gesammelt werden, wäre ich verlockt einfach die gesamte mc.uhuc.de-Seite auf FCGI umzustellen und die Api dann in den entsprechenden Daemon zu integrieren (Abruf dann selbstverständlich per https und evtl. in mc.uhuc.de eingebunden?)

Cool wäre es schon, wenn man es direkt auf der MC Seite sehen könnte, wie viele Online sind *.*
Wenn man keine Ahnung hat, einfach mal Fresse halten!
#5
Okay, also die Chaninfos kann man jetzt wieder per Web abrufen, der statsserver war nicht gelinkt...

Zu finden sind die hier: http://stats.jdqirc.net/modules.php?name...&chan=uhuc

Ist eine Zeile, "Username<br />Username2<br />" etc.
Braucht man also nur ein kleines Script das die zaehlt, oder wie ihr das haben wollt. :)
#6
Kann man die auch als XML oder json String ab rufen? Das würde die ganze Spielerei sehr viel einfacher und schneller machen und ich brauch nicht mit einem DOM Parser dran gehen.
Wenn man keine Ahnung hat, einfach mal Fresse halten!
#7
Kann man die auch als XML oder json String ab rufen? Das würde die ganze Spielerei sehr viel einfacher und schneller machen und ich brauch nicht mit einem DOM Parser dran gehen.
Wenn man keine Ahnung hat, einfach mal Fresse halten!
#8
Mann müsste doch dort nur die Anzahl von "<br />"+1 herausfinden.
#9
Zitat:Kann man die auch als XML oder json String ab rufen?

Theoretisch waere das wohl moeglich, aber da ist kein HTML drumrum und wie CyD gesagt hat, du musst nur die <br />'s zaehlen (nicht +1, ist immer eins pro User), da muss nichts geparst werden.
Urspruenglich hatten wir das glaube ich mal, um es direkt auf der Webseite einzubinden, darum sind da keine <html><body> tags und so mit drin.
#10
Hoppla.. hab ich wohl das letzte <br> übersehen :-D




Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste