Channel Join
Joining a channel to another allows you to set up content routing such that events on the source channel will be passed on to the destination channel also. Joins also support the use of filters thus enabling dynamic content routing.
Channels can be joined using the Universal Messaging Enterprise Manager GUI or programmatically.
In joining two Universal Messaging channels there is one compulsory option and two optional ones. The compulsory option is the destination channel. The optional parameters are the maximum join hops and a JMS message selector to be applied to the join.
Note: For a description of the general principles involved in creating channel joins, see the section in the Administration Guide. The description details the usage based on the Enterprise Manager, but the same general principles apply if you are using the API.
Channel joins can be created using the nmakechanjoin join sample application which is provided in the <InstallDir>/UniversalMessaging/server/<InstanceName>/bin directory of the Universal Messaging installation. For further information on using this example please see the nmakechanjoin example page.
Universal Messaging joins are created as follows:
Java, C#:
//Obtain a reference to the source channel
nChannel mySrcChannel = mySession.findChannel( nca );
//Obtain a reference to the destination channel
nChannel myDstChannel = mySession.findChannel( dest );
//create the join
mySrcChannel.joinChannel( myDstChannel, true, jhc, SELECTOR );
C++:
//Obtain a reference to the source channel
nChannel* mySrcChannel = mySession->findChannel( nca );
//Obtain a reference to the destination channel
nChannel* myDstChannel = mySession->findChannel( dest );
//create the join
mySrcChannel->joinChannel( myDstChannel, true, jhc, SELECTOR );