이 섹션은 다음 두 부분으로 나뉩니다.
- 콘텐츠: ELS 메시지의 내용입니다.
- 형식 - 메시지 전송 방법 및 디코딩 방법 (필요한 경우)
콘텐츠
ELS V1
SMS로 전송된 ELS 메시지는 최신 ETSI AML 사양을 따릅니다. 이 ELS V1로 알려져 있으며 ELS 파트너가 선택하는 가장 일반적인 접근 방식입니다. 이 다음은 가장 관련성이 높은 섹션입니다.
키 이름 | 값 | 단위 | 예 |
A"ML |
버전 | - | 1 |
lt |
위도 | 도 | +37.42175 |
lg |
경도 | 도 | -122.08461 |
top |
위치의 타임스탬프 | yyyyMMddHHmmss(UTC 시간) | 20150613010948 |
rd |
위치 정확도 | 미터 | 20.0 |
lc |
위치 신뢰도 | 신뢰도 비율 | 68 |
pm |
위치 확인 방법 (Wi-Fi, GPS, 셀, null) | 'W', 'G', 'C', 'N' | W |
si |
IMSI (원본 IMSI의 처음 6자리만 포함, 나머지 자리 숫자) 0으로 대체됨) | - | 123456000000000 |
ei |
IMEI | - | 355458061005220 |
mcc |
네트워크 MCC | - | 310 |
mnc |
네트워크 MNC | - | 260 |
ml |
메일 길이 (메일 길이 및 헤더 포함) | - | 123 |
위치 지정 방법
Null 위치
예
위치 없음:
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 베타
일부 파트너가 사용하는 실험용 형식은 Google의 실험용 버전인 ELS 베타입니다. 파트너가 다양한 분야를 시도해 볼 수 있는 콘텐츠입니다.
다음은 가장 관련성이 높은 섹션입니다.
키 이름 | 값 | 단위 | 예 |
A"ML |
버전 | - | 2 |
en |
긴급 전화번호 | - | 911 |
et |
긴급 전화 타임스탬프 | UNIX 에포크 시간(초)(정수) | 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' | W |
ei |
IMEI | - | 355458061005220 |
nc |
네트워크 MCC/MNC | - | 310260 |
hc |
홈 MNC/MNC | - | 310260 |
lg |
언어 태그 | IETF BCP 47 | en-US |
신뢰도 수준
고도 (Z축)
ELS는 ELS 베타 메시지의 수직 위치와 정확성을 보고합니다. 고도 lz
WGS84 기준 타원체 (WGS는 기준)보다 미터 단위로 보고됨
GPS에 사용되는 세계 측지 시스템 및 미터 단위의 정확도 (고도, 수직)
정확도). 위치 (lo
) 필드가 없으면 이 필드는 무시될 수 있습니다. 전체
필드가 소수점 1자리로 잘리고 0.0
의 정확성이
unknown
입니다. 카테고리 정확성은 위치 정확도와 동일하게 정의되며
신뢰 백분위수는 파트너가 설정합니다. 기본값은 68%로 설정됩니다.
확신합니다. 자세한 내용은
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
형식
SMS를 통한 ELS 메시지는 다음 형식을 사용하여 전송할 수 있습니다.
- 문자 SMS: 일반적인 일반 SMS입니다. 이 형식은 Android P
- 데이터 SMS: 메시지 내용은 문자 SMS와 정확히 동일하지만 인코딩됩니다 (자세한 내용은 아래 참고). 이 형식은 ELS와 호환되는 Android 지원 기기
SMS로 문자 보내기
텍스트 SMS를 읽고 파싱하는 작업은 비교적 간단합니다. 많은 모바일 운영자는 이 서비스를 제공하며, 푸시 또는 풀 API를 제공하여 표준 전화번호로 전송된 메시지의 내용입니다.
데이터 SMS
일반 텍스트 SMS 형식은 Android P부터 지원됩니다. 고학년 아동 기기에서 디코딩이 필요한 데이터 SMS를 사용하여 ELS 메시지를 전송합니다. ELS 데이터 SMS 메시지는 GSM 03.38 7비트 기본 문자 집합으로 인코딩되고 데이터 SMS의 바이너리 페이로드로 설정됩니다
일반 SMS가 아닌 데이터 SMS의 정확한 정의는 나중에 다룹니다. GSM 03.38 7비트 인코딩의 정확한 정의는 3GPP에서 확인할 수 있습니다. 23.038을 사용해야 합니다 (구체적으로 섹션 6.1.2.1.1 참고).
데이터 SMS 디코딩
Google이 ELS를 SMS로 사용하도록 하기 위해 ELS는 다음에만 관련이 있습니다. 핸드셋에서 모바일 서비스 센터 (SMSC)로 SMS - SMS-제출 유형 메시지를 보낼 수 있습니다 SMSC는 다음과 같이 문제없이 이러한 메시지를 수신할 수 있어야 합니다. 일반적인 SMS 표준의 일부입니다. 하지만 실제로 인프라 설정 및 정책에서부터 다양한 MNO에 이르기까지 데이터 SMS를 제대로 디코딩하기 어려움). 다음에서 ELS는 일반 SMS를 따라 핸드셋에서 SMSC로 SMS-SUBMIT 메시지를 전송합니다. 표준 (GSM 3.40) ELS는 데이터 SMS를 다음과 같은 일반 SMS의 하위 집합으로 정의합니다.
- SMS 헤더에 User-Data-Header-Indicator 플래그가 설정되어 있음( GSM 03.40 또는 3GPP 23.040 메시지의 첫 번째 옥텟)
- SMS의 사용자 데이터 내에 사용자 데이터 헤더를 포함합니다.
- 사용자 데이터 헤더에는 애플리케이션 포트 주소가 포함되어 있습니다. 정보 요소 식별자 (IEI)
ELS는 일반 SMS가 아닌 다음 방식으로 SMS를 보내야 합니다. ELS 데이터 SMS 메시지가 Android 기기의 메시지 앱입니다. 인코딩된 SMS 예는 나중에 자세히 설명하기 위해 제공됩니다.
여기서는 특정 데이터 코딩 체계 (DCS)를 지정하지 않습니다. DCS 사용자 데이터 세그먼트 내에서 인코딩을 식별하는 데 사용됩니다. 그러나 데이터 코딩 체계는 항상 8비트 데이터로 설정되어 유연성을 극대화하며 실제 데이터 자체는 GSM 03.38 7비트 기본 알파벳입니다. 따라서 각 7비트 인코딩된 요소는 8비트가 아닌 7비트만 사용합니다.
사용자 데이터 세그먼트가 최대 140바이트이고 포트 정보를 포함하는 사용자 데이터 헤더의 최소 크기는 7바이트입니다. 이로 인해 최대 133바이트 (152 7비트 인코딩 요소)가 있습니다. 이 바이트는 ELS 데이터 SMS를 보여주기 위해 디코딩될 수 있습니다. 있습니다.
예
따라서 이 예시 데이터 SMS를 디코딩한 후에는 16진수 문자열의 값으로
415193D98BEDD8F4DEECE6A2C962B7DA8E7DEEB56232990B86A3D9623B39B92783EDE86F784F068BD560B6D80C1683E568B81D7BDCB3E176F076EFB89BA77B39DCCD56A3C966B15D39DD9BD570B2590E56CBC168B21A4DB66B8FC7BD590CB66BBBC73D990DB66BB37B31D94CC12CBBCF74B40E1493CD1A
GSM 03.38 디코딩
다음 예는 처음 몇 옥텟을 디코딩합니다. 나머지는 실행할 수 있습니다 3GPP 23.038을 참조하고 많은 유용한 온라인 도구 (예: http://smstools3.kekekasvi.com/topic.php?id=288). 옥텟 열에서는 노란색으로 강조표시된 섹션은 다음 9월을 위해 남겨둡니다. 셉테트 내 노란색으로 강조표시된 섹션은 이전 버전의 비트를 나타냅니다. 옥텟
16진수 | 옥텟 | 세트 | 문자 (16진수) |
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
이러한 SMS는 공개적으로 사용 가능한 대부분의 SMS로 디코딩될 수 있어야 합니다. 있습니다.