Comment créer CUM et envoyer des messages à l'aide existante CUM Python et XMPP

StackOverflow https://stackoverflow.com/questions/3528373

  •  30-09-2019
  •  | 
  •  

Question

Je me demandais si quelqu'un ici peut fournir quelques exemples de code sur les scénarios suivants. Je suis particulièrement intéressé à utiliser xmpppy pour ce faire que je suis déjà en utilisant la bibliothèque pour mon application, mais d'autres bibliothèques ok aussi. Il est regrettable que le site du projet xmpppy n'a pas d'échantillons à ce sujet. Surfer sur les experts / docs API avancées, je ne pouvais pas comprendre comment le faire, ou chat multi-utilisateur (MUC) non pris en charge avec xmpppy?

  • créer une CUM en invitant les utilisateurs spécifiques (par exemple 2 ou 3)

  • envoyer un message à un existant CUM (en supposant que vous le savez de poignée ou pseudo CUM JID)

  • rechercher existant GCU sur le serveur XMPP, obtenir le JID ou pseudo, etc. Si cela est fait en obtenant liste, nous voulons seulement regarder pour GCU, en ignorant les utilisateurs.

J'ai trouvé une sorte de réponse ici, mais je l'aurais sans doute d'apprendre de nouveaux appels API de bibliothèque et de déterminer comment faire mes scénarios mentionnés ci-dessus que cet échantillon ne couvre pas tous:

pyxmpp: tutoriel pour créer un client muc

Je cherche vraiment à faire un générateur de charge qui pompe des messages à GCU et la création d'un grand GCU avec de nombreux participants. Je l'ai déjà eu la partie en place pour le pompage des messages aux destinataires de l'utilisateur.

Pas de solution correcte

Autres conseils

Xmpppy pris en charge par l'utilisation des services CUM, mais le soutien est très basique et un code supplémentaire sera nécessaire pour gérer plusieurs chambres.

Pour « rejoindre » une salle CUM vous devez diffuser votre présence au JID.

conn.send(xmpp.Presence(to="%s/%s" % (room, nickname)))

Ensuite, pour envoyer des messages, vous les envoyer en utilisant le type de message 'GroupChat' à la JID ambiante.

msg = xmpp.protocol.Message(body=text)
msg.setTo(room)
msg.setType('groupchat')
conn.send(msg)

Quant à votre question concernant la recherche des chambres CUM, qui va être fait par la découverte de service.

Alors que je ne sais pas à propos de l'interface spécifique CUM là, xmpppy peut envoyer des messages personnalisés, il prend en charge XMPP ensemble.

Pour rejoindre le chat, vous devez envoyer présence stranza, conn.send(xmpp.Presence(to='{0}/{1}'.format(room, nick)))

Pour envoyer un message à chat:

    stranza = "<message to='{0}' type='groupchat'><body>{1}</body></message>".format(room, text)
    conn.send(stranza)

En ce qui concerne la création de nouveau chat ou à la recherche vers le haut en liste, je n'ai pas de code prêt à la main, mais il est facile d'écrire de la même façon, il suffit de regarder des stranzas nécessaires XEPS:

http://xmpp.org/extensions/xep-0045.html#createroom

http://xmpp.org/extensions/xep-0045.html# discothèque-chambres

http://xmpp.org/extensions/xep-0045.html#invite

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