首页 > 解决方案 > InvalidMessage 或 KeyId for ...,将发送重试

问题描述

我正在使用 yowsup,需要找出一个我以前没有遇到过的问题。我已经通过 onMessage 事件收到了消息,但现在它不起作用。在调试时,我得到了 xxxxx 的 InvalidMessage 或 KeyId,将发送重试。

我试图删除 axolotl.db,但没有。

这是我的layer.py

class ReadLayer(YowInterfaceLayer):
@EventCallback(YowNetworkLayer.EVENT_STATE_CONNECTED)
def onConnected(self, yowLayerEvent):
    print "----- CONECTADO ----- \n"

@ProtocolEntityCallback("message")
def onMessage(self, messageProtocolEntity):
    if messageProtocolEntity.getType() == 'text':
        frm = messageProtocolEntity.getFrom()
        body = messageProtocolEntity.getBody()

        print ("- Mensagem de %s \n>>> %s \n\n" % (frm, body))

    if messageProtocolEntity.getType()  == 'media':
        if messageProtocolEntity.getMediaType() == 'image':
            frm = messageProtocolEntity.getFrom()
            url = messageProtocolEntity.url

            print ("- Imagem de %s \n>>> %s\n\n" % (frm, url))

    self.toLower(messageProtocolEntity.ack())
    self.toLower(messageProtocolEntity.ack(True))

@ProtocolEntityCallback("receipt")
def onReceipt(self, entity):
    self.toLower(entity.ack())

标签: pythonyowsup

解决方案


推荐阅读