簡訊規格

這個區段分為兩個部分:

  1. 內容:ELS 訊息的內容。
  2. 格式:訊息的傳送方式,以及解碼方式 (如有需要)。

內容

ELS V1

透過簡訊傳送的 ELS 訊息必須符合最新的 ETSI AML 規格。這個 稱為 ELS V1,這是 ELS 合作夥伴最常選擇的方法。 以下為最相關的部分:

鍵名 單位 範例
A"ML 版本 - 1
lt 緯度 度數 +37.42175
lg 經度 度數 -122.08461
top 位置時間戳記 yyyyMMddHHmmss (世界標準時間) 20150613010948
rd 定位精確度 公尺 20.0
lc 位置可信度 信賴水準 68
pm 定位方式 (Wi-Fi、GPS、手機、空值) 「W」、「G」、「C」、「N」
si IMSI (只含原始 IMSI 的前 6 碼,其餘數字) 替換成 0) - 123456000000000
ei IMEI - 355458061005220
mcc 網路 MCC - 310
mnc 網路 MNC - 260
ml 郵件長度 (包括郵件長度和標頭) - 123

定位方法

空值位置

範例

無位置:

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

計算位置:

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 版

只有少數合作夥伴使用的實驗性格式是 ELS Beta 版,也就是我們的實驗性 提供相關內容,讓合作夥伴有機會嘗試不同領域。

以下是最相關的版面:

鍵名 單位 範例
A"ML 版本 - 2
en 緊急電話號碼 - 911
et 緊急電話的時間戳記 UNIX Epoch 紀元時間 (整數) 1593187189
lo 位置 (經緯度、精確度) - 經緯度 只能截斷至小數點後 5 位,準確度為 1 位數 - 準確度為 0 表示未知 度 (浮點值)、度數 (浮點值)、公尺 (浮點值) 37.42175、-122.08461,20.1
lt 地點時間 (以緊急時間為準) - 系統可能會忽略這個欄位 若沒有位置 (「lo」) 欄位存在,或沒有時間戳記 (「et」) 欄位 目前任職公司/就讀學校 秒 (整數) 5
lc 位置可信度 信賴水準 (整數) 68
lz 直向位置 (高度、產業準確性) - 這個欄位可 如未提供位置 (「lo」) 欄位,則遭到忽略 - 所有欄位截斷至小數點後 1 位:0 的準確性表示不明 公尺 (浮點值)、公尺 (浮點值) -10.1、10.1
ls 位置來源 (Wi-Fi、行動網路、GPS、整合式、不明) - 這個欄位可能是 不存在 (「lo」) 欄位時遭到忽略。 「W」、「G」、「C」、「F」、「U」
ei IMEI - 355458061005220
nc 網路 MCC/MNC - 310260
hc 住家 MNC/MNC - 310260
lg 語言標記 網際網路工程任務組 47 en-US

信賴水準

高度高度 (Z 軸)

ELS Beta 版訊息會回報垂直位置和精確度。高度:lz 以公尺為單位的 WGS84 參考橢球體 (WGS) GPS 使用的世界測地系統) 和精確度以公尺為單位 (海拔、垂直) 準確度)。如果沒有提供地點 (lo) 欄位,系統可能會忽略這個欄位。所有語言 欄位截斷至小數點後 1 位,且 0.0 的準確率代表 unknown。垂直精確度的定義與定位精確度相同, 信賴區間由合作夥伴設定。預設為 68% 並採用可靠的專業技術如需更多資訊,請參閱 Android 說明文件: getVerticalAccuracyMeters()

範例

尚未計算位置:

A"ML=2;en=911;et=1643816841;ei=123456789012345;nc=23415;hc=23415

已成功計算位置案例:

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

格式

透過簡訊傳送 ELS 訊息時,可以使用下列格式:

  • 簡訊:一般純文字。系統自 起支援這個格式: Android P.
  • 資料簡訊:訊息內容與簡訊相同,但 編碼檔案 (詳情請參閱下方說明)。凡是所有第三方 Cookie 都支援這個格式 與 ELS 相容的 Android 裝置。

傳送簡訊

簡訊的閱讀和剖析則相對直截了當。許多行動裝置 業者提供這項服務,並可提供推送或提取 API 傳送至標準電話號碼的訊息內容。

資料簡訊

自 Android P 起,我們開始支援一般簡訊格式。中高年級 裝置會透過需要解碼的「資料簡訊」應用程式傳送 ELS 訊息。ELS 資料 簡訊會以 GSM 03.38 7 位元預設字元集編碼,然後 設為資料簡訊的二進位檔酬載

稍後將介紹資料簡訊的確切定義,而非一般簡訊。 如需瞭解 GSM 03.38 7 位元編碼的確切定義,請參閱 3GPP 23.038 (尤其是第 6.1.2.1.1 節)。

解碼資料簡訊

Google 會將簡訊用於 ELS,因此 ELS 只會透過 從手機傳送到行動服務中心 (SMSC) - SMS-SUBMIT 類型 訊息。SMSC 應能順利接收這些訊息, 屬於一般簡訊標準的一部分 (但實際上我們觀察到 從基礎架構設定、政策到 難以妥善解碼資料簡訊)。在下列示例中,ELS 會考量 從手機傳送至 SMSC 訊息,簡訊遵循一般簡訊 標準 (GSM 3.40)ELS 將資料簡訊定義為一般簡訊的一部分,內容如下:

  1. 已在簡訊標頭 (第 6 位元 GSM 03.40 或 3GPP 23.040 訊息的第一個八位元)
  2. 內含簡訊使用者資料中的 User-Data-Header 標頭
  3. User-Data-Header 包含應用程式通訊埠位址 資訊元素 ID (IEI)

ELS 必須透過這種方式傳送簡訊,而非傳送一般簡訊 確保 Android 裝置的 訊息應用程式我們稍後會提供已編碼的簡訊範例,以便進一步說明。

請注意,我們未指定特定的 Data-Coding-Scheme (DCS)。資料中心 用來識別使用者資料區隔中的編碼。不過, 可預測的未來,Data-Coding-Scheme 將一律設為 8 位元資料 可讓您擁有最大的彈性,而實際資料本身將與 GSM 03.38 7 位元預設字母每個 7 位元編碼元素 只佔用 7 位元 而非 8 位元

由於使用者資料區隔最多包含 140 個位元組,且 含通訊埠資訊的 User-Data-Header 長度下限為 7 個位元組。 所以最多會有 133 個位元組 (152 7 位元編碼元素) 將 實際的緊急訊息。系統可能會解碼這些位元組,顯示 ELS 資料簡訊 訊息傳送速度

範例

因此,在解碼這個範例「資料簡訊」後,我們會將二進位使用者資料 以下十六進位字串的值:

415193D98BEDD8F4DEECE6A2C962B7DA8E7DEEB56232990B86A3D9623B39B92783EDE86F784F068BD560B6D80C1683E568B81D7BDCB3E176F076EFB89BA77B39DCCD56A3C966B15D39DD9BD570B2590E56CBC168B21A4DB66B8FC7BD590CB66BBBC73D990DB66BB37B31D94CC12CBBCF74B40E1493CD1A

解碼 GSM 03.38

下例將解碼前幾個八位元解碼,其餘的八位元是 練習題建議您參照 3GPP 23.038,並 實用的線上工具 (例如 http://smstools3.kekekasvi.com/topic.php?id=288).在「八位元」欄中 黃色醒目顯示的部分代表 而且下次的睡眠時間。內襯 欄中,以黃色醒目顯示的部分代表上一個 八位元。

十六進位 八位元 經期 字元 (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)

最終的結果就是先前的訊息可解碼為 下列字串:

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

這類簡訊應能以大多數公開可用的簡訊進行解碼 軟體