通过短信猫拨打电话

来源:互联网 发布:网络教育本科统考时间 编辑:程序博客网 时间:2024/05/01 15:30
 通过短信猫拨打电话。看下面的方法:

 

方法如下

///
///发送At指令
///
///指令内容不需要加;\r\n
public voidsendat(stringstrat)
{
sp.Open();
sp.Write(strat
+";\r\n");
sp.Close();
}

现在重要的是我们应该发什么,呵呵

1.打电话的指令怎么发?

这个很好找在网上一找就找到了,打电话的是atd10086;\r\n 大家一看应该就明白什么意思了吧,atd是指令,10086就是我们要拨打的电话号码。

2.怎么在通话进行按键呢?

at+vts=1; 就是这样,后面的1就是我们要进行的操作,如果是#的话应该是at+vts=#;

这个在专业术语里面叫:给用户提供应用GSM网络发送DTMF双音频。这个命令允许传送双音频。 还有一个好听点的名字叫拨分机号。

3.怎么进行挂机呢?直接发送指使ath就行了。

下面是个测试的CS代码

//生成一个AT操作类的对象
GSM objgsm=newGSM();

//加载窗体时构造At指令类的参数
private voidGMSMessage_Load(objectsender,EventArgse)
{
objgsm.loadSerialPort(
"com1",9600);
}

//发送At指令
private voidbtnSelect_Click(objectsender,EventArgse)
{
objgsm.sendat(textBox1.Text.Trim());
richTextBox1.Text
="发送At:"+textBox1.Text.Trim()+"\r\n";
}

//在关闭窗体时如果有没有关闭的通道关闭
private voidGMSMessage_FormClosing(objectsender,FormClosingEventArgse)
{
objgsm.sendat(
"ath");
}

//定时刷新一下设备中的信息
private voidtimeAT_Tick(objectsender,EventArgse)
{
try
{
richTextBox1.Text
+="\r\n"+objgsm.returnSerialPort().ReadExisting();
}
catch(Exception)
{

}
}

总结一下


其实这个问题做完了之后才感觉哎,就这,太简单了,但是在没有做之前呢,感觉无从下手,程序中的技术点就是这样,过了就过了,很简单,有时候可能只是一个想法,但要是想不通也是无能为了,并不是因为代码不会写,像这些情况 只要细心分析一下应该都不是太大的问题。 另外

at+vts=1;这个指令每次只能发一条,如果要输入 一个11位的电话号码的话就要发送11次,感觉不太友好,暂时没有找到更好的方式。还希望知道的朋友帮下忙

下在我把收集的一些指令集给大家分享一下

View Code
AT指令

一、一般命令
AT
+CGMI给出模块厂商的标识。SONYERICSSON
AT
+CGMM获得模块标识。这个命令用来得到支持的频带(GSM900,DCS1800或PCS1900)。当模块有多频带时,回应可能是不同频带的结合。AAB-1021011-CN
AT
+CGMR获得改订的软件版本。R6C005CXC125582CHINA1
AT
+CGSN获得GSM模块的IMEI(国际移动设备标识)序列号。351254004238596
AT
+CSCS选择TE特征设定。这个命令报告TE用的是哪个状态设定上的ME。ME于是可以转换每一个输入的或显示的字母。这个是用来发送、读取或者撰写短信。
AT
+CSCS?
+CSCS:"GSM"
AT
+WPCS设定电话簿状态。这个特殊的命令报告通过TE电话簿所用的状态的ME。ME于是可以转换每一个输入的或者显示的字符串字母。这个用来读或者写电话簿的入口。
NONE
AT
+CIMI获得IMSI。这命令用来读取或者识别SIM卡的IMSI(国际移动签署者标识)。在读取IMSI之前应该先输入PIN(如果需要PIN的话)。
460001711603161
AT
+CCID获得SIM卡的标识。这个命令使模块读取SIM卡上的EF-CCID文件。
NONE
AT
+GCAP获得能力表。(支持的功能)+GCAP:+FCLASS,+CGSM,+DS
A
/重复上次命令。只有A/命令不能重复。这命令重复前一个执行的命令。
AT
+CPOF关机。这个特殊的命令停止GSM软件堆栈和硬件层。命令AT+CFUN=0的功能与+CPOF相同。
AT
+CFUN设定电话机能。这个命令选择移动站点的机能水平。
AT
+CPAS返回移动设备号的活动状态。
AT
+CMEE报告移动设备的错误。这个命令决定允许或不允许用结果码“+CMEERROR:”或者“+CMSERROR:”代替简单的“ERROR”。
AT
+CKPD小键盘控制。仿真ME小键盘执行命令。
AT
+CCLK时钟管理。这个命令用来设置或者获得ME真实时钟的当前日期和时间。
AT
+CCLK?
+CCLK:"04/08/12,17:00:42+32"
AT
+CALA警报管理。这个命令用来设定在ME中的警报日期/时间。(闹铃)
AT
+CALA=?
+CALA:(1-2),(),(),(13),()
AT
+CRMP铃声旋律播放。这个命令在模块的蜂鸣器上播放一段旋律。有两种旋律可用:到来语音、数据或传真呼叫旋律和到来短信声音。
AT
+CRSL设定或获得到来的电话铃声的声音级别。NONE


二、呼叫控制命令

ATD拨号命令。这个命令用来设置通话、数据或传真呼叫。
ATH挂机命令。
ATA接电话。
AT
+CEER扩展错误报告。这个命令给出当上一次通话设置失败后中断通话的原因。
AT
+VTD给用户提供应用GSM网络发送DTMF(双音多频)双音频。这个命令用来定义双音频的长度(默认值是300毫秒)。
AT
+VTS给用户提供应用GSM网络发送DTMF双音频。这个命令允许传送双音频。
ATDL重拨上次电话号码。
AT
%Dn数据终端就绪(DTR)时自动拨号。
ATS0自动应答。
AT
+CICB来电信差。
AT
+CSNS单一编号方案。
AT
+VGR
AT
+VGT增益控制。这个命令应用于调节喇叭的接收增益和麦克风的传输增益。
AT
+CMUT麦克风静音控制。
AT
+SPEAKER喇叭/麦克风选择。这个特殊命令用来选择喇叭和麦克风。
AT
+ECHO回音取消。
AT
+SIDET侧音修正。
AT
+VIP初始化声音参数。
AT
+DUI用附加的用户信息拨号。
AT
+HUI用附加的用户信息挂机。
AT
+RUI接收附加用户信息。

三、网络服务命令
AT
+CSQ信号质量。+CSQ:17,99
AT
+COPS服务商选择。
AT
+COPS?
+COPS:0,0,"ChinaMobile"
AT
+CREG网络注册。获得手机的注册状态。
AT
+CREG?
+CREG:0,1
AT
+WOPN读取操作员名字。NONE
AT
+CPOL优先操作员列表。NONE


四、安全命令
AT
+CPIN输入PIN。
AT
+CPIN2输入PIN2。
AT
+CPINCPIN的剩余的尝试号码。
AT
+CLCK设备锁。
AT
+CPWD改变密码。


五、电话簿命令
AT
+CPBS选择电话簿记忆存储。
AT
+CPBS?
+CPBS:"SM"
AT
+CPBR读取电话簿表目。

AT
+CPBF查找电话簿表目。
AT
+CPBW写电话簿表目。
AT
+CPBP电话簿电话查询。
AT
+CPBN电话簿移动动作。这个特殊命令使电话簿中的条目前移或后移(按字母顺序)
AT
+CNUM签署者号码。
AT
+WAIP防止在下一次重起时初始化所有的电话簿。
AT
+WDCP删除呼叫电话号码。NONE
AT
+CSVM设置语音邮件号码。


六、短消息命令
AT
+CSMS选择消息服务。支持的服务有GSM-MO、SMS-MT、SMS-CB。
AT
+CNMA新信息确认应答。
AT
+CPMS优先信息存储。这个命令定义用来读写信息的存储区域。
AT
+CMGF优先信息格式。执行格式有TEXT方式和PDU方式。
AT
+CSAS保存设置。保存+CSAS和+CSMP的参数。
AT
+CRES恢复设置。
AT
+CSDH显示文本方式的参数。
AT
+CNMI新信息指示。这个命令选择如何从网络上接收短信息。
AT
+CMGR读短信。信息从+CPMS命令设定的存储器读取。
AT
+CMGL列出存储的信息。
AT
+CMGS发送信息。
AT
+CMGW写短信息并存储。
AT
+CMSS从存储器中发送信息。
AT
+CSMP设置文本模式的参数。
AT
+CMGD删除短信息。删除一个或多个短信息。
AT
+CSCA短信服务中心地址。
AT
+CSCB选择单元广播信息类型。
AT
+WCBM单元广播信息标识。
AT
+WMSC信息状态(是否读过、是否发送等等)修正。
AT
+WMGO信息覆盖写入。
AT
+WUSS不改变SMS状态。在执行+CMGR或+CMGL后仍保持UNREAD。


七、追加服务命令
AT
+CCFC呼叫继续。
AT
+CLCK呼叫禁止。
AT
+CPWD改变追加服务密码。
AT
+CCWA呼叫等待。
AT
+CLIR呼叫线确认限制。
AT
+CLIP呼叫线确认陈述。
AT
+COLP联络线确认陈述。
AT
+CAOC费用报告。
AT
+CACM累计呼叫计量。
AT
+CAMM累计呼叫计量最大值。
AT
+CPUC单价和货币表。
AT
+CHLD呼叫相关的追加服务。
AT
+CLCC列出当前的呼叫。
AT
+CSSN追加服务通知。
AT
+CUSD无组织的追加服务数据。
AT
+CCUG关闭的用户组。


八、数据命令
AT
+CBST信差类型选择。
AT
+FCLASS选择模式。这个命令把模块设置成数据或传真操作的特殊模式。
AT
+CR服务报告控制。这个命令允许更为详细的服务报告。
AT
+CRC划分的结果代码。这个命令在呼叫到来时允许更为详细的铃声指示。
AT
+ILRR本地DTE-DCE速率报告。
AT
+CRLP无线电通信线路协议参数。
AT
+DOPT其他无线电通信线路参数。
AT
%C数据压缩选择。
AT
+DS是否允许V42二度数据压缩。
AT
+DR是否报告V42二度数据压缩。
AT\N数据纠错选择。


九、传真命令
AT
+FTM传送速率。
AT
+FRM接收速率
AT
+FTH用HDLC协议设置传真传送速率。
AT
+FRH用HDLC协议设置传真接收速率。
AT
+FTS停止特定时期的传送并等待。
AT
+FRS接收沉默。


十、第二类传真命令
AT
+FDT传送数据。
AT
+FDR接收数据。
AT
+FET传送页标点。
AT
+FPTS页转换状态参数。
AT
+FK终止会议。
AT
+FBOR页转换字节顺序。
AT
+FBUF缓冲大小报告。
AT
+FCQ控制拷贝质量检验。
AT
+FCR控制接收传真的能力。
AT
+FDIS当前会议参数。
AT
+FDCC设置DCE功能参数。
AT
+FLID定义本地ID串。
AT
+FPHCTO页转换超时参数。


十一、V24
-V25命令
AT
+IPR确定DTE速率。
AT
+ICF确定DTE-DCE特征结构。
AT
+IFC控制DTE-DCE本地流量。
AT
&C设置DCD(数据携带检测)信号。
AT
&D设置DTR(数据终端就绪)信号。
AT
&S设置DST(数据设置就绪)信号。
ATO回到联机模式。
ATQ决定手机是否发送结果代码。
ATV决定DCE响应格式。
ATZ恢复为缺省设置。
AT
&W保存设置。
AT
&T自动测试。
ATE决定是否回显字符。
AT
&F回到出厂时的设定。
AT
&V显示模块设置情况。
ATI要求确认信息。这命令使GSM模块传送一行或多行特定的信息文字。
AT
+WMUX数据/命令多路复用。


十二、特殊AT命令
AT
+CCED电池环境描述。
AT
+CCED自动RxLev指示。
AT
+WIND一般指示。
AT
+ALEA在ME和MSC之间的数据密码模式。
AT
+CRYPT数据密码模式。
AT
+EXPKEY键管理。
AT
+CPLMN在PLMN上的信息。
AT
+ADC模拟数字转换度量。
AT
+CMER移动设备事件报告。这个命令决定是否允许在键按下时是否主动发送结果代码。
AT
+WLPR读取语言偏好。
AT
+WLPW写语言偏好。
AT
+WIOR读取GPIO值。
AT
+WIOW写GPIO值。
AT
+WIOM输入/输出管理。
AT
+WAC忽略命令。这个特殊命令允许忽略SMS、SS和可用的PLMN。
AT
+WTONE播放旋律。
AT
+WDTMF播放DTMF旋律。
AT
+WDWL下载模式。
AT
+WVR配置信差的声音速率。
AT
+WDR配置数据速率。
AT
+WHWV显示硬件的版本。
AT
+WDOP显示产品的出厂日期。
AT
+WSVG声音增益选择。
AT
+WSTR返回指定状态的状态。
AT
+WSCAN扫描。
AT
+WRIM设置或返回铃声指示模式。
AT
+W32K是否允许32kHz掉电方式。
AT
+WCDM改变缺省旋律。
AT
+WSSW显示内部软件版本。
AT
+WCCS编辑或显示订制性质设置表。
AT
+WLCK允许在特定的操作符上个性化ME。
AT
+CPHS设置CPHS命令。
AT
+WBCM电池充电管理。
AT
+WFM特性管理。是否允许模块的某些特性,如带宽模式、SIM卡电压等。
AT
+WCFM商业特性管理。是否允许Wavecom特殊特性。
AT
+WMIR允许从当前存储的参数值创建定制的存储镜像。
AT
+WCDP改变旋律的缺省播放器。
AT
+WMBN设置SIM卡中的不同邮箱号码。


十三、SIM卡工具箱命令
AT
+STSF配置工具箱实用程序。
AT
+STIN工具箱指示。
AT
+STGI获得从SIM卡发来的预期命令的信息。
AT
+STCR主动提供的结果:工具箱控制反应。
AT
+STGR给出响应。允许程序或用户从主菜单上选择项目,或响应某些命令。


ASCI码指令功能手机回答
AT回车握手OK
ATE简化显示OK
AT
+CLCC来电显示OK来电话时串口输出:RING
AT
+CLCC+CLCC:1,1,4,0,0,"05133082087",129
AT
+CNMI=1,1,2设置收到短消息提示OK
+CMTI:“SM”,4
4表示手机内短消息数量
ATD05133082087;拨打05133082087电话
AT
+CMGL=0读取电话上全部未读过的SMS消息
AT
+CMGL=2列出已有的短信息
AT
+CMGL=4读取全部SMS消息
AT
+CMGR=X回车读取第X条短消息
AT
+CMGF=0回车用PDU格式
AT
+CMGD=X回车删除第X条短消息

AT
+CLIP=1,1来电自动显示的指令ERROR
来电话!RING
+CLIP:13306285091,129
AT
+CMGS=6发送短消息的字节数>
0891683108503105F011000B8131032
65890F10008A90C665A4E0A597D00

31003200331A结束符号
十六进制大写
+CMGS:45
OK
第45条短信发送成功!!!!!!
AT
+CMGR=1读取第1条短信0:未读过,新的短信息
1:已读过
第二个1表示已读

150表示PDU数据的长度
1表示读取第几条短信+CMGR:1,1,,150


GSM07.
05Function(功能)
ATE0RESET
AT
+CSMS选择短信息服务
AT
+CPMS选择短信息内存
AT
+CMGF选择短信息格式
AT
+CSCA短信息中心地址
AT
+CNMI显示新收到的短信息
AT
+CMGR读短信息
AT
+CMGS发送短信息
AT
+CMGL列出SIM卡中短信息
AT
+CMSS从SIM内存中发短信息
AT
+CMGW向SIM内存中写入待发短信息
AT
+CMGD删除SIM内存中的短信息
AT
+CSCB选择蜂窝广播信息
原创粉丝点击