Scriptnamen "12345.ips.php"

Hi,
ich habe im Script-Verzeichnis gesehen, das die neuen Dateien jetzt z.B. „12345.ips.php“ heißen (also wie die Script-ID) und nicht wie in der alten Version z.B. „Licht_Bad_an.ips.php“. Ist das wirklich so gewollt?

Grüße,
Jörg

Ja

Gruß,

Toni

Morgen Toni,
das ist ja schade, jetzt muß ich also jedes neues Script umbenennen und entsprechend in der XML Datei ändern.
Bei IPS1.0 konnte man schön z.B. das neue Wetter-Script reinkopieren und dann lief es schon mit dem neuen Script. Tja, ist jetzt halt anders.

Grüße,
Jörg

Hi Zusammen,

wie funktioniert den hier das Includen? Gibt es hier eine Alternative zu dem guten alten

include_once(IPS_GetKernelDir() . "scripts\<scriptname>.ips.php");

oder muss man hier auch entsprechend die ID, sprich den Dateinamen eintragen?

Vielen Dank und Gruß Tommy

also dieser Weg funktioniert jedenfalls immernoch wie gehabt.

Gruß,

Toni

Hallo Tommy,
kommt drauf an, wie das Skript heißt. Also am besten im Skript-verzeichnis nach schauen.

Grüße,
Jörg

Hi,

das war mir soweit klar :wink:

Was ich meinte, ob es möglich ist für das Includieren den sprechenden Namen zu nehmen.

Gruß Tommy


  //Skript mit ID 14871 einbinden
 includeScript(14871);
 
 //Skript mit Namen Testskript einbinden. (Egal an welchem Ort es sich in IPS befindet -> Verwechslungsgefahr!)
 includeNamedScript("Testskript");
 
 //Skript mit Namen Testskript einbinden. (Skript muss direktes Kind von diesem Skript sein)
 includeNamedScript("Testskript", $IPS_SELF);

 //Skript mit Namen Testskript einbinden. (Skript muss in der Hauptkategorie (IP-Symcon) liegen)
 includeNamedScript("Testskript", 0);

 function includeNamedScript($scriptName, $id=-1)
 {
  if($id == -1) {
   includeScript(IPS_GetScriptID($scriptName));
  } else {
   includeScript(IPS_GetScriptIDByName($scriptName, $id));
  }
 }

 function includeScript($scriptID)
 {
  $s = IPS_GetScript($scriptID);
  include($s['ScriptFile']);
 }

So etwa?

paresy

Ganau… Danke Meister :slight_smile:

Gruß Tommy