Das ist eine schwierige Frage zu beantworten, weil ich bezweifle, es gibt viele Entwickler beteiligt bei der Entwicklung über mehrere XMPP-Projekte und Sprachen.
Ich kann ein paar persönliche Wahrnehmungen werfen, aber ... ich könnte verrückt sein!
Was Sie wirklich suchen, ist libraries würde für die Komponentenentwicklung empfohlen werden. Alle Server unterstützen das Komponentenprotokoll. Sie benötigen also nur eine Socket-Verbindung zum Server und einige Hilfsroutinen, um die wiederholten Vorgänge wie das Parsen von Nachrichten zu vereinfachen.
Wo der Server wichtig ist, ist, wenn Sie engere Integration benötigen.
Wenn Sie beispielsweise möchten, dass Ihre Komponente genauso skaliert wird wie Ejabberd, dann sollten Sie wahrscheinlich exmpp verwenden.
Wenn Sie Ihre Komponente neben Openfire in nur Java-Unternehmen bereitstellen müssen, dann sollten Sie wahrscheinlich smack verwenden.
Wenn Sie mit Python vertraut sind und schnell prototypieren möchten, verwenden Sie Wokkel.
Ich denke nicht, Dokumentation wird für jede der Bibliotheken gut sein (habe sie nicht alle angeschaut!), Aber das sollte keine große Last sein. Alles, was Sie wirklich brauchen, ist ein good book auf, wie das XMPP-Protokoll funktioniert und dann einige Beispielcode aus der Bibliothek und es ist ziemlich einfach, von dort weiterzugehen.
Ok, nach ein wenig Forschung, ich verstehe, dass die Sprache der Komponente nicht die gleiche Sprache des Servers sein muss, da sie über TCP interagieren (nicht irgendeine Art von freigegebenen lib). Dennoch gibt es einige Frameworks, die bei der Entwicklung dieser Komponenten helfen. Zum Beispiel haben Sie vorgeschlagen, smack, aber dieser Thread (http://www.igniterealtime.com).org/community/thread/9027) hat mich mit einigen Zweifeln gelassen. – alves