Jingel
Jingel
Is het mogelijk om een jingel te draaien voor een request via een PAL script of zo ?
Alleen bij een verzoekje die aangevraagd is op de website.
Heb wel een script die om de 4 plaatjes een jingel draai,maar ik krijg het niet voor elkaar om een jingel voor een verzoekje te krijgen.
Alleen bij een verzoekje die aangevraagd is op de website.
Heb wel een script die om de 4 plaatjes een jingel draai,maar ik krijg het niet voor elkaar om een jingel voor een verzoekje te krijgen.
- Kees
- Beheerder
- Berichten: 3149
- Lid geworden op: 28 nov 2005, 22:07
- SAM-versie: 4.2.2.*
- Database: MySQL
- Windows: 11
- Locatie: Bergen op Zoom
- Contacteer:
Gevonden op de Spacialaudio site.
Ik weet niet of je hier iets aan hebt maar je kan het allicht proberen.
Ik weet niet of je hier iets aan hebt maar je kan het allicht proberen.
Code: Selecteer alles
{ PAL script to manually handle requests to play within a
category based rotation logic system }
PAL.Loop := True;
{-->Insert first songs into queue}
CAT['Jingles (All)'].QueueBottom(smLemmingLogic,NoRules);
CAT['Power hit'].QueueBottom(smWeighted,EnforceRules);
CAT['Heavy Rotation'].QueueBottom(smWeighted,EnforceRules);
CAT['Jingles (All)'].QueueBottom(smLemmingLogic,NoRules);
{-->Insert next request + Jingle if request was found}
var AQuery : TDataSet;
var Song : TSongInfo;
AQuery := Query('SELECT songlist.*, requestlist.ID as requestID '
+' FROM songlist,requestlist '
+' WHERE (requestlist.ETA<:now) AND (requestlist.status=''new'') AND (songlist.ID=requestlist.songID) '
+ 'ORDER BY requestlist.ETA ASC '
+' LIMIT 1 ',[Now],True);
if not(AQuery.BOF and AQuery.EOF) then
begin
{A cool idea would be to insert a jingle here
that says "The next song is by request" or something simular}
{For example: Queue.AddFile('c:\.mp3',ipBottom);}
{Copy the needed information from the dataset}
Song := TSongInfo.Create();
Song['ID'] := AQuery['ID'];
Song['filename'] := AQuery['filename'];
Song['artist'] := AQuery['artist'];
Song['title'] := AQuery['title'];
Song['duration'] := AQuery['duration'];
Song['requestID'] := AQuery['requestID'];
{Add request to queue}
Queue.Add(Song,ipBottom);
WriteLn('Request handled: '+Song['artist']+' - '+Song['title']);
{Change status of request}
ExecSQL('UPDATE requestlist SET status=:status WHERE (songID = :songID) AND ((status=''new'') OR (status=''pending'')) ',['pending',song['ID']]);
{Insert Jingle after request}
CAT['Jingles (All)'].QueueBottom(smLRP,NoRules);
end
else
WriteLn('No request found');
{-->Insert final category}
CAT['Rare rotation'].QueueBottom(smWeighted,EnforceRules);
{Wait for songs in queue to play}
while (Queue.Count > 1) do
PAL.WaitForPlayCount(1);
- Kees
- Beheerder
- Berichten: 3149
- Lid geworden op: 28 nov 2005, 22:07
- SAM-versie: 4.2.2.*
- Database: MySQL
- Windows: 11
- Locatie: Bergen op Zoom
- Contacteer:
Re: Jingel
Klopt helemaal...maar de aanhouder wint...salector schreef:bedankt voor het script![]()
helaas werkt het niet
Deze werkt wel..
Alleen de regel
Queue.AddFile('d:\jingle.mp3',ipTop
wijzigen naar jou jingle.
Hier komt het script..
Code: Selecteer alles
PAL.Loop := True;
PAL.LockExecution;
var AQuery : TDataSet;
var Song : TSongInfo;
AQuery := Query('SELECT songlist.*, requestlist.*, requestlist.ID as requestID '
+' FROM songlist, requestlist '
+' WHERE (requestlist.ETA<:now) AND (requestlist.status=''new'') AND (songlist.ID=requestlist.songID) '
+ 'ORDER BY requestlist.ETA ASC '
+' LIMIT 1 ',[Now],True);
if not(AQuery.BOF and AQuery.EOF) then
begin
Song := TSongInfo.Create();
Song['ID'] := AQuery['ID'];
Song['filename'] := AQuery['filename'];
Song['artist'] := AQuery['artist'];
Song['title'] := AQuery['title'];
Song['duration'] := AQuery['duration'];
Song['requestID'] := AQuery['requestID'];
Queue.Add(Song,ipTop);
WriteLn('Request handled: '+Song['artist']+' - '+Song['title']);
Queue.AddFile('d:\jingle.mp3',ipTop
ExecSQL('UPDATE requestlist SET status=:status WHERE (songID = :songID) AND ((status=''new'') OR (status=''pending'')) ',['pending',song['ID']]);
end
else
WriteLn('No request found');
PAL.UnLockExecution;
AQuery.Free;
Song.Free;
Re: Jingel
Hallosalector schreef:Is het mogelijk om een jingel te draaien voor een request via een PAL script of zo ?
Alleen bij een verzoekje die aangevraagd is op de website.
Heb wel een script die om de 4 plaatjes een jingel draai,maar ik krijg het niet voor elkaar om een jingel voor een verzoekje te krijgen.
Ik zoek nog een PAL script die om de 3 of 4 platen een jingle draait, kan je die voormij posten..
vriendelijk bedankt
Brian
Jingel
Code: Selecteer alles
ExecSQL('UPDATE requestlist SET status=:status WHERE (songID = :songID) AND ((status=''new'') OR (status=''pending'')) ',['pending',song['ID']]);
deze regel geeft een Syntax error ???
ook zegt hij onder in het scherm expected.[line30, column:1]
Als ik kijk in DesktopB bij het PAL scherm geeft hij Compiler errors
- Kees
- Beheerder
- Berichten: 3149
- Lid geworden op: 28 nov 2005, 22:07
- SAM-versie: 4.2.2.*
- Database: MySQL
- Windows: 11
- Locatie: Bergen op Zoom
- Contacteer:
Re: Jingel
Zeer vreemd...salector schreef:[/color]Code: Selecteer alles
ExecSQL('UPDATE requestlist SET status=:status WHERE (songID = :songID) AND ((status=''new'') OR (status=''pending'')) ',['pending',song['ID']]);
deze regel geeft een Syntax error ???
ook zegt hij onder in het scherm expected.[line30, column:1]
Als ik kijk in DesktopB bij het PAL scherm geeft hij Compiler errors
Ik heb het script hier, n.a.v. jou vraag, sinds gisteren draaien zonder errors.
Heb je de verwijzing naar de jingle goed staan ?
Je draait toch wel met mysql hoop ik ?
Anders zou het daar ook wel eens mee mis kunnen gaan !
Voor de zekerheid plaats ik het hele script nog een keer.
Ik hoop dat je er aan uit kan komen.
Suc6
Code: Selecteer alles
PAL.Loop := True;
PAL.LockExecution;
var AQuery : TDataSet;
var Song : TSongInfo;
AQuery := Query('SELECT songlist.*, requestlist.*, requestlist.ID as requestID '
+' FROM songlist, requestlist '
+' WHERE (requestlist.ETA<:now) AND (requestlist.status=''new'') AND (songlist.ID=requestlist.songID) '
+ 'ORDER BY requestlist.ETA ASC '
+' LIMIT 1 ',[Now],True);
if not(AQuery.BOF and AQuery.EOF) then
begin
Song := TSongInfo.Create();
Song['ID'] := AQuery['ID'];
Song['filename'] := AQuery['filename'];
Song['artist'] := AQuery['artist'];
Song['title'] := AQuery['title'];
Song['duration'] := AQuery['duration'];
Song['requestID'] := AQuery['requestID'];
Queue.Add(Song,ipTop);
WriteLn('Request handled: '+Song['artist']+' - '+Song['title']);
Queue.AddFile('d:\jingle.mp3',ipTop
ExecSQL('UPDATE requestlist SET status=:status WHERE (songID = :songID) AND ((status=''new'') OR (status=''pending'')) ',['pending',song['ID']]);
end
else
WriteLn('No request found');
PAL.UnLockExecution;
AQuery.Free;
Song.Free;
- Kees
- Beheerder
- Berichten: 3149
- Lid geworden op: 28 nov 2005, 22:07
- SAM-versie: 4.2.2.*
- Database: MySQL
- Windows: 11
- Locatie: Bergen op Zoom
- Contacteer:
Re: Jingle
Ik zie het nu ook ja...salector schreef:heb het script is goed bekeken,maar ik mis bij de regel );
Queue.AddFile('d:\jingle.mp3',ipTop );
nu is de foutmelding weg![]()
Het werkt![]()
![]()
supper !!!
Bedankt !!
Zal iets mis gegaan zijn met het copieren en plakken hier.
Maar het werkt nu en dat is het belangrijkste.
-
- Vergelijkbare Onderwerpen
- Reacties
- Weergaves
- Laatste bericht
-
- 3 Reacties
- 1543 Weergaves
-
Laatste bericht door radioomega
-
- 13 Reacties
- 4223 Weergaves
-
Laatste bericht door cyberneticorganism
-
- 0 Reacties
- 166 Weergaves
-
Laatste bericht door radioomega
-
- 6 Reacties
- 1847 Weergaves
-
Laatste bericht door Kees