ПредишенСледващото

Как да изпратите флаш-SMS

В режим на PDU, с SMS-съобщение е набор от данни, които се предават на модема под формата на ASCII символа.
Нека да погледнем формата на предаваните SMS-съобщения, последователност от команди прилага към GSM-модем, както и формиране на PDU пакет и изпраща флаш-SMS «Hello!" За да хипотетичната броя 70123456789.

Форматът на предаваните SMS-съобщения в режим на PDU

на снимката:

Как да изпратите флаш-SMS

Име на поле PDU

По този начин, ние считаме, назначаването на отделните области на изпратеното съобщение за пакети PDU.

2. PDU Тип - тип PDU

Как да изпратите флаш-SMS

2.1 RP (Отговор Path)
0 - няма път се определя за отговора,
1 - пътят е определен, той използва същия SMS център (SMSC), за да отговори.

2.2 UDHI (User Data Header Включен):
0 - UD поле съдържа само самото съобщение,
1- UD поле съдържа съобщение и допълнително глава.

2.3 СОП (Статус Заявка за отчет):
0 - съобщение за статус, не е изпълнена,
се иска едно съобщение за състоянието.

2.4 ДПФ (Валидност Период формат):
00 - поле VP отсъства,
01 - Резервирано,
10 - поле VP съдържа vremyannye данни в относителна формат,
11 - поле VP съдържа vremyannye данни в абсолютен формат.

2.5 RD (Отхвърляне Дубликати):
0 - SMSC трябва да препратите съобщението до получателя, ако тя е същата, както г-н и DA области като предишното съобщение.
1 - SMSC трябва да отхвърли съобщението, ако има една и съща стойност на г-н и DA области като предишното съобщение.

2.6 MTI (Message Type Indicator):
00 - полученото съобщение (от SMSC към модула) или потвърждение (от модула към SMSC)
01 - за изпращане на съобщение (от модула на SMSC) или изпраща потвърждение (от SMSC към модула)
доклади за доставка (от SMSC към модула) или SMS-команда (от модула на SMSC) - 10
11 - запазени.

За да се опрости областта на VP (живот SMS, вижте. П. 7) няма да използва ДПФ бита и свежда до нула. Също така до нула бита установяват RP, UDHI, СОТ, RD. MTI бита изпратените съобщения трябва да бъдат определени до 01. По този начин се приема равна на 0x01 стойността на PDU Тип байт поле.

3. Г-Н (Справочник на съобщенията) - пореден номер на съобщението се определя от самия модул. Стойността на PDU е зададено на 0x00.

Броят на цифрите в получателя

Въведете номер на получателя

4.1 Броят на цифрите на получателя се изчисляват без отчитане на знака "+" и е представена в шестнадесетичен формат.
Например, за "броя на цифрите на получателя" на номер +70123456789 байт стойност се равнява на 0x0B (11 десетични).

4.2 Въведете номер на получателя.
В случай на международен номер формат байт "брой от типа получател" е настроен на 0x91, в случай на местен формат - 0x81.

4.3 номер на получателя.
Невярно е "номер на получателя" се формира по следния начин:
а) в случай на номера знак "+" се изхвърля международен формат;
б) ако броят на цифри в нечетните години, се добавя в края на «F»;
в) цифри са по двойки възли.

Например, за да номер +70123456789 "Бенефициент" ще изглежда така: 0721436587F9 и цялата DA областта - 0B910721436587F9.

6. DCS (данни кодираща схема) - кодиране на съобщението.
Това е много областта, че ние сме най-голям интерес в момента! За да изпратите съобщение, което трябва да използвате кирилица за кодиране UCS2.
DCS стойност поле в този случай трябва да се настрои на 0x18 - това е тайна комбинация, която ви позволява да изпращате флаш-SMS на кирилица (0x08 - нормален SMS).

7. VP (Период на валидност) - живот на съобщението.

7.1 поле VP не се използва (не забравяйте, ние се съгласихме, че не можем да го използваме в нашия пример?).
В този случай поле вицепрезидент на дължина - байт 0, ДПФ бита се определят до 00 (както направихме).

7.2 поле VP съдържа информация за времето на живот в относителна формат.
В този случай вицепрезидент на дистанциите - 1 байт ДПФ бита се определят на стойност 10 (в двоичен).
Възможни стойности поле VP в случай на използване на относителния формат време и формулата за изчисляване на съответното време живота на съобщението са посочени в следната таблица:

VP шестнадесетичен стойност

VP десетична стойност

Съответният VP време стойност

Където всеки байт съдържа две десетични числа пренаредени места. Например, 2 байта в случай на месец май ще са на стойност 0x50.
Година представлявана от последните две цифри.
Time Zone показва разликата между местно време и UTC (GMT), изразена в четвърти час. Тук, първият бит показва знака на тази разлика: 0 - положителна разлика 1 - разликата е отрицателна. Това означава, че байт 7 в случай на часова зона GMT + 3 ще има стойност на 0x21.

Тъй като ние решихме да не се използват две-битов поле VP и да зададете областта ДПФ PDU тип е настроен на 00, пакет вицепрезидент на PDU нашия пример ще липсва поле.

8. UDL (User Data Дължина) - УД дължина на полето в байтове.
В случай на интерес тук UCS2 кодиране стойност поле UDL може да се изчисли, като се умножи броя на знаците в изпратеното съобщение 2 (всеки символ се кодира от два байта). За съобщението "Hello!" Поле UDL още 0x1A (26 десетични).

9. UD (User Data) - Съобщение
За да изпратите съобщение на кирилица е необходимо да се използва UCS2 кодиране, това кодиране всяка буква или символ се кодира в два байта.
UCS2 кодиране на маса - тук
Посланието "Hello" в кодиране UCS2 ще изглежда така:
P: 041F
р: 0440
и: 0438
в: 0432
д: 0435
т: 0442
. 002C
. 0020
X: 0425
A: 0430
б: 0431
р: 0440
. 0021

Процесът на изпращане на SMS-съобщения

След като се формира PDU пакет, процесът на изпращане на SMS не е трудно, и се състои от две прости стъпки:

1. Въведете изпращане на SMS команди, указващи броя байтове в PDU пакета освен поле SCA. Това не звучи много приятелски, но ако не използвате брой SMS център, област SCA е 0x00 (като нас) и този брой е равен на броя на байтове в един от PDU пакет минус. За "Здравей", тази стойност - 39:

Важно е, че тази команда е завършен характер "R" (0x0D), без добавки.
След това GSM-модем е подкана ">" влиза пакети данни PDU на.

Въвеждане на PDU данни пакет би трябвало да завърши байт 0x1A

В случай на успешно изпращане на SMS-съобщения отговаря на модема:

+CMGS: Message_Reference
добре

където Message_Reference - пореден номер на съобщението, инсталиран на модема (виж описанието на полето MR PDU пакет.).

Свързани статии

Подкрепете проекта - споделете линка, благодаря!