Pingservice

  • Hallo zusammen,


    in unserem IRC Channel #nc-kunden ist seit einiger Zeit ein neuer (von mir entwickelter) Bot zu Gast. Diesem Bot würde ich gerne die Funktion geben, Pings auszuführen. Das soll über eine auf PHP und dem Shell Befehl "ping" basierte API laufen.


    Das ganze soll als IcmpApi aufgespannt werden. Es soll also nicht nur bei Ping bleiben. Die Implementierung von Traceroute und anderen Features wäre auch denkbar. Auch sollen mehrere Formate lieferbar sein. Angedacht sind bisher XML und JSON.


    Das fertige API Script würde mit einem geheimen API Schlüssel gesichert werden, sodass nur diejenigen welche den Schlüssel kennen die API auch nutzen können. Auch wird das API Script auf Github veröffentlicht, sodass jeder sich den Code anschauen kann.


    Ich habe bereits einen Server hier bei netcup und einen in den Niederlanden. Wäre jemand bereit seinen Server (muss natürlich ein anderer Standort sein) zur Verfügung zu stellen?


    Folgendes würde ich benötigen:

    • VServer oder dedicated Server, KEIN Webhosting!
    • Gerne auch an einem privaten DSL/Kabel Anschluss
    • Webserver (welcher ist egal)
    • PHP >=5.4
    • Zugriff auf /bin/ping
    • Zugriff auf die PHP Funktion shell_exec()
    • max_execution_time von mindestens 60 Sekunden
    • Am besten natürlich als FastCGI mit einem eingeschränkten Benutzer


    Man müsste sich dann noch über die Update Politik einigen. Schön wäre natürlich ein FTP(S) Zugriff für mich, aber das ist wohl eine Vertrauensfrage die jeder für sich selbst Entscheide muss.


    Viele Grüße
    Christian

  • Kritik nehme ich immer gerne an. :)


    PHP weil es nunmal das Ziel ist, von mehreren Server Standorten aus Pings zu senden und die Ergebnisse dann zu vergleichen und einen Report im IRC zu posten. Ich brauche also eine API. Da liegt PHP nahe, weil dies auf so gut wie jedem Webserver bereits installiert ist.


    Da hilft also auch TCL nicht, wenn der Ping von einem ganz anderen Server gesendet wird.


    Es stimmt, es gibt massenweise solche Services. Allerdings sind die wenigsten als API kostenfrei Verfügbar. Ich nenne als Beispiel Pingdom, wo ein Account schon recht teuer ist.


    Solltest Du einen Dienst mit einer guten API und mehreren Serverstandorten kennen der das kann was ich vor habe, nur raus damit. :)


    dergeberl
    Danke Dir, komme ich drauf zurück wenn soweit alles steht. :)

  • Der erste Entwurf der API ist fertig.


    Ausgabe als JSON: