Enable/Disable Message Center Streams with an RTR

MC streams can be switched on/off by sending an RTR message.

It must contain either streamTitle (to select streams by their Msg Stream Titles), or streamId (to select streams by their Msg Stream IDs) parameter and streamOperation parameter applying specific status to selected streams (valid values are enable/disable).

 CM example to enable streams by their titles (click to expand):
<EagleML xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="RunTaskRequest" eaglemlVersion="2-0" xsi:schemaLocation="http://www.eagleinvsys.com/2011/EagleML-2-0 eagleml-main-2-0.xsd" eaglemlType="RunTaskRequest">
	<header>
		<messageId>ENABLE_DISABLE</messageId>
		<sentBy>http://www.client.com</sentBy>
		<sendTo>http://www.eagleinvsys.com/eagle_ml-2-0_default_cm_control_message</sendTo>
		<replyTo>http://www.client.com/Eagle Control Messages</replyTo>
		<creationTimestamp>2012-08-02T22:13:32.272-05:00</creationTimestamp>
	</header>
	<taskIdentifier>
		<correlationId correlationIdScheme="correlationIdScheme">ENABLE_DISABLE</correlationId>
		<businessTaskId correlationIdScheme="businessTaskIdScheme">ENABLE_DISABLE</businessTaskId>
	</taskIdentifier>
	<taskTypeEnum>NEW</taskTypeEnum>
	<taskParameters>
		<taskParameter>
			<name>StreamName</name>
			<dataType>S</dataType>
			<value>eagle_mc_server_support</value>
		</taskParameter>
		<taskParameter>
			<name>streamTitle</name>
			<dataType>S</dataType>
			<value>NEW FTP OUT,qa_test_100</value>
		</taskParameter>
        <taskParameter>
			<name>streamOperation</name>
			<dataType>S</dataType>
			<value>enable</value>
		</taskParameter>
	</taskParameters>
</EagleML>
 CM example to disable a stream by its ID (click to expand):
<EagleML xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="RunTaskRequest" eaglemlVersion="2-0" xsi:schemaLocation="http://www.eagleinvsys.com/2011/EagleML-2-0 eagleml-main-2-0.xsd" eaglemlType="RunTaskRequest">
	<header>
		<messageId>ENABLE_DISABLE</messageId>
		<sentBy>http://www.client.com</sentBy>
		<sendTo>http://www.eagleinvsys.com/eagle_ml-2-0_default_cm_control_message</sendTo>
		<replyTo>http://www.client.com/Eagle Control Messages</replyTo>
		<creationTimestamp>2012-08-02T22:13:32.272-05:00</creationTimestamp>
	</header>
	<taskIdentifier>
		<correlationId correlationIdScheme="correlationIdScheme">ENABLE_DISABLE</correlationId>
		<businessTaskId correlationIdScheme="businessTaskIdScheme">ENABLE_DISABLE</businessTaskId>
	</taskIdentifier>
	<taskTypeEnum>NEW</taskTypeEnum>
	<taskParameters>
		<taskParameter>
			<name>StreamName</name>
			<dataType>S</dataType>
			<value>eagle_mc_server_support</value>
		</taskParameter>
		<taskParameter>
			<name>streamId</name>
			<dataType>S</dataType>
			<value>143426</value>
		</taskParameter>
        <taskParameter>
			<name>streamOperation</name>
			<dataType>S</dataType>
			<value>disable</value>
		</taskParameter>
	</taskParameters>
</EagleML>

Based on incoming parameters the following SQL is constructed and executed:

UPDATE msgcenter_dbo.msg_streams MS
      SET MS.STREAM_STATUS =
--'S' in case streamOperation – disable
--Null in case streamOperation – enable
WHERE

--MSG_STREAM_TITLE in case streamTitle is set in the incoming message
--MSG_STREAM_ID in case streamId is set in the incoming message      
       in 
--(List of values generated based on streamTitle/streamId)

This logic is wrapped in eagle_mc_server_support_setup_stream.xml that is part of eagle_mc_server_support_import_stream.rsfÂ