I want to dedicate a given output to a specific user's account on a streaming service.
If you are running a version less than 6.2:
You must send this command for each IP connection to the MMS.
This command's lifespan is equal to the IP connection's lifespan.
If you disconnect for any reason, you must send this command again.
If you are running version 6.2 or higher:
To latch the setting on a given stream, select that stream and then append False as the final argument to the SetServiceAccount command.
SetServiceAccount Service Account False
To unlatch a given service, select the stream, then
SetServiceAccount Service Clear False
To unlatch all services, select the stream, then
SetServiceAccount Clear Clear False
Leave the False off or replace with True to make temporary (non latching) settings. This behavior is the default and duplicates what the command used to do in versions less than 6.2.
The control protocol has a command called SetServiceAccount. This command takes two arguments, the Service Name and the Account Name.
SetServiceAccount <ServiceName> <AccountName>
For example: SetServiceAccount Pandora firstname.lastname@example.org
To see how this command can make semi permanent changes, see the end of this article as it depends on the firmware version running on the MMS.
In order to do this programmatically, it may be necessary to retrieve a list of all service accounts available on the server. To do this, there is a command BrowseServiceAccounts that operates just like any other browse command where it takes a <start> and <count> argument. There is an additional, optional third argument where a specific service can be specified by name or GUID.
BrowseServiceAccounts 1 10 would retrieve 10 accounts starting at 1.
BrowseServiceAccounts 11 10 would retrieve 10 accounts starting at 11.
BrowseServiceAccounts 1 5 Pandora would retrieve up to 5 Pandora accounts, if any exist.
As with all MMS control commands, it must be sent to port 5004 on the MMS. It must be followed by a carriage return and a line feed. Once sent, simply browse the service in question normally and the specified account will be preselected for you.