Gammu-SMS多次发送-数据库未更新

时间:2018-09-29 12:22:37

标签: sms gammu

我正在使用Gammu通过华为USB棒-带RPi发送短信。运行良好。就在前一段时间,它开始了一种奇怪的行为。

我正在使用以下命令通过Python插入SMS文本:

"""
send an sms
"""
def sim_send_sms(number, text):
    command = ['sudo', 'gammu-smsd-inject', 'TEXT', number]
    p = subprocess.Popen(command, stdout=subprocess.PIPE, stdin=subprocess.PIPE)
    output = p.communicate(input=text.encode("iso-8859-1"))[0]

    return output.decode("iso-8859-1")

自一开始以来,效果就很好。 Gammu服务正在发送SMS。没问题。但是...它并没有删除数据库“发件箱”表中的条目。因此,它正在发送并发送并发送它...

我刚刚检查了日志文件,上面写着:

Sat 2018/09/29 13:42:32 gammu-smsd[762]: New message to send: 140
Sat 2018/09/29 13:42:32 gammu-smsd[762]: Message without SMSC, assuming you want to use the one from phone
Sat 2018/09/29 13:42:36 gammu-smsd[762]: SMS sent on device: "/dev/ttyUSB_utps_modem" status=0, reference=169
Sat 2018/09/29 13:42:36 gammu-smsd[762]: Transmitted 140 (total: 1) to ***
Sat 2018/09/29 13:42:36 gammu-smsd[762]: Error code: 1062, Error: Duplicate entry '140-1' for key 'PRIMARY'
Sat 2018/09/29 13:42:36 gammu-smsd[762]: SQL failure: 79
Sat 2018/09/29 13:42:36 gammu-smsd[762]: Error writing to database (SMSDSQL_AddSentSMSInfo)
Sat 2018/09/29 13:42:36 gammu-smsd[762]: Error setting sent status: Fehler beim Ausf▒hren der SQL Anfrage. (SQL[79])
Sat 2018/09/29 13:52:37 gammu-smsd[762]: New message to send: 140
Sat 2018/09/29 13:52:37 gammu-smsd[762]: Message without SMSC, assuming you want to use the one from phone
Sat 2018/09/29 13:52:39 gammu-smsd[762]: SMS sent on device: "/dev/ttyUSB_utps_modem" status=0, reference=170
Sat 2018/09/29 13:52:39 gammu-smsd[762]: Transmitted 140 (total: 1) to ***
Sat 2018/09/29 13:52:39 gammu-smsd[762]: Error code: 1062, Error: Duplicate entry '140-1' for key 'PRIMARY'
Sat 2018/09/29 13:52:39 gammu-smsd[762]: SQL failure: 79
Sat 2018/09/29 13:52:39 gammu-smsd[762]: Error writing to database (SMSDSQL_AddSentSMSInfo)
Sat 2018/09/29 13:52:39 gammu-smsd[762]: Error setting sent status: Fehler beim Ausf▒hren der SQL Anfrage. (SQL[79])

我看到重复的输入错误。 “发件箱”中的最后一个ID是140。这是正确的。但是,gammu为什么要在“发件箱”中写入新的数据库条目?这没有道理。它应该发送短信,在“表情”中输入内容,并在“发件箱”中删除该内容。 (到目前为止,我的逻辑……我错了吗?)。 我总是必须手动删除发件箱条目...否则它将发送短信,直到充值金额为空:-(

为什么日志文件仅包含一些条目?它一定很大...但是不是。有什么限制(我可以更改)?我现在只有今天的最新错误。但是我想要/需要全部。

有人知道为什么我会有这个问题以及如何解决吗?

  

---------解决方案----------

     

好的,与此同时,我自己找到了解决方案。重复条目   不指向“发件箱”。 Gammu尝试执行以下操作时发生错误   在“情感”中重新输入。它使用与中相同的ID   “发件箱”。无论出于何种原因,已经有更高的条目   我的senditems表中的ID。还有一个140(在这种情况下)。所以,   由于此问题,新条目将失败。整个脚本是   精加工。但是下一步将是删除   “发件箱”。然后我们开始...它一圈又一圈地旋转。

     

我不得不截断我的“表情”,现在它又可以正常工作了。只有一个   问题仍然存在:在“句子”中已经有一个更高的ID了吗?

0 个答案:

没有答案