java如何实现发送短信?
是通过服务器与GPRS卡相连那种 问题点数:100、回复次数:10Top
1 楼maweihua(laoma)回复于 2003-12-02 13:56:33 得分 50
收发短信的例子。javax.wireless.messaging.*;是收发短信的包
// Sample message listener program.
import java.io.IOException;
import javax.microedition.midlet.*;
import javax.microedition.io.*;
import javax.wireless.messaging.*;
public class Example extends MIDlet implements MessageListener {
MessageConnection messconn;
boolean done;
Reader reader;
// Initial tests setup and execution.
public void startApp() {
try {
// Get our receiving port connection.
messconn = (MessageConnection)
Connector.open(“sms://:6222”);
// Register a listener for inbound messages.
messconn.setMessageListener(this);
// Start a message-reading thread.
done = false;
reader = new Reader();
new Thread(reader).start();
} catch (IOException e) {
// Handle startup errors
}
}
// Asynchronous callback for inbound message.
public void notifyIncomingMessage(MessageConnection conn) {
if (conn == messconn) {
reader.handleMessage();
}
}
// Required MIDlet method - release the connection and
// signal the reader thread to terminate.
public void pauseApp() {
done = true;
try {
messconn.close();
} catch (IOException e) {
// Handle errors
}
}
// Required MIDlet method - shutdown.
// @param unconditional forced shutdown flag
public void destroyApp(boolean unconditional) {
done = true;
try {
messconn.setMessageListener(null);
messconn.close();
} catch (IOException e) {
// Handle shutdown errors.
}
}
// Isolate blocking I/O on a separate thread, so callback
// can return immediately.
class Reader implements Runnable {
private int pendingMessages = 0;
// The run method performs the actual message reading.
public void run() {
while (!done) {
synchronized(this) {
if (pendingMessages == 0) {
try {
wait();
} catch (Exception e) {
// Handle interruption
}
}
Top
2 楼Acylas(Acylas)回复于 2003-12-02 14:37:10 得分 0
你说的这个是用于移动通信网关实现的吧?能用来控制GPRS model收发短信吗?应该不能吧Top
3 楼Acylas(Acylas)回复于 2003-12-02 14:38:41 得分 0
GPRS ModemTop
4 楼sunny110(沙漠)回复于 2003-12-03 12:04:58 得分 10
upTop
5 楼Acylas(Acylas)回复于 2003-12-04 09:51:44 得分 0
我自己up一下,好像csdn里面搞无线通讯方面的人比较少。
经过两天的思考,我自己理出来一个思路,通过串口发送AT
指令。所以首先要解决跟串口的通讯,然后控制发送AT指令
(要解决中文发送还要了解PDU编码格式)。Top
6 楼smset(飞天信使)回复于 2003-12-04 18:37:58 得分 0
飞天短信设备网专为软件厂商开发了短信二次开发平台、短信网关服务器,可实现与您现有的系统无缝连接,使您的软件在最短的时间内具备短信功能,它们适用于OA、CRM、ERP、物流系统等需要实现短信通讯的应用系统。支持网络多客户端共用短信设备。
一、 短信二次开发平台简介
为了减少短信应用软件的开发周期,减少开发工作,提高系统稳定性和可靠性,减少您的开发工作量,提高应用软件的可靠性,我们专门开发了本套二次开发平台。
使用飞天短信二次开发平台,您可以简单快捷的进行OEM和二次开发,将短信系统与企业信息管理系统全面融合。广泛应用在企业MIS系统、调度通知系统、ERP应用、OA办公网络、客户服务中心等关键环节,将短消息服务与针对不同行业度身定制的信息管理系统相结合,根据不同客户、不同需求,高效提供更多个性化的服务、产品和信息。
二、飞天短信二次开发平台的特点
1.SMSCLIENT.DLL提供一系列控制函数库,用户通过在自行开发的软件中调用这些API函数,就可实现短信的收发功能。适用于主流开发平台(VB、 Delphi 、VC、VFP等),帮助您的应用系统快速集成短信功能。
2. 基于本平台,可使同一局域网内众多客户端共享一个短信服务器进行短信收发,既实现了资源的共享和有效使用,又便于企业对进出信息的管理、监控和统计。
3. 基于此平台可快速开发网络短信的应用,您无需了解复杂的GSM通信控制协议,只需简单调用几个API函数,即可让系统快速集成短信功能。
4.低成本实施, 采用GSM模块接入普通电脑,配合本套软件,无须上网即可收发短信,使用和维护简单方便,有效保障企业利益。
三、短信二次开发平台包括的内容
FTSMSGW.EXE 飞天短信网关服务器程序
GWMANUAL.DOC 飞天短信网关服务器使用手册
SMSCLIENT.DLL 短信二次开发函数库
DLLREADME.DOC 动态库使用说明
EXAMPLE目录 包括VC和Delphi等调用例程源代码
TOOLS目录 包括串口测试工具和短信测试工具
三、API函数说明
int InitConnect(char *hostname);
功能:初始化SMS客户程序与SMS服务程序的连接
参数说明:hostname--指运行SMS服务程序的计算机的网络名称
返回:-1--失败 0--成功
int SendMsg(char *SCA,char *DA,char *UD);
功能:发送一条短消息(实际上是提交一条消息给SMS服务程序,由SMS服务程序发出去)
参数说明:SCA--短消息中心号码(如成都移动就是:"13800280500")
DA--接收方手机号码(如"13980711226")
UD--消息内容(如"你好!");
返回:-1:提交给SMS网关服务程序失败
0:提交给SMS服务程序成功
int QueryMsg();
功能:查询SMS接收情况
参数说明:无
返回:-1--查询失败,SMS网关服务程序无响应。
0--查询成功,SMS服务程序端没有收到的消息。
N(1,2,...)--查询成功,SMS服务程序有N条收到的消息。
char *ReadMsg();
功能:读取一条消息
参数说明:无
返回:""--读取失败,SMS服务程序无响应
"EMPTY"--读取成功,但SMS服务程序内没有收到的消息。
"OA:..."--读取成功,而且SMS服务程序有收到的消息。
具体格式
"OA:发送方号码 TIME:接收到该消息的时间 UD:消息内容"
四、数据库接口
除API接口外,我们的网关平台同时提供了数据库接口,使集成方式更加灵活易用。只需要访问SMS_TOREAD表和SMS_TOSEND表即可。支持各种数据库,包括Access,MS SQL Server,Oracle等。
飞天 FT35A GSM MODEM
手机短信作为一种使用方便、费用低廉的即时通讯方式,在众多通信手段中脱颖而出,得到越来越多广泛的应用。 在许多商业和工业级短信应用中,均要求短信收发设备非常可靠,发送速度快,能够适应长期不间断工作,而普通手机的工作方式则难以满足要求。
FT35A GSM专门针对短信应用设计,内嵌西门子工业级TC35模块,简化了通信接口,性能稳定可靠,符合各种商业和工业级短信应用要求, 适用于各行各业,各个领域作无线数据通信,短信息通告,短信查询等应用, 您可以完全放心地将它集成到您的系统中。
我们为您提供性价比极佳的短信集成和短信开发方案,敬请访问:
http://www.smset.com
联系方式:
成都卓骏科技有限公司
销售热线:
028-89088290 许先生
Email:sales@smset.com
技术咨询Email:Support@smset.com
传真:028-85252486
地址:成都市科华中路5号B座510Top
7 楼Acylas(Acylas)回复于 2003-12-07 12:59:38 得分 0
^_^,经过一个星期的努力,终于搞定了,只要通过串口跟pc机相连的手机或者gprs都可以控制发送短信了。Top
8 楼fjjiantuo(黄浪)回复于 2003-12-11 14:41:40 得分 20
Acytas你用的jdk是j2me吧,不是j2se
ByteBuffer sb = new ByteBuffer();、 sb.append(tmp);是用到哪个包?Top
9 楼sunny110(沙漠)回复于 2003-12-12 13:36:07 得分 20
upTop
10 楼Acylas(Acylas)回复于 2003-12-12 15:19:43 得分 0
我用的jdk,加sun公司的javax.commTop




