Author Topic: Playlisten automatisch laden  (Read 2251 times)

Mike

  • Regular
  • *
  • Posts: 778
  • PERSONAL - Edition User
    • View Profile
Playlisten automatisch laden
« Reply #15 on: June 03, 2007, 12:42:30 »
Funkt. super!!! Danke!!

Eine kleine Verschönerung hätte ich noch:( Ich verwende das Skript als Aktionsskript ) Könnte man eine MsgBox einbauen, die eine Meldung gibt, ob mAirList eine Playlist gefunden hat oder nicht, die man mit OK bestätigt? Wäre das möglich?

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Playlisten automatisch laden
« Reply #16 on: June 03, 2007, 12:46:20 »
wenn mairlist keine Playlist gefunden hat, erscheint ne Message im SystemLog
"fehler beim laden der playlist soundso" oder so ähnlich...

ne Messagebox, die man noch bestätigt, kann man glaube ich aus dem Script heraus nicht aufrufen ...

grüße, michi

Mike

  • Regular
  • *
  • Posts: 778
  • PERSONAL - Edition User
    • View Profile
Playlisten automatisch laden
« Reply #17 on: June 03, 2007, 12:50:11 »
Aso OK, aber trotzdem DANKE für die Arbeit!!!!!!

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Playlisten automatisch laden
« Reply #18 on: June 03, 2007, 12:54:28 »
Jo kein Ding... freut mich, wenns was bringt ;)

grüße, michi

frannek1

  • Regular
  • *
  • Posts: 111
    • View Profile
Playlisten automatisch laden
« Reply #19 on: June 03, 2007, 19:17:31 »
also, beim wechsel von 23 auffolgende soll wieder die 00 Stunde geladen werden.. es gibt somit keine 24. Bislang läuft es wirdklich klasse... Beim ersten start muss man eben die playliste manuell laden. Ist auch klar, da sonst der rest nicht geht. Könntest du noch eine mgl einbauen, falls die Playlisten um 00.00 geladen werden dass dann NICHT die 01 Stunde geladen wird?? Sprich so muss ich das script ja noch vor volendeter stunde ausführen...eine option, dass ich auch zur vollen stunde die aktuelle laden kann..vieleicht wieder über ein true oder false.. Merci

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Playlisten automatisch laden
« Reply #20 on: June 03, 2007, 20:03:50 »
Quote from: "frannek1"
also, beim wechsel von 23 auffolgende soll wieder die 00 Stunde geladen werden.. es gibt somit keine 24. Bislang läuft es wirdklich klasse...


jo, mach ich dir...

Quote
Beim ersten start muss man eben die playliste manuell laden. Ist auch klar, da sonst der rest nicht geht.

sorry, den Satz kapier ich nicht :D

Quote from: "frannek1"

 Könntest du noch eine mgl einbauen, falls die Playlisten um 00.00 geladen werden dass dann NICHT die 01 Stunde geladen wird?? Sprich so muss ich das script ja noch vor volendeter stunde ausführen...eine option, dass ich auch zur vollen stunde die aktuelle laden kann..vieleicht wieder über ein true oder false.. Merci


Vorschlag: Wenn das Script vor XX:30 Uhr ausgeführt wird, lädt es die aktuelle Stunde, wenn es um oder nach XX:30 Uhr ausgeführt wird, lädt es die nächste stunde...??
edit: die 30 sind fiktiv und können natürlich durch jeden anderen Wert ersetzt werden ;)

wär das ok? ;)

grüße, michi

frannek1

  • Regular
  • *
  • Posts: 111
    • View Profile
Playlisten automatisch laden
« Reply #21 on: June 03, 2007, 23:08:46 »
das klingt gut ja.. Ne, ich meinte wenn man mairlist öffnet ist die playliste ja nicht gefült. wenn ich nun mitten drin das event ausführe nehmen wir an 14.23 Uhr ...dann wird dort bereits mit Script die 15h stunde geladen. Ich mein, ist jetzt auch nicht so wichtig. ich weis ja nicht, wie die anderen User das hier handhaben und ich möchte nix erschnorren. Wenns der allgemeinheit dient und du Spaß und nutzen bei hast ist das okay...andernfalls hab ich ein doofes Gegfühl dabei :-)


Ach ja, ich könnte mal verraten, was ich für die playlisten Hernehme.. den StationPlaylister :-) Was nehmen denn andere her?

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Playlisten automatisch laden
« Reply #22 on: June 03, 2007, 23:18:48 »
Code: [Select]
var heute: TDateTime;
    temp :Integer;
    stunde: String;
begin
  heute:= now;
  temp:= (StrToInt(FormatDateTime('HH', heute)));
  if ((StrToInt(FormatDateTime('NN', heute)))>=30) then // nächste stunde laden, wenn minute>=30.
    temp:=temp+1;
  stunde:= IntToStr(temp);
  if (temp >=0) and (temp <=9) then //bei einstelligen Zahlen eine 0 zufügen
    stunde:= '0' + stunde;
  if stunde = '24' then // anstatt '24' '00' verwenden
    stunde:= '00';
  CurrentPlaylist.LoadFromM3U('C:/'+FormatDateTime('DDMMYY-', heute)+stunde+ '.m3u', false);
end.



Das Scriptesystem ist ja da, um benutzt zu werden :)

also, das Script dürfte jetzt alles können... in Zeile 7 kannst du anstatt 30 einen anderen wert nehmen. Wenn bei Aufruf des Scripts die Minutenzahl kleiner ist als die vorgegebene zahl (gerade ists 30), wird die playlist der aktuellen stunde geladen, ansonsten die nächste stunde.

und das Script macht jetzt auch '00' aus '24' :)

habs nur kurz getestet, aber es scheint zu tun...

PS: ich nutze eldoDB... :)

grüße, michi

lifechannel

  • Regular
  • *
  • Posts: 1432
  • Professional Edition V4
    • View Profile
    • http://www.lifechannel.ch
Playlisten automatisch laden
« Reply #23 on: June 04, 2007, 14:28:13 »
Eventuell muss hier auch noch das Datum des neuen Tages angepasst werden.

Torben

  • Administrator
  • Doktor mAirList
  • *****
  • Posts: 11411
    • View Profile
Playlisten automatisch laden
« Reply #24 on: June 04, 2007, 14:40:24 »
Sorry, dass ich mich erst jetzt mit den guten Tipps einschalte.

Am einfachsten geht es so:

Code: [Select]
CurrentPlaylist.LoadFromM3U('c:\' + FormatDateTime('ddmmyy-hh', now + 0.04166) + '.m3u', false);

Die ominöse Zahl 0.04166 steht für eine Stunde (= 1/24 Tag). Es wird also einfach das Datum und die Uhrzeit von jetzt plus eine Stunde genommen und entsprechend formatiert. So kriegt man die Playlist der nächsten Stunde. Und man spart sich das Rumgerechne mit dem Datum usw.

Wenn man die aktuelle will, lässt man einfach die Zahl weg:

Code: [Select]
CurrentPlaylist.LoadFromM3U('c:\' + FormatDateTime('ddmmyy-hh', now) + '.m3u', false);


Torben

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Playlisten automatisch laden
« Reply #25 on: June 04, 2007, 15:03:23 »
Ok, das hab ich nicht gewusst... hab's mit IncMinute versucht, aber das ging nicht ;)

... wieder was gelernt.. ;)

Code: [Select]
var heute: TDateTime;
    stunde: String;
begin
  heute:= now;
  stunde :='C:/'+FormatDateTime('DDMMYY-HH', heute)+ '.m3u';  
  if ((StrToInt(FormatDateTime('NN', heute)))>=30) then // nächste stunde laden, wenn minute>=30.
    stunde :='C:/'+FormatDateTime('DDMMYY-HH', heute + 0.04166)+ '.m3u';
  CurrentPlaylist.LoadFromM3U(stunde, false);
end.


so müsste es jetzt aber passen ;)

grüße, michi

Torben

  • Administrator
  • Doktor mAirList
  • *****
  • Posts: 11411
    • View Profile
Playlisten automatisch laden
« Reply #26 on: June 04, 2007, 15:09:19 »
Noch eine kleine Optimierung: Anstelle des Hin- und Herkonvertierens der Minute in einen String und zurück kann man auch DecodeTime verwenden:

Code: [Select]
var hour, min, sec, msec: integer

begin
  DecodeTime(now, hour, min, sec, msec);
  if min >= 30 then
    CurrentPlaylist.LoadFromM3U('c:\' + FormatDateTime('ddmmyy-hh', now + 0.04166) + '.m3u', false)
  else
    CurrentPlaylist.LoadFromM3U('c:\' + FormatDateTime('ddmmyy-hh', now) + '.m3u', false);
end.


Ich kann es gerade mangels Windows nicht testen, aber so könnte es gehen.