Onlinestatus einer Region auf Webseite anzeigen - Geht das?

Kxirya Weytana
Kxirya Weytana
Huhu und Moinsen,

ich bin mal wieder am "üben" XD

Ich möchte auf einer Webseite, die auf unserem Webserver liegt, auf dem auch unsere "Pangea" Region läuft, deren Onlinestatus anzeigen. So sehen Besucher der Seite (die ich gerade noch baue), ob z.B. Wartungsarbeiten anstehen.
Nett wäre außerdem, wenn ich dort auch die Anzahl der gerade auf der Region befindlichen Avatare anzeigen könnte (keine Namen, etc.). Es reicht "8 User online" oder so.

PS.: Ich kann noch nicht sehr gut PHP, lerne aber fleißig. Daher falls möglich und nötig, bitte etwas "Starthilfe" in Form von Kommentaren.


Lieben Dank im Voraus,

Kxìrya Weytana [Pangea]
«1

Comments

  • Piper
    Piper
     Member CreativeGroup

    Huhu Kxirya,

    deine Wünsche lassen sich bei einem eigenen kleinen Grid über den ROBUST regeln .. VIA

    kleinen Helferlein von Manni ..

    siehe...  https://github.com/wp2opensim/openSIMULATOR-snippets-PHP7


    Beste Grüße

    Piper :)

  • Pius Noel
    Pius Noel
     Moderator edited February 26
    Idee: im SL habe ich mal etwas mit einem Script mit http_request gemacht. Das hat dort funktioniert.
    default {
        state_entry() {
            llRequestURL();
        }
     
        http_request(key id, string method, string body) {
            if (method == URL_REQUEST_GRANTED) {
                llSay(0,"URL: " + body);
            } else if (method == URL_REQUEST_DENIED) {
                llSay(0, "Something went wrong, no url. " + body);
            } else if (method == "GET") {
                llHTTPResponse(id,200, (string) llGetRegionAgentCount());
            } else {
                llHTTPResponse(id,405,"Unsupported Method");
            }
        }
    }
    Beim Speichern oder einem Reset des Scripts wird eine URL ausgegeben, die dann z.B in folgender Art (im Beispiel unter Linux mit curl) abgefragt werden kann: 

    curl http://sim9821.agni.lindenlab.com:12046/cap/775d74c6-ab3b-e7af-8cdf-9909e41596dd

    Jetzt habe ich das gleiche hier probiert, aber es hat leider NICHT funktioniert.
    1. sieht die URL anders aus :  http://127.0.0.1:9006/lslhttp/e25eefb3-1ac2-4b83-a4b4-c715ace03be1/
    2. bekomme ich eine html-Seite mit einem 404, Page not found Fehler zurück.

    Ich weiss nicht ob es sich um ein Konfigurationsproblem handelt oder ob http_request im Opensim nicht unterstützt ist. 

    Was php anbelangt, da kann ich leider (noch) gar nicht behilflich sein. Aber ich habe mich erst vor Kurzem für einen deutschsprachigen PHP-Kurs auf Udemy eingeschrieben, unter anderm da jemand im familiären Umfeld eine Web-Site hat, die von PHP 5 auf PHP 7 migriert werden muss. Die Basics, etwa 1/3 im Kurs, bin ich durch, aber aus Zeitmangel bin ich nicht weitergekommen und ich befürchte, dass ich nächstes Mal wenn ich Zeit finde schon wieder die Hälfte vergessen hab... (seufz)

    LG Pius
  • Pius Noel
    Pius Noel
     Moderator edited February 26
    grrrr..., dieses Code Format treibt mich noch zum Wahnsinn... es schmeisst mir immer die Zeilen durcheinander. Ich hoffe ihr könnt es trotzdem lesen.
  • Kxirya Weytana
    Kxirya Weytana
     Member edited February 26
    Huhu zusammen,

    @ Piper: Genau DAS hatte ich befürchtet. Aber Grid, nee....

    @Pius: Damit spiele ich mal etwas rum. Mal sehen, vielleicht klappt´s ja. Auch ´n blindes Huhn trinkt ja bekanntlich mal ´n Korn XD

    BTW: httprequest wird unterstützt. Der Fehler dürfte in der URL liegen, da diese auf den Lokalhost (127.0.0.1) verweist, was über´s Netz schlecht geht. Was PHP angeht, bist Du deutlich weiter, als ich XD
  • Genie Fegte
    Genie Fegte
     Member
    Das ganze müsste über Ping realisierbar sein.
    Das PHP Skript muss dann eine Pinganfrage an den Simulator selbst schicken ( URL:HTTP_Listener_Port)
  • Night Raven
    Night Raven
     Member
    Oder einfach per php schauen ob  der Port der Sim offen ist. mit fsockopen
  • Pius Noel
    Pius Noel
     Moderator
    Mit den Lösungen von Genie Fegte und Night Raven lässt sich der Ping bestimmt realisieren, aber nicht wieviele User auf der Sim sind. Wie weit diese http_request Scripte Lag verursachen weiss ich nicht.

  • Pius Noel
    Pius Noel
     Moderator
    Vielleicht ist es die Variable  ExternalHostNameForLSL in der OpenSim.ini, die für den http_request zuständig ist. Die ist bei mir auf 127.0.0.1 gesetzt.
  • Gubbly
    Gubbly
     Member
    Ausführliche Daten was gerade auf einer Region los ist bekommt ihr unter http://marco.center:9000/jsonSimStats/ (host und port anpassen) und unter http://marco.center:9000/simstatus/ bekommt ihr ein "ok" wenn die region online ist. Manfred hat dazu auch einmal eine grafische Seite erstellt. ( http://marco.center:9000 ). Hab dazu die Quelle nicht mehr kann aber einfach kopiert werden.
    Thanked by: Pius Noel
  • Pius Noel
    Pius Noel
     Moderator
    Coole Sache, Gubbly. Das kannte ich (noch) nicht. Gleich mal testen ;)
  • Christoph Balhaus
    Christoph Balhaus
     Member edited February 27
    Ich frage die Daten mit http://g1.h24g.com:9001/ManagedStats/?cat=scene&stat=RootAgents ab. Das liefert auch Daten der einzelnen Regionen, muss aber im OpenSim.ini konfiguriert werden:
    [Startup]
       ManagedStatsRemoteFetchURI=ManagedStats

    /Chris


    Edit: Jetzt ist der Link richtig

  • Kxirya Weytana
    Kxirya Weytana
     Member
    Lieben Dank Euch alle. Ich denke, damit kann ich mal etwas spielen XD

    Kxìrya Weytana
  • Manfred Aabye
    Manfred Aabye
     Member edited March 2

    OpenSimulator Statistik Informationen



    https://github.com/wp2opensim/openSimulator-Stats


  • Kxirya Weytana
    Kxirya Weytana
     Member
    Sorry, ich muss nochmal 'doof' nachfragen...

    In der Beschreibung, bzw. der HTML Seite steht:
    Edit OpenSim.ini und füge folgendes ein:
     ; Simulator Stats URI
     ; Enable JSON simulator data by setting a URI name (case sensitive)
     Stats_URI = "jsonSimStats"
    Nur in welcher Kategorie muss man das einfügen?
    STARTUP?

    KxIrya te Weytana Nllteya'ite


  • Night Raven
    Night Raven
     Member
    Unter 
    [Startup]
    Stats_URI = "jsonSimStats"
Sign In or Register to comment.

Welcome

It looks like you're new here. If you want to get involved, click one of these buttons!

Discussions

© Copyright 2018 - Metropolis Metaversum
All times are GMT