Component problem

Hello,

im trying to connect with my agsXMPP library as a component to JM. I figured out that the server answers my open stream only when the to attrib is localhost.

If i send a open stream like that:

<stream:stream to=’‘jabber.ag-software.de’’ from=’‘test.jabber.ag-software.de’’ xmlns=’‘jabber:component:accept’’ xmlns:stream=’‘http://etherx.jabber.org/streams’’>

i get no answer at all.

Another question is if the from attrib here is a MUST. Jabberd need in the configuration for each component another port. So the server knows my port which component is connecting. Is it correct that JM reads the from attrib here?

But the major problem here is that it accepts only connections to localhost.

Alex

sorry i wanted to post this problem in the developer forum. Perhaps a admin could move it.

Thanx Alex

It sounds like the domain messenger is serving is localhost. Go into the web admin and under server settings server name should be your domain. If not, go into server properties and change xmpp.domain to be the domain you want to answer requests to.

I think the from is mandatory. It’‘s how the server knows which subdomain your component wants to register. I believe it’‘s in the JEP, but I don’'t have it open in front of me to verify.

the server domain and xmpp domain are correct. E.g On my test server the domain is gnauck.dyndns.org. But the server doesnt reply to a stream:stream to this domain. But it answers always when to is localhost.

Alex

Hey Alex,

Make sure that the TO attribute in the stream header is of the form . For instance, if your server is names “mylittleserver.com” then components should use a JID like this “weather.mylittleserver.com”.

Regards,

– Gato

Thanx Gato, this fixed my problem.

Alex

i have a last question to the components. If my server is configured to the domain “mydomain.com” then the from attrib in all packets i receive from the server is component.mydomain.com.

Is this the domain of the internal component server? Because i expected to get the packets from mydomain.com.

Alex

here some debug:

OnWriteXml:

The stream header ist from:test.gnauck.dyndns.org

The disco request is from:component.gnauck.dyndns.org

Alex

Hey Alex,

You are correct. The server has an “internal” component service whose JID is component… The service is responsible for processing the disco info sent back from the component.

Regards,

– Gato