Вы можете добавить загрузчик для xmlstream.STREAM_END_EVENT или установить отложенное значение clientConnectionLost.
from twisted.words.protocols.jabber import client
from twisted.words.protocols.jabber import jid
from twisted.words.protocols.jabber import xmlstream
j = jid.JID("name@example.org/bla")
p = "some pass"
factory = client.XMPPClientFactory(j, p)
метод начальной загрузки
factory.addBootstrap(
xmlstream.STREAM_END_EVENT,
some_fuction,
)
или
метод отсрочки
d = defer.Deferred()
factory.clientConnectionLost = d