0

我正在尝试使用演示 EchoClient 的 Yowsup2:

yowsup-cli demos -c config.example -e

我收到消息,但它们不完整,并且在每个文本的末尾都包含奇怪的字符。

例如:我发送“你叫什么名字?” 从我的手机到Yowsup2号码,Yowsup2收到(并在终端打印):Echoing hat is your name?�������������������������� ������������������������������������������������������ ������������������������������������������������������ ��������������������������������������������

任何想法?

4

1 回答 1

0

我正在使用这个库进行一个项目,但我遇到了这个问题,我正在等待有人修复它,因为我没有尝试过让我的工作,这就是我所做的

从 github 克隆存储库

经测试可在 python3.5 上工作

yowsup/layers/axolotl/layer.py

替换第 192 行,即

191                padded.extend(self.encodeInt7bit(len(plaintext)))
192                padded.extend(plaintext) # this is the line. replace it
193                padded.append(ord("\x01"))

有了这个

padded.extend(plaintext.encode() if isinstance(plaintext,str) else plaintext)

在此线程中添加@jlguardi 修复,但我必须对其进行一些修改才能为我工作

def decodeInt7bit(self, string):
    idx = 0
    while string[idx] >= 128:
        idx += 1
    consumedBytes = idx + 1
    value = 0
    while idx >= 0:
        value <<= 7
        value += string[idx] % 128
        idx -= 1
    return value, consumedBytes

def unpadV2Plaintext(self, v2plaintext):
    print(v2plaintext)
    v2plaintext=bytearray(v2plaintext,'utf8') if isinstance(v2plaintext,str) else v2plaintext
    end = (-(v2plaintext[-1])) # length of the left padding
    length,consumed = self.decodeInt7bit(v2plaintext[1:])
    return v2plaintext[1+consumed:end]
在客户端看起来很干净

2016-05-11-11-27-07

乱码虽然仍然出现在服务器上

快照2

不安装setup.py install

希望这对你有用

于 2016-05-11T09:00:54.397 回答