Domanda

cl = xmpp.Client('myserver.com')
if not cl.connect(server=('mysefver.com',5223)):
    raise IOError('cannot connect to server')
cl.RegisterHandler('message',messageHandler)
cl.auth('myemail@myserver.com', 'mypassword', 'statusbot')
cl.sendInitPresence()

msgtext = formatToDo(cal, 'text')
message = xmpp.Message('anotheremail@myserver.com',  msgtext) 
message.setAttr('type', 'chat')
cl.send(message)

ottengo il seguente messaggio di errore quando provo a farlo funzionare:

xmpp.protocol.InvalidFrom: (u'invalid-from', '')

Perché sta succedendo :(

È stato utile?

Soluzione

Dal protocollo XMPP specifica :

  

Se il valore della 'dal'   l'indirizzo non corrisponde al nome host rappresentato dalla ricezione   Server quando si apre la connessione TCP (o qualsiasi dominio convalidato   della stessa, come ad esempio un sottodominio convalidata del ricezione del server   nome host o un altro dominio convalidato ospitato dal server di ricezione),   quindi il server autorevole deve generare un flusso   condizione di errore e terminare sia il flusso XML e il sottostante   connessione TCP.

che in pratica significa, che se il mittente non viene riconosciuto dal XMPP-server, lo risponderemo con questo messaggio. XMPP fornisce un meccanismo di registrazione: xmpp.features.register

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top