如何通过连接到Linux计算机的GSM/GPRS调制解调器发送彩信?

Bri*_*vid 1 python linux gsm mms cellular-network

我有一个目录,其中包含50个图像文件(.jpg),每个小于300kb.这些文件应作为MMS附加,并使用GSM/GPRS调制解调器从Linux计算机发送.我需要弄清楚如何打包彩信,并能够将其发送到手机或从Linux计算机发送电子邮件.另请注意,我希望能够使用我的GSM/GPRS调制解调器发送彩信 - 不是通过clickatell或其他一些网络服务.我也不想使用完整的MMSC网关,例如NowSMS(无论是windows还是Windows)或MBuni.请帮我找到任何可以通过命令行/任何编译源代码/任何易于使用的方法工作的Linux工具.

提前感谢您的专业知识

Bur*_*lid 6

你为什么要这样做?它是一个过于复杂的过程,有一个原因可以使用MMSC网关.您只使用GPRS部分建立PPP连接,然后其余的东西通过IP发生.

强烈建议您使用网关,不要手动执行此操作.

为了建立PPP连接:

  1. AT+CGDCONT?这应该响应您所处的背景.这意味着您已准备好连接/连接.
  2. AT+CGATT=1 (附上调制解调器)
  3. AT+CGDATA=? (检查数据模式是什么)
  4. AT+CGACT=1 (激活你的连接)

现在您使用的是PPP,然后使用提供商正在使用的任何内容来讨论调制解调器.它可以是从直接HTTP到MMSE协议的任何东西.

例如,这是一个完整的HTTP脚本.首先,我们需要设置调制解调器和连接信息.所有这些命令都应得到OK调制解调器的响应.

AT+CMMSINIT # Initialize the MMS method
AT+CMMSCURL="some.url.com" # the MMS center URL
AT+CMMSCID=1 # Set bearer
AT+CMMSPROTO="1.1.1.1",8080 # MMS Proxy information
AT+SAPBR=3,1,"Contype","GPRS" # How you are sending
AT+SAPBR=3,1,"APN","foobar" # Set the APN
AT+SAPBR=1,1 # Activate the bearer context
Run Code Online (Sandbox Code Playgroud)

接下来,我们准备消息:

> AT+CMMSEDIT=1  # Enter edit mode
OK
> AT+CMMSDOWN="PIC",54321,30000 # Download a pic that is 54321 bytes
                                # and set the latency
                                # for the download to 30000 ms
CONNECT                         # This means, ready to receive data
                                # so send your file
OK                              # Data received
> AT+CMMSRECP="123456789"       # Set the recipient
OK
> AT+CMMSVIEW                   # View your message
(your message)
OK
> AT+CMMSSEND                   # Send the message
OK                              # Message sent
> AT+CMMSEDIT=0                 # Exit edit mode, and clear the buffer
OK
Run Code Online (Sandbox Code Playgroud)

这当然是特定于我使用的调制解调器.您的结果可能会有所不 我可以告诉你,这是一项无用的练习.如果您想要实际发送彩信,请与合适的提供商联系.