eigener Serverdienst?



  • Ich hab mal eine kleine allgemeine Frage, wenn ich auf einem Server ein Programm schreiben will, dass zB eine x minuten von einer exteren Seite Temepraturen holt und die dann in einer Datenbank gespeichert werden und dann über meine Domain verfügbar sind, wie stelle ich das am besten an und geht das..

    Bin über jeden Tipp, Buch Link sonstige Anregung dankbar

    Schon mal Danke Daniel





  • ok danke für deinen Hinweis aber das ist nicht was ich meine das mit dem Wetter war nur ein Beispiel, es soll ein "Dienst" auf dem Server laufen zum Beispiel der schaut ist in Hong Kong 20 Grad, wenn ja schreib eine Nachricht auf Twitter..., wenn nein schau weiter....



  • Was genau willst Du machen?
    Wenn in Hongkong mehr als 20 Grad, fuehre rm -rf aus?
    Wenn es nur um die Wetterabfrage geht, dann kannst Du das sicher verwenden:

    <?php
    
    $api = "http://www.google.com/ig/api?weather=buesum&hl=de";
    $data = file_get_contents($api);
    $data = utf8_encode($data);
    $wetter = simplexml_load_string($data);
    
    echo utf8_decode($wetter->weather->current_conditions->condition->attributes()->data);
    echo " , die Vorhersage für Heute sagt ".lcfirst(utf8_decode($wetter->weather->forecast_conditions[0]->condition->attributes()->data))." voraus.";
    echo "<br>Die Temperatur beträgt im Moment: ".$wetter->weather->current_conditions->temp_c->attributes()->data." °C ";
    Echo "als tiefste Temperatur wird ". $wetter->weather->forecast_conditions[0]->low->attributes()->data." °C ";
    Echo " als höchste Temperatur ". $wetter->weather->forecast_conditions[0]->high->attributes()->data." °C erwartet, ";
    echo "Luft".strtolower(utf8_decode($wetter->weather->current_conditions->humidity->attributes()->data));
    echo " ".$wetter->weather->current_conditions->wind_condition->attributes()->data;
         function lcfirst( $str ) {
            $str[0] = strtolower($str[0]);
            return (string)$str;
        }
    
    ?>
    

    Wenn es was anderes sein soll, poste mal mehr Informationen.



  • deine code würde nur funktionieren wenn ich die seite aufrufe (wenn ich mich nicht irre) bei soll der Dienst aber auf dem Server 24h laufen und egal ob einer die Seite aufruft checken ob in Hong Kong 20 Grad sind und wenn das so ist eben zB einen twitter post schreiben, es geht nur um den tricker teil listen until something happend



  • DanielR schrieb:

    deine code würde nur funktionieren wenn ich die seite aufrufe (wenn ich mich nicht irre) bei soll der Dienst aber auf dem Server 24h laufen und egal ob einer die Seite aufruft checken ob in Hong Kong 20 Grad sind und wenn das so ist eben zB einen twitter post schreiben, es geht nur um den tricker teil listen until something happend

    while(!exit_by_some_means)
    {
       s = get_hongkong_temp();
       if(s >= 20)
          post_twitter_warning(s);
       wait_5_minutes();
    }
    


  • Wenn ich Dich recht verstehe willst Du sowas machen:

    - pruefen ob in HK mehr als 20 Grad sind
    - wenn ja, logge Dich in Twitter ein und poste Deine aufsehenserregende Meldung in die Welt
    - ausloggen
    


  • ok den "code" würde ich einmal mit dem aufruf der seite starten, aber wenn der pc aus ist läuft das so doch bestimmt auf dem server nicht weiter oder?



  • @ivo ja, im prinzip schon aber der dienst soll nur auf dem server laufen unabhängig von der darzustellenden website



  • Das Google-Stichwort ist "cronjob"



  • geht so etwas nur mit cronjobs oder auch anders?



  • cronjobs sind die ueblichste Art dafuer zu sorgen, dass ein Programm/Skript alle x Minuten ausgefuehrt wird. Natuerlich gibts auch andere Varianten. Spontan faellt mir noch ein:

    du koenntest ein Programm, wie's schon vorgeschlagen wurde (Endlosschleife, die deine Aktion ausfuehrt und sich dann x Minuten schlafen legt) einfach innerhalb eines screen ( http://de.wikipedia.org/wiki/GNU_Screen ) ausfuehren oder mittels `nohup` (siehe manpage dazu) starten.



  • Cron ist eine Loesung, auch wenn mir der Sinn hinter der ganzen Sachen nicht so ganz klar ist.
    Ein weiterer Twitterspammer der das Wetter, oder von mir auch Aktiennews, von irgendwelchen Seiten liest und postet? Klingt irgendwie nach einen BOT:

    - frage irgendwelche Daten von einen definierten Seite ab
    - poste die Daten in einen oeffentlichen Forum
    


  • vielen Dank für eurer Bemühungen...


Anmelden zum Antworten