Hi there!
Voor ons request systeem, ben ik op zoek naar een PAL script dat elke keer een request jingle afspeeld voor de aangevraagde plaat. Is er iemand die mij daar mee zou kunnen helpen?
Jeff
Request Jingle *OPGELOST*
- Gerrit
- Moderator
- Berichten: 883
- Lid geworden op: 16 nov 2008, 00:08
- SAM-versie: 2018.7
- Database: MySQL
- Windows: 10
- Locatie: Veenendaal
- Contacteer:
Re: Request Jingle
Zoals Evertje al heeft gezegd in je andere topic http://www.broadcasterforum.nl/viewtopi ... =81&t=3206 heeft deze site een zoekfunctie en dat kan jij als geen ander weten want je bent tenslotte al 4 jaar actief op dit forum volgens eigen zeggen !! 
Dus ik zou zeggen: Ga die eens proberen.............en misschien vind je je antwoord wel !!
Gerrit.

Dus ik zou zeggen: Ga die eens proberen.............en misschien vind je je antwoord wel !!
Gerrit.
Vroeger was ik een twijfelaar, ik ben daar nu niet meer zo zeker van.
en
Ik houd van kritiek, maar ik moet het er wel mee eens zijn.
en
Ik houd van kritiek, maar ik moet het er wel mee eens zijn.
Re: Request Jingle
Het lukt me niet om wat te vinden via de zoekfunctie.
Iemand die ff een topic heeft met PAL script die ik zoek?
Iemand die ff een topic heeft met PAL script die ik zoek?
Re: Request Jingle
Onderstaande PAL zou moeten werken, heb het alleen niet getest.. ..werk niet met request's!!
Code voor request's die eerst in de requestlist worden geplaatst:
Code voor request's die direct in de queuelist worden geplaatst:
Zelf werk ik met directe injecties op de queue, zoals de afbeeldingen welke hieronder als bijlage zijn toegevoegd is te zien..

Code voor request's die eerst in de requestlist worden geplaatst:
Code: Selecteer alles
PAL.Loop := True;
PAL.LockExecution;
var Q : TDataSet;
var Song : TSongInfo = TSongInfo.Create();
Q := Query('SELECT songlist.*, requestlist.*, requestlist.ID as requestID FROM songlist INNER JOIN requestlist ON (requestlist.songID = songlist.ID) WHERE (requestlist.ETA < :now) AND (requestlist.status = :new) AND ORDER BY requestlist.ETA ASC LIMIT 1 ',[Now, 'new'],True);
if not Q.EOF then
Begin
Queue.AddFile('C:\muziek/jingle.mp3',ipBottom);
// CAT['Jingles (All)'].Q2(smLRP, NoRules); voor random jingle uit categorie Jingles
Song['ID'] := Q['ID'];
Song['filename'] := Q['filename'];
Song['artist'] := Q['artist'];
Song['title'] := Q['title'];
Song['duration'] := Q['duration'];
Song['requestID'] := Q['requestID'];
Queue.Add(Song,ipBottom);
Query('UPDATE requestlist SET status = :status WHERE (songID = :SongID) AND (status = :new OR status = :pending) ',['pending', Song['ID'], 'new', 'pending']);
End;
Q.Free;
Song.Free;
PAL.UnLockExecution;
while (Queue.Count > 1) do PAL.WaitForPlayCount(1);
Code: Selecteer alles
PAL.Loop := True;
PAL.LockExecution;
var Q1, Q2 : TDataSet;
var Song : TSongInfo = TSongInfo.Create();
Q1 := Query('SELECT songlist.*, requestlist.*, requestlist.ID as requestID FROM songlist INNER JOIN requestlist ON (requestlist.songID = songlist.ID) WHERE (requestlist.ETA < :now) AND (requestlist.status = :new) AND ORDER BY requestlist.ETA ASC LIMIT 1 ',[Now, 'pending', 'new'],True);
if not Q.EOF then
Begin
Q2 := Query('SELECT queuelist.requestID, queuelist.songID, songlist.* from queuelist INNER JOIN songlist ON (songlist.ID = queuelist.songID) ORDER BY sortID DESC LIMIT 1', [], true);
if(Q2['songtype'] <> 'J' then
Begin
Queue.AddFile('C:\muziek/jingle.mp3',ipBottom);
// CAT['Jingles (All)'].Q2(smLRP, NoRules); voor random jingle uit categorie Jingles
End;
Song['ID'] := Q['ID'];
Song['filename'] := Q['filename'];
Song['artist'] := Q['artist'];
Song['title'] := Q['title'];
Song['duration'] := Q['duration'];
Song['requestID'] := Q['requestID'];
Queue.Add(Song,ipBottom);
Query('UPDATE requestlist SET status = :status WHERE (songID = :SongID) AND (status = :new OR status = :pending) ',['pending', Song['ID'], 'new', 'pending']);
End;
Q1.Free;
Q2.Free;
Song.Free;
PAL.UnLockExecution;
while (Queue.Count > 1) do PAL.WaitForPlayCount(1);
Je hebt niet voldoende permissies om de bijlagen van dit bericht te bekijken.
Re: Request Jingle
Bedankt! Heb het inmiddels werkend gekregen op een kleine aanpassing na.Evertje schreef:Onderstaande PAL zou moeten werken, heb het alleen niet getest.. ..werk niet met request's!!![]()
Code voor request's die eerst in de requestlist worden geplaatst:Code voor request's die direct in de queuelist worden geplaatst:Code: Selecteer alles
PAL.Loop := True; PAL.LockExecution; var Q : TDataSet; var Song : TSongInfo = TSongInfo.Create(); Q := Query('SELECT songlist.*, requestlist.*, requestlist.ID as requestID FROM songlist INNER JOIN requestlist ON (requestlist.songID = songlist.ID) WHERE (requestlist.ETA < :now) AND (requestlist.status = :new) AND ORDER BY requestlist.ETA ASC LIMIT 1 ',[Now, 'new'],True); if not Q.EOF then Begin Queue.AddFile('C:\muziek/jingle.mp3',ipBottom); // CAT['Jingles (All)'].Q2(smLRP, NoRules); voor random jingle uit categorie Jingles Song['ID'] := Q['ID']; Song['filename'] := Q['filename']; Song['artist'] := Q['artist']; Song['title'] := Q['title']; Song['duration'] := Q['duration']; Song['requestID'] := Q['requestID']; Queue.Add(Song,ipBottom); Query('UPDATE requestlist SET status = :status WHERE (songID = :SongID) AND (status = :new OR status = :pending) ',['pending', Song['ID'], 'new', 'pending']); End; Q.Free; Song.Free; PAL.UnLockExecution; while (Queue.Count > 1) do PAL.WaitForPlayCount(1);
Zelf werk ik met directe injecties op de queue, zoals de afbeeldingen welke hieronder als bijlage zijn toegevoegd is te zien..Code: Selecteer alles
PAL.Loop := True; PAL.LockExecution; var Q1, Q2 : TDataSet; var Song : TSongInfo = TSongInfo.Create(); Q1 := Query('SELECT songlist.*, requestlist.*, requestlist.ID as requestID FROM songlist INNER JOIN requestlist ON (requestlist.songID = songlist.ID) WHERE (requestlist.ETA < :now) AND (requestlist.status = :new) AND ORDER BY requestlist.ETA ASC LIMIT 1 ',[Now, 'pending', 'new'],True); if not Q.EOF then Begin Q2 := Query('SELECT queuelist.requestID, queuelist.songID, songlist.* from queuelist INNER JOIN songlist ON (songlist.ID = queuelist.songID) ORDER BY sortID DESC LIMIT 1', [], true); if(Q2['songtype'] <> 'J' then Begin Queue.AddFile('C:\muziek/jingle.mp3',ipBottom); // CAT['Jingles (All)'].Q2(smLRP, NoRules); voor random jingle uit categorie Jingles End; Song['ID'] := Q['ID']; Song['filename'] := Q['filename']; Song['artist'] := Q['artist']; Song['title'] := Q['title']; Song['duration'] := Q['duration']; Song['requestID'] := Q['requestID']; Queue.Add(Song,ipBottom); Query('UPDATE requestlist SET status = :status WHERE (songID = :SongID) AND (status = :new OR status = :pending) ',['pending', Song['ID'], 'new', 'pending']); End; Q1.Free; Q2.Free; Song.Free; PAL.UnLockExecution; while (Queue.Count > 1) do PAL.WaitForPlayCount(1);
Jeff
Re: Request Jingle *OPGELOST*
Jeff, is die aanpassing een fout in het PAL script hierboven gegeven?! Zo ja, zou je dan willen aangeven wat de fout was.. ..zodat een ieder ander die ermee wil werken, niet tegen diezelfde fout aanloopt!!
Alvast bedankt..
Alvast bedankt..
Re: Request Jingle
Super handig dit soort reacties, niet dus. Vermeld dan ook wat je hebt gewijzigd zodat andere forum gebruikers hier ook wat aan hebben.VIP-Jeff schreef: Bedankt! Heb het inmiddels werkend gekregen op een kleine aanpassing na.
Jeff
- radio010
- *
- Berichten: 24
- Lid geworden op: 09 dec 2017, 08:27
- SAM-versie: 3.4.3.*
- Database: MySQL
- Windows: 10
- Locatie: 010
- Contacteer:
Re: Request Jingle *OPGELOST*
ik krijg foutmeldingen bij beide scripts helaas, een Q die niet bestaat bij de ene en bij de andere een uitvoerfout op de te spelen categorie..
Een stapje verder denkend wil ik graag een requestjingle met aux1 door het nummer heen laten horen
Een stapje verder denkend wil ik graag een requestjingle met aux1 door het nummer heen laten horen
-
- Vergelijkbare Onderwerpen
- Reacties
- Weergaves
- Laatste bericht