Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Steuerung der IP-Cam

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

    - √ - Steuerung der IP-Cam

    Hallo Zusammen!

    erstmals einen großen Dank an die Macher von smarthome.py & smartvisu - tolle Arbeit!

    Hab vor kurzem begonnen mich mit dem raspberry & dem smarthome.pi image auseinander zu setzen, was auch zum Großteil ganz gut und ohne gröbere Nachtschichten über die Bühne gegangen ist.

    Jetzt aber stehe ich vor einer Aufgabenstellung, bei der ich im Forum keine Antwort gefunden habe:
    Bei meine Ip-Cam vor der Eingangstür kann ich drei fixe Positionen vorgeben. Und diese würde ich nun gerne via KNX ansprechen. Gibts bei den items eine Möglichkeit ähnlich
    Code:
    [[tuercam]]
         [[[pos1]]]
              name = pos1
              type = bool
              knx_dpt = 1
              knx_init = 9/0/15
              eval = sh.tools.[COLOR=Red]???[/COLOR](http://192.168.178.40/decoder_control.cgi?command=31&onestep=1&user=gast&pwd=gast)
    dass einfach umzusetzen?

    DANKE vorab! & schöne Feiertage an ALLE
    sg martin

    #2
    In der logic Doku gibts sowas wie "sh.tools.fetch_url()".
    Ich weiss nicht, ob das auch gleich bei eval taugt...
    Derzeit zwischen Kistenauspacken und Garten anlegen.
    Baublog im Profil.

    Kommentar


      #3
      Danke für den Hinweis!
      Hab's damit sogar schon einmal probiert aber woh zu früh Aufgegeben .

      Nach intensiveren probieren geht's (zumindest beim ersten Wurf über die smartvisu, knx_init sollte jetzt aber keine Hürde mehr sein)

      Code:
          [[tuercam]]
                  [[[pos1]]]
                      name = pos1
                      type = num
                      sqlite = true
                      visu_acl = rw
                      enforce_updates = true
                  [[[pos1x]]]
                      name = pos1x
                      type = str
                      eval = sh.tools.fetch_url('http://192.168.178.40/decoder_control.cgi?command=31&onestep=1&user=gast&pwd=gast')
                      eval_trigger = Aussen.tuercam.pos1
      einzig bei der type gibt's eine Warnung
      Code:
      2013-12-23 16:24:50 WARNING  Aussen.tuercam.pos2x Item Aussen.tuercam.pos2x: value b'ok.\n' does not match type str. Via Eval Aussen.tuercam.pos2
      2013-12-23 16:25:02 WARNING  Aussen.tuercam.pos1x Item Aussen.tuercam.pos1x: value b'ok.\n' does not match type str. Via Eval Aussen.tuercam.pos1
      2013-12-23 16:25:08 WARNING  Aussen.tuercam.pos2x Item Aussen.tuercam.pos2x: value b'ok.\n' does not match type str. Via Eval Aussen.tuercam.pos2
      ist aber erstmals kein Problem - DANKE nochmals!
      sg martin

      Kommentar


        #4
        Hi Martin,

        ein .decode() am Ende sollte helfen.

        Ich würde so etwas auch lieber in eine Logik packen und nicht eval 'missbrauchen'.

        Bis bald

        Marcus

        Kommentar


          #5
          Danke für den Hinweis, die Warnung ist weg

          Habe mit Logiken noch gar nichts gemacht, werde mir den Rat aber zu Herzen nehmen.
          sg martin

          Kommentar


            #6
            Schönen Abend!

            habe mich jetzt daran gemacht die Ansteuerung der Kameras mittels Logik zu erledigen.

            leider gibt's ein Problem: das Triggern der Logik funktioniert nur 1x .
            D.h.: ich kann jeden der 3 Buttons 1x klicken und die Kamera verfährt jeweils so wie sie soll, beim 2. Mal klicken nicht mehr.

            log file:
            Code:
            2014-01-30 19:34:30,377 DEBUG    Main         Triggering cameras - by: Item source: Aussen.tuercam.pos1 dest: None value: 1 -- scheduler.py:trigger:162 [COLOR=Red]=> hier gehts[/COLOR]
            ..
            2014-01-30 19:35:08,990 DEBUG    Main         Triggering cameras - by: Item source: Aussen.tuercam.pos2 dest: None value: 1 -- scheduler.py:trigger:162 [COLOR=Red]=> hier gehts[/COLOR]
            ..
            2014-01-30 19:35:42,959 DEBUG    Main         Triggering cameras - by: Item source: Aussen.tuercam.pos1 dest: None value: 1 -- scheduler.py:trigger:162 [COLOR=Red]=> hier gehts nicht mehr[/COLOR]
            logic.conf:
            Code:
            # logic.conf
            
            [hello]
                filename = hello.py
                crontab = init
            
            [Whatsapp]
                filename = whatsapp.py
            
            [cameras]
                filename = cameras.py
                watch_item = Aussen.tuercam.* | Aussen.garagecam.*
            item.conf:
            Code:
                [[tuercam]]
                        [[[pos1]]]
                        name = pos1
                            type = num
                            sqlite = true
                            visu_acl = rw
                            enforce_updates = true
                        [[[pos2]]]
                        name = pos2
                            type = num
                            sqlite = true
                            visu_acl = rw
                            enforce_updates = true
                        [[[pos3]]]
                        name = pos3
                            type = num
                            sqlite = true
                            visu_acl = rw
                            enforce_updates = true
            cameras.py
            Code:
            #!/usr/bin/env python
            
            if sh.Aussen.tuercam.pos1():
              sh.tools.fetch_url('http://192.168.178.40/decoder_control.cgi?command=31&onestep=1&user=gast&pwd=gast').decode()
            if sh.Aussen.tuercam.pos2():
              sh.tools.fetch_url('http://192.168.178.40/decoder_control.cgi?command=33&onestep=1&user=gast&pwd=gast').decode()
            if sh.Aussen.tuercam.pos3():
              sh.tools.fetch_url('http://192.168.178.40/decoder_control.cgi?command=35&onestep=1&user=gast&pwd=gast').decode()
            Kann mir da bitte jemand auf die Sprünge helfen (ist auch meine 1. eigene Logik)
            sg martin

            Kommentar


              #7
              Hallo, das Thema hatte ich auch, wenn du ein Item benutzt, der kein "Rücksetzen" besitzt. Er wechselt dann den Status einmal auf ein und bliebt dann so. Ich hatte das mit einem autotimer = 1= 0 im Item gelöst, der das Item nach einer Sekunde automatisch wieder zurücksetzt.

              Michel


              Gesendet von meinem iPad mit Tapatalk

              Kommentar


                #8
                Hallo Michel,

                danke für den Input - werde ich gleich heute Abend testen!
                sg martin

                Kommentar


                  #9
                  Hallo Michel,

                  Danke nochmals, es funktioniert
                  sg martin

                  Kommentar

                  Lädt...
                  X