Extension point for defining kit channels.(c) SAP AG 2003-2006. All rights reserved. The primary Visual Composer channel through which the current model is read and written. The secondary Visual Composer channel through which services outside of the current model scope are invoked. Defines a new channel.The name of the channel implementation class (must be a class inherited from <q ref="core.env:BaseChannel">BaseChannel</q>).A variable list of arguments to pass to the channel class constructor.The newly defined channel, or <code>null</code> in case of any error.The channel object must have an <code>id</code> property (either declared as a property in the class, or initialized by the Arguments collection) - the <code>id</code> must be prefixed with namespace e.g. com.sap.mypackage:id <h2>Xml definition of a channel in a configuration file</h2> <pre> &lt;CONFIGURE type=&quot;CHANNELS&quot;&gt; ? &lt;HEADER&gt; ? &lt;PRAGMA&gt;# Pragmas section&lt;/PRAGMA&gt; ? &lt;SCRIPT&gt;# Code section. Place here functions\variables which you want to address from within the channel tags &lt;/SCRIPT&gt; &lt;/HEADER&gt; &lt;CHANNELS&gt; + &lt;CHANNEL&gt; &lt;PROPERTIES&gt; &lt;classname&gt;# The name of the channel implementation class &lt;/classname&gt; &lt;/PROPERTIES&gt; &lt;ARGS&gt; * &lt;arg&gt;# An argument to pass to the channel class constructor. (1) The argument can be defined in the script section, and used here (see example). (2) If the argument is of type string, add type=string to the arg tag (see example). (3) The order of the args should match the order of the arguments in the channel constructor &lt;/arg&gt; &lt;/ARGS&gt; &lt;/CHANNEL&gt; &lt;/CHANNELS&gt; &lt;/CONFIGURE&gt; </pre> <h2>Example</h2> <pre> &lt;CONFIGURE type=&quot;CHANNELS&quot;&gt; &lt;HEADER&gt; &lt;SCRIPT&gt;var array = new Array(2); array[0]=&quot;elem1&quot;; array[1]=&quot;elem2&quot;; &lt;/SCRIPT&gt; &lt;/HEADER&gt; &lt;CHANNELS&gt; &lt;CHANNEL&gt; &lt;PROPERTIES&gt; &lt;classname&gt;core.env:myChannelClass&lt;/classname&gt; &lt;/PROPERTIES&gt; &lt;ARGS&gt; &lt;arg type=&quot;string&quot;&gt;myChannel&lt;/arg&gt; &lt;arg&gt;[elem1, elem2, elem3]&lt;/arg&gt; &lt;arg&gt;array&lt;/arg&gt; &lt;/ARGS&gt; &lt;/CHANNEL&gt; &lt;/CHANNELS&gt; &lt;/CONFIGURE&gt; </pre> Returns a specified channel.The channel id.The requested channel object. Returns the complete channels table.Table of channel objects, indexed by channel id.Channel id's are stored in uppercase. Use <q ref="core.lib:Basic!UPPER">UPPER</q> macro to convert the channel name to uppercase before using it as the index in this table. Removes a specified channel.The id of the channel to remove. Fires whenever a channel is connected/disconnected.The channel Id.The new channel status.