Chinaunix首页 | 论坛 | 博客
  • 博客访问: 248700
  • 博文数量: 44
  • 博客积分: 1052
  • 博客等级: 少尉
  • 技术积分: 742
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-17 16:51
文章分类

全部博文(44)

文章存档

2013年(7)

2012年(14)

2011年(23)

分类: LINUX

2011-02-12 22:51:08

今天终于弄好了短信猫, 能收发短信了. 虽然收短信里还有一点点小问题, 但kannel的配置基本弄清了.

# kannel.conf

# core -- bearerbox
group = core
admin-port = 13000
admin-password = 自己设定(必须设定)                               
admin-deny-ip = "*.*.*.*"
admin-allow-ip = 127.0.0.1
smsbox-port = 13003
box-deny-ip = "*.*.*.*"
box-allow-ip = 127.0.0.1
log-file = "/home/zxg/python/szmb/kannel/kannel.log"          # log文件  路径按自己需要设定
log-level = 0                                                                             # 最后是设为0吧
access-log = "/home/zxg/python/szmb/kannel/kannel.access"     
unified-prefix = "+86,0086"                                # 这是符合国情的设定, 我在别人文章中看到的

# smsc -- smsbox
group = smsc
smsc = at
smsc-id = GSMModem
sim-buffering = true
modemtype = wavecom   
device = /dev/ttyUSB0                          # 关于这个的设定我不大记得怎么弄的了, 可能对不同的
                                                              # 机器有不同的设定.   我是ubuntu系统, 使用的USB串口
                                                               # 转接线才有这ttyUSB0.
speed = 9600
my-number = 自己的手机号
sms-center = 服务中心(在自己手机上查)

group = modems
id = wavecom
name = siatmodems
detect-string = "WAVECOM"
message-storage = SM        # 将收到的信息存到SIM中, 也可以设定为存在短信猫设备中.

# smsbox -- smsbox
group = smsbox
bearerbox-host = localhost
sendsms-port = 13013
global-sender = 自己的手机号
log-file = "/home/zxg/python/szmb/kannel/smsbox.log"
log-level = 0
access-log = "/home/zxg/python/szmb/kannel/smsbox-access.log"
mo-recode = true                # 设置这个后收到的短信才能显示中文.

# sendsms-user -- smsbox
group = sendsms-user
username = siat     # 根据需要自己设定       
password = siat      # 根据需要自己设定   发送短信时要用.
user-deny-ip = "*.*.*.*"
user-allow-ip = "127.0.0.1"

# sms-service -- smsbox
group = sms-service
keyword = default 
get-url = "%p&to=%P&text=%a&time=%t" # 关于这个下面再具体来说.
max-messages = 0  # 这个好像是必须设定.

基本就这样, 关于路径什么的都自己设定.

设置好配置文件后再运行
./bearerbox -v 0 配置文件
./smsbox -v 0 配置文件

bearerbox和smsbox在/usr/local/sbin/目录下. 

发短信比较简单, 用一个url就行了. 格式是这样的.
直接复制到浏览器的地址栏就可以发短信了.   

收短信就要看sms-service中的get-url了, 我写的如下:
get-url = "%p&to=%P&text=%a&time=%t"

这是利用的http协议的get命令. 对此不大理解的可以去百度. 上面的%p和%a之类的请参见kannel的用户手册.%p表示发短信者的手机号, %a表示所有的短信内容.
sms.php就是处理这些表单数据的一个php网页. 不知为何运行时不会自动弹出一个网页.所以我将表单数据都写在了一个文件里.

sms.php的内容如下:   (你可以将这个写的更复杂一些, 我这只是简单测试收短信)
$from = $_GET['from']."\n";
$to = $_GET['to']."\n";
$text = $_GET['text']."\n";
$time = $_GET['time']."\n";

echo "writing file...";

$file = fopen("/home/zxg/python/szmb/kannel/rsms", "w+");
if($file)
{
fputs($file, $from);
fputs($file, $to);
fputs($file, $text);
fputs($file, $time);
}
else
echo "fopen(\"/home/zxg/python/szmb/kannel/rsms\", \"w+\") error";
?>

/home/zxg/python/szmb/kannel/rsms文件存储收到的短信等内容.
在fopen时如果提示权限不够, 那就将rsms文件的权限设为777,  最好是自己先建立一个这个文件, 如果要保存所有收到的消息就把"w+"改为"a"吧.  


注意:要使用这你还得需要建立个http服务器, 我这是apache, 很久以前弄php时安装的, 因此具体怎么弄我也不记得了, 好像挺方便的.


我主要参见了下面两篇文章:

弄好配置文件后, 刚开始运行还是有一些问题, 不过那些log文件里给出的信息都很有用, 值得仔细看看.
最主要的还是用户手册了.
阅读(5178) | 评论(5) | 转发(0) |
0

上一篇:没有了

下一篇:apue: 5 standard I/O library

给主人留下些什么吧!~~

yiwei012014-08-05 21:53:02

专业原装工业级短信猫供应,http://www.evemsc.com/ QQ:2042848503

zengxg142011-08-22 20:24:30

jiemelody: 您好!服务器上收到的中文短信是可以正常显示的(mo-recode = true),我遇到的问题是配置好Kannel后,通过kannel发中文短信到手机,手机上显示是乱码,。这个问.....
额,这个非常抱歉,我也不太清楚。而且我现在也没弄这个了,因此要实验比较麻烦。  唯一的建议就是去看它的用户手册。

jiemelody2011-08-20 22:52:44

您好!服务器上收到的中文短信是可以正常显示的(mo-recode = true),我遇到的问题是配置好Kannel后,通过kannel发中文短信到手机,手机上显示是乱码,。这个问题,不知要如何解决?盼能指点迷津!谢谢!

zengxg142011-07-19 08:46:40

jiemelody: 您好!请问如何配置可以发中文短信?我配置好Kannel后发中文短信,收到显示是乱码。。盼能指点迷津!谢谢!.....
文中写了:mo-recode = true                # 设置这个后收到的短信才能显示中文.
我当时这样弄就能显示中文的。  好久没弄这个东西了, 也就忘了。

jiemelody2011-06-28 22:56:09

您好!请问如何配置可以发中文短信?我配置好Kannel后发中文短信,收到显示是乱码。。盼能指点迷津!谢谢!