Bagian ini dibagi menjadi dua bagian:
- Konten - apa isi pesan ELS.
- Format - cara pesan tersebut dikirim dan cara mendekodenya (jika perlu).
Konten
ELS V1
Pesan ELS yang dikirim melalui SMS mengikuti spesifikasi AML ETSI terbaru. Ini dikenal sebagai ELS V1 dan merupakan pendekatan paling umum yang dipilih oleh partner ELS. Tujuan berikut ini adalah bagian yang paling relevan:
Nama Kunci | Nilai | Unit | Contoh |
A"ML |
Versi | - | 1 |
lt |
Lintang | derajat | +37,42175 |
lg |
Bujur | derajat | -122,08461 |
top |
Stempel waktu lokasi | yyyyMMddHHmmss dalam waktu UTC | 20150613010948 |
rd |
Akurasi Lokasi | meter | 20,0 |
lc |
Keyakinan Lokasi | Persentase keyakinan | 68 |
pm |
Metode Pemosisian (Wi-Fi, GPS, Sel, Null) | 'W', 'G', 'C', 'N' | W |
si |
IMSI (hanya berisi 6 digit pertama IMSI asli, digit tersisa diganti dengan 0) | - | 123456000000000 |
ei |
IMEI | - | 355458061005220 |
mcc |
MCC Jaringan | - | 310 |
mnc |
MNC Jaringan | - | 260 |
ml |
Panjang pesan (termasuk panjang pesan dan header) | - | 123 |
Metode pemosisian
Lokasi null
Contoh
Tidak ada lokasi:
A"ML=1;lt=+00.00000;lg=+000.00000;rd=N;top=20220131173734;lc=0;pm=N;si=234159000000000;ei=123456789012345;mcc=234;mnc=15;ml=127
Lokasi yang dihitung:
A"ML=1;lt=+51.53321;lg=-0.12601;rd=14;top=20220131171748;lc=68;pm=W;si=234159000000000;ei=123456789012345;mcc=234;mnc=15;ml=126
ELS Beta
Format eksperimental yang digunakan oleh beberapa partner adalah ELS Beta, konten yang memberi kesempatan kepada mitra untuk mencoba berbagai bidang.
Berikut ini adalah bagian yang paling relevan:
Nama Kunci | Nilai | Unit | Contoh |
A"ML |
Versi | - | 2 |
en |
Nomor Darurat | - | 911 |
et |
Stempel waktu panggilan darurat | Waktu epoch UNIX dalam detik (integer) | 1593187189 |
lo |
Lokasi (lintang, bujur, akurasi) - lintang dan bujur harus dipotong menjadi 5 desimal, akurasi menjadi 1 desimal - akurasi 0 mewakili tidak diketahui | Derajat (float), Derajat (float), Meter (float) | 37.42175,-122.08461,20.1 |
lt |
Waktu lokasi (relatif terhadap waktu darurat) - kolom ini dapat diabaikan jika tidak ada kolom lokasi ('lo') atau tidak ada kolom stempel waktu ('et') sekarang | Detik (bilangan bulat) | 5 |
lc |
Keyakinan Lokasi | Persentase keyakinan (bilangan bulat) | 68 |
lz |
Lokasi Vertikal (ketinggian, akurasi vertikal) - bidang ini mungkin diabaikan jika tidak ada kolom lokasi ('lo') - semua kolom terpotong menjadi 1 titik desimal - akurasi 0 mewakili tidak diketahui | Meter (float), Meter (float) | -10,1,10,1 |
ls |
Sumber Lokasi (Wi-Fi, Sel, GPS, Menyatu, Tidak Diketahui) - kolom ini mungkin diabaikan jika tidak ada kolom lokasi ('lo') | 'W', 'G', 'C', 'F', 'U' | W |
ei |
IMEI | - | 355458061005220 |
nc |
MCC/MNC Jaringan | - | 310260 |
hc |
Beranda MNC/MNC | - | 310260 |
lg |
Tag Bahasa | IETF BCP 47 | en-US |
Tingkat keyakinan
Ketinggian Ketinggian (sumbu Z)
ELS melaporkan lokasi dan akurasi vertikal dalam pesan ELS Beta. Ketinggian lz
dilaporkan dalam meter di atas ellipsoid referensi WGS84 (WGS adalah
Sistem Geodetik Dunia yang digunakan oleh GPS) dan akurasi dalam meter (ketinggian, vertikal
akurasi). Kolom ini dapat diabaikan jika tidak ada kolom lokasi (lo
). Semua
kolom yang dipotong menjadi 1 titik desimal dan akurasi 0.0
menunjukkan
unknown
. Akurasi vertikal didefinisikan sama dengan akurasi lokasi dan
yang ditetapkan oleh partner. Nilai default-nya adalah 68%
kepercayaan diri. Informasi selengkapnya tersedia dalam dokumentasi Android untuk
getVerticalAccuracyMeters().
Contoh
Lokasi belum dihitung kasusnya:
A"ML=2;en=911;et=1643816841;ei=123456789012345;nc=23415;hc=23415
Kasus lokasi berhasil dikomputasi:
A"ML=2;en=911;et=1643816929;lo=51.53321,-0.12601,14.7;lt=6;lc=68;lz=77.6,1.0;ls=W;ei=123456789012345;nc=23415;hc=23415
Format
Pesan ELS melalui SMS dapat dikirim menggunakan format berikut:
- SMS: SMS biasa biasa. Format ini didukung mulai dari Android P
- SMS Data: Isi pesan sama persis dengan SMS Teks, tetapi data tersebut dienkode (detail selengkapnya di bawah). Format ini didukung oleh semua Perangkat yang didukung Android dan kompatibel dengan ELS.
SMS SMS
Membaca dan mengurai SMS Teks relatif mudah. Banyak perangkat seluler operator menawarkan layanan ini dan dapat menyediakan API push atau pull untuk mendapatkan isi pesan yang dikirim ke nomor telepon standar.
SMS Data
Format SMS Teks Reguler telah didukung mulai dari Android P. Lebih dewasa perangkat akan mengirim pesan ELS menggunakan SMS Data yang perlu didekode. Data ELS Pesan SMS dikodekan dengan set karakter default GSM 03,38 7 bit dan kemudian ditetapkan sebagai {i>payload<i} biner sebuah SMS Data.
Definisi SMS Data yang dibandingkan dengan SMS biasa akan dibahas nanti. Definisi yang tepat dari encoding GSM 03.38 7 bit dapat ditemukan di 3GPP 23.038 (khusus lihat bagian 6.1.2.1.1).
Dekode Data SMS
Untuk tujuan penggunaan SMS oleh Google untuk ELS, ELS hanya berfokus pada SMS dari handset ke pusat layanan seluler (SMSC) - jenis SMS-SUBMIT membuat pesan teks. SMSC seharusnya dapat menerima pesan ini tanpa masalah sebagai itu adalah bagian dari standar SMS biasa (namun, dalam praktiknya kami telah dengan beberapa MNO, mulai dari pengaturan infrastruktur dan kebijakan hingga kesulitan mendekode Data SMS dengan benar). Dalam dokumen berikut, ELS mempertimbangkan Pesan SMS-SUBMIT dari handset ke SMSC, yang mengikuti proses SMS normal standar (GSM 3.40). ELS menentukan SMS Data sebagai subkumpulan SMS normal yang:
- Memiliki penanda Indikator {i>User-Data-Header-<i}yang ditetapkan di {i>header<i} SMS (bit ke-6 dari oktet pertama dari pesan GSM 03.40 atau 3GPP 23.040)
- Berisi User-Data-Header dalam Data Pengguna SMS
- User-Data-Header berisi alamat port aplikasi ID Elemen Informasi (IEI)
ELS perlu mengirim SMS dengan cara ini, bukan SMS biasa untuk memastikan bahwa pesan SMS Data ELS tidak muncul di aplikasi pesan. Contoh SMS yang dienkode akan ditampilkan nanti untuk menjelaskan hal ini dengan lebih baik.
Perhatikan bahwa kita tidak menentukan Skema Pengkodean Data (DCS) tertentu di sini. DCS digunakan untuk mengidentifikasi pengkodean dalam segmen Data Pengguna. Namun, untuk di masa yang akan datang, Skema Pengkodean Data akan selalu diatur ke data 8 bit untuk memungkinkan fleksibilitas maksimum, dan data aktual itu sendiri akan alfabet {i>default<i} GSM 03,38 7 bit. Setiap elemen yang dikodekan 7 bit akan hanya menempati 7 bit, bukan 8 bit.
Mengingat segmen {i>User-Data<i} memiliki maksimum 140 byte, dan ukuran minimum {i>User-Data-Header<i} yang menyertakan informasi porta adalah 7 byte, ini menyisakan maksimal 133 byte (152 elemen yang dienkode 7 bit) untuk pesan darurat yang sebenarnya. Byte ini dapat didekode untuk menampilkan SMS Data ELS pesan yang dikirimkan.
Contoh
Jadi, setelah mendekode contoh SMS Data ini, kita akan mendapatkan dari {i>string<i} hex ini:
415193D98BEDD8F4DEECE6A2C962B7DA8E7DEEB56232990B86A3D9623B39B92783EDE86F784F068BD560B6D80C1683E568B81D7BDCB3E176F076EFB89BA77B39DCCD56A3C966B15D39DD9BD570B2590E56CBC168B21A4DB66B8FC7BD590CB66BBBC73D990DB66BB37B31D94CC12CBBCF74B40E1493CD1A
Dekode GSM 03.38
Contoh berikut mendekode beberapa oktet pertama, sisanya dibiarkan sebagai kepada pembaca. Kami menyarankan untuk merujuk 3GPP 23.038 dan menggunakan banyak alat {i>online<i} yang sangat membantu (misalnya, http://smstools3.kekekasvi.com/topic.php?id=288). Dalam kolom Octets, bagian yang disorot dengan warna kuning mewakili bit yang tidak digunakan untuk septet saat ini, dan tersisa untuk septet berikutnya. Dalam Sepetet , bagian yang disorot dengan warna kuning mewakili bit dari oktet.
Hex | Octet | September | Karakter (Hex) |
41 |
01000001 |
1000001 |
A (41) |
51 |
01010001 |
0100010 |
" (22) |
93 |
10010011 |
1001101 |
M (4D) |
D9 |
11011001 |
1001100 |
L (4C) |
8B |
10001011 |
0111101 |
= (3D) |
ED |
11101101 |
0110001 |
1 (31) |
D8 |
11011000 |
0111011 |
; (3B) |
|
|
1101100 |
l (6C) |
F4 |
11110100 |
1110100 |
t (74) |
DE |
11011110 |
0111101 |
= (3D) |
Hasil akhirnya adalah pesan sebelumnya dapat didekodekan ke dalam string berikut:
A"ML=1;lt=37.42175;lg=-122.08461;rd=20;top=20150613010948;lc=68;pm=G;si=987654231;ei=358239059042542;mcc=310;mnc=260;ml=123
SMS ini harus dapat didekode dengan sebagian besar SMS yang tersedia untuk publik {i>software<i}.