Autor Thema: Nonblocking für TCP Geräte  (Gelesen 1540 mal)

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3753
  • ~ Challenging Innovation ~
Nonblocking für TCP Geräte
« am: 11 März 2014, 12:58:18 »
Hallo zusammen,


ich möchte gerne das Modul ONKYO_AVR von Polling auf Non-Blocking umstellen.
Die ONKYO Geräte sind über ein eigenes Protokoll via Socket-IO abzufragen. Ich würde zukünftig gerne eine permanente TCP Verbindung aufgebaut lassen und die Ausgaben, die das Gerät schickt, permanent auswerten. Außerdem möchte ich natürlich über diesen Kanal auch Befehle hin schicken. Eigentlich ganz normales IO...


Welche Frameworks muss ich dafür in FHEM benutzen, um das Rad nicht komplett neu zu erfinden? Ich sehe Module, die IODev/DevIo.pm benutzen, ich verstehe aber noch nicht vollständig, wie es funktioniert. Dann gibt es das File Blocking.pm. Ich verstehe irgendwie nicht, wie ich das sinnvoll nutzen müsste. Ich möchte vor allem keine 2 Devices in FHEM haben. Für Geräte wie HMLAN oder die HUEBridge macht das ja Sinn, weil sie mehrere Geräte ansprechen. Aber beim A/V Receiver gibt es eben immer nur ein einziges Gerät zu steuern (abgesehen von den Zonen, aber das wäre für mich kein Grund ein zentrales IO-Device in FHEM haben zu müssen).


Kann mir jemand helfen, wie ich das am besten angehe?




Gruß
Julian
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 24513
Antw:Nonblocking für TCP Geräte
« Antwort #1 am: 11 März 2014, 14:09:15 »
Falls du nicht gezwungen bist blockierend auf eine Antwort zu warten, dann ist DevIO.pm das richtige fuer dich. Der Ablauf ist in etlichen Forumsbeitraegen beschrieben, es gibt. mWn auch einen Wiki-Eintrag dazu.