Subject: Components
How do you specify what subdomain that a particular component handles? I wrote a test application in C# using the XmppComponentConnection class. I can get it to open a connection. I have hooked all the events and the "OnReadXml", "OnWriteXml" and "StreamParser.OnStreamElement" are firing during the initial handshake. But once that has finished it doesn't seem to be receiveing any other messages.
I'm using JiveMessenger as the the server, and I can see that it has options to allow any component to connect, or only certain subdomains. It also has a screen to look at the details for connected components, and it has columns for Domain, Name, Category, and Type. My component shows a domain name of "localhost", but the other fields are empty.
Here's the output I get on the initial handshake:
<stream:stream to='localhost' xmlns='jabber:component:accept' xmlns:stream='http://etherx.jabber.org/streams'>
<stream:stream xmlns:stream="http://etherx.jabber.org/streams" from="localhost" id="9383d197" >
<handshake xmlns="jabber:component:accept">d4aeed3f06d2ca74c212aea41bc4e248f3412045</handshake>
<handshake xmlns="jabber:component:accept" />
<handshake xmlns="jabber:component:accept" />
<iq xmlns="jabber:component:accept" type="get" id="843-0" from="component.127.0.0.1" to="localhost.127.0.0.1"><query xmlns="http://jabber.org/protocol/disco#info" /></iq>
<iq xmlns="jabber:component:accept" type="get" id="843-0" from="component.127.0.0.1" to="localhost.127.0.0.1"><query xmlns="http://jabber.org/protocol/disco#info" /></iq>
I'm using JiveMessenger as the the server, and I can see that it has options to allow any component to connect, or only certain subdomains. It also has a screen to look at the details for connected components, and it has columns for Domain, Name, Category, and Type. My component shows a domain name of "localhost", but the other fields are empty.
Here's the output I get on the initial handshake:
<stream:stream to='localhost' xmlns='jabber:component:accept' xmlns:stream='http://etherx.jabber.org/streams'>
<stream:stream xmlns:stream="http://etherx.jabber.org/streams" from="localhost" id="9383d197" >
<handshake xmlns="jabber:component:accept">d4aeed3f06d2ca74c212aea41bc4e248f3412045</handshake>
<handshake xmlns="jabber:component:accept" />
<handshake xmlns="jabber:component:accept" />
<iq xmlns="jabber:component:accept" type="get" id="843-0" from="component.127.0.0.1" to="localhost.127.0.0.1"><query xmlns="http://jabber.org/protocol/disco#info" /></iq>
<iq xmlns="jabber:component:accept" type="get" id="843-0" from="component.127.0.0.1" to="localhost.127.0.0.1"><query xmlns="http://jabber.org/protocol/disco#info" /></iq>