I happily got Openfire compiling and running and the basic admin setup done, so I can login to the admin console. Now, I’m stuck. This is just on my dev PC running locally, no domain or anything setup. I was wondering if any web-based XMPP client would work using localhost or 127.0.0.1 as the target or anything? But on a slightly deeper level, what’s the JID for my admin user anyway when I have no domain? Is it admin@localhost or admin@, where is currently the name of my PC, which Openfire suggested as the default?
Web-based or desktop client should work on localhost. Yes, your JID would be admin@servername. Actually it is a domain name too, and it usually defaults to computer’s name. You can use computer’s name instead of localhost or IP to login to admin console or in a client.
One thing I don’t quite get is how the client knows where to send messages. Let’s say I deploy Openfire to a running server, but not one that has a nice domain like www.jdx.com… instead it’s like server1234.hostingcompany.com. How does this work? Is the connection separate from the server name somehow? The browser-based client I tried only let me enter username, servername and password… if I enter my servername like “MyPC” how can it know where this is found?
A client would try to connect to internet and then DNS servers and DNS entries on your domain are taking care about this. This means, your server’s domain name should be known to a clients network (it maybe be a hosts file on a client pointing to a correct IP address, or it maybe be a DNS server pointing to a correct server). You can’t just put MyPC as a server in your client, because MyPC wouldnt be a domain known to DNS servers, known to internet. It can work in local network though, but you would still some kind of name resolving solution, may it be a local DNS server or hosts files on every client.
After a little reading of the spec, it seems an IPAdress or any other valid netwoprk identifier is also valid e.g email@example.com?
Yes, using IP address should let you to connect to a server. But server will identify you by your JID - name@domain.