IrTrans

Guten morgen zusammen,

ich spiele mit dem Gedanken mir IrTrans an zu schaffen.
Nun habe ich gesehen, das es einmal das Lan IrTrans mit und ohne Datenbank gibt.

Braucht man für den Betrieb mit IPS eine DB oder geht es auch ohne?

Welche Vor oder Nachteile hat die DB?

Danke für eure Antworten.

Schönen Tag
Mirco

Die Funktion der DB übernimmt IPS. Und das viel komfortabler und flexibler als es IrTrans könnte. Die DB brauchst du nur wenn du IrTrans auch standalone betreiben willst.

Diese Info wurde Ihnen präsentiert von . :rolleyes:

Toni

Für das USB Modul auf jeden Fall, da man auf den IR-Rans Server zugreifen kann aber trifft das auch für das LAN Modul zu? Ich hatte mir extra ein LAN Modul mit DB besorgt, weil das ohne nicht gehen soll. Falls es doch geht, ist die Konfiguration bestimmt leichter bei dem Modul mit Datenbank.

mfg
Smudo

Falls der Wink mit dem Zaunpfahl nicht angekommen ist. Das Thema wurde massig diskutiert.

Beispielsweise: http://www.ip-symcon.de/forum/f3/irtrans-module-2279/

Das Prinzip hat sich seither nicht verändert. Die DB-Funktionen funktioniert nicht mit IPS. Die brauchst du nur für den Standalone-Betrieb. Siehe mein erstes Posting…

Edit:

Falls ich nicht auf dem neusten stand sein sollte, sollte das im Forum zu recherchieren sein.

Toni

Hallo Toni,

den Zaunpfahl hatte ich doch tatsächlich übersehen. Leider bringt dein gelinkter Post und auch die Suche allgemein nicht unbedingt eine klare Antwort auf die Frage. Deshalb nochmal meinen aktuellen Wissenstand bezüglich IPS und IR-Trans.

Wenn man nur 1 IR-Trans Modul benutzen möchte, kann man jedes beliebiege Modul einsetzen. Dies wird über das WINLIRC Modul => IR-Trans Server angesteuert. Ab dem 2. Modul geht nur noch ein LAN Modul mit Datenbank. Dann ist die Menge auch nicht mehr begrenzt. Also von den LAN Modulen mit DB kann man so viel benutzen wie man möchte. Diese werden dann übe TCP bzw UDP gesteuert.

Man möge mich berichtigen wenn ich da falsch liege. Bei mir funzt es auf jeden Fall so.

Der IR-Trans Server kann mehrere Module verwalten aber leider die WINLIRC Schnittstelle von IPS nicht.

mfg
Smudo

Der Link gibt auskunft über die Arbeitsweise mit IPS, sagt aus welche Module verwendet werden können und dass IPS nicht mit der DB arbeitet.

Ich setze nur eine LAN-Variante ohne DB ein. Diese hab ich nicht programmiert, einfach angeschlossen. Schon lange her… Momentan liegt sie in der Schublade.

Die DB ist IMO ausschließlich um IR-Codes für den autarken Betrieb im Gerät zu speichern.

Sag ich ja. Genau diese Auskunft ist meiner Meinung nach falsch. IPS arbeitet zwar nicht mit der DB innerhalb des Moduls aber mit dem „Modul mit integrierter Datenbank“.
Wenn man also mehr als 1 IR-Trans Modul benutzen möchte oder ohne die IR-Trans Software (Server) auskommen möchte, geht das nur mit den Modulen mit DB. (Es sei denn, man verwaltet seine IR-Codes Bit für Bit innerhalb von IPS und sendet sie dann auch so, wenn ich das richtig verstanden habe).

mfg
Smudo

Warum die Unterscheidung ob 1 Irtrans Modul oder mehr?
Bin gerade dabei mein 1. zu bestellen, ein 2. soll aber folgen. Warum sollte ich aber auf einen mit DB setzen?
Wie läuft die Unterscheidung überhaupt? Sendet irTrans die Befehle dann einfach an beide Zimmer oder „weiß“ das die Software wo sich welches Gerät befindet?

Hallo,

es verhält sich so, wie Smudo schrieb: Die DB-Version habe ich ohne IR-Trans-Server direkt mit IPS (version 1) verbunden.

Einmal in die IR-Trans eingelesene Codes werden dann fast im Klartext bei Empfang in eine IPS-Registervariable geschrieben oder umgekehrt zum Senden über die Client-Socket Verbindung auf Port 21000 zum IR-Trans-Modul geschickt.

Alternativ zur Client-Socket Verbindung kann von IPS aus mit einem HTTP-Get-Aufruf ebenfalls in der IR-Trans-DB gespeicherte Codes gesendet werden.

Wenm Interesse besteht, kann ich die PH-Codes (allerdings für IPS 1, da ich noch nicht auf 2.x gewechselt habe) zusammenstellen.

Gruß Rolf

Inzwischen hab ich eine IrTrans Ethernet mit DB UND 2ter Sende LED.
Um diese getrennt ansprechen zu können (2mal gleicher Reveiver) muss ich laut irtrans support einen mit Datenbank verwenden. Ich nehme auch an verstanden zu haben, dass ich die Kommandos quasi direkt ans Irtrans, also ohne IRtrans Modul rausschicken muss. Ich bräuchte da aber noch etwas Hilfestellung! Hat da jemand nen Code-Fetzen mit dem ich anfangen könnte herumzuprobieren!?

Danke für die Hilfe!

PS: Die Suche half mir nicht wirklich :wink:

Hallo,

meinst du so was:
IRTrans, WinLIRC - IP-Symcon :: Automatisierungssoftware

Schöne Grüße
Thomas

eben nicht. IPS unterstützt da „nur“ das LIRC und da kann ich mit meinem IrTrans mit 2ter integrierten Sende LED nicht getrennt reden! Da muss ich irgendwie anders rangehen!

Hallo Pollibus

ich habe IPS V1, wie das in V2 zu ändern ist, kann ich daher nicht sagen, aber bei mir funktioniert das LAN-DB-IR-Trans Teil bestens:

An Instanzen sind eine Client-Socket-Verbindung zur LAN-Adresse vom IR-Trans auf Port 21000 einzurichten.

Dann je eine Registervariable zum Empfangen (heißt bei mir „IR_Get“) und eine zum Senden („IR_Send“) einrichten

Nach dem Starten von IPS ist das IRTrans-Modul einmalig auf aSCII - Zeichensatz einzustellen, d.h. als erstes einmalig ein Script mit dem Inhalt:

$a = 'ASCI';
SetValueString("IR_send",$a);

aufzurufen.

Anschliessend können im IRTrans-Modul hinterlegte Sendebefehle aus IPS raus einfach durch beschreiben der Registervariablen „IR-Send“ gesendet werden.

Alternativ kann aus IPS mit PHP auch über HTTP-Get gespeicherte Infrarot-Befehle gesendet werden, z.B:

sende('remote=TV&command=ok;@p300;ok;@p300;ok;@p300;ok');
function sende($data)
    {
        $host = '192.168.1.30'; // IP des Lan - IRTrans hir eintragen
        $path= '/send.htm?'.$data;


        $filePointer = fsockopen($host, 80, $errorNumber, $errorString, 2);

        if (!$filePointer)
        {
            return 'debug: Failed opening http socket connection: '.$errorString.' ('.$errorNumber.')<br/>
';

        }

        $requestHeader = "GET ".$path."  HTTP/1.1
";
        $requestHeader.= "Host: ".$host."
";
        $requestHeader.= "User-Agent:      Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0
";
        $requestHeader.= "Content-Type: application/x-www-form-urlencoded
";

        $requestHeader.= "Connection: close

";

        fwrite($filePointer, $requestHeader);

        $responseHeader = '';
        $responseContent = '';

        do
        {
            $responseHeader.= fread($filePointer, 1);
        }
        while (!preg_match('/\\r\
\\r\
$/', $responseHeader));
        // return $responseHeader;

        while (!feof($filePointer))
            {
                $responseContent.= fgets($filePointer, 128);
            }
        return chop($responseContent);
    }

Zum Auswerten der von einer angelernten Fernsteuerung an IR-Trans gesendeten Daten ein Scrip anlegen, das „on Update“ durch die Registervariable IR_Get getrggert wird:


$a = GetvalueString("IR_get");
$a = substr ( $a , 16 , strlen($a)-16 ) ;
$b= explode(",",$a);
if ($b[0] == 'terratec' ) {
  if ($b[1] == 'power') {
     FS20_SetIntensity(27544, 0, 2);  // Deckenlicht Esszimmer 
     EZCT_SendPreset(43565, 6, 0); // Küche Licht aus
  }elseif($b[1]== '1') { 
     // was auch immer....
  }
}

Gruß Rolf