Ich brauche dringend eure Unterstützung. Ich bin völlig verzweifelt...
Das senden einer XMPP-Nachricht aus einem Python Script heraus an einen einzelnen Empfänger, war relativ einfach und funktioniert auch gut.
Nun möchte ich aber eigentlich Statusmeldungen an ein Gruppe von Empfängern senden.
Ich durchsuche dazu seit Wochen schon diverse Foren und Hilfeseiten, wie z.B.:
1.) https://xmpp.org/extensions/xep-0045.html
2.) http://tmp.marmaro.de/www.ioexception.d ... index.html
3.) https://www.nsoftware.com/kb/xml/09270707.rst
4.) https://stackoverflow.com/questions/112 ... ing-xmpppy
5.) https://www.generacodice.com/de/articol ... mpp-senden
6.) https://stackoverflow.com/questions/113 ... hon-xmpppy
um nur einige zu nennen.
Am Anfang hört sich alles immer "ganz einfach" an (z.B.: Titelzeile), aber am Ende des Tages wird die Nachricht einfach nicht gesendet.
Ich werde noch wahnsinnig!!!
Der folgende Code läuft so durch:
Code: Alles auswählen
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# -------------------- Import Bibliotheken --------------------------------
import sys,time,xmpp
def sendMessageToGroup(server, user, pwd, room, nick, text):
# ---------------- Authentifizierung ----------------------------------
jid = xmpp.protocol.JID(user)
user= jid.getNode()
# ---------------- Verbindung zum Server herstellen -------------------
conn = xmpp.Client(server, debug=[])
connection = conn.connect()
if not connection:
print ('connection failed')
sys.exit(1)
# ---------------- Am Server anmelden ---------------------------------
login = conn.auth(user=jid.getNode(), password=pwd)
if not login:
print ('authentication failed')
sys.exit(1)
# ---------------- Presence im Chat-Raum anmelden ----------------------
Raum ="%s/%s" % (room, nick)
#initial_presence = conn.sendInitPresence()
join = xmpp.protocol.Presence(to=Raum, xmlns='http://jabber.org/protocol/muc')
print(join)
# ---------------- Nachricht für diesem Chat-Raum vorbereiten ---------
msgObj = xmpp.protocol.Message(to=Raum, body=text)
print(msgObj)
try:
conn.send(msgObj)
except Exception as error:
print(error)
# ---------------- Verbindung zum Server wieder trennen ---------------
time.sleep(3)
conn.disconnect()
print('Done.')
# -------------------- Hauptprogramm --------------------------------------
if __name__ == "__main__":
# ---------------- Variablen initialisieren ---------------------------
server = 'jabber.de'
user = '<Benutzername>@jabber.de'
pwd = '<VollDasGeheimePasswort>'
room = '<Chatroom>@conference.jabber.de'
nick = 'Wartezimmer'
text = 'Hallo Welt!'
# ---------------- Funktionsaufruf ------------------------------------
sendMessageToGroup(server, user, pwd, room, nick, text)
Kann mir bitte jemand von euch helfen und mir sagen, was ich falsch gemacht, oder vergessen habe?
Vielen Dank im Voraus!
Beste Grüße und Happy Halloween
U32