发明内容
为解决上述技术问题,本发明提供一种简单方便的彩信发送方法和接收方法。
本发明提供的彩信发送方法,包括在通信模块内置彩信协议栈;通过AT命令设置彩信连接参数并将彩信内容导入到所述通信模块;调用彩信发送AT命令进行彩信数据包封装和发送。
在本发明提供的彩信发送方法的一种较佳实施例中,所述通过AT命令设置连接参数包括:通过连接参数设置AT命令接口AT+MMSSERVER设置通信模块的彩信连接参数。
在本发明提供的彩信发送方法的一种较佳实施例中,所述彩信连接参数可以包括接入点名称、彩信服务器、网关和端口号。
在本发明提供的彩信发送方法的一种较佳实施例中,所述将彩信内容导入到所述通信模块包括:通过标题导入AT命令接口AT+MMSSUB将彩信标题导入到所述通信模块;通过文本导入AT命令接口AT+MMSTXT将彩信文本导入到所述通信模块;通过图片导入AT命令接口AT+MMSIMG将彩信图片导入到所述通信模块;通过语音内容导入AT命令接口AT+MMSAUD将彩信语音内容导入到所述通信模块。
在本发明提供的彩信发送方法的一种较佳实施例中,所述调用彩信发送AT命令进行彩信数据包封装和发送包括:将导入到所述通信模块的彩信内容封装成彩信数据包;调用所述通信模块的socket接口使其与彩信服务器网关建立连接;利用所述socket接口与所述彩信服务器之间的连接,通过POST方式将所述彩信数据包发送给所述彩信服务器。
本发明提供的彩信接收方法,包括在通信模块内置彩信协议栈;通过AT命令设置彩信连接参数;接收PUSH短信并通过AT命令上报PUSH短信通知;根据所述PUSH短信通知,调用彩信接收AT命令从彩信服务器获取彩信。
在本发明提供的彩信接收方法的一种较佳实施例中,所述通过AT命令上报PUSH短信通知包括:在接收到所述PUSH短信之后,利用主动上报AT命令接口+MSTI以主动上报的方式上报PUSH短信通知;通过PUSH短信读取AT命令接口AT+MMSRDPUSH读取所述PUSH短信,并从所述PUSH短信获取彩信相关信息,所述彩信相关信息包括彩信发送号码、彩信大小和彩信存放地址。
在本发明提供的彩信接收方法的一种较佳实施例中,所述根据所述PUSH短信通知,调用彩信接收AT命令从彩信服务器获取彩信包括:调用socket接口以使所述通信模块的socket接口与所述彩信服务器网关建立连接;在所述通信模块的socket接口与所述彩信服务器网关连接建立之后,根据从所述PUSH短信中解析出的彩信存放地址,利用GET方式从所述彩信服务器获取所述彩信。
在本发明提供的彩信接收方法的一种较佳实施例中,还包括:通过AT命令读取彩信内容。
在本发明提供的彩信接收方法的一种较佳实施例中,所述通过AT命令读取彩信内容包括:通过读取当前存储彩信内容AT命令接口AT+MMSVIEW和读取彩信文件AT命令接口AT+MMSREAD直接读取彩信数据内容。
在本发明提供的彩信发送方法和接收方法中,所述通信模块可以通过AT命令实现彩信的发送和接收,无需通过外部程序来实现彩信协议,因此,本发明提供的彩信发送方法和接收方法简单方便,易于实现。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供一种彩信发送方法和接收方法,在所述方法中,通信模块可以通过注意(Attention)命令,一般称为AT命令,简单方便地实现彩信的发送和接收。
具体地,为支持彩信的发送和收发,本发明提供的技术方案首先在所述通信模块内部增加彩信协议栈,比如,可以通过AT命令将WAP(Wireless Application Protocol, 无线应用协议)、WSP(WirelessSession Protocol, 无线会话协议)和WDP(Wireless Datagram Protocol, 无线数据表协议)协议栈内置在所述通信模块的内部,客户端只需要调用相应的AT命令接口便可以完成彩信发送和彩信接收,而不需要参与WAP、WSP和WDP协议栈的处理。
并且,为支持通过AT命令实现彩信发送和彩信接收,本发明提供的彩信发送方法和接收方法在通信模块预先配置多个AT命令接口,具体地,本实施例涉及的通信模块可以包括以下AT命令接口:
(1) AT+MMSSERVER:参数设置AT命令接口,用于设置APN(Access Point Name, 接入点名称)、彩信服务器、网关、端口号等连接参数信息;
(2) AT+MMSSUB:标题导入AT命令接口,用于将彩信标题导入到所述通信模块;
(3) AT+MMSTXT:文本导入AT命令接口,用于将彩信文本导入到所述通信模块;
(4) AT+MMSIMG:图片内容导入AT命令接口,用于将彩信图片内容导入到所述通信模块;
(5) AT+MMSAUD:语音内容导入AT命令接口,用于将彩信语音内容导入到所述通信模块;
(6) +MSTI:主动上报AT命令接口,用于主动上报PUSH短信的存储位置;
(7) AT+MMSSEND:彩信发送AT命令接口,用于封装彩信数据包,并发送彩信;
(8) AT+MMSRECV:彩信接收AT命令接口,用于从彩信服务器获取彩信;
(9) AT+MMSRDPUSH:PUSH短信读取AT命令接口,用于读取PUSH短信;
(10) AT+MMSVIEW:读取当前存储彩信内容AT命令端口,用于显示所述通信模块当前存储的彩信内容;
(11) AT+MMSREAD:读取彩信文件AT命令接口,用于读取彩信文件内容。
在具体实施例中,所述通信模块可以为全球移动通信系统(GlobalSystem for Mobile Communications, GSM)模块、通用分组无线服务技术(General Packet Radio Service, GPRS)模块,或同时集成GSM和GPRS功能的GSM/GPRS模块;或者,所述通信模块也可以为第三代移动通信模块,比如宽带码分多址(Wideband Code Division Multiple Access,WCDMA)模块或时分同步的码分多址技术(Time Division SynchronousCode Division Multiple Access, TD-SCDMA)模块;或者,所述通信模块也可以为第四代移动通信模块,比如分时长期演进(Time Division LongTerm Evolution, TD-LTE)模块或频分双工长期演进(Frequency DivisionDuplexing Long Term Evolution, FDD-LTE)模块;或者,所述通信模块也可以为上述模块的任意组合等。
以下首先介绍本发明提供的彩信发送方法,请参阅图1,其为本发明提供的彩信发送方法一种实施例的流程示意图。所述彩信发送方法主要涉及通信模块的内部处理流程,其包括以下步骤:
步骤S11,通过连接参数设置AT命令设置彩信连接参数;
具体地,在本步骤中可以通过所述连接参数设置AT命令接口(AT+MMSSERVER)设置所述通信模块的彩信连接参数,所述彩信连接参数可以包括APN、彩信服务器、网关、端口号等。
步骤S12,通过彩信内容导入AT命令将彩信内容导入到通信模块;
具体地,在本步骤中,导入到所述通信模块的彩信内容可以具体包括彩信标题、彩信文本、彩信图片和彩信语音内容等中的一个或者多个;比如,在本实施例中,可以通过所述标题导入AT命令接口(AT+MMSSUB)、文本导入AT命令接口(AT+MMSTXT)、图片导入AT命令接口(AT+MMSIMG)和语音内容导入AT命令接口(AT+MMSAUD)分别将所述彩信标题、彩信文本、彩信图片和彩信语音内容导入到所述通信模块。
步骤S13,调用彩信发送AT命令进行彩信数据包封装和发送;
在本步骤中,所述通信模块可以调用所述彩信发送AT命令接口(AT+MMSSEND)来实现彩信数据包的封装和发送,比如,在一种实施例中,所述通信模块在调用所述彩信发送AT命令接口时可以执行以下子步骤:
S131,将导入到所述通信模块的彩信内容(包括彩信标题、彩信文本、彩信图片和彩信语音内容等)封装成彩信数据包;
S132,调用socket接口连接彩信服务器网关,具体地,所述通信模块可以调用socket接口,使得所述通信模块的socket接口与所述彩信服务器网关建立连接;
S133,通过POST方式将所述彩信数据包发送给彩信服务器,具体地,在所述通信模块的socket接口与所述彩信服务器网关连接建立之后,所述通信模块可以进一步通过POST方式将所述彩信数据包发送给所述彩信服务器。
以上所述为本发明提供的彩信发送方法的一种具体实现方案,在此基础上,本发明还进一步提供一种彩信接收方法。请参阅图2,其为本发明提供的彩信接收方法一种实施例的流程示意图。所述彩信接收方法主要涉及通信模块的内部处理流程,其包括以下步骤:
步骤S21,通过AT命令设置彩信连接参数;
具体地,在本步骤中可以通过所述连接参数设置AT命令接口(AT+MMSSERVER)设置通信模块的彩信连接参数,所述彩信连接参数可以包括APN、彩信服务器、网关、端口号等。
步骤S22,接收PUSH短信并通过AT命令上报PUSH短信通知;
具体地,在本步骤中,所述通信模块可以首先接收短信,在短信收到之后,如果所述通信模块解析出接收到的短信为PUSH短信,则所述通信模块可以利用所述主动上报AT命令接口(+MSTI)以主动上报的方式上报PUSH短信通知,具体上报的内容可以包括PUSH短信的存储位置信息等。接着,在收到所述PUSH短信通知之后,可以通过PUSH短信读取AT命令接口(AT+MMSRDPUSH)读取所述PUSH短信,并从所述PUSH短信解析出彩信发送号码、彩信大小、彩信存放地址等彩信相关信息。
步骤S23,根据所述PUSH短信通知,调用彩信接收AT命令从彩信服务器获取彩信;
在本步骤中,所述通信模块可以调用彩信接收AT命令接口(AT+MMSRECV),并且根据所述PUSH短信通知上报的存储位置信息,从所述彩信服务器获取彩信。比如,在一种实施例中,所述通信模块在调用所述彩信接收AT命令接口时可以执行以下子步骤:
步骤S231,调用socket接口连接彩信服务器网关,具体地,所述通信模块可以调用socket接口,使得所述通信模块的socket接口与所述彩信服务器网关建立连接;
步骤S232,通过GET方法从所述彩信服务器获取所述彩信数据包,具体地,在所述通信模块的socket接口与所述彩信服务器网关连接建立之后,所述通信模块可以进一步根据从所述PUSH短信中解析出的彩信存放地址,利用GET方式从所述彩信服务器获取所述彩信。
步骤S24,通过AT命令读取彩信内容;
具体地,所述通信模块在从所述彩信服务器获取所述彩信之后,可以通过读取当前存储彩信内容AT命令接口(AT+MMSVIEW)和读取彩信文件AT命令接口(AT+MMSREAD)直接读取彩信数据内容。
由此可以,所述通信模块便可以通过AT命令实现彩信的发送和接收,无需通过外部程序来实现彩信协议,因此本发明提供的彩信发送方法和接收方法简单方便,易于实现。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。