Enigma2BY - Modul für Receiver mit Enigma2

Ich war dann eben mal so faul und hab auf GIT nachgeschaut und bin in den Code. Ja, ich sehe es.

Nur warum, weiß ich noch nicht warum er das nicht machte.
Muß mal neu starten.
Seltsam

Supi, IPS oder die Modulverwaltung hat mal eben mein RASPI geschossen.
Selbst ein Neustart mit Ausschalten hilft nicht mehr.

Ich komme nicht mehr auf den Raspberry drauf. Jedenfalls nicht übers Netz.
§"%$§!&%$/"&$/&"%/(&!(/)&"()/!")= :mad:

Wenn dann die Modulverwaltung oder irgendwas im IPS. Das Modul selbst ist in Ordnung. Bitte keine falschen Anschuldigungen, du verschreckst noch die Gäste :smiley:
Ist bestimmt ein Anwenderfehler :wink: :stuck_out_tongue: :smiley:

-Chris-

Habs editiert.

Klarer Anwendungsfehler. Warnhinweise nicht beachten, dass es eine beta ist.
Selbst schuld.
Dabei lief die Version auf dem Raspi die ganze Zeit wunderbar problemlos.

Mhmmmm

Das mit dem Absturz vom Raspi hatte ich vorhin auch, musste dann aber weg das Problem hatte ich vor 2 Tagen aber auch schon nach dem aktualisieren der Module, da hat dann nur noch Stecker ziehen und Neustart geholfen

So, wieder daheim und gleich noch mal die Fragefunktion getestet … wieder das Beispiel aus dem Startposting mit der Tür und egal ob ich ja oder nein als Antwort eingebe, es gibt ne Fehlermeldung:

<br />
<b>Notice</b>: Undefined variable: AntwortINT in <b>/usr/share/symcon/modules/BY_Enigma2BY/BY_Enigma2BY/module.php</b> on line <b>286</b><br />
<br />
<b>Notice</b>: Undefined variable: AntwortINT in <b>/usr/share/symcon/modules/BY_Enigma2BY/BY_Enigma2BY/module.php</b> on line <b>287</b><br />

Gruß
Jens

Abend Jens!

Bitte mal das Skript bei dir testen und mir die entsprechenden Rückmeldungen schicken. Irgendwas muss da anders sein :confused:

Nur IP und PORT eintragen, ganz oben, dann einfach ausführen und mit alle 3 Varianten „antworten“:

<?
$IP = "192.168.1.23";
$WebPort = "80";
$Text = "TESTFRAGE";
$Type = 0;
$Timeout = 5;

$url = "http://".$IP.":".$WebPort."/web/message?text=".$Text."&type=".$Type."&timeout=".$Timeout;
Sys_GetURLContent($url);
IPS_Sleep(6000);
$xml = @simplexml_load_file("http://$IP:$WebPort/web/messageanswer?getanswer=now");
var_dump($xml);
print_r($xml);
?>

Grüße,
Chris

Probier mal:

<?

$xml = @simplexml_load_file("http://".$IP.":".$WebPort."/web/messageanswer?getanswer=now");

?>

So, weil ich den DVI-HDMI Adapter nicht gefunden habe, wurde der Schlafzimmer-TV zum IPS-Raspi getragen und so konnte ich dann feststellen, dass nach stop und start des IPS Dienstes und einem erneuten Aktualisieren des Modules ich Erfolg vermelden kann.
Läuft alles und auch mit korrekten Werten.

Haste prima gemacht, Chris

Mhmmmm, warum hab ich eigentlich nicht den Raspi zum TV getragen. Das war wohl zu einfach. :rolleyes:

:smiley: :smiley: Freut mich, dass es jetzt richtig funktioniert :slight_smile:

Bzgl. TV empfehle ich einen kleinen Mini-Monitor (hab da einen 8" mit HDMI), denn kann man überall mal spontan anklemmen und dazu eine Mini-Tastatur inkl. Touchpad :slight_smile:

Grüße,
Chris

Ich hab doch das 7" Panel aber da war ich zu faul, das aus der Ecke zu kramen. [emoji23]

Selbstverständlich mit Tastatur inkl. Touchpad.

Und eine niedliche mit Trackball. Was ich alles hab.[emoji851]

Öh … ich komme nicht dazu ne Taste zu drücken, da die Wartezeit zu kurz ist.

es kommt folgendes zurück wenn man nix drückt:

object(SimpleXMLElement)#1 (2) {
  ["e2state"]=>
  string(4) "True"
  ["e2statetext"]=>
  string(18) "Antwort lautet JA!"
}
SimpleXMLElement Object
(
    [e2state] => True
    [e2statetext] => Antwort lautet JA!
)

Mit angepasstem Timeout und „Nein“

object(SimpleXMLElement)#1 (2) {
  ["e2state"]=>
  string(4) "True"
  ["e2statetext"]=>
  string(20) "Antwort lautet NEIN!"
}
SimpleXMLElement Object
(
    [e2state] => True
    [e2statetext] => Antwort lautet NEIN!
)

und bei Ja:

object(SimpleXMLElement)#1 (2) {
  ["e2state"]=>
  string(4) "True"
  ["e2statetext"]=>
  string(18) "Antwort lautet JA!"
}
SimpleXMLElement Object
(
    [e2state] => True
    [e2statetext] => Antwort lautet JA!
)

LoL…das war ja zu einfach. Die schreiben es einfach auf Deutsch und bei Dreambox steht es in Englisch :rolleyes: :smiley:
Das 3. was ich noch gebraucht hätte hab ich über Google gefunden: „Keine rechtzeitige Antwort“. Ich hoffe, dass das stimmt :slight_smile:

FIX ist online, bitte testen - hoffentlich zum letzten Mal :slight_smile:

Grüße,
Chris

Bin schon im Büro, mache ich heute Abend. [emoji6]

So, gerade mal ausprobiert …

Ja / Nein funzt soweit.
Beim Timeout kommt auch die richtige Antwort, aber das Fragefenster auf dem Bildschirm geht nicht weg !?

Gruß
Jens

Abend!

Hmmm… Das Fragefenster wird eigentlich mit der Taste „Exit“ weggedrückt nach dem Timeout… Kannst du mal irgend ein Fenster/Menü am Receiver öffnen, dann die Modul-Instanz öffnen, die Taste „Exit“ (wegen automatischer Übersetzung leider „Beenden“) auswählen, Übernehmen und auf den Button „Taste senden“ drücken. Verschwindet dann das Fenster/Menü?

Grüße,
Chris

Wenn ich das über die Testfunktion im Modul mache, dann geht das Menü wie erwartet weg.

Das hier hatte ich getestet:

<?
$Enigma2BY_Instanz = 36892 /*[Enigma2BY]*/;
$result = Enigma2BY_SendMsg($Enigma2BY_Instanz, "Es hat an der Haustür geklingelt!§Soll die Haustür geöffnet werden?", 0, 5);
if ($result === 0)
{
    echo "Die Antwort war NEIN, die Haustür wird nicht geöffnet";
}
elseif ($result === 1)
{
    echo "Die Antwort war JA, die Haustür wird geöffnet";
}
elseif ($result === 2)
{
    echo "Keine Antwort innerhalb des Timeout, die Haustür wird nicht geöffnet";
}
?>

Die Frage wird aber scheinbar auch ohne Timer geschickt, denn es läuft sichtbar keine Zeit ab, so wie bei der „Testfrage“ (Enigma2BY - Modul für Receiver mit Enigma2 - Seite 5). Da hat sich das Fenster dann auch geschlossen !?

Bei der Frage ist es das Problem, dass ich die Frage an den Receiver schicke und wenn ich nichts machen würde, dann käme als Antwort, wenn niemand was drückt, immer JA zurück. Deshalb sende ich Pfeil nach unten hinterher (Timer wird nicht mehr am TV angezeigt, läuft aber im Skript weiter) und wenn der Timer abgelaufen ist wird die Antwort ausgelesen und wenn keine Antwort kam, dann wird ein EXIT hinterher gesendet um das Frage-Fenster zu schließen.

Ist umständlich, geht aber wegen Enigma nicht anders…leider…

Aber warum das EXIT bei dir nicht gesendet wird bei der Frage, dass verstehe ich nicht :confused: Vor allem, wenn es aus der Instanz heraus gesendet wird. Ist ja immer das gleiche Befehl :confused:

Kannst du noch ein wenig testen, ob das vlt. eine Ausnahme war? Mal den Receiver neustarten und keine Ahnung. Wüsste spontan nicht, wo ich da ansetzen soll :frowning:

-Chris-

Hmmm … weiß jetzt nicht so recht was ich noch testen soll.
Die Rückgaben funktionieren ja, nur eben nicht das Schließen vom Fragefenster …:confused:

AAAAH :eek: Ich hab noch einen „Fehler“ in der Frage-Funktion entdeckt. :rolleyes: Das KÖNNTE die Lösung sein :slight_smile: Update folgt, ich sag Bescheid :slight_smile:

Edit: Hmmm, vlt. doch keine Lösung. Da war „nur“ etwas mit der Semaphore falsch, was aber nichts mit dem Exit der Frage zu tun hat :frowning:

-Chris-