Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Schnittstelle für Ereignisse von außen?

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

    - √ - Schnittstelle für Ereignisse von außen?

    Hallo,

    ich verfolge das Smarthome Projekt mit Interesse, weil ich irgendwann von meiner Misterhouse Lösung umsteigen möchte.

    Auf meinem Ubuntu System habe ich capisuite installiert, dass mir eingehende ISDN Anrufe an Misterhouse weitergibt. Misterhouse hat dafür einen Schnittstelle in Form eines Clients mit dem man beliebige Textnachrichten an Misterhouse schicken kann. Auf Misterhouse Seite werden dann diese Nachrichten geparst.

    Gibt es eine ähnliche Schnittstelle auch in Smarthome?

    Grüße,
    Michael
    Viele Grüße,
    Michael

    #2
    Hallo Michael,

    wie werden die Textnachrichten von capisuite an Misterhouse geschickt?

    Eine Möglichkeit wäre evtl. das Network Plugin, dass UDP, TCP und HTTP verarbeiten kann. Damit kannst du beliebige Werte in sh.py Items schreiben, auch Texte. Wenn du mehr Details nennen kannst wäre auch ein separates Plugin möglich.
    Mit freundlichen Grüßen
    Niko Will

    Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
    - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

    Kommentar


      #3
      capisuite kann die Daten beliebig an andere Applikationen schicken. Es gibt ein Python-Script, in dem man die Quell- und die Zieltelefonnummer hat.
      Im Fall von Misterhouse rufe ich aus dem capisuite-Script einen misterhouse Client auf und übergebe einen Text, der die Quell- und die Zieltelefonnummer enthält. Der Misterhouse-Server erhält das Event, zerlegt den Satz und kann dann reagieren:
      subprocess.Popen(["/mh/bin/mhsend", "-run", "CALL", 'call-from', call_from, 'call-to', call_to]).wait()

      In Misterhouse setze ich aufgrund des Anrufs einen Szenenwert oder es wird eine eMail verschickt:

      if (($call_from eq 'xxxxxxxxx') and ($call_to eq 'xxxxxxxxxx')) {
      set $SzenenTS2Arbeitszimmer SZENE_AKTIVIERE_HEIZEN;
      }
      else {
      ... sende eMail mit Anruf-Informationen
      }

      Für die erste Bedingung ist:
      $call_from: meine Handynummer, $call_to: ISDN-Nummer, die sonst nicht verwendet wird

      Die Frage ist also, ob man sowas in Smarthome umsetzen kann?
      Ist dafür ein separates Plugin sinnvoll?
      Hinweis: ich kenne mich bisher gar nicht mit Smarthome aus, deshalb kann ich das nicht beurteilen.
      Viele Grüße,
      Michael

      Kommentar


        #4
        Hallo Michael,

        ich würde dazu, wie von Niko vorgeschlagen, das SmartHome.py - Network Plugin verwenden.

        Entweder über die Shell ein UDP Paket an SmartHome.py schicken:
        Code:
        echo "logic|call|incnum,outnum" | nc -uw 1 127.0.0.1 2727`
        oder das UDP Paket direkt von dem Script verschicken lassen.

        Ein eigenes Plugin ist dafür nicht notwendig.

        Verständlich? Wenn ja, bitte Thema als gelöst markieren.

        Bis bald

        Marcus

        Kommentar


          #5
          Hallo Marcus,

          ok, ich werde es ausprobieren, wenn smarthome läuft.


          Grüße,
          Michael
          Viele Grüße,
          Michael

          Kommentar

          Lädt...
          X