8月份做的一个东东,重新整理了一下发上来。当日后使用文档!
环境:
centos 5.2,短信猫设备: wave
安装软件地址:
http://opensource.hqcodeshop.com/gnokii/RHEL5/
gnokii-0.6.28cvs-20100613.i386.rpm
gnokii-smsd-0.6.28cvs-20100613.i386.rpm
gnokii-smsd-mysql-0.6.28cvs-20100613.i386.rpm
#### 下载软件 ###
#cd /usr/local/webserver/
#wget http://opensource.hqcodeshop.com/gnokii/RHEL5/gnokii-0.6.28cvs-20100613.i386.rpm
#wget http://opensource.hqcodeshop.com/gnokii/RHEL5/gnokii-smsd-0.6.28cvs-20100613.i386.rpm
#wget http://opensource.hqcodeshop.com/gnokii/RHEL5/gnokii-smsd-mysql-0.6.28cvs-20100613.i386.rpm
### 安装 ####
####gnokii-smsd-0.6.28cvs-20100613.i386.rpm 需要 libmysqlclient.so支持
#yum install mysql-devel
#rpm -ivh gnokii-0.6.28cvs-20100613.i386.rpm
gnokii-smsd-0.6.28cvs-20100613.i386.rpm
gnokii-smsd-mysql-0.6.28cvs-20100613.i386.rpm
#### 配置 ####
配置 gnokii
gnokii 的配置文件默认创建在 /etc/gnokiirc 。但gnokii程序每次会从用户的根目录中读取副配置文件 比如/root/.gnokiirc。所以gnokii配置可以在用户目录中创建
#vim /etc/gnokiirc
# This is a sample ~/.gnokiirc file. Copy it into your
# home directory and name it .gnokiirc.
# See http://wiki.gnokii.org/index.php/Config for working examples.
#
[global]
# Set port to the physical port used to connect to your phone.
# Linux version is:
#短信猫串口设备
port = /dev/ttyS0
#
# For MacOSX you will need something like:
# port = /dev/cu.USA28X1P1.1
#
# For Win32 and ports from 1 to 9 you want to use:
# port = com1:
# or similiar. For ports greater than 9 you want to use:
# port = \\.\COM10
# or similiar.
#
# FreeBSD (probably NetBSD and OpenBSD too) use:
# port = /dev/cuaa0
#
# With Linux-IrDA you will want to use
# port = /dev/ircomm0
# or similiar.
#
# Use this setting also for the Bluetooth connection:
# port = aa:bb:cc:dd:ee:ff
# when using it with AT driver set it to:
# port = /dev/rfcomm0
# or similiar.
#
# For the Linux USB cables you will need one of the following settings (or
# similiar)
# port = /dev/ttyUSB0
# port = /dev/tts/USB0
# port = /dev/ttyACM0
# the last one will work only with AT driver. The correct setting should be
# given in the dmesg output.
#
# If you use connection type dku2libusb use it to denote which use endpoint
# you’d wish to use. It is useful when you have more than one phone connected
# to your computer using DKU2 cable. Numbering goes from 1 upwards.
# Default is 1.
# port = 1
# Set model to the model number of your phone. For the
# Symbian phones use:
# model = symbian
# For other non-Nokia phones and when you want to use AT
# mode use:
#通信模式,对于非Symbian手机,使用AT模式
model = AT
# If you can’t figure out what to put here read the FAQ.
# If it still doesn’t help, consult gnokii-ml or #gnokii at freenode.
#model = 6510
# There are few main models that should make use of the certain drivers.
# These are: 6110, 7110, 6510, 3110, 2110, 6160.
# Set IrDA device name.
# If you use irda connection you may want gnokii to autodetect the irda
# device it connects to. This is fine for most of the cases. if you have
# more than one device in range you may want to give manually the device
# name so gnokii correctly recognizes it. Use the name that you can see
# in the discovery log when the phone with infrared is in the range of
# your irda port.
# Note that you need to set this for each phone_ section separately. It
# isn’t nested from the global section.
# irda_string = Nokia 6610i
# Initlength controls the number of characters sent to the
# phone during initialisation. You can either set it to
# the word “default” or a positive integer.
#
# You can try setting this value if you want to connect
# to the phone quicker. If you’ve never noticed the
# connection to be slow, it is suggested that you
# leave this alone. Read the initialisation code in fbus-xxxx
# to understand what this changes if you’re curious.
initlength = default
# The type of the connection, for IR set this to infrared or irda.
# For the nk6110 driver only infrared is valid for the IrDA connection.
# See Docs/gnokii-ir-howto for more detailes on this.
# If you have 6210/6250/7110 phone and dau9p cable (the one you can
# use with 6100 series and cannot use hardware modem from the phone)
# you may want to use ‘dau9p’ value to get faster initialization.
# If you use dlr3 or dlr3p cable for nokia phones in FBUS mode (ie.
# you don’t use model = AT) you may want to use ‘dlr3p’ value here.
# Note that it is recommended and currently the best way to use this
# cable with nk6510 driver.
#使用端口模式,串口或其他
connection = serial
# With DKU-2 cable use the following setting if you want to libusb driver
# (recommended):
# connection = dku2libusb
# or the following setting if you want to use Linux kernel driver
# connection = dku2
# With DKU-5 cable use the following setting
# connection = dku5
# For Bluetooth and AT driver use the following setting
# connection = serial
# For other Bluetooth settings use
# connection = bluetooth
# For infrared connection with phones other than Nokia 6110/6130/6150 use:
# connection = irda
# Don’t forget to run: ‘irattach irda0 -s’ or similiar before running gnokii
# For connection with a PC/SC compatible Smart Card reader use:
# connection = pcsc
# Set this to ‘yes’ if you want gnokii to set and check the lock file in
# /var/lock directory. It avoids potential conflicts with other serial
# port software (eg. minicom). If you have wrong permissions for the
# directory, a warning will be generated. If you don’t want a lockfile, set
# it to ‘no’.
#是否锁定
use_locking = yes
# Baudrate to use on serial port connections.
# Currently used only by models AT and BIP/CIMD. Defaults to 19200.
#传输比特率,这里选择9600,国情决定
serial_baudrate = 9600
# Force waiting after each sent character the specified usec time.
# Value -1 forces the fastest ‘block’ writing,
# value 0 writes each character separately without any explicit waiting,
# other positive values specify the appropriate 1/1000000 sec delaying.
# Siemens M20 requires at least “1″! FIXME: Model-driven autodetection
#serial_write_usleep = 10000
# Force serial port handshaking mode, useful primarily for “AT” model.
# Gnokii “AT” model uses software handshake by default.
# Possible values: hardware (RTS/CTS – 7 wires) or software (XON/XOFF – 3 wires)
#handshake = software
# If defined (not commented out by ‘#’) it will quit Gnokii anytime
# when DCD line will drop.
#require_dcd = 1
# If you are using a bluetooth connection, you can specify the rfcomm
# channel number here. If you don’t specify the value, it is autodetected
# on connection (it may take an additional second). FBUS connections always
# ignore this value and use channel 14.
#rfcomm_channel = 1
# There may happen various timeouts during the communication with the phone.
# This parameter enables the retransmission policy. Ie. if the phone doesn’t
# respond, we send the frame again. This happened mainly with the older
# phones. You may want to enable it when you see mysterious timeouts.
# Be very careful with this option. It is suspected to cause phone breakage
# with new DCT4 phones (like Nokia 6100). By default it is switched off
# (sm_retry = 0)
#sm_retry = 1
# Run the specified script(s) right after opening and initializing the device
# and before any communication (right before closing for disconnect_script).
# You may find handy to use it to connect your modem to SMS Center
# when using BIP or CIMD protocols
# Non-absolute path is relative to the specific directory where gnokii is run!
#connect_script = /absolute/path/to/gnokii/Docs/sample/cimd-connect
#disconnect_script =
# When sending SMS you can experience timeouts. This is the feature of the
# overloaded SMSCs. The phones waits for the response from the SMSC confirming
# that it received the short message. When the SMSC is DoSed with many requests
# it will take more time to get the response. Adjust it to your needs. The
# value is given in seconds to wait. Defaults to 10 seconds. Set to 0 to wait
# forever.
smsc_timeout = 10
# Set this to 1 if you want to break your phone with xgnokii. Works only
# with few Nokia models and FBUS communication
[xgnokii]
allow_breakage = 0
# Set bindir to point to the location of the various gnokiid binaries.
# In particular ensure that mgnokiidev is in this location, with
# permissions 4750, owned by root, group gnokii. Ensure you
# are in the gnokii group and that the group exists…
[gnokiid]
bindir = /usr/bin/
# Any entries in the following two sections will be set as environment
# variables when running the scripts.
# Handy for use for $VAR substitutions in your chat(8) script.
[connect_script]
# Don’t put your phone number here!!!
TELEPHONE = 12345678
[disconnect_script]
# The following parameters control how libgnokii handles the debugging messages.
# Currently there are three categories: “debug” controls the libgnokii
# normal debug output, “rlpdebug” controls the debug output of the RLP
# subsystem, and “xdebug” is used by the xgnokii or smsd.
[logging]
# where to log the debug output (on: stderr, off: /dev/null)
debug = on
# where to log the rlp debug output (on: stderr, off: /dev/null)
rlpdebug = off
# where to log X debug output (on: stderr, off: /dev/null)
xdebug = off
# Fake-phone can be used for testing Gnokii functionality without
# having a physical phone connected.
# Example usage:
# gnokii –config gnokiirc –phone fake –identify
[phone_fake]
port = foobar
model = fake
connection = serial
###### 测试 #########
1、测试gnokii
#gnokii –dialvoice 15800000000 ###拨打电话(最好使用自己的电话),测试是否能打通,如果能打通,证明能使用
#gnokii –sendsms 15800000000 ### 发送短信,输入信息后使用ctrl+D 结束并发送。这里要注意一个编码问题,统一使用utf-8,特别是在终端测试的时候,我这里使用的是putty
2、测试gnokii-smsd
######## 创建 数据库 ######
mysql> create database smsgw;
mysql> grant all priveliges on smsgw.* to [email protected] identified by ‘password’;
mysql> use smsgw;
mysql> source /usr/share/doc/gnokii-smsd-mysql-0.6.28cvs/sms.tables.mysql.sql;
mysql>insert into()
#### centos安装后会出现一个安装包:/usr/lib/gnokii-smsd/ 所以要做一个符号链接
#cd /usr/lib
#ln -s smsd gnokii-smsd
否则在测试的时候会出现以下错误信息:
[Invalid UTF-8] g_module_open error: /usr/lib/smsd/libsmsd_mysql.so:
\xce\xde\xb7\xa8\xb4\xf2\xbf\xaa\xb9\xb2\xcf\xed\xb6\xd4\xcf\xf3\xce\xc4\xbc\xfe:
\xc3\xbb\xd3\xd0\xc4\xc7\xb8\xf6\xce\xc4\xbc\xfe\xbb\xf2\xc4\xbf\xc2\xbc!
Cannot load database module mysql in directory /usr/lib/smsd!
# gnokii-smsd -u sms -p password -d smsgw -c localhost -m mysql -b SM ## 测试短信守护进程
如果出现错误信息:
F: gnokii-smsd -usms -p passwd -d smsgw -c localhost -m mysql
[Invalid UTF-8] g_module_open error: /usr/lib/smsd/libsmsd_mysql.so:
\xce\xde\xb7\xa8\xb4\xf2\xbf\xaa\xb9\xb2\xcf\xed\xb6\xd4\xcf\xf3\xce\xc4\xbc\xfe:
\xc3\xbb\xd3\xd0\xc4\xc7\xb8\xf6\xce\xc4\xbc\xfe\xbb\xf2\xc4\xbf\xc2\xbc!
Cannot load database module mysql in directory /usr/lib/smsd!
A:centos安装后会出现一个安装包:/usr/lib/gnokii-smsd/ 所以要做一个符号链接
#cd /usr/lib
#ln -s smsd gnokii-smsd