EXEC_SEND_TCP send macro as text

You have a question or need an advice about how to do something? Ask it here!
Post Reply
Maartenvn
Posts: 101
Joined: 21 Aug 2022 19:47
EXEC_SEND_TCP send macro as text

Post by Maartenvn »

Hello

I am trying to send track streaming metadata from one ProppFrexx instance to another, when the master instance is in OnAir mode (line input is open).
To do this I am sending a command to the master when OnSongTitleChanged is triggered on the slave using EXEC_SEND_TCP.

Right now I am using this command:

Code: Select all

EXEC_SEND_TCP ip:port|AUTHORIZATION password${CRLF}${CRLF}EXEC_COMMAND2 ${inputmixer1mute}|Equals(0)|STREAMING_SETSONGTITLE ${streaminglastsongtitle}${CRLF}${CRLF}
The problem is that all macro's get replaced before sending the command, causing ${inputmixer1mute} to be false before sending the command.
Is there a wat to send ${inputmixer1mute} as a string, such that it gets replaced on the master instance, rather than on the slave instance.

Thank you in advance!
User avatar
radio42
Site Admin
Posts: 8295
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: EXEC_SEND_TCP send macro as text

Post by radio42 »

All macros can only be replaced on the sender (sending ProppFrexx), as the receiver doesn't even need to be another ProppFrexx instance.
But even if it is (as in your scenario), it wouldn't make sense in your case, e.g. think of the ${streaminglastsongtitle} macro: for this one it wouldn't make sense to have it replaced on the receiver side ;-)
If you want to send the song title depending on the input mixer mute state, do the conditional execution beforehand, like this:

Code: Select all

EXEC_COMMAND2 ${inputmixer1mute}|Equals(0)|EXEC_SEND_TCP ip:port|AUTHORIZATION password${CRLF}${CRLF}|STREAMING_SETSONGTITLE ${streaminglastsongtitle}${CRLF}${CRLF}
Maartenvn
Posts: 101
Joined: 21 Aug 2022 19:47
Re: EXEC_SEND_TCP send macro as text

Post by Maartenvn »

Hi Bernd

I am not sure if I can use the command like that for our use-case. The slave should set the stream title of the master with it's own streaming title, only if the master input mixer is unmuted.

* ${inputmixer1mute} should be replaced by the master (thus the receiver of the commandstring)
* ${streaminglastsongtitle} should be replaced by the master (thus the sender of the commandstring, this works right now out of the box)

To elaborate more on why we need this, we have 2 computers, both running ProppFrexx: a non-stop instance and a live studio instance. The audio of the live studio is fed into the non-stop instance and some software is used to mute/unmute the input channel and stop the playback of the non-stop.
Only when the input is unmuted on the non-stop should the STREAMING_SETSONGTITLE, send by the live studio, be executed.

So the command that should be sent by the live studio instance (or another TCP client) to the non-stop instance should be:

Code: Select all

EXEC_COMMAND2 ${inputmixer1mute}|Equals(0)|STREAMING_SETSONGTITLE "Song of Live Studio"
I essentially need a way to tell ProppFrexx to not replace a specific macro and send it as regular text so it can be replaced on the receiver end.

Thank you!
User avatar
radio42
Site Admin
Posts: 8295
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: EXEC_SEND_TCP send macro as text

Post by radio42 »

So if I understand you correctly, you want, that some macros should be evaluated locally (before sending it to the receiver; namely the ${streaminglastsongtitle} macro); and some other macros should be evaluated on the remote side (the receiver ProppFrexx instance; namely the ${inputmixer1mute} macro).

This is currently not possible; but I might look into adding a new macro-function: ${RCM:clientname|macroname}
This one could evaluate the given macroname on the specified remote client.
E.g. ${RCM:MyMaster|inputmixer1mute} - where 'MyMaster' is the name of the configured remote client as defined on the slave in the remote client monitor.
User avatar
radio42
Site Admin
Posts: 8295
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: EXEC_SEND_TCP send macro as text

Post by radio42 »

A new version 4.3.3.0-beta is out - which adds the mentioned macro function!
To update use "Check for Beta-Versions..."
Maartenvn
Posts: 101
Joined: 21 Aug 2022 19:47
Re: EXEC_SEND_TCP send macro as text

Post by Maartenvn »

Thank you for implementing this!

Post Reply