Request Jingle *OPGELOST*

Voor vragen over Playlist Automation Language.
Plaats reactie
VIP-Jeff

Request Jingle *OPGELOST*

Ongelezen bericht door VIP-Jeff »

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
Gebruikersavatar
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

Ongelezen bericht door Gerrit »

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.
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.
VIP-Jeff

Re: Request Jingle

Ongelezen bericht door VIP-Jeff »

Het lukt me niet om wat te vinden via de zoekfunctie.
Iemand die ff een topic heeft met PAL script die ik zoek?
Evertje

Re: Request Jingle

Ongelezen bericht door Evertje »

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: 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 voor request's die direct in de queuelist worden geplaatst:

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);
Zelf werk ik met directe injecties op de queue, zoals de afbeeldingen welke hieronder als bijlage zijn toegevoegd is te zien..
Je hebt niet voldoende permissies om de bijlagen van dit bericht te bekijken.
VIP-Jeff

Re: Request Jingle

Ongelezen bericht door VIP-Jeff »

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: 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 voor request's die direct in de queuelist worden geplaatst:

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);
Zelf werk ik met directe injecties op de queue, zoals de afbeeldingen welke hieronder als bijlage zijn toegevoegd is te zien..
Bedankt! Heb het inmiddels werkend gekregen op een kleine aanpassing na.

Jeff
Evertje

Re: Request Jingle *OPGELOST*

Ongelezen bericht door Evertje »

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..
ikrudolf

Re: Request Jingle

Ongelezen bericht door ikrudolf »

VIP-Jeff schreef: Bedankt! Heb het inmiddels werkend gekregen op een kleine aanpassing na.

Jeff
Super handig dit soort reacties, niet dus. Vermeld dan ook wat je hebt gewijzigd zodat andere forum gebruikers hier ook wat aan hebben.
Gebruikersavatar
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*

Ongelezen bericht door radio010 »

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
Plaats reactie
  • Vergelijkbare Onderwerpen
    Reacties
    Weergaves
    Laatste bericht