+ Antworten
Ergebnis 1 bis 9 von 9
  1. #1
    Registriert seit
    Nov 2016
    Beiträge
    228

    Standard Fehlermeldung - welches Skript???

    Hallo,

    ich bekomme leider immer wieder folgende Fehlermeldung:

    Name:  Screenshot.png
Hits: 175
Größe:  6.8 KB

    Leider kann ich nicht erkennen, auf welches Skript sie sich bezieht - kann hier jemand weiterhelfen, wie "Script /-" zu verstehen ist?

    Danke und viele Grüße...

  2. #2
    Registriert seit
    Nov 2016
    Beiträge
    228

    Aufgrund des Verdachts, dass eine zu beschreibende String-Var dahintersteckt habe ich folgendes Skript gebastelt, das getriggert wird, wenn sich die LogString verändert:

    PHP-Code:
    $msg GetValueString(38203 /*[Program\IPSLibrary\data\core\IPSLogger\IPSLogger\HtmlOut_MsgList]*/);                         
    if (
    strpos($msg'Limit von 1024kb überschritten') !== false)                                                            
        {
        
    $all IPS_GetVariableList();                                                                                        
        
    $ids = array();                                                                                                        
        
        foreach(
    $all AS $value)                                                                                                
            {
            if ((
    IPS_GetVariable($value)['VariableType'] == 3) && (IPS_GetVariable($value)['VariableIsLocked'] == true))     
                {
                
    $ids[] = $value;                                                                                            
                }
            }
        
    $string implode(","$ids);                                                                                         
        
    SetValueString(43893 /*[Test\Testkript2\Text]*/$string);                                                          
        
    $handy substr($string0255);                                                                                   
        if (
    $handy != "")
            {
            
    WFC_PushNotification(49045 /*[CustomApp]*/'Mitteilung Hausautomatisierung'$handy''0);                       
            }
        else
            {
            
    WFC_PushNotification(49045 /*[CustomApp]*/'Mitteilung Hausautomatisierung''Keine ID der fehlerhaften StringVar'''0);
            }
        } 
    Ich bekomme die Meldung "Keine ID der fehlerhaften StringVar" und die Var 43893 bleibt leer, nur der Zeitstempel verändert sich.

    Nach meinem Verständnis ist damit bestätigt, dass eine String-Var gesperrt ist und die Fehlermeldung auslöst - wie aber kann diese keine IPS-ID haben???

    Für Hilfe und Ideen bin ich nach wie vor dankbar...!

  3. #3
    Registriert seit
    Feb 2005
    Ort
    Lübeck
    Beiträge
    21,422

    Nein. Die Fehlermeldung sagt, dass du mehr als 1024kB in die Variable schreiben wolltest. Das ist einfach nicht erlaubt. Wenn keine Skript ID in der Fehlermeldung siehst ist es ein Indikator dass ein Ereignis dies ausfuhren will.

    paresy

  4. #4
    Registriert seit
    Nov 2016
    Beiträge
    228

    Danke, Paresy. Aber ich möchte ja zunächst über das gepostet Skript die ID der (zu beschreibenden, aber gesperrten) Variablen (nicht des Skripts, das beschreiben möchte) rausfinden und hier bekomme ich nichts - die Variable muss doch eine ID haben...?!?

  5. #5
    Registriert seit
    Feb 2005
    Ort
    Lübeck
    Beiträge
    21,422

    Da in der Fehlermeldung von IPSLogger darüber keine Info darüber ist, wird es schwierig sein diese ID herauszufinden. Du müsstest also überlegen wer so viel Inhalt schreiben könnte um den Fehler zu finden.

    paresy

  6. #6
    Registriert seit
    Nov 2016
    Beiträge
    228

    Danke. Aber die ID versuche ich doch über das Skript in #2 herauszufinden. Offenbar gibt es ja auch eine gesperrte String-Variable, ansonsten würde ich die Meldung auf das Handy ja nicht bekommen. Nur eine ID für die gesperrte Variable gibt es offenbar nicht. Oder stimmt in dem Skript in #2 zur ID-Ermittlung etwas nicht?

  7. #7
    Registriert seit
    Feb 2005
    Ort
    Lübeck
    Beiträge
    21,422

    Eine Variable ist nur Locked wenn diese über deinem Lizenzlimit liegt. Ist das bei dir der Fall?

    paresy

  8. #8
    Registriert seit
    Nov 2016
    Beiträge
    228

    Ah, ok, danke. Das war dann ein Missverständnis.

    Ich habe eine Unlimited Lizenz. Deshalb wundert es mich dann allerdings, dass die if-Schleife eröffnet ist?!?

    Da muss ich mir bei rd. 850 String-Variablen wohl was anderes einfallen lassen, um die richtige zu finden.

  9. #9
    Registriert seit
    Nov 2016
    Beiträge
    228

    So, ich habe den Übeltäter über dieses Skript gefunden (falls es mal jemand gebrauchen kann):

    PHP-Code:
    $msg GetValueString(30119 /*[Program\IPSLibrary\data\core\IPSLogger\IPSLogger\SingleOut_Msg]*/);                    
    if (
    strpos($msg'überschritten') !== false)                                                                                    
        {
        
    $all IPS_GetVariableList();                                                                                        
        
    $ids = array();                                                                                                       
        
        foreach(
    $all AS $value)                                                                                                
            {
            if ((
    IPS_GetVariable($value)['VariableType'] == 3) && ($value != 30119 /*[Program\IPSLibrary\data\core\IPSLogger\IPSLogger\SingleOut_Msg]*/) && ($value != 38203 /*[Program\IPSLibrary\data\core\IPSLogger\IPSLogger\HtmlOut_MsgList]*/) && ((IPS_GetVariable($value)['VariableChanged'] == IPS_GetVariable(30119 /*[Program\IPSLibrary\data\core\IPSLogger\IPSLogger\SingleOut_Msg]*/)['VariableChanged']) or (IPS_GetVariable($value)['VariableChanged'] == (IPS_GetVariable(30119 /*[Program\IPSLibrary\data\core\IPSLogger\IPSLogger\SingleOut_Msg]*/)['VariableChanged'] - 1))))     
                {
                
    $ids[] = $value;                                                                                            
                }
            }
        
    $string implode(","$ids);                                                                                         
        
    SetValueString(43893 /*[Test\Testkript2\Text]*/$string);                                                          
        
    $handy substr($string0255);                                                                                  
        if (
    $handy != "")
            {
            
    WFC_PushNotification(49045 /*[CustomApp]*/'Mitteilung Hausautomatisierung'$handy''0);                       
            }
        else
            {
            
    WFC_PushNotification(49045 /*[CustomApp]*/'Mitteilung Hausautomatisierung''Keine ID der fehlerhaften StringVar'''0); 
            }
        } 
    Viele Grüße...

Ähnliche Themen

  1. Fehlermeldung bei Fritzbox Skript
    Von oekomat im Forum Skripte, PHP, SQL
    Antworten: 3
    Letzter Beitrag: 01.06.19, 11:29
  2. Antworten: 10
    Letzter Beitrag: 19.01.17, 06:47
  3. Fehlermeldung beim Ausführen von Skript
    Von andy01 im Forum Skripte, PHP, SQL
    Antworten: 1
    Letzter Beitrag: 26.03.16, 09:32
  4. Welches Skript ist schuld?
    Von sokkederheld im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 1
    Letzter Beitrag: 25.06.14, 11:29
  5. Welches Skript/Event verändert eine Variable
    Von mcbelly im Forum Skripte, PHP, SQL
    Antworten: 1
    Letzter Beitrag: 24.01.14, 19:23