Denken Sie an die JID, mit der Sie sich anmelden, die Folgendes enthält username
@ domain
. Die domain
ist der logische Name des Dienstes, den Sie verwenden. Für einige Dienste, wie jabber.org
wird der Dienst auf einem Rechner ausgeführt, der den gleichen Namen wie der Dienst hat. Bei vielen anderen Diensten, wie z. B. WebEx Connect und GoogleTalk, ist die Domäne des Dienstes ein Ausgangspunkt, um herauszufinden, wo ein Socket geöffnet werden soll, aber nicht der Name des Rechners. Wenn alles richtig eingerichtet ist, können Sie den Namen des Rechners, zu dem Sie eine Verbindung herstellen wollen, im DNS nachschlagen, indem Sie eine SRV-Eintrag . Zum Beispiel mit dig:
$ dig +short -t SRV _xmpp-server._tcp.gmail.com
20 0 5269 xmpp-server4.l.google.com.
20 0 5269 xmpp-server2.l.google.com.
20 0 5269 xmpp-server1.l.google.com.
5 0 5269 xmpp-server.l.google.com.
20 0 5269 xmpp-server3.l.google.com.
Wenn die Domäne des Dienstes im DNS nicht korrekt konfiguriert ist oder Sie die Dinge nur testen wollen, ist es oft nützlich, diesen Verbindungshost getrennt von der Domäne angeben zu können. Für Ihr Beispiel würden Sie also verwenden:
ConnectionConfiguration("mybox.mydomain.com",
5222,
"myhost");
Wenn Sie möchten, dass auf diesen Dienst auch von Personen außerhalb Ihres Netzwerks zugegriffen wird (entweder von Client zu Server oder von Server zu Server), wäre es sinnvoll, die Domäne des Dienstes in eine vollqualifizierte Domäne umzubenennen, an die Sie SRV-Einträge anhängen können, die dann von diesen externen Einrichtungen verwendet werden können.