+ Antworten
Ergebnis 1 bis 1 von 1
  1. #1
    Registriert seit
    Mar 2010
    Ort
    S-H
    Beiträge
    629

    Standard Automatisches Anlegen von WuT-Inputs / Outputs

    Hallo,

    habe eine Script zum Anlegen der 12 Input sowie 12 Outputs eines Wut 57630. (siehe unten)
    Nun möchte ich die Channels auch per Script den Variablen zuweisen. In den 3 IPS-Funktionen WUT.... (Strg+Space) gibt es da nichts Dokumentiertes.

    Habe irgendwo den Befehl "WUT_SetIONum" her. Nur macht der weder, was ich erhoffte, noch gibt es Suchtreffer im Forum bzw. in der IPS-Hilfe. Es gibt aber auch keine Fehlermeldung. Den Befehl gibt es also doch?

    Dann muss ich den Teilen ja noch das passende WuT-Gateway geben. Wie mache ich das automatisiert?

    PHP-Code:
    <?
    // unterhalb von Script wird eine neue Kategorie angelegt, daruntern dann die neuen Instanzen.
    // erstellt W&T Inputs und Outputs mit Standard-Namen z.B. WuT Outout 0

    $category_id IPS_CreateCategory();
    IPS_SetParent($category_id$IPS_SELF);
    IPS_SetName($category_id"WuT Inputs");

    $inputs 12;
    for (
    $i=0;$i<$inputs;$i++)
        {
       
    $instance_id IPS_CreateInstance("{C3D0F82C-CD07-4AA8-AE5C-7AD983FE91F3}"); // Instanz-ID für WuT_Input
        
    IPS_SetParent($instance_id$category_id);
        
    IPS_SetName($instance_id"WuT Input ".$i);
        
    IPS_SetPosition($instance_id$i);
        
    WUT_SetIONum($instance_id$i);
        }


    $category_id IPS_CreateCategory();
    IPS_SetParent($category_id$IPS_SELF);
    IPS_SetName($category_id"WuT Outputs");

    $outputs 12;
    for (
    $i=0;$i<$outputs;$i++)
        {
       
    $instance_id IPS_CreateInstance("{E85C40B3-C1E9-4A60-85C7-6CDDA3D8D7BF}"); // Instanz-ID für WuT_Output
        
    IPS_SetParent($instance_id$category_id);
        
    IPS_SetName($instance_id"WuT Output ".$i);
        
    IPS_SetPosition($instance_id$i);
        
    WUT_SetIONum($instance_id$i);
        }

    ?>

    EDIT: Punkt 1 konnte ich mit einem
    PHP-Code:
    IPS_ApplyChanges($instance_id); 
    beheben. Bleibt noch die Zuweisung der übergeordneten Instanz.

    EDIT 2: Auch das konnte ich mit viel Suchen und Probieren hinbekommen. Ob es DER Weg ist, weiß ich nicht, aber funktionieren tut es:

    PHP-Code:
    <?
    // unterhalb von diesem Script werden zwei neue Kategorien angelegt
    // erstellt darunter dann die neuen Instanzen der Ein- bzw. Augänge mit Standard-Namen z.B. Web-IO 2 Input 0
    // gleiche Bezeichnung im Info-Feld für eine bessere spätere Zuordnung
    // das WuT Gateway vorher anlegen (automatisch wird ein WWW-Reader erstellt)

    $name "Web-IO 2";
    $gateway 56121 /*[WuT Gateway 2]*/;

    // -----------------------------------------------------------------------------
    // Ab hier nichts mehr ändern!


    $category_id IPS_CreateCategory();
    IPS_SetParent($category_id$IPS_SELF);
    IPS_SetName($category_id$name " Inputs");

    $inputs 12;
    for (
    $i=0;$i<$inputs;$i++)
        {
       
    $instance_id IPS_CreateInstance("{C3D0F82C-CD07-4AA8-AE5C-7AD983FE91F3}"); // Instanz-ID für WuT_Input
        
    IPS_SetParent($instance_id$category_id);
        
    IPS_SetName($instance_id$name " Input ".$i);
        
    IPS_SetInfo($instance_id$name " Input ".$i);
        
    IPS_SetPosition($instance_id$i);
        
    WUT_SetIONum($instance_id$i);
        
    IPS_ApplyChanges($instance_id);
        
    IPS_ConnectInstance($instance_id$gateway);
        }

    $category_id IPS_CreateCategory();
    IPS_SetParent($category_id$IPS_SELF);
    IPS_SetName($category_id$name " Output");

    $outputs 12;
    for (
    $i=0;$i<$outputs;$i++)
        {
       
    $instance_id IPS_CreateInstance("{E85C40B3-C1E9-4A60-85C7-6CDDA3D8D7BF}"); // Instanz-ID für WuT_Output
        
    IPS_SetParent($instance_id$category_id);
        
    IPS_SetName($instance_id$name " Output ".$i);
        
    IPS_SetInfo($instance_id$name " Output ".$i);
        
    IPS_SetPosition($instance_id$i);
        
    WUT_SetIONum($instance_id$i);
        
    IPS_ApplyChanges($instance_id);
        
    IPS_ConnectInstance($instance_id$gateway);
        }

    ?>
    Geändert von hrahlers (26.03.13 um 08:09 Uhr) Grund: Verfeinert.
    Gruß Andreas.
    -----------------------------------------------------------------
    IP-Symcon 5.3, Windows x64, 28.11.2019, 321402ec4fe0 - virt. W2k8 R2, CCU2, HM-Funk-und Wired-Komponenten, Tasmota-Geräte, FB7390 (Telefonie), 1-wire-Temp.fühler, Pokeys, RPi, Sophos-UTM, Ubiquiti-APs

Ähnliche Themen

  1. Automatisches Anlegen von Variablen
    Von hrahlers im Forum Skripte, PHP, SQL
    Antworten: 2
    Letzter Beitrag: 20.04.12, 13:21
  2. Status, Anlegen und Löschen von Instanzen
    Von bb61 im Forum Skripte, PHP, SQL
    Antworten: 2
    Letzter Beitrag: 18.11.10, 13:55
  3. Script zum Anlegen von Instanzen
    Von DeejayT im Forum Skripte, PHP, SQL
    Antworten: 6
    Letzter Beitrag: 16.06.09, 06:44
  4. Antworten: 8
    Letzter Beitrag: 09.08.07, 09:12
  5. Anlegen von Variabeln über ein Script
    Von DVB-Freak im Forum Allgemeine Diskussion
    Antworten: 1
    Letzter Beitrag: 05.03.07, 16:53