Question

Je suis en train d'utiliser le gestionnaire de connexion avec Openfire Penjab. J'ai un openfire déjà en cours d'exécution. J'ai également installé Penjab et le serveur démarre correctement, me permettant de naviguer vers le port 5280 sur localhost. (Bien que http: // localhost:. 5280 / http-bind donne une "ressource un message introuvable") Je ne sais pas comment procéder d'ici. J'ai activé un paramètre dans la console d'administration sous openfire gestionnaires de connexion Says « gestionnaires de connexion peuvent se connecter à ce serveur. ».

Comment configurer Penjab pour se connecter avec le serveur XMPP?

Jusqu'à présent, j'établissais directement une connexion bosh au serveur en utilisant XMPP stophe lib et le module proxy apache. Maintenant, je veux utiliser Penjab.

Était-ce utile?

La solution

J'ai eu la même question hier et a pu travailler dehors.

Il est juste - vous ne avez pas besoin de configuration du Penjab. Par défaut Penjab fonctionnera sur le port 5280. Punjab dirige strophes automatiquement au serveur souhaité.

<body rid='123' xmlns='http://jabber.org/protocol/httpbind' to='yourdomain.tld' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/>

Ceci est une strophe utilisée pour établir une connexion via BOSH. Vous pouvez voir le attribut « to ». Punjab peut dire de ce quel serveur XMPP pour parler.

Oubliez les trucs de configuration du gestionnaire de connexion à Openfire. Vous pouvez conserver cette fonctionnalité complètement désactivé. C'est parce que Penjab utilise une connexion XMPP normale à Openfire - tout comme un client ordinaire fait -. Il parle sur le port par défaut 5222

tout ce que vous avez à faire est donc

  • tell Penjab ce URL pour écouter
  • demandes de BOSH proxy à cette URL sur le port par défaut Penjab 5280

Dites-Penjab ce URL pour écouter

Dans le fichier punjab.tac il y a une ligne qui dit

root.putChild('bosh', b) # url for BOSH

« bosh » sera une partie de l'URL qui Strophe d'envoyer ses strophes à, qui sera alors http: //www.yourdomain.tld/bosh . Le « / bosh » pourrait aussi être « / httpbind » ou « / XMPP httpbind », mais votre fichier punjab.tac doit savoir.

Demandes Proxy BOSH à cette URL sur le port par défaut Penjab 5280

Suivant votre serveur Web doit gérer les demandes adressées à « / bosh » et les proxy à Penjab sur le port 5280. Supposons que vous utilisez Apache, puis dans la configuration de votre hôte virtuel quelque chose comme ceci ferait le travail:

<IfModule proxy_http_module>
    ProxyRequests Off 
    ProxyPass /bosh http://localhost:5280/bosh
    ProxyPassReverse /bosh http://localhost:5280/bosh
</IfModule>

Autres conseils

Je l'ai fait la même chose et cela a fonctionné à ma fin aussi. Merci pour l'explication détaillée.

Pour ajouter à cela, la raison principale de la confusion dans mon cas était que j'utilise différents hôtes virtuels pour différents projets et plusieurs projets utilisent le même serveur XMPP. Plus sur, bien que le serveur est installé sur localhost, ce ne est pas nommé localhost. Donc, si quelqu'un est confronté à des problèmes similaires, alors vous devez ajouter route = « XMPP: serveur: port » (par exemple route = « XMPP: 127.0.0.1: 5222 » dans mon cas) à toute la demande autrement Penjab ne serait pas en mesure de diriger stances automatiquement au serveur

@ Joe:

Je pense que vous devriez écrire un plugin Strophe.js qui ajouterait l'attribut d'itinéraire correct (route = 'XMPP: dev.mydomain.com: 5222) à vos demandes de XMPP ... Je vais essayer de vous guider à faire que quand je reviens du travail.

On dirait que votre application peut parler avec Penjab, mais Penjab ne sait pas où acheminer vos demandes de XMPP.

Une bonne façon de comprendre pourquoi votre application se bloque sur la connexion serait de lire ceci: http://xmpp.org/extensions/xep-0124.html la recherche de morceaux sur route:)

je âges du Pendjab en arrière, mais de ma connaissance de la façon dont le travail des gestionnaires de connexion bosh, je ne pense pas que votre serveur nécessite aucun réglage spécial pour permettre à Punjab pour y accéder. Par exemple, j'utiliser un gestionnaire de connexion personnalisée écrite en PHP (en utilisant la bibliothèque Jaxl ) qui, quel que soit le type / type / version de la destination serveur jabber est capable de communiquer avec succès avec eux.

Dans votre cas, vous pouvez simplement commencer mandatement vos demandes de Strophe (en utilisant le module proxy apache) http: // localhost: 5280 / http-bind , où 5280 est géré par Punjab conn. directeur. De leur sur elle devrait être en mesure de travailler votre chemin vers le serveur de destination sans aucune configuration spéciale requise au niveau du serveur.

Je vous suggère d'essayer d'abord se connecter à votre compte gmail ou Facebook en utilisant Punjab pour vous assurer que vous avez correctement configuré.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top