IPSInstaller - einige hilfreiche Scripts zur autom. Installation

Mal ne blöde Frage, kann ich die neue Version einfach über eine ältere drüber installieren oder muss ich was beachten? Ich wollte jetzt mal langsam auf IPS 2.5 umsteigen.

Andreas,

würde mich freuen wenn in deiner neuen Version eine felxiblere Version von CreateProfile drin wäre.

Bis dato sind sie ziemlich reklementiert für deine Zwecke :rolleyes:

Morgen Werner,

kannst Du das noch etwas präzisieren was Dir da fehlt - um weche Art von Profil geht es denn.

Guten Morgen Andreas,

derzeit beachtest Du nur Integer-Variablen zum anlegen von Profilen.

Würde mir halt ein wenig mehr Flexibilität wünschen, also auch bool. Ebenso bei den Associations, wenn ich da deine Funktion anschaue betrachtet die auch nur Integer.

Für Boolean gibts eine eigene Funktion, die alle Wünsche erfüllen sollte:


	function CreateProfile_Switch ($Name, $DisplayFalse, $DisplayTrue, $Icon="", $ColorOff=-1, $ColorOn=0x00ff00, $IconOff="", $IconOn="") {

Andreas,

wenn ich mich nicht täusche ist das doch eine Integer-Version

 function CreateProfile_Switch ($Name, $DisplayFalse, $DisplayTrue, $Icon="", $ColorOff=0xaaaaaa, $ColorOn=0x00ff00, $IconOff="", $IconOn="") {
  @IPS_CreateVariableProfile($Name, 1);

OK, hast recht, ich werds bei der nächsten Version korrigieren.

Funktioniert aber trotzdem bereits für boolean Werte (ist bei IPSWatering in Verwendung), allerdings wird das Profile in der GUI bei Boolean Werten nicht auftauchen…

Die IPSInstaller Funktionen wurden in die IPSLibrary integriert, es besteht aber auch weiterhin die Möglichkeit die Funktion auch ohne IPSLibrary zu nützen.

Neue Funtkionen

[ul]
[li]function DeleteCategory($CategoryId)
[/li] [li]function EmptyCategory($CategoryId)
[/li] [li]function CreateMedia ($Name, $ParentId, $FileName, $FileExists=false, $MediaType=1/1=Image/, $Icon="", $Position=0)
[/li] [li]function CreateSerialPort($Name, $ComPort, $Baud=9600, $StopBits=1, $DataBits=8, $Parity=‚None‘, $Position=0, $IgnoreError=true)
[/li] [li]function CreateSerialPortByComPort($Name, $ComPort, $Baud=9600, $StopBits=1, $DataBits=8, $Parity=‚None‘, $Position=0,$IgnoreError)
[/li] [li]function CreateRegisterVariable($Name, $ParentId, $ScriptId, $PortId, $Position=0)
[/li] [li]function ReloadAllWebFronts()
[/li] [li]function GetWFCIdDefault()
[/li][li]function CreateWFCItemWidget ($WFCId, $ItemId, $ParentId, $Position, $variableId, $scriptId)
[/li][/ul]

Hallo,

ich hab jetzt das erste Mal diese tolle Sache eingesetzt und ein kleines (vielleicht Verständnis-)Problemchen.

CreateWFCItemSplitPane ($WFCId, $ItemId, $ParentId, $Position, $Title, $Icon, $Alignment, $Ratio, $RatioTarget, $RatioType, $ShowBorder);

Damit habe ich gespielt. Es geht um $ItemId.
Bisher hatte ich den Konfigurator immer die $ItemId selbst setzen lassen und auf eigene Namen verzichtet.
Das bekomme ich nicht mehr hin. Muss ich mich beim Einsatz dieser Funktion nun selbst drum kümmern oder hab ich was übersehen?

Hi,

ja, die Item Ids muss man manuell vergeben, sonst könnte man ja die Strukturen gar nicht scripten (man muss ja im vorhinein wissen, welche IDs die Parents haben).

Such Dir einfach einen passenden Namen aus (eventuell auch mit gleichem Prefix für eine Seite/Applikation).

Hallo Zusammen,
nachdem ich nun einen ganzen Tag damit zugebracht habe die Scripte aus dem Beitrag [b]Plugwise-Integration in IP-Symcon[/b] in meiner Konsole zum Laufen zu bringen, wage ich es mal mich hier mit meinem Starter-Image zu outen…:frowning:

Mein Problem ist, dass ich als beim Ausführen des Scriptes create_update_circles ich folgende Fehlermeldung bekomme:
„Fatal error: Call to undefined function create_plugwise_category() in [Scripte\Plugwise\create_update_circles] on line 100“

Diese Frage ins Forum gestellt ergab den Hinweis das ich mit dem IPSInstaller Erfolg haben werde.

Wenn ich also das o.g. Script starten, kann er scheinbar eine im Script aufgerufene Funktion nicht ausführen. Diese Funktion befindet sich in einem zweiten Script. Alle Scripte habe ich in die Libary gestellt.

Das kann ich insoweit nachvollziehen, das Funktionen, die in Scripten liegen nicht automatisch zur Verfügung stehen. Deswegen braucht mal wohl auch den IPSInstaller. Damit werden diese Funktionen scheinbar „veröffentlicht“.

Könnte mir jemand mal ein wirklich nachvollziehbares Beispiel geben, wie ich das genau machen muss? (In der Hoffnung, dass es noch mehr solche hilflosen Fällen wie meiner einer gibt, die auch davon profitieren würden…)

Hab mittlerweile das Handbuch gewälzt, das Forum durchsucht und komme einfach nicht mehr weiter…

Vielen Dank schon einmal.
Mirko

Ich denke nicht, dass es am IPSInstaller liegt (zumindest habe ich nirgends einen Funktions Aufruf entdeckt).

Du hast alle Funktionen in eigenen Scripts abgelegt, diese werden aber vermutlich nirgends inkludiert und stehen somit nicht zur Verfügung.

–> Füge alle Funktionen in ein File, speichere es zB unter dem Namen plugwise.inc.php ab und includiere es dann in dem Script das Du startest.

Eventuell kann ja doch einer von den Kollegen helfen, die das Teil am Laufen haben…

Hallo
Heute hatte ich Probleme mit der Funktion
CreateProfile_Switch im IPSInstaller.inc.php.
Das angelegte Profil taucht nicht bei Boolean auf.
Sollte es nicht

@IPS_CreateVariableProfile($Name, 0);

anstatt

@IPS_CreateVariableProfile($Name, 1);

heissen ?

Danke Dir - habs korrigiert …

Hallo,

ich habe folgene Frage.
Wie kann ich ein Event anlegen (function CreateEvent) mit der Änderung auf einen bestimten Wert, oder unter/überschreitung, wie kann ich bei (function CreateEvent ) den Wert vorgeben.

Ich nutze nicht IPSLibrary und bin evt. nicht ganz aktuell mit dem Installer, meine Version ist (Version 2.50.1, 31.01.2012)

Gruß Uwe

Hallo,

Diese Funktionalität wird vom Installer nicht unterstützt, kannst Dir aber selber leicht zusammen Scripten, siehe ips-seteventtriggervalue

Hallo zusammen,

ich finde den IPSInstaller in der IPSLibrary nicht. Dieser sollte doch in der IPSLibrary zu finden sein.
Ich habe darauf hin, da ich dachte meine Library ist defekt, die IPS Library komplett neu installiert.
Leider kann ich wie auf dem Screenshots imWiki die Kategorie IPSInstaller nicht finden und auch nicht als Modul oder ähnliches nachladen.

Jemand eine Idee ?

Ohne den Installer kann ich viele Scripte hier aus dem Forum nicht nutzen.

Moin!

Kannst du mal genauer beschreiben mit was du genau Probleme/Fehler hast? Fehlermeldungen?

Wenn die IPSLibrary installiert ist, dann sind meist nur die Pakete „IPSModuleManager“ und „IPSLogger“ als Voraussetzung angegeben. Manchmal vlt. noch „IPSHighcharts“.

Entweder bringe ich hier grad was durcheinander oder du? :smiley:

Die Datei liegt bei mir hier „C:\IP-Symcon\scripts\IPSLibrary\install\IPSInstaller\IPSInstaller.inc.php“

Grüße,
Chris

Fehler gefunden…

Die Datei hieß früher wohl mal IPSInstaller.ips.php zumindest stand sie so in dem Installer Script für das Philips Hue Script.
Aktuell heißt die Datei aber IPSInstaller.inc.php und sie sollte laut Scriptfehler auch unter C:\IP-Symcon\scripts zu finden sein. Habe sie dort hin kopiert und die Dateinamen im Script korrigiert.

Danke für den Denkanstoß ! „inc“ zu „php“ im Dateinamen habe ich übersehen.

Freut mich zu hören :slight_smile:

Ich würde die Datei aber nicht kopieren, sondern im HUE-Skript einfach den include anpassen auf den anderen Pfad und Dateinamen, denn wenn sich in der „Quelldatei“ was ändert (neue Funktionen oder so), dann suchst du wieder warum wieso weshalb…

Grüße,
Chris