Script/Macro in Streaming Servers executed w/o connection

You found a bug or have any issues? Please post them here!
Jhary
Posts: 10
Joined: 27 May 2012 11:43
Script/Macro in Streaming Servers executed w/o connection

Post by Jhary »

Switching to .40 (and yesterday to .41 as well) I encounterered the following problem:

First problem was each and any playlist loaded (not freshly created) would load all Decks and stay there. I was confused (as it didn't do that before upgrading to .40), but what the hell, if PFOA thinks that's the way to behave, someone must have decided that with some thought. No problem. I thought. A while. Not too long, though.
The effect showed when I took over a webradio stream from another DJ, which I lazily do by "reconnect on error every..." and the Macro
PLS_CURRENT_AUTOPLAY_ON
PLS_CURRENT_AUTOLOAD_ON
PLS_CURRENT_AUTOUNLOAD_ON
PLS_CURRENT_REMOVEWHENPLAYED_OFF
in the "On Server Connect" and "On Reconnect" sections. Well.. USED to do. As the songs were already loaded, they didn't "autoplay" and I send an embarassing 15 secs of ... silence (before I noticed the problem, that is, I could hear from outward stream what I sent)

Okay, I was not happy, as my solution has worked all the time before, but OKAY, I thought, just add an "play" command... "PLS_CURRENT_PLAY_CURRENT" should do the trick.

And now I got into trouble...

Whenever I loaded a playlist (not when creating a new one) "autoplay" would turn on and the first song starting.
Quietly cursing I turn the playing song off, but it RE-STARTS within 2 seconds. I turn Autoplay off, turn the song off... wait, Autoplay is on again and AARGH there is the song again.

Actually, writing this down now makes it much easier to locate the error then it was for me when I had just an hour time before I was supposed to go on air, no playlist ready, and unable to start the playlist at a time when I want it to start...

Following an advice from Frank (I guess you have happened to meet him *g*) I moved the config files, then restartet PFOA, and in a long series of shutting-down-pfoa-copy-config-restart-pfoa I finaly found out the problem actually WAS within the streaming servers configuration... which means in the scripts contained in the servers.

Which is strange, as - so far - I never had started a server (since the upgrade, of course). Well... among the features I never noticed before .40 (either because it is new, or because I had it not activated) were listener numbers for servers not currently active... A feature which I *really* love, but I guess whenever the number(s) are updated, the onConnect and/or onReconnect events are executed...

Neither what you expect nor what you want.

Oh, and as we are at "excuting script blocks when you don't expect them to"...
I had (quite unuslay for me...) a second set yesterday night. So I thought to load the second playlist a few minutes before switching, so I had lots of time... well. Good idea. Not.
Instantly the first song of the second playlist started playing. Yes, as in "overlaying the currently playing song from the first playlist". Yes, as in "out on air".

Maybe it was an executing an onConnect/onReconnect event... but there WAS no such event.

Well, I had an ... interesting evening (as in the chinese proverb/curse "May you live in interesting times")...

Sascha
User avatar
radio42
Site Admin
Posts: 8348
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by radio42 »

First problem was each and any playlist loaded (not freshly created) would load all Decks and stay there.
This is freely configurable.
Please check your general settings, section 'Playlist Settings' options 'Auto Load' and 'Auto Unload'.
Maybe you/someone has accidentally changed these settings ;-)

in the "On Server Connect" and "On Reconnect" sections
Can you please clarify what exact events are you using - as there is no "On Server Connect" or "On Reconnect"...
The following streaming server specific events are available:
- On Server Started
- On Server Stopped
- On Disconnected
- On Reconnected
- On Updated
In addition there are 2 global events (see general settings) available:
- Streaming.OnServerStarted
- Streaming.OnServerStopped

Which event are you using?
If you are accidentally using the server specific "On Updated" event - you shouldn't do so!
All other events should NOT be trigged with every reconnect try!
So that would be a bit puzzling...

but it RE-STARTS within 2 seconds...
Guess the follow-up issues are due to the above and are pretty clear...

I finally found out the problem actually WAS...which means in the scripts contained in the servers
What exact script are you talking about? Do you mean the sequence of control-commands being triggered by the above event?
So please double-check which event effectively contains what control-commands....

among the features I never noticed before .40
In .40 or .41 there had been NO playlist behavior changes or streaming server changes being made...so I really guess someone must have changed the initial playlist settings as explained at the very beginning!

but I guess whenever the listener number(s) are updated, the onConnect and/or onReconnect events are executed
Definitely NOT - I double-checked this here...
User avatar
radio42
Site Admin
Posts: 8348
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by radio42 »

Just a few side notes:
a) You should place the control-commands only within one of the events - actually the "On Server Started" I guess.

b) the following commands are not really necessary within your sequence:
PLS_CURRENT_AUTOLOAD_ON
PLS_CURRENT_AUTOUNLOAD_ON
As these two (AutoLoad and AutoUnload) are automatically applied when AutoPlay is turned ON.
User avatar
Adger
Posts: 122
Joined: 10 Apr 2012 20:09
Location: Germany
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by Adger »

I am still desperately waiting for a clear and distinct documentation about what server-related event is trigerred when, has priority over wich.

Oh, and while we are there: Back in the day there was a much used functionality. PFOA would trigger a command in what I call "global server commands" when PFOA successfully connected a server after unsuccessfull retries. That global functionality was dropped. How to hand-script this as a global function? And where does that have to go?

I guess asking for a manual keeps staying fruitless...
User avatar
radio42
Site Admin
Posts: 8348
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by radio42 »

On Server Started:
Triggered once a server is effectively started and connected (no matter if right away or after some initial re-tries).
The global Streaming.OnServerStarted event is triggered as well here.

On Server Stopped:
Triggered once a server is effectively stopped (after a successful connect without trying to reconnect - really stopped).
The global Streaming.OnServerStopped event is triggered as well here.

On Disconnected:
Triggered once a server was connected and now lost its connection.
The global Streaming.OnServerStopped event is triggered as well here.

On Reconnected:
Triggered once the server reconnected (after a connection was lost).
The global Streaming.OnServerStarted event is triggered as well here.


However, for what exactly would you need a 'Connected after Retry' event - which would (as far as I understand you be the same as the 'On Server Started' event, except that it shouldn't be triggered, if the very first connection try is successful - to me this sounds rather needless)?

On Updated:
Triggered each time an update is performed (eg. to gather the listener count).
User avatar
radio42
Site Admin
Posts: 8348
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by radio42 »

However...I am still unsure what bug you are referring to in this post?
Is there any...?
Jhary
Posts: 10
Joined: 27 May 2012 11:43
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by Jhary »

Definition: "Script" is any collection of commands that are executed within PFOA.
Maybe you/someone has accidentally changed these settings
No. I checked.
The Scripts in the Streaming Server settings do set them, though. No matter if called or not.
Can you please clarify what exact events are you using
Local scripts in Streamin Server Settings, NOT "global" events, as there is no "On Reconnected" GLOBAL Event. The Script used consists of these commands:
PLS_CURRENT_AUTOPLAY_ON
PLS_CURRENT_AUTOLOAD_ON
PLS_CURRENT_AUTOUNLOAD_ON
PLS_CURRENT_REMOVEWHENPLAYED_OFF

is in the two events
"On Server Started"
"On Reconnected"
as "On Server Started" is not executed when the server is busy on first try to connect to the server. Thus I need to use local streaming server settings/scripts, instead of a global event - as we noted earlier, there is no "On Reconnected" event globally.
Guess the follow-up issues are due to the above and are pretty clear...
No.
They MIGHT have been the problem if I used the "On Updated" Event, which I didn't.
In .40 or .41 there had been NO playlist behavior changes or streaming server changes being made...so I really guess someone must have changed the initial playlist settings as explained at the very beginning!
No.
When I updated to .40 (from 3.0.11.19) there started to be listener/user numbers for all listed streaming servers. Nothing to do with Playlists.
My playlist settings were all untouched (I checked, as I thought there might be an error)
The problem did not show up when there were no listener/user numbers displayed in the streaming server display/window/float window (again: Nothing to do with Playlists).
a) You should place the control-commands only within one of the events - actually the "On Server Started" I guess.
see above.
PLS_CURRENT_AUTOLOAD_ON
PLS_CURRENT_AUTOUNLOAD_ON
As these two (AutoLoad and AutoUnload) are automatically applied when AutoPlay is turned ON.
They are? This is not mentioned (or at least: WAS not mentioned) in the only available description of the command (the "Edit" window)
What exact script are you talking about?
See start of this posting to understand what a script is in my description.
To "solve" the problem, or rather, to find a work-around around the Bug, I removed ALL scripts (as defined above) in the streamin server entries (and restarted PFOA).
As I do not see the user/listener numbers in the streaming server window any more, I do not have the trouble with auto-starting playlists.
I do still have the problem with autostarting playlists if I load a second playlist while streaming, though.

Sascha
Jhary
Posts: 10
Joined: 27 May 2012 11:43
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by Jhary »

On Server Started:
Triggered once a server is effectively started and connected (no matter if right away or after some initial re-tries).
The global Streaming.OnServerStarted event is triggered as well here.
Since when?

I had real trouble with this one, as it did NOT work on re-connect. Don't believe? Well.. this is what YOU said in this thread: viewtopic.php?f=9&t=696&hilit=reconnect

Does it work now as expected?
Does the GLOBAL event trigger even if first connection try does not work?
The only possible reason for such behavior I can think of is, that the server itself accepts the connection but short after disconnects it again....if that happens, there is not much I can do, as this would be an issue of the server.
Possible - if it only happened on one Server. It happens with all. And even with no server selected (as described),

Please keep in mind some people like your software, but got a life BESIDE PFOA and will not follow every release....

Sascha
User avatar
radio42
Site Admin
Posts: 8348
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by radio42 »

Does the GLOBAL event trigger even if first connection try does not work?
Yes, and in the post you linked, I finally replied, that it was changed according to your request in v3.0.11.34!
Please keep in mind some people like your software, but got a life BESIDE PFOA and will not follow every release
What else should I do than posting replies to your threads plus adding a 'What's New' section per release?
Possible - if it only happened on one Server. It happens with all. And even with no server selected (as described
As said, I am not able to reproduce that here with v.41 and v.42, so it is a bit hard to find any real reason for your issue.
Also when looking a the code I can not see any real possibility how this could even happen.
Have you tried to reproduce it with the latest v.41 or v.42 ?
User avatar
Adger
Posts: 122
Joined: 10 Apr 2012 20:09
Location: Germany
Re: Script/Macro in Streaming Servers executed w/o connectio

Post by Adger »

Please keep in mind some people like your software, but got a life BESIDE PFOA and will not follow every release
What else should I do than posting replies to your threads plus adding a 'What's New' section per release?
It's called "manual" (oder auch "Dokumentation", "Handbuch", "Bedienungsanleitung") Have such intel in there. That's what they are intended for.

Post Reply