php - 如何在 PHP 的 Ubuntu 13.10 上通过 GSM 使用 gsmsendsms 发送中文短信?

标签 php ubuntu sms gsm

我正在尝试在 Ubuntu 13.10 上通过 GSM USB 调制解调器发送汉字短信
Q1:
这是我的代码:

<?php echo system("gsmsendsms -d /dev/ttyACM7 -b 115200 13330925583 '你怎么样?'");?><br>


那么,发送就成功了!但是字符被破坏了。
UTF8字符如何发送清晰?

Q2:
我正在使用 GSM USB 调制解调器 8 端口。即 ttyACM0 - ttyACM7
我找到了一个代码:

$fp=fopen('COM6', '+r');<br>
fputs($this->fp, "AT\r");<br>

.....

那么,是否可能:

$fp=fopen('ttyACM7', '+r');<br>
fputs($this->fp, "AT\r");<br>

....

请帮助我。

最佳答案

首先你应该修补 gsmsendsms 以支持 unicode (google gsmsendsms.patch)

 $apt-get source gsm-utils
 goto dir ./gsmlib-1.10/apps/ and
    $patch -p0 < gsmsendsms.patch
 $./configure && make

然后使用命令

  $sudo /temp/gsmlib-1.10/apps/gsmsendsms  -u -d /dev/ttyACM0  13218647024 4e2d56fd

注意:4e2d56fd是中文单词“中国”的unicode,你可以使用一个简单的转换unicode

  $sudo /temp/gsmlib-1.10/apps/gsmsendsms  -u -d /dev/ttyACM0  13218647024   $(printf "%x" "'中") $(printf "%x" "'国")

没关系

关于php - 如何在 PHP 的 Ubuntu 13.10 上通过 GSM 使用 gsmsendsms 发送中文短信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20772626/

相关文章:

ubuntu - 我在 Digital Ocean 上有安全 apache 错误?

android - 检测哪张SIM卡收到信息

android - 如何在android中显示所有消息选项的对话框?

android - 如何在 C# 中以编程方式列出来自设备 (iOS/Android) 的 SMS 对话?

linux - 在 Ubuntu 主机上运行 Ubuntu Docker 镜像是否比在任何其他操作系统上运行相同的 Docker 镜像运行得更快?

php - 如何使用 MySQL 和 PHP 安全地删除向用户显示的行?

php - Eloquent 最后插入Id

PHP/MySQL 在一个类中隔离数据库访问——如何以 OOP 方式处理多行结果集

postgresql - 在 Ubuntu 上找不到适用于 Postgresql 8.4 的 PGXS

php - 无法在 CentOS VM 上使用 PHP 5.3 的 sendmail 发送电子邮件