SMS Gateway

来自Jack's Lab
(版本间的差异)
跳转到: 导航, 搜索
(设备)
第4行: 第4行:
  
 
* Linux x86 server
 
* Linux x86 server
 +
 +
<br><br>
 +
 +
== 模式切换 ==
 +
 +
默认情形下,内核将 ZTE MF668 识别为 SCSI CD-ROM 设备(因为其内部有一个 MicroSD 控制器,可插MicroSD卡):
 +
 +
<pre>
 +
$ dmesg|grep scsi
 +
[    3.769916] scsi0 : usb-storage 1-1.3:1.0
 +
[    4.773973] scsi 0:0:0:0: CD-ROM            ZTE      USB SCSI CD-ROM  2.31 PQ: 0 ANSI: 2
 +
[    6.514819] sr0: scsi-1 drive
 +
[    6.530712] sr 0:0:0:0: Attached scsi CD-ROM sr0
 +
</pre>
 +
 +
 +
因此需要 usb-modeswitch 将其切换为 modem 模式:
  
 
<pre>
 
<pre>
第14行: 第31行:
 
Bus 001 Device 004: ID 19d2:2000 ZTE WCDMA Technologies MSM MF627/MF628/MF628+/MF636+ HSDPA/HSUPA
 
Bus 001 Device 004: ID 19d2:2000 ZTE WCDMA Technologies MSM MF627/MF628/MF628+/MF636+ HSDPA/HSUPA
 
</pre>
 
</pre>
 +
 +
  
 
<br><br>
 
<br><br>

2013年10月12日 (六) 17:41的版本

目录

1 设备

  • ZTE MF668 (USB 3G modem)
  • Linux x86 server



2 模式切换

默认情形下,内核将 ZTE MF668 识别为 SCSI CD-ROM 设备(因为其内部有一个 MicroSD 控制器,可插MicroSD卡):

$ dmesg|grep scsi
[    3.769916] scsi0 : usb-storage 1-1.3:1.0
[    4.773973] scsi 0:0:0:0: CD-ROM            ZTE      USB SCSI CD-ROM  2.31 PQ: 0 ANSI: 2
[    6.514819] sr0: scsi-1 drive
[    6.530712] sr 0:0:0:0: Attached scsi CD-ROM sr0


因此需要 usb-modeswitch 将其切换为 modem 模式:

$ apt-get install usb-modeswitch

$ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 19d2:2000 ZTE WCDMA Technologies MSM MF627/MF628/MF628+/MF636+ HSDPA/HSUPA




3 Send/Receive SMS



4 Open Source Tools

4.1 gammu

 $ apt-get install gammu gammu-smsd


配置 gammu

$ gammu-config

Port: /dev/ttyUSB1
Connection: at115200


生成的配置文件默认位于 /root/.gammurc

亦可 /etc/gammurc


测试:

$ gammu getallsms #显示sim卡上所有 SMS

Location 100006, folder "收件箱", phone memory, Inbox folder
SMS message
SMSC number          : "+8613010374500"
标记为已发送   : 2013年04月15日 星期一 13时27分16秒 +0800
Coding               : Unicode (no compression)
Remote number        : "+85264504220"
Status               : 已读

您的 Google 验证代码为 002226



1 SMS parts in 1 SMS sequences


发送 SMS:

 $ gammu sendsms TEXT 15801234567 -textutf8 "testing"


中英文混合 SMS:

 $ gammu sendsms TEXT 15801234567 -unicode -text "testing 测试"



4.2 gammu-smsd

配置:

SH-NAS:/var# cat /etc/gammu-smsdrc
# Configuration file for Gammu SMS Daemon

# Gammu library configuration, see gammurc(5)
[gammu]
# Please configure this!
port = /dev/ttyUSB1
connection = at115200
# Debugging
logformat = textall

# SMSD configuration, see gammu-smsdrc(5)
[smsd]
service = sql
Driver = native_mysql
logfile = syslog
User = smsd
Password = smsd
PC = localhost
Database = smsd
# Increase for debugging information
debuglevel = 0


创建数据库和表:

mysql> create database smsd;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT USAGE ON *.* TO smsd@localhost IDENTIFIED BY 'YOUR_PASSWORD';
Query OK, 0 rows affected (0.01 sec)

mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON smsd.* to smsd@localhost;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye

$ cp /usr/share/doc/gammu-smsd/examples/mysql.sql.gz /tmp/
$ gunzip /tmp/mysql.sql.gz
$ mysql -u USER_NAME -pUSER_PASSWORD YOUR_DB_NAME < /tmp/mysql.sql


运行:

 $ gammu-smsd --config /etc/gammu-smsdrc --pid /var/run/gammu-smsd.pid --daemon


守护进程情形下,发送 SMS:

 $ gammu-smsd-inject TEXT 13912345678 -unicode -text "哈哈,猫猫"











个人工具
名字空间

变换
操作
导航
工具箱