gpt4 book ai didi

python - 通过 USB 适配器/Python 发送短信

转载 作者:行者123 更新时间:2023-12-01 05:36:40 30 4
gpt4 key购买 nike

我想使用加密狗发送短信。我从 this 网站找到了以下代码并采用了它。但它给出了流动的错误。有人可以帮我让这个脚本工作吗?

错误:

   raise SerialException("could not open port %s: %s" % (self._port, msg))
serial.serialutil.SerialException: could not open port /dev/ttyACM0: [Errno 2] No such file or directory: '/dev/ttyACM0'

代码:

import serial
import time

class TextMessage:
def __init__(self, recipient="0123456789", message="TextMessage.content not set."):
self.recipient = recipient
self.content = message

def setRecipient(self, number):
self.recipient = number

def setContent(self, message):
self.content = message

def connectPhone(self):
self.ser = serial.Serial('/dev/ttyACM0', 460800, timeout=5)
time.sleep(1)

def sendMessage(self):
self.ser.write('ATZ\r')
time.sleep(1)
self.ser.write('AT+CMGF=1\r')
time.sleep(1)
self.ser.write('''AT+CMGS="''' + self.recipient + '''"\r''')
time.sleep(1)
self.ser.write(self.content + "\r")
time.sleep(1)
self.ser.write(chr(26))
time.sleep(1)

def disconnectPhone(self):
self.ser.close()

sms = TextMessage("0123456789","This is the message to send.")
sms.connectPhone()
sms.sendMessage()
sms.disconnectPhone()

最佳答案

大多数 USB GSM 调制解调器都使用内部 RS-232 转 USB 芯片来模拟 USB 端口上的 RS-232 接口(interface)。

据我所知,这些芯片的驱动程序使用 /dev/ttyACM/dev/ttyUSB 作为接口(interface)。

因此,如果您确定 Linux 内核可以识别您的设备,您可以检查文件系统中是否存在 /dev/ttyUSB 以及是否存在(当然,当设备已连接时),然后将源代码中的 /dev/ttyACM 替换为 /dev/ttyUSB

此外,要列出所有可用的串行端口及其连接的设备,您可以使用以下命令:

ls -l /sys/class/tty/tty*

关于python - 通过 USB 适配器/Python 发送短信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18823594/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com