IP-Symcon 5.0 (öffentliche Beta) abgeschlossen

hi,

diese Meldung kommt bei mir auch. Z.B: hier:

switch ($_IPS['SENDER'])
{
	case 'WebFront':
	  	SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);
	break;
	
    case 'RunScript':
        switch ($_IPS['action'])
        {

Hat das mit PHP 5->7 zu tun?

hardlog

@hardlog: Case sensitive? Eventuell hilft Grossschreibung

Laut Doku gibt es die Systemvariable $_IPS[‚ACTION‘] nur bei einem „TimerEvent“
Wobei ich heute beim Testen bei einem zyklischen Event diese Systemvariable auch nicht hatte:confused:
https://www.symcon.de/service/dokumentation/konzepte/skripte/systemvariablen/

Hi,

das stammt auf der HMTL-Box-Button-Rückmeldung via folgendem Script:

<?php
$ScriptID = $_GET['ScriptID'];
$Action   = $_GET['do'];
setvalue(42104,$ScriptID);
if ($ScriptID > 0)
{
    IPS_RunScriptWaitEx((int)$ScriptID, array('action' => $Action) );
}
?>

‚action‘ ist also frei gewählt und keine IPS-Definition…

OK. Dann sollte es funktionieren und nicht so eine Fehlermeldung wie bei:
https://www.symcon.de/forum/threads/37413-IP-Symcon-5-0-%28%C3%B6ffentliche-Beta%29-verf%C3%BCgbar?p=365887#post365887

Also bei mir kommt via IPSLogger:

Notice: Undefined Index: action 
Error in Script ...5927 .. in 32 

(das ist o.g. Code-Schnipsel)

Wird die Systemvariable auch richtig uebergeben ?
Bei mir funktioniert deine Version.
Am Anfang vom Zielscript mal folgendes einfuegen.

IPS_Logmessage(basename(__FILE__),$_IPS['action']);

Sollte eine Ausgabe im Log erstellen.
„$_IPS[‚action‘]“ auch benutzt ?

@rores: Wurde das Skript auch ganz sicher durch ein Wochenplan gestartet? Ich habe es gerade getestet und hier funktioniert es. Docker sollte da keinerlei Unterscheid machen.

@hardlog: Auch das läuft hier einwandfrei.

paresy

hallo parsey, sorry nein, ich hatte mich verführen lassen den script händisch zu starten, weil er ein rote Ausrufezeichen hatte . :banghead:
Ich habe jetzt aber gemerkt dass das LaMetric Modul vermutlich nicht mehr läuft mit 5.0. Der Fehler ist eigentlich der folgende:

Fatal error:  Uncaught TypeError: Argument 1 passed to LaMetricTime::display() must be an instance of integer, integer given, called in /var/lib/symcon/scripts/__generated.inc.php on line 1087 and defined in /var/lib/symcon/modules/Symcon-LaMetric/LaMetric/module.php:321
Stack trace:
#0 /var/lib/symcon/scripts/__generated.inc.php(1087): LaMetricTime->display(1, true)
#1 /var/lib/symcon/scripts/28554.ips.php(3): LM_display(51159, 1, true)
#2 {main}
  thrown in /var/lib/symcon/modules/Symcon-LaMetric/LaMetric/module.php on line 321

Hallo Zusmmen,
habe ich das richtig verstanden, dass heute die 5.0 STABLE released werden soll?

VG
Dirk

Korrekt. Im Live-Update ist diese RC5 als Stable bereits online. Wir bereiten zur Zeit die Release-Notes, Dokumentation ect. vor.

paresy