Hallo.
Einige unserer bewährten Scripte laufen unter Version 3 nicht mehr.
Da Torben wenig Zeit hat, meine Frage in die Runde:
Kann jemand helfen?
Einige Scripte stammen von Michi.
Hier Nummer 1:
Fehlermeldung
“Error running script: [Fehler] (38:49) Unknown identfier ‘sttEstimated’”
Script:
[code][i]{um mehr brückenelemente hinzuzufügen einfach
#1. array erweitern
#2. pfad[id] := ‘pfad’ hinzufügen
#3. bei url den ‘max-wert’ ändern
#4. ggf die if bedingung ändern, rauslöschen, je nach anwendung
#5. fertig
#—Stand: 13.04.2008— michi
}
procedure Einfuegen(index: Integer);
var i : Integer;
pfad: Array[0…2] of string; //
begin
pfad[0] := ‘Y:\Trailer\jingle-backtimer_fable.mp3’;
pfad[1] := ‘Y:\Trailer\jingle-backtimer_news.mp3’;
pfad[2] := ‘Y:\Trailer\jingle-backtimer_soft.mp3’;
i := Random(2);
try
CurrentPlaylist.InsertFile(index, pfad[i], eaNone);
except
SystemLog(‘Fehler beim Einfügen.’);
end;
end;[/i]
var //variabeln fuer die suche nach dem letzten element der laufenden Stunde
nextHour: TDateTime;
jetzigeStunde: Integer;
jetzt: TDateTime;
i: Integer;
begin
jetzigeStunde := StrToInt(FormatDateTime(‘h’, now));
nextHour :=EncodeDate(1899, 12, 30);
nextHour := nextHour + EncodeTime(jetzigeStunde,0,0,0)+ + 0.0416666666;
for i:=0 to CurrentPlaylist.GetCount-1 do begin
if (CurrentPlaylist.GetItem(i).GetStartTime(sttEstimated) > (nextHour-0.000694444)) and (CurrentPlaylist.GetItem(i).GetStartTime(sttEstimated) < (nextHour)) then begin
Einfuegen(i);
CurrentPlaylist.GetItem(i).SetColor(clYellow);
CurrentPlaylist.GetItem(i).SetColored(true);
end;
end;
end.[/code]
Script 2
Fehlermeldung:
[i]> Fehler beim Ausführen der Aktion: [Error] (2:19): Unknown identifier
‘INSERTPLAYLIST’[/i]
Script:
[code]begin
CurrentPlaybackControl.SetAutomation(true);
CurrentPlaylist.InsertPlaylist(0, Database(0).GetCurrentPlaylist);
CurrentPlaybackControl.AutomationNext;
end.
/*
BeitragVerfasst am: Mi, 25. Okt 2006, 23:21
So, es gibt (halbe) Neuigkeiten. Ich habe das Script-System jetzt so erweitert,
dass man auch Zugriff auf die Datenbanken hat. Prinzipiell kan man nun also mit
Code:
begin
CurrentPlaybackControl.Playlist.InsertPlaylist(0, Database(0).GetCurrentPlaylist);
end.
die aktuelle Datenbank-Playlist einfügen.
Analog gibt es eine zweite Methode GetNextPlaylist für die Playlist der nächsten Stunde.
Allerdings passiert zur Zeit noch nichts,
weil beide Methoden sowohl für die eldoDB als auch für die radioDB noch nicht implementiert sind.
Das hole ich aber bald nach.
Torben
Hab ich das richtig verstanden,
“GetCurrentPlaylist” hängt genau die Playlist vom aktuellen Tag und der aktuellen Stunde hinten dran?
Ja. Und “GetNextPlaylist” die von der nächsten Stunde.
“Ranhängen” ist aber falsch, erstmal wird sie ausgelesen und zurückgegeben,
man kann sie dann aber gleich an Playlist.InsertPlaylist usw. weiterreichen.
Torben
*/[/code]
Und Nummer 3:
[code]“Fehler PLAYBACKCONTROL_PLAYLISTEMPTY 0 Null Pointer Exception”
Script:
{-------------------------------------------------------------------------------
PlaylistEmpty.mls - Notification Script for mAirList
Loads an emergency playlist when a playlist has run empty during automation.
Author: Torben Weibert torben@weibert.de
Date: 2007-12-28
See http://www.mAirList.com for further information.
-------------------------------------------------------------------------------}
procedure OnPlaylistEmpty(PlaybackControl: IPlaybackControl; Playlist: IPlaylist);
begin
Playlist.LoadFromFile(‘Y:\Verzeichnisse\mAirList\playlists\Playlist_Emty\PL_Emty_’ + FormatDateTime(‘HH’, now) + ‘.mld’);
end;
begin
end.[/code]
Wäre schön wenn ich die Scripte am WE wieder an den Start bekommen würde, da ich dann auf die Version 3 umstellen möchte.
Danke im Voraus