转一个手机开发的帖子(来自开发者俱乐部)_PHP
代码:--------------------------------------------------------------------------------
目前手机短信息的应用越来越广泛,互联网上提供短信息发送的站点也越来越多,但一些站点的服务并不尽如人意,往往发出去的短信息石沉大海。最可靠的发送方法当然是用手中的手机了,如果设置了状态报告,更能确切知道对方是否收到了此条信息。手机发送尽管比较可靠, 但也存在输入麻烦、效率低的问题。本文介绍一种方法,只要手机能够与电脑相连(通过红外端口或用手机数据线连接串行口,同时手机支持GSM AT指令集),就可以通过自行编制的短信息发送软件,实现短信息的发送。
现在市场上的大多数手机均支持类似于Modem控制的GSM AT指令集,该指令集是由诺基亚、爱立信、摩托罗拉和HP等厂家共同为GSM系统研制的,其中包含了对SMS(Short Message Service)的控制。
GSM AT相关指令的介绍
与SMS有关的GSM AT指令如表1所示:
表1 相关的GSM AT指令
对SMS的控制共有三种实现途径:
Block Mode;
基于AT命令的Text Mode;
基于AT命令的PDU Mode。
Text Mode比较简单,多款诺基亚手机均支持该模式。西门子的手机大多只支持PDU模式,PDU模式是发送或接收手机SMS信息的一种方法,短信息正文经过十六进制编码后被传送。目前,PDU已取代Block Mode,因此本文主要探讨PDU模式的发送。
计算机和手机的通信
本文以西门子 S3568i为例,介绍如何实现短信息的发送。
数据线连接
首先,通过S35/25数据线将手机与电脑串行口相连。然后,打开超级终端,选择直接串行口连接,端口参数设为19200速率、无校验、数据位8、停止位1。
红外线连接
如果使用带红外端口的计算机,可以设置与手机的无线连接。首先确认计算机红外端口已打开,并将手机的红外线和收传真/数据功能打开,对接红外端口,计算机系统托盘上应当出现一个红外设备西门子S35(如果没有安装红外监视器,则不显示)。然后,打开超级终端,选择IrDa上的串行口。
连接测试
点击超级终端工具条上的呼叫按钮,输入AT并回车,屏幕上如果出现OK则表明计算机与手机的连接成功,这时就可以输入各类GSM AT指令了。
如:查询手机厂家,输入AT+CGMI=
通常情况下,执行测试命令AT+CMGS=?
If PDU mode (+CMGF=0)+CMGS=
如果短信息格式指令AT+CMGF返回的是0,则SMS格式为PDU模式,再执行AT+CMGS=命令后,手机返回“>”符号并等待输入,输入PDU数据并以^Z或Esc键结束。
如果信息发送成功,则返回OK,并显示信息号:
+CMGS:
如果发送失败,则返回如下信息:
+CMS ERROR:
PDU数据格式的分析
下面通过对存储在手机中的待发信息的分析,来介绍SMS PDU的数据格式。首先,用手机写一条短信息,发送手机号码为13605696031,信息内容为“Hello World!”。通过执行AT+CMGL=2可以读出此条信息。
操作过程如下(斜体字符为响应信息,{}内为注释):
AT
OK
AT+CMGL=2 {读未发短信息}
+CMGL: 1,2,,24 {1表示信息个数,2表示未发信息,24表示信息总容量}
08 91 683108501505F0 11 00 0B 81 3106656930F1 0000A7 0B E8329BFD06DDDF723619
OK
下面分析这条信息:
08:短信息中心地址长度。
91:短信息中心号码类型,91是TON/NPI。TON/NPI遵守International/E.164标准,指在号码前需加‘+’号;此外还可有其他数值,但91最常用。
683108501505F0:短信息号码,是所使用的服务中心地址。由于位置上略有处理,实际号码应为:8613805515500(字母F意指长度减1),这是作者所在地GSM短信息中心的号码。
11:文件头字节(header byte,是一种bitmask)。这里11指正常地发送短信息。
00:信息类型。
0B:被叫号码长度。
81:被叫号码类型。
3106656930F1:被叫号码,也经过了移位处理,实际号码为13605696031。
0000A7:短信息编码类型GSM Default Alphabet,如为中文则是000010。
0B:短信息长度。
E8329BFD06DDDF723619:短信息内容“Hello World!”。
短信息的编码方法及编程实现
下面我们介绍纯英文和纯中文的信息编码方法。通过测试我们发现,每条发送的短信息前面部分均相同,只是被叫号码和短信息内容有变化。
1.英文编码
参见表2,设短信息内容为“Hello World!”。缺省的GSM 字符集为7位编码,可以简单地理解为ASCII码(ASCII值小于80Hex,因此,Bit8被忽略),依次将下一7位编码的后几位逐次移至前面,形成新的8位编码,参见表2箭头指示。需要注意的是第9行,移位计数已达7位,则直接将本编码前加0。GSM并非支持所有的ASCII字符显示。
表2 英文编码的实现过程
下面是实现英文编码的部分Delphi 5代码:
//英文格式编码,s为String
function Encode1(var s:String):String;
var
i,j,len:Integer;
cur:Integer;
t:String;
begin
Result:=‘’;
len:=Length(s);
//j 用于移位计数
i:=1;j:=0;
while ibegin
if i
cur:=(ord(s[i]) shr j) or ((ord(s[i+1]) shl (7-j)) and $ff)
else
cur:=(ord(s[i]) shr j) and $7f;
FmtStr(t,‘%2.2X’,[cur]);
Result:=Result+t;
inc(i);
//移位计数达到7位的特别处理
j:=(j+1) mod 7;if j=0 then inc(i);
end;
end;
2.中文编码
参见表3,设短信息内容为“中文短信息”。中文短信息的实现较简单,只需将??????的中文编码转换为代码页为CP936的Unicode编码即可。
表3 中文编码的实现过程
通过Delphi的WideString类型转换,可以巧妙地实现??????到Unicode的编码转换(注意代码页和操作系统相关联)。下面是实现中文编码的部分Delphi 5代码:
// 中文格式编码,s为Unicode String
function Encode2(var s:WideString):String;
var
i,len:Integer;
cur:Integer;
t:String;
begin
Result:=‘’;
len:=Length(s);
i:=1;
while ibegin
cur:=ord(s[i]);
//BCD转换
FmtStr(t,‘%4.4X’,[cur]);
Result:=Result+t;
inc(i);
end;
end;
小 结
以上介绍了PDU格式的短信息编码。建议英文信息长度不超过140个字符,中文信息不要超过54个汉字。如果使用能够支持文本方式的手机进行发送,实现起来更简单。如发送“Hello World!”,用如下的AT指令即可:
AT+CGMF=1
>Hello World!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Menurut berita pada 17 Ogos, sumber @ibinguniverse menyiarkan di Weibo hari ini, menyatakan bahawa saiz tepat Apple iPhone 16 Pro Max ialah 6.88 inci, dan saiz tepat Galaxy S25 Ultra ialah 6.86 inci Kedua-duanya boleh dianggap sebagai 6.9 inci . Sumber menunjukkan bahawa Samsung Galaxy S25 Ultra mempunyai badan yang lebih sempit dan skrin yang lebih luas daripada S24 Ultra, dengan nisbah skrin-ke-badan mendatar sebanyak 94.1%, manakala nisbah skrin-ke-badan S24 Ultra mendatar ialah 91.5%. Fenye menyemak sumber Weibo yang berkaitan Dia juga mengulas pada gambar iPhone 16 Pro Max yang baru terdedah dan percaya bahawa adalah salah untuk berada dekat dengan lengkung mikro Telefon itu sebenarnya adalah skrin lurus + kaca 2.5D.

Walaupun Apple telah dikritik kerana kekurangan inovasi dalam beberapa tahun kebelakangan ini, Apple tidak selalu berdiri diam. Sekurang-kurangnya dari segi reka bentuk perkakasan, dengan sokongan harga unit produk Apple yang tinggi, juruteranya boleh mencuba beberapa teknologi baharu dengan mudah tanpa perlu memikirkan terlalu banyak isu kos. Sebagai contoh, iPad Pro, sebagai medan ujian "teknologi paparan" kegemaran Apple, iPad Pro telah berada di barisan hadapan dalam teknologi paparan untuk peranti pintar mudah alih daripada miniLED pada tahun 2021 kepada OLED bersamaan pada tahun 2024. Walaupun iPad Pro bukanlah peranti pintar mudah alih pertama yang dilengkapi dengan skrin miniLED (MSI mengeluarkan komputer riba miniLED setahun lebih awal daripada Apple), apabila anda membandingkan parameter kedua-duanya, anda akan segera menyedari bahawa ia tidak sama.

Menurut berita pada 9 Ogos, di Sidang Kemuncak FMS2024, SK Hynix menunjukkan produk storan terbaharunya, termasuk memori kilat universal UFS4.1 yang belum mengeluarkan spesifikasi secara rasmi. Menurut laman web rasmi Persatuan Teknologi Keadaan Pepejal JEDEC, spesifikasi UFS terkini yang diumumkan pada masa ini ialah UFS4.0 pada Ogos 2022. Kelajuan antara muka teorinya adalah setinggi 46.4Gbps Dijangkakan bahawa UFS4.1 akan meningkatkan lagi penghantaran kadar. 1. Hynix menunjukkan produk memori denyar tujuan umum 512GB dan 1TBUFS4.1, berdasarkan memori denyar V91TbTLCNAND 321 lapisan. SK Hynix juga mempamerkan zarah 3.2GbpsV92TbQLC dan 3.6GbpsV9H1TbTLC. Hynix menunjukkan berasaskan V7

Menurut berita pada 30 Julai, sumber Yogesh Brar menyiarkan tweet pada platform X semalam (29 Julai), berkongsi gambar fizikal telefon bimbit Xiaomi POCOM6 Plus 5G dan fon kepala POCO Buds X1 Pengumuman rasmi kedua-dua produk itu akan dikeluarkan pada 1 Ogos. Sumber telefon bimbit 5G Xiaomi POCOM6 Plus berkata bahawa telefon bimbit Xiaomi POCOM6 Plus 5G akan dilengkapi dengan skrin LCD 6.8 inci, dilengkapi pemproses Qualcomm Snapdragon 4Gen2AE, dilengkapi dengan kamera 108 megapiksel di bahagian belakang, dan bateri berkapasiti 5030mAh. Seperti yang dilaporkan sebelum ini, telefon ini tersedia dalam tiga warna: ungu, hitam dan perak. Ia lebih kurang sama dengan telefon POCOM6 standard, tetapi cincin denyar LED agak lebih menonjol. POCOB

Menurut laporan dari Smartprix, Xiaomi sedang membangunkan telefon bimbit tanpa butang yang diberi nama kod "Suzaku". Menurut berita ini, telefon bimbit yang diberi nama kod Zhuque ini akan direka dengan konsep bersepadu, menggunakan kamera bawah skrin, dan dilengkapi dengan pemproses Qualcomm Snapdragon 8gen4 Jika rancangan itu tidak berubah, kita mungkin akan melihat ketibaannya pada tahun 2025 . Apabila saya melihat berita ini, saya fikir saya telah kembali pada tahun 2019 - pada masa itu, Xiaomi mengeluarkan telefon konsep Mi MIX Alpha, dan reka bentuk tanpa butang skrin sekeliling agak menakjubkan. Ini adalah kali pertama saya melihat daya tarikan telefon bimbit tanpa butang. Jika anda mahukan sekeping "kaca ajaib", anda mesti mematikan butangnya terlebih dahulu Dalam "The Biography of Steve Jobs", Jobs pernah menyatakan bahawa dia berharap telefon bimbit itu boleh menjadi seperti kepingan "kaca ajaib".

Menurut berita pada 19 Ogos, Nubia telah mematuhi reka bentuk skrin penuh sebenar sejak keluaran Z50 Ultra, dan telah meneroka secara berterusan bidang fotografi proaktif di bawah skrin piksel tinggi. Hari ini, blogger digital Wisdom Pikachu mengumumkan bahawa Nubia Z70 Ultra, yang akan dikeluarkan pada separuh kedua tahun ini, akan debut dengan teknologi kamera bawah skrin 1.5K, yang merupakan penyelesaian UDC resolusi tertinggi dalam industri jadi jauh. Dilaporkan bahawa penyelesaian proaktif bawah skrin ZTE telah maju ke generasi keenam. Penyelesaian proaktif bawah skrin terkini tersedia dalam siri Nubia Z60 Ultra dan Red Magic 9S Pro. Resolusi skrin ialah 2480x1116, iaitu antara resolusi 1080P dan 1.5K. Kali ini Nubia akan menerobos batasan resolusi sedia ada dan menetapkan penanda aras baharu dalam industri.

Menurut berita pada 31 Julai, sumber @ibinguniverse menyiarkan tweet pada Dilengkapi dengan memori 16GB. Kemas kini kapasiti memori telefon mudah alih Samsung Samsung telah melancarkan memori 16GB pada telefon mudah alih Galaxy S20 Ultra dan Galaxy S21 Ultra. Bermula daripada Galaxy S22 Ultra, termasuk telefon bimbit Galaxy S24 Ultra unggulan terkini, kapasiti memori telefon mudah alih Samsung dihadkan pada 12GB. Dilaporkan bahawa Samsung Galaxy S25 dan Galaxy S25+ akan datang akan menggunakan 12GB LPDD

Menurut berita pada 8 Ogos, maklumat konfigurasi terperinci telefon mudah alih siri Huawei Mate70 telah didedahkan baru-baru ini telefon mudah alih ini dijangka dikeluarkan pada suku keempat 2024. 1. Menurut laporan, keseluruhan siri Mate70 akan menggunakan skrin resolusi 1.5K peringkat atas tersuai untuk memenuhi keperluan pengguna untuk kejelasan skrin. Dijangkakan bahawa Huawei Mate70Pro dan versi cawan lebih besar akan dilengkapi dengan skrin kedalaman keempat, manakala Mate70 standard mungkin menggunakan reka bentuk skrin lurus yang lebih kecil sedikit. Sebagai tambahan kepada peningkatan skrin, siri Huawei Mate70 juga akan dilengkapi dengan bateri berkapasiti ultra besar dengan bahan asas baharu, yang menandakan kejayaan dalam hayat bateri telefon bimbit siri Huawei Mate. Walaupun Huawei sedang membangunkan teknologi buka kunci cap jari ultrasonik, siri Mate70 tahun ini tidak akan dilengkapi dengan ciri ini. ini
