最近一直写java 操作短信猫的app.
后来google 到smslib ,不错的opensource.libraray.
在网上也没找到中文的,
于是翻译的一下smslib 的简介
Smslib 是一个允许你通过一个gsm Modem 或者是一个 gsm phone收发短信的java 库.(Open source)
Smslib 最新版本是3.4.6.
Smslib v3 依然保留了一些以前的功能:
1. 支持通过一系a列的串口或者ip 连接gsm phone 和gsm modem
2. 支持pdu/text 协议
3. 支持简单的短信收发
4. 支持7bit ,8bit ,和UCS2(UNICODE) 短信字符
5. 支持收发多媒体信息
6. 闪信
7. 支持Push
8. 可以查看短信状态
9. 在发送短信时可以查看串口信息/地址信息
10. 可能查看连接的GSM MODEM 信息:包括:型号,厂商,s/w 修复,签名,等
11. 支持一些网关发送,通过htpp/https 协议
12. 支持smpp 协议
另外v3 推出了一些新的功能
Smslib v3 对gateway的概念的解释介绍:
gateway是用来收发sms短信的一个设备或者一个服务的接口,一个网关可以是一个gsm modem 也可以是一个服务提供商,smslib 可以同时处理多个gateway
发送优先级:
Smslib 发送短信可以提供一个无限制的优先级,(就是发送多条短信时的一个策略,哪个先发,哪个后发),smslib 优先级策略是跟你的gateway(gsm modem 或者是短信提供商)对应的,除非他们是伪照的。
异步、同步接收
Smslib 有两个方式接收短信
1. 同步接收:你可以随时的调用read()方法来接收短信。
2. 异步接收:等待smslib 自动接收短信,当短信到来时。
异步、同步发送
Smslib 同样有两种方式去发送短信
1. 同步发送:当你的app使用smslib 发送一条短信时,app线程将会锁定,直到短信发送完毕,或是发送失败。
2. 异步发送:当你使用这种方式发送一条短信时,app 线程不会锁定,smsliib 会马上返回,smslib 会将你的短信(s)在后台发送。你可以选择是否提醒发出短信的状态。
回调函数
当有新事件发生时(收到新短信,或者是一条短信发送成功或者是失败),smslib 可以定义回调方法(事件驱动)
Inbound voice calls:当有一电话打进时,你可以设置是否提醒你,请注意这个呼叫将会自动的无条件的自动挂断
Inbound messages:每当有新的短信来到时,smlib 可以设置调用你的指定的方法
Outbound messages:当你使用异步发送信息时,你可以调用你指定的方法来得到已经发送的短信的状态信息等。
Gateway status changes:smslib 可以提醒你每次gateway 改变状态的情况
Queue sending operation:smslib 可以随时随刻的准备发送一条短信,可以随时随地的取到当前短信的发送状态。