SynthDef Argument posting function

I made a little progress, but one final piece is missing and I hope someone can help me out here (it's more tidal related this time). I've found a way to send all control names of a synth from supercollider to tidal every time SC recieves an OSC message to the path /SynthControls with the name of the synth as argument. This is the SC code for the OSCFunc:


(
OSCdef.new(
	\SynthControls,
	{
		arg msg, time, addr, port;
		var controls, controlNames, name, address, synth;


		address = NetAddr.new("localhost", 6010);

		name = msg[1].asSymbol;

		synth = SynthDescLib.global.at(name);

		controls = synth.controls;

		controlNames = msg[1];

		controls.do{arg control; controlNames = controlNames ++ " " ++ control.name};

		address.sendMsg("/ctrl", "synthControl", controlNames);
	},
	'/SynthControls'
);
)

To read the variable in Tidal (1.7.2) one can use

import Control.Concurrent.MVar
import Data.Map.Strict as Map

fmap (Map.lookup "synthControl") ((readMVar $ sStateMV tidal))

for older versions of Tidal have a look at OSC: Tidal and Processing - #7 by yaxu

So the only thing missing is a tidal function to send a single OSC message to SC, and then post the message recieved back from SC in the console like above. I don't really want to define a custom supercollider target just for this. And it seems so simple to do, but I really don't know how. So I hope someone can help :slight_smile: