Your current code:
spoton {
var %status $dll(data\dll\spoton\spoton.dll,status,)
if (%status == 1) echo -a Spotify is paused.
elseif (%status == 2) echo -a Spotify is playing Advertisement.
elseif (%status == 3) say Spotify » $dll(data\dll\spoton\spoton.dll,song,)
else echo -a Spotify is not running.
}
is using /say in status 3 (the one for other users to see that interest us) to send a message to the current channel (/spoton will fail if what's considered the active window is not a channel/query/etc window.
To send a message to all channel, there is the /amsg command, so first, you could improve the current /spoton alias by offering a feature to send to all channels (though sending a message to all your channel at the same time can be considered and seen bad/harmful/annoying).
Now, you would need to ask Fernet, but 'multi server' and only sending to the active window don't go together, there's only one active window at a time, for a given server. What would multi server support means here if you don't even have an option to send to all channels?
Anyway, /scon -at1 <command> is a command that can be used to execute a command on all connected server. If you use "/scon -at1 spoton", it will fail.
But you can do:
spoton {
var %status $dll(data\dll\spoton\spoton.dll,status,)
if (%status == 1) echo -a Spotify is paused.
elseif (%status == 2) echo -a Spotify is playing Advertisement.
elseif (%status == 3) say Spotify » $dll(data\dll\spoton\spoton.dll,song,)
elseif (%status == 4) amsg Spotify » $dll(data\dll\spoton\spoton.dll,song,)
elseif (%status == 5) scon -at1 amsg Spotify » $unsafe($dll(data\dll\spoton\spoton.dll,song,))
else echo -a Spotify is not running.
}
Now 4 = all channels and 5 = all channels on all connected server. $unsafe is required to avoid evaluation problem like was mentioned by maroon and $dll() returning some line feed characters (but this times it's because of /scon that we need it)
If this is not what was meant by OP with 'multi server' support, then he would have to explain what he wants