CDMA 貓用AT命令發(fā)中文短信(C#)
更新時間:2009年08月05日 23:15:56 作者:
CDMA貓連PDU都不支持,只能發(fā)文本短信。而且發(fā)中文短信居然是UNICODE,無法在超級終端里輸入。只能寫程序。網(wǎng)上這個問題談?wù)摰乇容^多,做起來比較累,還偶爾會出亂碼。還是將C#的成功代碼帖一下吧。
CDMA貓真是!@#¥#%(*,連PDU都不支持,只能發(fā)文本短信。而且發(fā)中文短信居然是UNICODE,無法在超級終端里輸入。只能寫程序。
網(wǎng)上這個問題談?wù)摰乇容^多,做起來比較累,還偶爾會出亂碼。還是將C#的成功代碼帖一下吧。
轉(zhuǎn)載請注明來源
void SendCHNSms(string content,string phone)
{
//中文CDMA發(fā)送,UNICODE編碼字節(jié)
byte[] b = Encoding.BigEndianUnicode.GetBytes(content);
//CDMA的AT命令手機號碼前面不能加86,否則雖然顯示成功發(fā)送,但短信中心回應(yīng)錯誤代碼5
if(phone.IndexOf("86")==0)
{
phone = phone.Substring(2);
}
//假設(shè)是COM3口
SerialPort sp = new SerialPort("com3");
//和GSM貓不同,波特率是115200,這個問題困擾了很久的說
sp.BaudRate = 115200;
sp.Open();
//設(shè)置中文短信
sp.Write("AT+WSCL=6,4\r");
Thread.Sleep(500);
//設(shè)置文本格式短信
sp.Write("AT+CMGF=1\r");
Thread.Sleep(500);
//設(shè)置發(fā)送的號碼和發(fā)送內(nèi)容字節(jié)長度
sp.Write("AT+CMGS=\"" + phone + "\"," + b.Length + "\r");
Thread.Sleep(500);
//寫入
sp.Write(b, 0, b.Length);
Thread.Sleep(500);
//寫入CTRL+Z結(jié)束短信內(nèi)容,注意在UNICODE模式下需要兩個字節(jié),這個也是不能在超級終端下操作的原因
byte[] b2 = new byte[] { 0x00, 0x1a };
sp.Write(b2, 0, b2.Length);
sp.Close();
}
網(wǎng)上這個問題談?wù)摰乇容^多,做起來比較累,還偶爾會出亂碼。還是將C#的成功代碼帖一下吧。
轉(zhuǎn)載請注明來源
復(fù)制代碼 代碼如下:
void SendCHNSms(string content,string phone)
{
//中文CDMA發(fā)送,UNICODE編碼字節(jié)
byte[] b = Encoding.BigEndianUnicode.GetBytes(content);
//CDMA的AT命令手機號碼前面不能加86,否則雖然顯示成功發(fā)送,但短信中心回應(yīng)錯誤代碼5
if(phone.IndexOf("86")==0)
{
phone = phone.Substring(2);
}
//假設(shè)是COM3口
SerialPort sp = new SerialPort("com3");
//和GSM貓不同,波特率是115200,這個問題困擾了很久的說
sp.BaudRate = 115200;
sp.Open();
//設(shè)置中文短信
sp.Write("AT+WSCL=6,4\r");
Thread.Sleep(500);
//設(shè)置文本格式短信
sp.Write("AT+CMGF=1\r");
Thread.Sleep(500);
//設(shè)置發(fā)送的號碼和發(fā)送內(nèi)容字節(jié)長度
sp.Write("AT+CMGS=\"" + phone + "\"," + b.Length + "\r");
Thread.Sleep(500);
//寫入
sp.Write(b, 0, b.Length);
Thread.Sleep(500);
//寫入CTRL+Z結(jié)束短信內(nèi)容,注意在UNICODE模式下需要兩個字節(jié),這個也是不能在超級終端下操作的原因
byte[] b2 = new byte[] { 0x00, 0x1a };
sp.Write(b2, 0, b2.Length);
sp.Close();
}
5月15日
【原創(chuàng)】CDMA貓用AT命令發(fā)中文短信(C#)
相關(guān)文章
探討:關(guān)閉瀏覽器后,php腳本會不會繼續(xù)運行
本篇文章是對關(guān)閉瀏覽器后,php腳本會不會繼續(xù)運行進行了詳細的分析介紹,需要的朋友參考下2013-06-06
C#實現(xiàn)Excel導(dǎo)入sqlite的方法
這篇文章主要介紹了C#實現(xiàn)Excel導(dǎo)入sqlite的方法,是C#程序設(shè)計中非常重要的一個實用技巧,需要的朋友可以參考下2014-09-09
C#命令行參數(shù)解析庫System.CommandLine使用
System.CommandLine是一個基于.Net Standard 2.0的命令行參數(shù)解析庫,該項目還是屬于beta狀態(tài),期待以后的正式版本,文章通過示例代碼給大家介紹了System.CommandLine使用講解,感興趣的朋友一起看看吧2021-06-06
C#實現(xiàn)TIF圖像轉(zhuǎn)PDF文件的方法
這篇文章主要介紹了C#實現(xiàn)TIF圖像轉(zhuǎn)PDF文件的方法,涉及C#使用TIFtoPDF工具實現(xiàn)pdf文件轉(zhuǎn)換的技巧,需要的朋友可以參考下2015-07-07
C#多線程同步:Mutex與Semaphore的區(qū)別及使用場景詳解
這篇文章主要介紹了C#多線程同步:Mutex與Semaphore的區(qū)別及使用場景,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-03-03

