Ankündigung

Einklappen
Keine Ankündigung bisher.

MQTT/Mosquitto/Owntracks iOS App - Konfigurationsfragen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    MQTT/Mosquitto/Owntracks iOS App - Konfigurationsfragen

    Hallo zusammen,

    ich bin gerade dabei die oben beschriebene Konfiguration in Betrieb zu nehmen. Mosquitto ist installiert, das Binding drin, App installiert usw. Leider bin ich gerade etwas überfordert was ich wo eintragen muss. Könnte mir hier jemand mit seiner Beispiel Konfig helfen?
    - Openhab.cfg
    - Items?
    - Moqsuitto.conf Datei (muss da neben dem User überhaupt was rein?)
    - iOS App (was trage ich wo ein)
    - habe ich noch was vergessen?

    Vielen Dank schon mal!!!!!

    Gruß
    MM1804

    #2
    Hallo,

    Als ich deinen beitrag gestern abend gelesen habe,habe ich auch etwas gegoogelt wie man eine Anwesenheits erkennung mit dem iphone realisieren könnte und bin auf eine "API" für iCloud gestoßen https://github.com/picklepete/pyicloud ( vtl bastelt ja jemand ein binding ? )

    also schnell ein kleines python skript gebastelt welche per cron jede minute den standort von "Mein Iphone suchen" abfragt und neben bei auch noch den Akku in % vom iphone
    Angehängte Dateien

    Kommentar


      #3
      Eigentlich hatte ich an die App owntrack gedacht...(die tut auch für Android)... Die icloud Anbindung wäre aber auch cool... Was kann dein Script alles, kannst mal Posten? Danke

      Kommentar


        #4
        owntrack würde halt wieder akku kosten :-(

        ja klar muss aber zugeben, kann eigentlich kein python deswegen python nur zum auslesen, rest mache ich mit php

        test.py:
        PHP-Code:
        #!/usr/bin/env python
        import urllib3

        from pyicloud import PyiCloudService

        urllib3
        .disable_warnings()
        api PyiCloudService('e-mail''password')

        print(
        "jan <start>%s<start>" api.devices[0].location())

        print(
        "jan status <start>%s<start>" api.devices[0].status())


        print(
        "andrea <start>%s<start>" api.devices[2].location())

        print(
        "andrea <start>%s<start>" api.devices[2].status()) 


        und mit php werte ich dann alles aus :

        PHP-Code:
        <?php
        $con 
        mysql_connect("localhost""user""pass") or die("connect error:"mysql_error());
        $db mysql_select_db("openhab") or die("db fehler:"mysql_error());

        $ausgabe =shell_exec("python /home/bananapi/pyicloud/test.py");
        $ar = @explode("<start>",$ausgabe); # <- ausgabe vom python skript in array teilen

        $jan akku($ar[3])*100;
        $jank kords($ar[1]);
        $jan_da zuhause($jank);
        $andrea akku($ar[7])*100;
        $andreak kords($ar[5]);
        $andrea_da zuhause($andreak);

        echo
        "\n---\n:Jan:$jan @ $jank \n Daheim: $jan_da  \nAndrea:$andrea @ $andreak\nDaheim: $andrea_da \nZuhause:";
        $time time();
        $query1 mysql_query("UPDATE `openhab`.`zuhause` SET `akku` = '$jan',`zuhause` = '$jan_da',`name` = 'Jan',`time` = '$time' WHERE `zuhause`.`id` =1;") or die("fehler1");
        $query1 mysql_query("UPDATE `openhab`.`zuhause` SET `akku` = '$andrea',`zuhause` = '$andrea_da',`name` = 'Andrea',`time` = '$time' WHERE `zuhause`.`id` =2;") or die("fehler1");
        if(
        $jan_da == "0"){ $wasj "OFF"; }
        if(
        $jan_da == "1"){ $wasj "ON"; }

        if(
        $andrea_da == "0"){ $wasa "OFF"; }
        if(
        $andrea_da == "1"){ $wasa "ON"; }
        ## Status an openhab senden
        $send_da_j file_get_contents("http://192.168.0.54:8080/CMD?Jan_zuhause=$wasj");
        $send_akku_j file_get_contents("http://192.168.0.54:8080/CMD?Jan_zuhause1=$jan");
        $send_da_a file_get_contents("http://192.168.0.54:8080/CMD?Andrea_zuhause=$wasa");
        $send_akku_a file_get_contents("http://192.168.0.54:8080/CMD?Andrea_zuhause1=$andrea");

        ## Akku Status von middelware senden und logen für chart
        $send_to_vz send_to_chart("b55608c0-47e5-11e5-b8c2-eb404f06ffdd"$jan);
        $send_to_vz2 send_to_chart("1055d820-47e6-11e5-8176-b3d3cbccf0a7"$andrea);


        ## Funktionen
        function kords($var2)
        {
        $lok explode("u'longitude': ",$var2);
        $lok2 explode(","$lok[1]);
        $lok3 explode("u'latitude': ",$var2);
        $lok4 explode(",",$lok3[1]);
        $kords "$lok4[0],$lok2[0]";
        return 
        $kords;

        }
        ##################
        function zuhause($wo# wo sind die Korordinaten ( Dezimalgrad )
        {
        $string file_get_contents("https://www.google.de/search?q=$wo");
        #echo"<hr>$string<hr>";
        # hier habe ich 3 Str, angegeben wo status auf zuhause gesetzt wird
        if(strpos($string,"Orchideenstra")!==false or strpos($string,"Fingerhutweg")!==false or  strpos($string,"Gerberaweg")!==false)
        {
        return 
        "1";
        }
        else {
        return 
        "0";
        }
        #####################
        }
        function 
        akku($var1)
        {
        $bat explode(":",$var1);
        $bat2 explode(","$bat[3]);
        $bat2[0] = str_replace(": ",""$bat2[0]);
        $akku substr($bat2[0],1,6);

        return 
        $akku;
        }
        ###########################
        function send_to_chart($uuid,$var)
        {


        $postdata http_build_query(
            array(
                
        'value' => $var
            
        )
        );

        $opts = array('http' =>
            array(
                
        'method'  => 'POST',
                
        'header'  => 'Content-type: application/x-www-form-urlencoded',
                
        'content' => $postdata
            
        )
        );
        $link "http://192.168.0.54/vz/htdocs/middleware.php/data/$uuid.json";
        $context  stream_context_create($opts);
        $result file_get_contents($linkfalse$context);

        }
        ##############################

        ?>

        Speicher status und akku stauts zusätzlich in einer mysql db, und den akku status logge ich neben mit noch mit Volkszähler

        muss zugeben ist nicht das schönste skript, ist heute um laufe der nacht endstanden ^^ aber tut was es soll

        Kommentar

        Lädt...
        X