Die Neiße bei Zittau twittert

Screen shot 2010-02-10 at 11.53.05
Das In­ter­net der Dinge ist seit der twit­tern­den To­ma­ten­pflanze ein Stück weit nä­her ge­rückt. Wenn nun also auch ein Fluss wie die Neiße sei­nen Pe­gel und u.U. den Hoch­was­ser­stand an­fängt zu twit­tern, dann ist das nur eine lo­gi­sche Kon­se­quenz be­reit­ste­hen­der Tech­no­lo­gien. Mit nur 50 Zei­len Code plät­schert die In­for­ma­tion in ei­nem Daten­for­mat da­her, was so­wohl in an­de­ren Kon­texte in­te­griert und ag­gre­giert wer­den kann. Nun also auch als Nach­rich­ten Feed (RSS) zum Abon­ne­ment be­reit steht. Von ei­nem Hoch­was­ser­warn­sys­tem zu spre­chen, wäre über­trie­ben, da die An­wen­dung die Da­ten nur al­ler vier Stun­den ak­tua­li­siert und twit­ter nicht sel­ten un­ter der Last der An­fra­gen zusammenbricht.

Viele Fra­gen sich nach dem Nut­zen von Twit­ter und wis­sen selbst nichts da­mit an­zu­fan­gen. Ich denke ge­rade in der Ver­füg­bar­ma­chung von Echt­zeit­da­ten­strö­men, wie dem Was­ser­stand der Neiße, liegt ein bis­lang noch un­ge­nutz­tes Po­ten­tial von twit­ter & Co. Wohl­ge­merkt braucht es kei­nen zen­tra­len An­bie­ter wie twit­ter, um Um­welt­da­ten o.ä. als RSS anzubieten.

Posted by nise | Filed in Tech | 1 Comment »Share this on del.icio.us Digg this! Share this on Facebook Share this on Technorati Tweet This!

Tags: , , , , ,


One Response to “Die Neiße bei Zittau twittert”

  1. Niels Seidel Says:

    $url = 'http://www.umwelt.sachsen.de/de/wu/umwelt/lfug/lfug-internet/hwz/inhalt_re.html';
    $file = './data.txt';
    $twitter_url = "http://twitter.com/statuses/update.xml";
    $user­Name = '_your_account_name_';
    $pass­word = '_password_';
    // check whe­ter time dif­fe­rence is grea­ter then 4 hours
    if((time() - file_get_contents($file, FILE_USE_INCLUDE_PATH)) > 14400){
    // init curl ses­sion
    $ses­sion = curl_init($url);
    curl_setopt($session, CURLOPT_HEADER, false);
    curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
    $xml = curl_exec($session);
    curl_close($session);
    // ex­plode string date
    $a = explode(',',strstr($xml, 'Zit­tau'));
    $b = explode("'",$a[3]);
    // check if there is high wa­ter or not
    if((int)$b < 320){
    $out = 'In der Neisse bei Zit­tau steht das Was­ser '.$b[1].'cm hoch.';
    }else{
    $out = 'Die Neisse führt Hoch­was­ser bei ei­nem Pe­gel­stand von '.$b[1].'cm.';
    }
    // twit­ter all that

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
    curl_setopt($ch, CURLOPT_USERPWD, "$userName:$password");
    curl_setopt($ch, CURLOPT_URL, $twitter_url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,"status=".urlencode(stripslashes(urldecode($out))));
    curl_exec ($ch);
    curl_close ($ch);

    // set time stamp to avoid over fre­quent tweets
    file_put_contents($file, time());
    } else {
    exit;
    }

Leave a Comment