谁知道PC机同GSM手机的通讯协议???

monday 2000-09-09 10:01:00
我自编软件通过数据线向手机传送短消息(铃声、图片,对NOKIA),有谁知道哪有公布通讯协议的??免费的最好。
...全文
920 点赞 收藏 54
写回复
54 条回复
切换为时间正序
请发表友善的回复…
发表回复
yestoyes 2001-10-13
motorola-T2688能与PC机直接通讯吗?
回复
Bonnie_H 2001-10-12
请问哪里有连NOKIA5110的线的构造图?或在哪里买比较便宜?
回复
fly2skylee 2001-10-09
我e文的也想要,正好最近要做这方面的东东,大侠们,多谢照顾一下,有感GSM的at指令帮忙传传,或者告诉我相关资料的有关网站也可,多谢了.fly2sky2000@sina.com
回复
cecom 2001-10-07
to nncliff();dragonki(dragonki):前辈请教了!有谁知道通过数据线从手机读取电话本该怎么下手?只用AT指令就可以,还是要涉及手机与计算机内码转换及什么通信协议问题?
回复
whitegourd 2001-10-07
gz
回复
dragonki 2001-09-08
1、用sms at指令,只要支持的手机就可以,不过不知道可不可以发铃声,LOGO
2、用nokia手机,可以到forum.nokia.com下载sdk,
发送短信息,我做过,但发送铃声,LOGO没做过
回复
nncliff 2001-09-07
具体的AT指令可以参照:GSM07.05和GSM07.07,本来我可以给你,但是都是e文,不方便。
其实下载图片的功能就是用短信完成的,关于短信,你可以参考网上的源码,(linux)
我也有,但是不便公布,还有问题的话,可以跟我联系,cliff.chen@263.net
要是用来打电话,尽可以参考modem的at指令
还有就是,并不是所有的手机都支持以上两个协议,有的仅支持部分,有的干脆就不支持,
建议你使用西门子手机35xx,但是我不知道那里有20元的手机线,我买的最便宜的也50元呢 :)
回复
monday 2001-09-06
我知道是用AT命令集,但谁有具体的?
回复
aspbasicer 2001-07-26
一个COPY来的东西:好东西啊
用Delphi实现BP机、手机短讯

时间:2001/05/09 11:41 作者:yousoft 中国软件开发中心



  很多人一定用过OICQ,想必也用过了它的BP机短讯、手机短讯,编程的朋友一定想实现这种功能,如果你的程序能发到手机、发到BP机一定很酷。现在我就介绍一种可行的方法。

一、原理

它不同于OICQ的双方都在网上才能进行交流的寻呼功能,它可以将文字信息发送到真正的寻呼机上。只要你能够上网,就可以自己动手,随时随地将信息发送出去,即使你在国外,也可以利用它来向国内的友人发送信息了,而且不用交纳国际长途费用,是不是方便又省事呢!

二、分析

现在网上各寻呼台都有网上服务,网页寻呼(Web Paging)就是常用的一种。它是通过在互联网上访问寻呼台的主页,然后由寻呼台的信息寻呼系统打传呼。所以我们只要利用HTTP协议就可以实现网络寻呼了。以下就简单介绍一下HTTP协议:

HTTP中完成一个会话通常要完成:1)客户端程序与服务器建立连接2)发送请求3)服务器响应客户端4)关闭连接

HTTP常用到的请求有:1)GET(请求一万维网页) 2)HEAD(读取一万维网页的头部) 3)PUT(请求一存储万维网页) 4)POST(附加一个命名的资源) 5)DELETE(删除万维网页) 6)LINK(连接两个已有的资源) 7)UNLINK(断开两个已有资源的连接)

HTTP中常用到的应答状态代码有:(*号代表0-9间的一个数) 1. 1** (信息) 2. 2**(成功) 3.4**(客户端错误) 4.5**(服务器错误)

其实我们要实现的程序,只用POST、GET请求,收到正常应答就可以了。POST可以用于把用户输入的数据以数据流的方式传给CGI程序,CGI通过Contect-Length环境变量来取相应长度的数据流信息。

POST请求格式如下:

POST http://www2.scuta.edu.cn/stu/chatroom/check.asp HTTP/1.0

Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */*

Referer: http://www2.scuta.edu.cn/stu/

Accept-Language: zh-cn

Content-Type: application/x-www-form-urlencoded

Proxy-Connection: Keep-Alive

User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)

Host: www2.scuta.edu.cn

Content-Length: 87

Pragma: no-cache

Cookie: ASPSESSIONIDQGGGQHHE=ABGNNOJCIGOFCDLBIOLHKAFK

服务器正常应答的头部结构为:

200 OK HTTP/1.0 说明提交数据成功

三、程序的实现
Delphi中NMHTTP已经可以很容易的实现上面的所说的数据提交,而且它还支持Proxy、这样对于通过代理服务器上网一样可以适用,并且它不是OICQ中发送讯信所用到SOCKET5代理。
新建一个窗体,加入组件一个ComboBox,命名为callto,用于存放寻呼对象,如国信寻呼就有95908、94908、94909、98062、98063、98019、98035、98052、98038、99055、98060、98061、98051、98003、99062、99016、99017、99018、99019、99046、99076;加入组件Edit,命名为tonumber,表示寻呼号码;加入组件RadioGroup,命名为RadioGroup1,Caption设为呼机类型,items中加入两项,分别为中文机、数字机;加入组件Edit,命名为firstName,用于表示发寻呼人的姓;加入组件RadioGroup,命名为RadioGroup2,Caption设为寻呼人性别,items中加入两项,分别为先生、小姐;加入组件Memo,命名为callmsg,用于输入发送的信息(注:对于数字机只能是数字信息);加入组件NMHTTP,命名为NMHTTP1;加入Checkbox,命名为ifuseproxy,用于确定是否使用代理服务器;加入两个Edit组件,分别用于软件代理服务器地址、代理服务器端口;最后加入命令按钮,Caption设为“发送”。
现在以国信寻呼为例,它用GET请求就可以实现了,“发送”按钮的程序代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var callstr:string;
begin callstr:='http://tips.gxspace.com/cgi-bin/tips/webpaging?stn_id='+callto.Text+'&page_no='+tonumber.Text;
case RadioGroup1.ItemIndex of
0:callstr:=callstr+'&pager_type=C';
1:callstr:=callstr+'&pager_type=N';
end;
callstr:=callstr+'&firstname='+firstname.text;
case RadioGroup2.ItemIndex of
0:callstr:=callstr+'&title=0';
1:callstr:=callstr+'&title=1';
end;
callstr:=callstr+'&msg='+callmsg.Text+'&answer=null&B1=发送寻呼';
NMHTTP1.InputFileMode := FALSE;
NMHTTP1.OutputFileMode := FALSE;
NMHTTP1.ReportLevel := Status_Basic;
If ifuseproxy.Checked then
Begin
NMHTTP1.Proxy := Edit1.Text;
NMHTTP1.ProxyPort := StrToInt(Edit2.Text);
End;
NMHTTP1.Get(callstr);
end;
有些寻呼(如润迅寻呼就不能用上面的GET请求实现,它要用POST请求),使用与上面相差不大,如下面是NMHTTP的POST用法:
NMHTTP1.InputFileMode:=False;
NMHTTP1.OutputFileMode:=True;
NMHTTP1.ReportLevel:=Status_Basic;
If ifuseproxy.Checked then
Begin
NMHTTP1.Proxy := Edit1.Text;
NMHTTP1.ProxyPort := StrToInt(Edit2.Text);
End;
With NMHTTP1.HeaderInfo do
Begin
Cookie := Edit5.Text;
LocalMailAddress := Edit6.Text;
LocalProgram := Edit7.Text;
Referer := Edit8.Text;
UserID := Edit9.Text;
Password := Edit10.Text;
End;
// 把要提交的数据先放在test.txt文件中:格式为stnid=A&pageno=123456...
NMHTTP1.Post('http://www.wocall.com/script/zbwebcall.asp','test.txt');
//NMHTTP的具体用法在Delphi安装目前\Borland\Delphi5\Demos\FastNet\Http下有个NMHTTP使用的例子。
以上都是用NMHTTP实现的,其实用Delphi中的WebBrowser组件同样可以完成数据的提交,使用是这样的 Webbrowser1.OleObject.Document.FrontPage_Form1.submit();
说明:WebBrowser1是WebBrowser组件的名,Frontpage_Form1是用WebBrowser打开的网页中的表单名
网页中的表单是这机样的:
<FORM name=FrontPage_Form1 action=http://message.com.cn/cgi-bin/ips/webpaging method=post>
......
</Form>
这样的实现方法就是用程序生成一个已经按用户输入信息生成一个网页,然后通过WebBrowser1.Navigate(生成的网页),最后提交到服务器Webbrowser1.OleObject.Document.FrontPage_Form1.submit();这样就完成了一次寻呼。





回复
fjlyx 2001-07-14
fj.lyx@163.com
回复
gojun 2001-07-13
monday兄弟,你的咚咚做好了一定给我看看呀 chentang13@263.net
回复
gojun 2001-07-13
请大侠也给我发一份吧!谢谢了。chentang13@263.net
回复
zshuc 2001-05-19
我要一个不知成不成!zshuc@yeah.net
回复
ezhb 2001-05-18
我最近也要用java做一个在电子商务平台上向手机发短讯功能,现有些接口,协议之类的东东,不知哪位可曾做过类似的,指点一、二,感激不尽.............
回复
oldfarmer 2001-05-16
哇我认识你还需要掌握,Nokia Smart Messageing Architectonic
回复
wh_esther 2001-05-12
我也很想要,谢谢!!!!! wh@xjpi.edu.cn
回复
wu257 2001-05-11
谁能给点例子我看看吗?
我用的是vb (比较土).
发AT命令也没有看到返回字符串啊。
是否需要设置DTR 什么的啊
谢谢大家
wu257@263.net

[ray()能给我一份资料吗?]
回复
hawk_yan 2001-02-06
又看了一便你的问题,还是没搞清楚,也许是我孤陋寡闻,99年我作过这样一个类似的软件,用手机传送图象的程序,里面包括本地视频捕捉及动态显示,图象抓拍和图象压缩。涉及到传输协议部分的时候,先开始以为得需要专用协议,后来发现完全就是对串口的操作。与对modem编程没什么区别,就是AT命令集可能不太一样,但只要你买了相应型号手机的PC卡后,里面附带有其AT命令列表。至于对串口的编程,你可以用控件,也可以用API,由于初次接触VC,所以傻呼呼的自己用API便了一个传输协议,不过傻人有傻富,用起来比较灵活,最后还加进了一个断点需传功能。当然这当中少不了用多线成。这么乱七八糟的东西往上一加,对于我这个半路出家的真有点吃不消,跌跌撞撞的编完了一个框架后,能凑和着用(在市话线上抗干扰,断点需传等功能发挥的都不错,连续发送一个小时没出错,没吊线。)但在无线状态下就不行了,干扰太厉害了,掉包非常严重。因为GSM系统只适合10-4出错率的语音传输。对于要求在10-6的数据传输只能碰运气。所以我对这个软件编的很不满意。
回复
hawk_yan 2001-02-06
也请给我一份,谢谢 yan.peng@163.net
另外我想问一下,你编的软件只是同本地手机通过专用数据线进行通信码?
还是利用专用手机PC卡将手机作为一个收发信机来对其进行编程?如果那样直接用AT命令集对串口编程不就行了吗?
回复
SkyNet 2001-02-04
强烈关注!
bignet@163.net
回复
发动态
发帖子
通信技术
创建于2007-08-27

3954

社区成员

通信技术相关讨论
申请成为版主
社区公告
暂无公告