2015-09-16 1 views
0

Je développe une application de chat en C# et .NET avec agsxmpp. Jusqu'à présent, j'ai réussi à faire chat unique et groupchat.Découvrez les salles jointes dans agsxmpp

Mais maintenant je suis confronté à un problème avec la récupération des chambres que j'ai déjà rejoint en tant que propriétaire ou membre.

J'ai essayé de trouver sur Internet une telle méthode, mais il n'y en a pas. Je sais qu'il y a moyen de trouver toutes les chambres à sever. Cependant, je veux découvrir seulement les pièces que j'ai créées, c'est-à-dire que je possède ou dont je suis membre.

Y a-t-il une méthode dans agsxmpp qui permet cela? ou tout autre moyen de le faire?

Toute aide est invité ..

Répondre

0

Votre question est très bonne et je fais face à ce pour le moment. La solution que j'ai trouvé était d'utiliser le MucManager et demander la liste des propriétaires, admins et membres pour chaque groupe.

Le MucManager a une série de méthodes qui facilitent cela. Voici quelques-uns d'entre eux:

  • RequestMemberList(Jid, IqCB)
  • RequestAdminList(Jid, IqCB)
  • RequestOwnerList(Jid, IqCB)

Vous devez vous assurer que vous définissez correctement l'appel retour iq pour traiter les listes lorsque le serveur répond.

Vous pouvez trouver plus d'informations sur la classe MucManager sur la documentation officielle ici: http://www.ag-software.net/download/xmpp/agsxmpp.7z

Vous devez télécharger la source, décompressez et ouvrez la documentation à base html dans ../agsxmpp/doc/html/html/

+0

Merci, pour votre aide ... j'ai pensé à ce chemin plus tôt, mais l'ai trouvé très long, alors maintenant j'ai décidé d'utiliser une API pour ce problème .. –

+0

Si votre serveur xmpp fournit une API distincte qui est bonne. Que se passera-t-il si vous migrez vers un Ejabberd pur? L'implémentation de votre client perd la compatibilité :) – Mark

+0

Je ne suis pas sûr que vous ayez trouvé si long, que les propriétaires du groupe m'ont donné la méthode 5 lignes pour moi. Peut-être que le problème que vous avez est lié à l'architecture? – Mark