Wysyłanie i odbiór SMS komendy AT


Wysyłanie i odbiór
wiadomości SMS
Funkcja SMS (Short Message Service) umożliwia
przesyłanie krótkich wiadomości tekstowych po-
między aparatami GSM (MS = Mobile Station) z
wykorzystaniem Centrum Usług (SC = Service
Center). Nadawca wiadomości (ME = Mobile
Equipement) przekazuje ją do wysłania do Cen-
trum Usług, inicjując realizację funkcji SMS-
SUBMIT. Odbiorca komunikatu (MT = Mobile
Terminated) odbiera go korzystajÄ…c z funkcji
SMS-DELIVER. Należy zwrócić uwagę na fakt,
że przekazywanie wiadomości zawsze odbywa
się za pośrednictwem Centrum Usług (SC) i
nadawca nigdy nie ma pewności, czy wiadomość
SMS dotarła do adresata, dopóki SC nie prześle
zwrotnego potwierdzenia jej odbioru. Wiadomość
SMS może zawierać maksymalnie 140 znaków
zakodowanych w postaci oktetów, co przy użyciu i SMS-SUBMIT, ale również pomiar jakości sygnału,
rejestracja w sieci itd.
specjalnej metody kodowania umożliwia przesła-
Komendy AT były praktycznie przetestowane przy
nie do 160 znaków ASCII. Niniejszy artykuł to
użyciu telefonów Siemens C35i oraz ME45. W innych
zbiór moich doświadczeń, kompendium nt. dzia-
aparatach producenci mogą stosować nieznaczne
łania funkcji SMS i skojarzonych z nią usług sieci.
modyfikacje komend polegajÄ…ce np. na wymogu
umieszczenia parametrów wywołania komendy w
Pomimo rozwoju Internetu zainteresowanie tak pro-
cudzysłowach. Ponadto, niektóre komendy mogą po
stym tematem, jak wysyłanie wiadomości SMS bez
prostu być niezaimplementowane.
udziału człowiek, nie słabnie. W tym artykule starałem
się zebrać informacje, które już podawałem w innych
Ustawienie oraz odczyt parametrów
artykułach i przez to trudne do znalezienia w jednym
miejscu. Niniejszy tekst będzie próbą systematyzacji karty SIM i sieci.
wiadomości oraz wyszczególnienia tych usług sieci
Aparat GSM (czasami nazywany terminalem rucho-
GSM, które są związane z wysyłaniem wiadomości
mym), aby mógł funkcjonować, po załączeniu musi
SMS. Należą do nich nie tylko funkcje SMS-DELIVER
zalogować się do sieci. Warto w tym miejscu wspo-
1 z 18
mnieć, że w sieciach GSM stacja bazowa uwierzytel- ^SPIC: 3 liczba 3 wskazuje na możliwość 3-
nia aparat, natomiast aparat w żaden sposób nie krotnego wprowadzenia kodu PIN
uwierzytelnia stacji bazowej.
AT+CPIN= 9443 wprowadzenie numeru PIN; na to
Aby zalogować się do sieci, aparat musi spełnić dwa polecenie telefon odpowiada OK,
warunki: karta SIM znajdująca się w aparacie musi jeśli numer PIN jest poprawny lub
być aktywna oraz aparat musi znajdować się w zasię- ERROR, gdy błędny.
gu oddziaływania stacji bazowej operatora właściwe-
OK/ERROR odpowiedz ERROR powoduje
go dla karty SIM. Przez  zasięg oddziaływania rozu-
jednocześnie zmniejszenie stanu
miana jest tu moc sygnału docierającego do stopnia
licznika CPIC
wejściowego odbiornika telefonu. Do pomiaru jakości
Uwaga: liczbę 9443 użyto jedynie jako przykładu
sygnału służy polecenie AT+CSQ. Operacja logowa-
kodu PIN!
nia przeprowadzana jest po wprowadzeniu ważnego
AT+CPIN? ponowne wprowadzenie komendy
kodu PIN.
AT+CPIN? testuje status aparatu
+CPIN: READY odpowiedz telefonu, jeśli wprowa-
AT+CPIN: wprowadzanie kodu PIN.
dzono poprawny kod PIN i telefon
Kod PIN (Personal Identification Number) to 4-cyfrowy
loguje się lub już zalogował się do
numer będący cechą karty SIM. Początkowo nadawa-
sieci
ny jest przez operatora GSM, pózniej może być zmie-
Gdy podany został poprawny kod PIN, w przeciągu
niony przez użytkownika karty. O ile nie wyłączono
około 3 do 10 sekund aparat powinien zalogować się
żądania kodu PIN, umieszczenie karty w telefonie
do sieci oraz udostępnić parametry operatora, sygnału
wiąże się z koniecznością wprowadzenia kodu PIN po
stacji bazowej i inne.
załączeniu aparatu. Kod musi być zgodny z tym zapi-
sanym na karcie SIM. Dla większości kart, trzykrotne,
AT+CPIN: wprowadzenie kodu PUK
błędne podanie numeru PIN spowoduje żądanie
Do wprowadzenia kodu PUK służy identyczny zestaw
wprowadzenia kodu PUK (Personal User Key). Po-
komend jak dla wprowadzenia kodu PIN, jednak rezul-
dobnie jak PIN, PUK jest kodem - rodzajem hasła,
taty działania komend AT są zupełnie różne i to dzięki
jednak składającym się z 11 cyfr i trudniejszym do
nim można zidentyfikować konieczność podania kodu
zapamiętania. W praktyce, aby poznać i wprowadzić
PUK.
kod PUK, przeciętny użytkownik musi sięgnąć do
dokumentacji dostarczonej przez operatora.
AT+CPIN? pytanie o status aparatu
AT+CPIN? pytanie o status aparatu zwiÄ…zany
+CPIN: SIM PUK to żądanie wprowadzenia kodu
z żądaniem kodu PIN/PUK
PUK
+CPIN: SIM PIN to odpowiedz, jeśli żądanie PIN
AT^SPIC to tym razem pytanie nie o ilość
jest aktywne
prób wprowadzenia PUK
AT^SPIC żądanie przesłanie pozostałej licz- ^SPIC: 10 odpowiedz aparatu informująca o
by prób wprowadzenia kodu PIN
ilości prób; zazwyczaj jest ona
2 z 18
większa niż liczba prób wprowa- zwracający informację o kodzie lokalizacji oraz kodzie
dzenia kodu PIN (typowo 10) stacji bazowej. Na przykład:
AT+CPIN= 43816765233 , 1234 kod PUK musi AT+CREG=2 zmiana trybu rejestracji w sieci
być wprowadzony razem z nowym
OK odpowiedz aparatu (jeśli ERROR,
kodem PIN
to tryb nie jest obsługiwany!)
OK / ERROR aparat odpowiada tak samo, jak po
AT+CREG? pytanie o status rejestracji
podaniu kodu PIN
+CREG: 2,1,"7925","81E3" rozszerzony kod
AT+CPIN? ponowne wprowadzenie komendy
rejestracji
AT+CPIN? testuje status aparatu
Pierwszy i drugi ze zwracanych parametrów opisują
+CPIN: READY odpowiedz telefonu, jeśli wprowa-
tryb i status rejestracji. Trzeci i czwarty, to łańcuchy
dzono poprawny kod PIN i telefon-
tekstowe, zawierajÄ…ce 2 bajty kodu lokalizacji i 2 bajty
loguje się lub już zalogował się do
kodu stacji bazowej.
sieci.
Uwaga: liczbę 9443 użyto jedynie jako przykładu
AT+COPS: identyfikacja operatora
kodu PIN, liczbę 43816765233 jako przykładu kodu
Po uzyskaniu informacji na temat statusu rejestracji w
PUK!
sieci GSM, można pobrać również identyfikator opera-
tora, do którego sieci włączony jest aparat.
AT+CREG: odczyt statusu logowania do sieci
AT+COPS? pytanie o identyfikator operatora
Poprawne podanie numeru PIN powoduje włączenie
+COPS: 0,0, Plus GSM odpowiedz telefonu
telefonu do sieci, o ile tylko karta SIM jest aktywna
włączonego do sieci PLUS GSM
oraz telefon znajduje się w zasięgu działania stacji
bazowej operatora  właściciela karty SIM. Zarówno w
AT+CSQ: pomiar jakości sygnału
sytuacjach awaryjnych, jak i wtedy, gdy wszystko
Komenda zwraca informację na temat jakości sygnału
przebiega prawidłowo możliwe jest użycie komendy
docierającego do anteny. Użycie komendy jest jedną
AT+CREG? do odczytania statusu włączenia do sieci.
z metod stwierdzenia, czy nawiązano połączenie ze
AT+CREG? odczyt statusu włączenia do sieci
stacjÄ… bazowÄ….
operatora GSM
AT+CSQ? pytanie o jakość sygnału
+CREG: 0,1 odpowiedz telefonu zawierajÄ…ca
+CSQ: 20,99 informacja na temat mocy sygnału
status rejestracji w sieci
oraz współczynnika błędu
Większość aparatów GSM używa uproszczonego
Pierwszy ze zwracanych parametrów podaje nam siłę
trybu powiadamiania o statusie rejestracji. ZmianÄ™ na
odbieranego sygnału stacji bazowej. Zakres zwraca-
tryb rozszerzony można włączyć wykorzystując tę
nych wartości mieści się w granicach od 0 do 99, a w
samą komendę: AT+CREG. Listę obsługiwanych
praktyce od 0 do 27. Wartość 0 oznacza  113 dBm,
przez sieć trybów można uzyskać przez
każda kolejna zmiana wartości, to kolejne 2 dBm
AT+CREG=?. Najbogatszy w informacjÄ™ jest tryb 2,
3 z 18
zmiany (1 = -111 dBm, 2 = -109 dBm itd.). Wartość 99 Numer Centrum Usług jest częścią wiadomości SMS.
oznacza, że jakość sygnału nie jest znana. Podczas tworzenia nowej wiadomości może on być
dodany automatycznie przez oprogramowanie telefo-
Drugi parametr określa szybkość transmisji przy zało-
nu lub wprowadzony ręcznie podczas kodowania tek-
żonej stopie błędu i jest zgodny ze specyfikacją para-
stu wiadomości.
metru RXQUAL zawartÄ… w normie GSM 05.58. War-
tość 99, podobnie jak poprzednio, oznacza, że para-
metr nie jest znany.
AT+CMGF: odczyt lub wybór formatu wiadomości
SMS
AT+CSCA: odczyt lub ustawienie numeru Centrum Komenda AT+CMGF umożliwia odczyt i ustawienie
Usług aparatu GSM w trybie odbioru i przesyłania wiadomo-
ści SMS w określonym formacie. Zazwyczaj każdy
Centrum Usług (Service Center) to funkcja sieci GSM
aparat umożliwia przesyłanie wiadomości w trybie
odpowiedzialna za dostarczenie i przechowywanie
PDU, natomiast nieliczne obsługują łatwy do obsługi
wiadomości SMS pomiędzy abonentem wysyłającym
format TEXT.
i odbierającym wiadomość. Centrum Usług nie jest
częścią sieci GSM, jakkolwiek może być z tą siecią AT+CMGF? pytanie o bieżący tryb
zintegrowane.
+CMGF: 0 odpowiedz telefonu GSM  bieżą-
cym trybem jest PDU MODE
AT+CSCA? żądanie wyświetlenia numeru Cen- AT+CMGF=? żądanie przesłania listy obsługi-
trum Usług wanych trybów
+CSCA: "+48601000310",145 odpowiedz aparatu +CMGF: 0,1 obsługiwane są tryby PDU (0) i
pracujÄ…cego w sieci Plus GSM; TEXT (1)
pierwsze pole zawiera numer Cen-
AT+CMGF=1 zmiana trybu obsługi SMS na
trum Usług, pole drugie jest opcjo-
TEXT MODE
nalne i zawiera typ numeru Cen-
OK odpowiedz telefonu GSM  załą-
trum Usług
czono tryb TEXT (lub ERROR, jeśli
Numer Centrum Usług musi być ustawiony, aby tele-
nie można go załączyć)
fon mógł odbierać i wysyłać wiadomości SMS. Można
podać go wraz z wysyłanym komunikatem SMS,
można również wprowadzić i zapamiętać w pamięci
karty SIM. Nie zmienia to jednak faktu, że komunikat
SMS w ten czy inny sposób musi zawierać tę informa-
cjÄ™.
AT+CSCA= +48601000310 zapamiętanie numeru
Centrum Usług w numeracji mię-
dzynarodowej
4 z 18
poszukiwać u konkretnego operatora sieci. Nie można
Wysłanie SMS w trybie tekstowym
bowiem zagwarantować, że Centrum Usług obsługuje
Tryb obsługi SMS o nazwie TEXT jest chyba najła-
wszystkie protokoły transmisji.
twiejszym do zastosowania we własnym urządzeniu,
Tab. 1. Wykaz nastaw parametru OW
wysyłającym i odbierającym komunikaty SMS. Nieste-
ty, większość popularnych aparatów telefonicznych go Wartość PO Okres ważności wiadomości SMS
nie obsługuje. (dziesiętnie)
Parametry trybu tekstowego
0 .. 143 OW+1 x 5 minut (do 12 godzin z kro-
kiem co 5 minut)
Poprawnie ustawiony telefon GSM nie wymaga żad-
nych dodatkowych nastaw. Nie mniej jednak nastawy
144 .. 167 12 godzin + (OW  143) x 30 minut
są możliwe do przeprowadzenia z poziomu poleceń
168 .. 196 (OW  166) x 24 godziny
AT. Parametry funkcji doręczania wiadomości SMS
197 .. 255 (OW  192) x 168 godzin
mogą być zmieniane przy pomocy polecenia
AT+CSMP. Format tego polecenia jest następujący:
Tab. 2. Wykaz identyfikatorów protokołu transmisji
AT+CSMP=,,,
Wartość PO Używany protokół transmisji
PO - pierwszy oktet
(dziesiętnie)
Parametr opisuje pierwszy oktet zawierajÄ…cy parame-
0 Wiadomość SMS traktowana jako
try dla funkcji doręczenia SMS (SMS-SUBMIT). Stan-
wiadomość tekstowa
dardową wartością jest cyfra 17 (11H), co oznacza:
1 Wiadomość SMS traktowana jako
·ð pole OW (okres ważnoÅ›ci komunikatu) jest obecne
przekaz teletekstowy
i zawiera liczbÄ™ wskazujÄ…cÄ… na relatywny, oblicza-
ny na podstawie czasy wysłania, okres ważności 2 Wiadomość SMS traktowana jako
SMS, transmisja faksowa  grupa3
·ð wybrano tryb SMS-SUBMIT tzn. dorÄ™czenie wia- 3 Wiadomość SMS traktowana jako
transmisja faksowa  grupa4
domoÅ›ci w kierunku aparat Ä…ð Centrum UsÅ‚ug.
OW - Okres Ważności
Pole OW zawiera liczbę wskazującą na czas, w któ- SK - schemat kodowania
rym Centrum Usług gwarantuje przechowywanie wia-
Domyślnie znaki kodowane są w formacie 7-bitowym.
domości w pamięci w przypadku jej nie doręczenia;
Gdy używany ten schemat, 8 znaków jest kodowa-
tabela 1 zawiera wartości parametru wraz z odpowia-
nych w formie 7 oktetów i komunikat może zawierać
dajÄ…cym im okresem czasu.
do 160 znaków (zamiast 140, gdyby były kodowane w
IP  identyfikator protokołu postaci 8-bitowej). W przypadku kodowania 8-
bitowego, zestaw znaków jest identyczny z ASCII.
Informacja na temat identyfikatora użytego protokołu;
szczegóły zawarte są w tabeli 2. Dla typowo zakodo- Dla parametru równego 240, komunikat kierowany
wanych wiadomości używa się parametru IP = 0. In- jest bezpośrednio na wyświetlacz  lub w terminalu
formacji na temat dopuszczalnych protokołów należy GSM  wysyłany przez port szeregowy. Wybór klasy 1
5 z 18
Tab. 3. Wykaz parametrów Schematu Kodowania do 3 powoduje, że komunikaty są zapamiętywane w
(klas komunikatów)
wewnętrznej pamięci karty SIM oraz aparatu. Dodat-
Wartość pa- Kodowanie Klasa komunikatu
kowo dla klasy 2 zabronione jest przesyłanie wiado-
rametru SK znaków
mości przez port szeregowy. Tabela 3 zawiera warto-
(dziesiętnie)
ści typowe dla parametry SK.
0 domyślne, 7- -
bit
AT+CPMS: odczyt lub wybór rodzaju pamięci dla
240 domyślne, 7- klasa 0 (SMS przesy-
komunikatów SMS.
bit łany bezpośrednio na
Sposób funkcjonowania polecenia AT+CPMS zależny
wyświetlacz lub w
jest od zasobów sprzętowych aparatu GSM. Każdy
przypadku terminala 
aparat posiada pamięć na karcie SIM, niektóre posia-
przez port szeregowy)
dają dodatkowe rodzaje pamięci. Polecenie umożliwia
241 domyślne, 7- klasa 1 (specyficzna
nie tylko wybór rodzaju używanej pamięci, ale również
bit dla danego typu apa-
odczyt zasobów sprzętowych
ratu)
AT+CPMS? zapytanie o listę obsługiwanych
242 domyślne, 7- klasa 2 (komunikat
lokalizacji pamięci
bit zapamiętywany w
+CPMS: ("MT","SM","ME"),("MT","SM","ME"),("MT",
karcie SIM)
"SM","ME")
243 domyślne, 7- klasa 3 (komunikat
Listę lokalizacji zwróconą jako wynik użycia komendy
bit zapamiętywany w
AT+CPMS należy interpretować następująco:
karcie SIM i aparacie)
+CPMS: ,,
244 8-bit klasa 0 (SMS przesy-
PAMIĆ 1: komunikaty przeznaczone do od-
łany bezpośrednio na
czytu i usunięcia
wyświetlacz lub w
PAMIĆ 2: komunikaty zapisywane, przezna-
przypadku terminala 
czone do wysłania
przez port szeregowy)
PAMIĆ 3: komunikaty odebrane, o ile nie jest
245 8-bit klasa 1 (specyficzna
włączone ich natychmiastowe
dla danego typu apa-
przesyłanie do urządzenia ze-
ratu)
wnętrznego.
246 8-bit klasa 2 (komunikat
Podobny format ma polecenie wyświetlające aktualnie
zapamiętywany w
wybrane tryby dla wiadomości SMS wraz z informa-
karcie SIM)
cjami o ilości zapamiętanych wiadomości oraz całko-
247 8-bit klasa 3 (komunikat
witej pojemności pamięci. Oto rezultat wykonania tej
zapamiętywany w
komendy przez ten sam model aparatu telefoniczne-
karcie SIM i aparacie)
go, co w przykładzie wyżej:
6 z 18
AT+CPMS? zapytanie o status pamięci dla AT+CMGW: zapis SMS do pamięci aparatu  tryb
wiadomości SMS TEXT
+CPMS: "SM",1,20,"SM",1,20,"SM",1,20 Wykonanie komendy AT+CMGW powoduje zapis
komunikatu do pamięci karty SIM. Niniejszy opis funk-
odpowiedz aparatu
cji dotyczy trybu tekstowego. Sposób użycia polecenia
Listę parametrów zwróconych jako wynik działania
dla trybu PDU omówiony będzie dalej.
komendy należy interpretować następująco:
AT+CMGW= +48601010203
+CPMS: < PAMIĆ 1 >, aparat przełącza się w tryb wpro-
komunikatów>, , < PAMIĆ
wadzania wiadomości tekstowej i
2 >,, zapisu jej do pamięci nie ze statu-
ność pamięci>, < PAMIĆ 3 >,sem  niewysłany i adresem dorę-
nych komunikatów>,
czenia +48601010203
Dzięki tej samej komendzie z listą parametrów po
> aparat wysyła znak  zachęty
znaku równości, można wybrać rodzaj pamięci dla
oczekujÄ…c na wprowadzenie tekstu
komunikatów SMS. Lokalizacją domyślną jest pamięć
karty SIM i dla większości zastosowań jest to zupełnie HELLO! teraz należy wprowadzić tekst (np.
wystarczające.  HELLO! ); wprowadzanie kończy
znak Ctrl+Z (0x06); znak ESC
AT+CPMS= SM wybór pamięci karty SIM jako do-
(0x1B) powoduje przerwanie reali-
myślnej dla odczytu i zapamięty-
zacji polecenia
wania komunikatów SMS
+CMGW: 5 odpowiedz aparatu: komunikat
+CPMS: 1,20,1,20,1,20
został zapamiętany w pamięci apa-
odpowiedz aparatu zawierajÄ…ca
ratu z indeksem 5
status pamięci
·ð lub:
AT+CPMS="ME" wybór połączonych pamięci apara- AT+CMSS: wysłanie SMS zapisanego w pamięci
karty SIM .
tu i karty SIM jako domyślnych dla
odczytu i zapamiętywania komuni-
Komunikaty SMS zapisane w pamięci karty SIM moż-
katów SMS
na wysyłać przy pomocy komendy AT+CMSS
=. Dodatkowo jako parametrów tej komen-
+CPMS: 8,25,1,20,1,20
dy można użyć adresu (numeru) odbiorcy. Zalecane
·ð lub:
jest, aby - jeśli adres odbiorcy jest znany - był on
AT+CPMS= ME , ME , ME
podany jako drugi parametr wywołania +CMSS. Jeśli
wybór połączonych pamięci apara-
argument ten nie będzie podany, zostanie użyty adres
tu i karty SIM jako wszystkich loka-
(numer) odbiorcy podany wraz z komunikatem SMS
lizacji dla przechowywania komu-
(patrz: AT+CMGW).
nikatów SMS
AT+CPMS= SM wysłanie wiadomości zapamiętanej
+CPMS: 8,25,8,25,8,25
w pamięci karty SIM
7 z 18
OK odpowiedz aparatu
Wysłanie SMS w trybie PDU
AT+CMSS=5, +48601010203 wysłanie komunikatu
Tryb PDU obsługiwany jest przez wszystkie telefony
o indeksie 5 pod numer
komórkowe mające możliwość wysyłania i odbioru
+48601010203
komunikatów SMS. W trybie tym dostępne i używane
·ð lub sÄ… takie same komendy, jak dla trybu tekstowego,
AT+CMSS=5 wysłanie komunikatu o indeksie 5
jednak mają inny format. Nagłówek komunikatu SMS
pod numer zapamiętany wraz z
jak i sam komunikat przekazywane sÄ… w postaci za-
komunikatem SMS
kodowanego w ASCII łańcucha liczb szesnastkowych.
Wykonanie komendy kończy się komunikatem infor- Aańcuch kończy się znakiem Ctrl+Z (0x06). Tak więc
mującym o statusie wysłanej wiadomości SMS, jeśli wspólną cechą SMS wysyłanych w trybie PD jest
jej dostarczenie przebiegło poprawnie (na przykład skomplikowany sposób kodowania wiadomości nie
+CMSS: 116) lub komunikatem o błędzie (+CMSS mniej jednak w erze mikrokontrolerów jego implemen-
ERROR: ). Liczba pojawiająca się po +CMSS, tacja nie powinna nastręczać programiście trudności.
to wartość całkowita, zgodna z podaną w normie GSM
3.40 (TP-Message-Reference). Dodatkowo niektóre
Omówienie protokołu (ramki danych) w trybie PDU
aparaty mogą zwracać znacznik czasu Centrum
Komunikat zakodowany w trybie PDU zawiera:
Usług.
·ð Bajt zawierajÄ…cy dÅ‚ugość pola SCA. Jest on
opcjonalny dla niektórych telefonów. Zawiera
AT+CMGS: wysłanie SMS w bez zapisu do SIM .
podaną szesnastkowo liczba oktetów numeru Cen-
Poniższa sekwencja komend wysyła wiadomość SMS
trum Usług z uwzględnieniem pola  typ numeru .
bez jej wcześniejszego zapisu w pamięci:
Oprogramowanie większości telefonów umożliwia
AT+CMGF=1 wybór trybu tekstowego dla wia- wprowadzenie w tym miejscu wartości 0.
domości SMS
·ð Bajt zawierajÄ…cy typ numeru Centrum UsÅ‚ug.
+CMGF:1 odpowiedz aparatu
Wartość 91H lub 81H: podanie liczby 91H oznacza
numerację międzynarodową (z prefiksem kierun-
OK
kowym dla danego kraju, na przykład +48 dla Pol-
AT+CMGS= +48605010203
ski), 81H to numeracja lokalna obowiÄ…zujÄ…ca na te-
początek wiadomości SMS  nu-
renie danego kraju.
mer odbiorcy
·ð Numer Centrum UsÅ‚ug to numer dla usÅ‚ugi usta-
> aparat przesyła znak zachęty
lony przez operatora, dzięki któremu możliwe jest
(większości), po którym można
przesyłanie wiadomości SMS.
wprowadzić komunikat SMS
·ð Pierwszy oktet komunikatu SMS. Pierwszy oktet
HELLO! wprowadzenie komunikatu,
komunikatu SMS to bajt zawierajÄ…cy bity nastaw
zakończenie wprowadzania zna-
przekazywane do Centrum Usług umożliwiające
kiem Ctrl+Z (kod 0x06)
nadawcy komunikatu nastawę jego parametrów.
Typowo wartość tego oktetu wynosi:- 04H (4
8 z 18
dzies.) dla funkcji SMS-DELIVER to jest doręcze- popełniona jakaś pomyłka. Wtedy też możliwe jest nie
nie komunikatu z Centrum Usług do abonenta, - tylko zapamiętanie komunikatu do pózniejszego wy-
11H (17 dzies.) dla funkcji SMS-SUBMIT to jest słania, ale również wysyłanie komunikatów  wprost ,
wysłania SMS do Centrum Usług w celu jego do- bez pośrednictwa pamięci karty SIM. I chociaż kom-
ręczenia abonentowi sieci. pozycja komunikatu oraz jego wysłanie jest bardzo
proste, to z całą pewnością nie zaszkodzi znajomość
·ð Jednobajtowe pole statusu okreÅ›lajÄ…ce numer
nastaw poszczególnych parametrów.
odniesienia dla wysyłanego komunikatu. Wpisanie
wartości 0 powoduje, że numer telefonu, z którego
wysyłamy SMS jest równocześnie numerem od-
Adres Centrum Usług.
niesienia.
Numer Centrum Usług jest zakodowany. Jeśli numer
·ð DÅ‚ugość numeru odbiorcy SMS, podana szes-
zawiera nieparzystÄ… liczbÄ™ cyfr, ostatni bajt numeru
nastkowo i zawierająca ilość cyfr numeru.
przesuwany jest o cztery bity w lewo, a młodsza po-
łówka bajtu przyjmuje wartość znaku  F . Na przykład
·ð Typ numeru odbiorcy SMS (podobnie jak przy
numer Centrum Usług sieci Plus GSM  601000310
konstrukcji numeru Centrum Usług jest to 81H dla
zakodowany będzie w sposób następujący:
numeracji lokalnej lub 91H dla numeracji między-
narodowej).
·ð Numeracja krajowa, bez numeru kierunkowego dla
Polski: wartość pola  typ numeru = 81H.
·ð Numer odbiorcy wiadomoÅ›ci SMS (zakodowany
w ten sam sposób, co numer Centrum Usług).
·ð Nieparzysta liczba znaków, na koÅ„cu dodawana
jest litera F:  60100013F0 .
·ð Identyfikator protokoÅ‚u komunikacyjnego. War-
tością typową, używaną przez większość sieci tele- Wygląd numeru Centrum Usług po zakodowaniu:
fonów komórkowych jest 0.
8106010013F0.
·ð Schemat kodowania danych. Wprowadzona
wartość 0x00 oznacza, że znaki kodowane są w
Pierwszy Oktet komunikatu SMS.
postaci 7-bitowych znaków ASCII.
MTI (Message Type Identifier): typ komunikatu.
·ð Okres ważnoÅ›ci wiadomoÅ›ci SMS. Liczba poda-
Typ komunikatu to parametr o długości dwóch bitów,
na i interpretowana zgodnie z kodem regu-
Pierwszy oktet odebranego komunikatu SMS (SMS-DELIVER).
Å‚y podanym przez bity TP-VPF.
Nr bitu 7 6 5 4 3 2 1 0
·ð Liczba oktetów tekstu.
Nazwa RP UDHI SRI - - MMS MTI MTI
·ð Tekst wiadomoÅ›ci.
Pierwszy oktet wysyłanego komunikatu SMS (SMS-SUBMIT).
Nr bitu 7 6 5 4 3 2 1 0
Ustawienie parametrów trybu PDU.
Nazwa RP UDHI SRR VPF VPF RD MTI MTI
Najlepiej jeśli parametry trybu PDU przeka-
zywane są wraz z komunikatem SMS. Wów-
Rys. 1. Pierwszy oktet wysłanego i odebranego komunikatu
czas jest większe prawdopodobieństwo, że
SMS.
podczas wysyłania komunikatu nie zostanie
9 z 18
znajdujący się na pozycjach 0 i 1 bajtu  Pierwszy Parametr VPF to dwa bity numer 3 i 4 będące częścią
Oktet komunikatu SMS. Znaczenie bitów zawiera  Pierwszego Oktetu . Parametr ten ma istotne zna-
tabela 4. Najbardziej użyteczne dla aplikacji wysyłania czenie dla funkcji wysyłania SMS i praktycznie żadne-
i odbioru SMS są wartości nastaw  00 dla funkcji go przy odbiorze komunikatów. Możliwe nastawy bi-
SMS-DELIVER (odbioru komunikatu SMS) oraz  01 tów VPF podano w tabeli 5. Typowo używana jest
dla funkcji SMS-SUBMIT (wysyłania SMS). nastawa  10  format relacyjny (w odniesieniu do
daty bieżącej).
Tab. 4. Ustawienia bitów MTI parametru Pierwszy
Oktet.
Tab. 5. Ustawienia bitów VPF parametru Pierwszy
bit bit Typ komunikatu
Oktet.
1 0
bit bit Opis
0 0 komunikat typu SMS-DELIVER dostar-
4 3
czany przez Centrum Usług,
0 0 TP-VPP nieobecne
0 0 komunikat typu SMS-DELIVER REPORT
1 0 TP-VPP obecne, format relacyjny:
wysyłany przez aparat do Centrum Usług
0..143 = (wartość parametru + 1) x 5
dla uzyskania przez nadawcÄ™ komunikatu
minut
potwierdzenia odbioru SMS
144..167 = 12 godzin + (wartość para-
1 0 SMS-STATUS-REPORT raport statusu
metru - 143) x 30 minut
doręczenia komunikatu SMS nadawany
przez Centrum Usług 168..196 = (wartość parametru  166) x
1 dzień
1 0 SMS-COMMAND komenda przekazywa-
197..255 = (wartość parametru  192) x
na do Centrum Usług w postaci komuni-
7 dni)
katu SMS
0 1 Format rozszerzony, 7 oktetów
0 1 komunikat typu SMS-SUBMIT to tekst
wysyłany przez aparat do Centrum Usług
1 1 Format absolutny, 7 oktetów
w celu jego doręczenia abonentowi,
0 1 SMS-SUBMIT-REPORT raport statusu
doręczenia komunikatu przekazywany SRI (Status Report Indication): status doręczenia.
przez Centrum Usług do aparatu,
SRI to jednobitowy parametr na pozycji 5 bitu. War-
1 1 Wartość zarezerwowana.
tość 0 bitu oznacza, że status doręczenia nie będzie
zwrócony do Centrum Usług, natomiast wartość 1
MMS (More-Messages-to-Send): sygnalizacja wia-
powoduje wysłanie potwierdzenia odbioru SMS do
domości składającej się z wielu części
Centrum Usług.
Nazwy parametru nie należy mylić z popularnymi wia-
domościami multimedialnymi. MMS to pojedynczy bit
SRR (Status Report Request): żądanie raportu
znajdujÄ…cy siÄ™ na pozycji 2 parametru  Pierwszy
statusu doręczenia
Oktet , którego ustawienie oznacza, że w Centrum
Odpowiednikiem SRI dla funkcji SMS-DELIVER
Usług znajdują się jeszcze inne części tego samego
(przesłanie SMS do Centrum Usług) jest bit SRR bę-
komunikatu SMS czekające na odbiór. Wartość 0 bitu
dący żądaniem dostarczenia przez Centrum Usług
oznacza, że komunikat jest jednoczęściowy lub że to
raportu doręczenia wiadomości SMS. Podobnie jak w
koniec transmisji komunikatu wieloczęściowego.
przypadku SRI, wartość logiczna 1 oznacza żądanie
VPF (Validity Period Format): okres ważności wiado-
statusu, natomiast wartość logiczna 0  rezygnację z
mości
raportu doręczenia.
10 z 18
UDHI (User Data Header Indicator): nagłówek wia- Schemat i sposób kodowania znaków (Data Co-
domości ding Scheme).
Na pozycji 6 znajduje się bit, którego wartość wskazu- Pole DCS to pojedynczy oktet określający sposób
je na obecność bądz nieobecność nagłówka komuni- zakodowania danych użytkownika (treści komunikatu
katu SMS. Typowo wartość 0 oznacza, że komunikat SMS) i może również wskazywać klasę komunikatu.
nie zawiera nagłówka  wyłącznie treść wiadomości. Wartości pola DCS właściwe dla trybu PDU odczytać
Wartość logiczna 1 bitu oznacza, że wraz z wiadomo- można z tabeli 6.
ścią doręczany jest nagłówek komunikatu.
Tab. 6. Wykaz parametrów Schematu Kodowania
(klas komunikatów) dla trybu PDU
Wartość para- Kodowanie Klasa komunikatu
RP (Reply Path): numer (ścieżka) nadawcy
metru SK znaków
(szesnastkowo)
RP to najstarszy, 7 bit parametru Pierwszy Oktet.
00 domyślne, -
Wartość logiczna 0 dla tego bitu oznacza, że ścieżka
7-bit
F0 domyślne, klasa 0 (SMS prze-
odpowiedzi nie jest ustawiona. Wartość logiczna 1
7-bit syłany bezpośrednio
określa, że podano ścieżkę odpowiedzi dla funkcji
na wyświetlacz lub
w przypadku termi-
SMS-SUBMIT lub odebrano ją wraz z wiadomością
nala  przez port
dla funkcji SMS-DELIVER. Ścieżka odpowiedzi to nic
szeregowy)
innego jak numer abonenta, który wysłał SMS.
F1 domyślne, klasa 1 (specyficzna
7-bit dla danego typu
aparatu)
Identyfikator protokołu (PID  Protocol Identifier) F2 domyślne, klasa 2 (komunikat
7-bit zapamiętywany w
Identyfikator protokołu to parametr używany przy od-
karcie SIM)
biorze i wysyłaniu komunikatów SMS od/do innych
F3 domyślne, klasa 3 (komunikat
7-bit zapamiętywany w
urządzeń telekomunikacyjnych. Dla funkcji SMS-
karcie SIM i apara-
SUBMIT oznacza przesłanie żądania do Centrum
cie)
F4 8-bit klasa 0 (SMS prze-
Usług doręczenia komunikatu SMS w określonym
syłany bezpośrednio
formacie.
na wyświetlacz lub
w przypadku termi-
Jest to parametr o rozmiarze pojedynczego oktetu (8
nala  przez port
bitów). Typowo używanym do przesyłania komunika-
szeregowy)
F5 8-bit klasa 1 (specyficzna
tów jest PID=0 (standardowy komunikat tekstowy).
dla danego typu
Inne mogą być przez aparat lub Centrum Usług nie
aparatu)
obsługiwane. Nie mniej jednak, nawet jeśli dany for-
F6 8-bit klasa 2 (komunikat
zapamiętywany w
mat komunikatu nie jest obsługiwany, może być przez
karcie SIM)
aparat zapamiętany i przechowany w niezmienionym
F7 8-bit klasa 3 (komunikat
formacie, o ile nie zostanie odrzucony przez pośredni- zapamiętywany w
karcie SIM i apara-
czące w wysyłce i odbiorze Centrum Usług.
cie)
11 z 18
Użycie domyślnego alfabetu wskazuje, że komunikat
Każdy znak zakodowany jest w postaci kodu 7-
zakodowany jest w postaci kodów znaków 7-bitowych.
bitowego (septetu). Znaki o kodach długości 8-bitów
Gdy używany jest ten sposób kodowania, 8 znaków
zazwyczaj nie są przez telefony wyświetlane, nato-
komunikatu upakowane zostaje w 7 oktetów. Komuni-
miast czasami używane są jako sterujące (przesyłanie
kat SMS (dane użytkownika) może mieć długość do
obrazów, dzwonków i innych treści multimedialnych).
140 znaków, jednak po upakowaniu go w sposób
Komunikaty zakodowane w postaci liczb 16-bitowych
opisywany wyżej, zaoszczędzone zostaje 140 bitów,
co daje możliwość dopisania dodatkowych 20 znaków
(maksymalnie 70 znaków) używane są do przesyłania
po 7 bitów każdy. Dlatego komunikat SMS może mieć
wiadomości zakodowanych według standardu UNI-
maksymalną długość 160 znaków.
CODE (UCS2) i mogą byd wyświetlane przez większośd
E L E K T R O N I K A
0x45 0x4C 0x45 0x4B 0x54 0x52 0x4F 0x4E 0x49 0x4B 0x41
1000101 1001100 1000101 1001011 1010100 1010010 1001111 1001110 1001001 1001011 1000001
1000101 1001100 1000101 1001011 1010100 1010010 1001111 1001110 1001001 1001011 1000001
Wyraz po zakodowaniu  45667149953E9DC96510
Rys. 2. Kodowanie wyrazu ELEKTRONIKA
aparatów GSM. Niektóre z telefonów wyświetlają te
12 z 18
komunikaty jako FLASH SMS. Na rys. 2 pokazano Jeśli dane użytkownika (komunikat SMS) zakodowane
przykład kodowania słowa ELEKTRONIKA. są z wykorzystaniem domyślnego alfabetu (kodowa-
nie 7-bitowe), pole UDL zawiera liczbę całkowitą bę-
OA (Originator Address): numer (adres) nadawcy dącą reprezentacją liczby znaków (septetów) w obrę-
Adres nadawcy ma długość od 1 do 12 oktetów i jest bie pola  Dane Użytkownika . Jeśli obecny jest nagłó-
podzielony na 3 części. Pierwsza to pojedynczy oktet wek komunikatu, wówczas pole UDL jest sumą liczby
zawierający długość pola numeru nadawcy. Jest to septetów w nagłówku i liczby septetów danych użyt-
pojedynczy liczba całkowita w zapisie szesnastko- kownika. Jeśli komunikat SMS zakodowany jest w
wym, reprezentująca całkowitą liczbę oktetów w nu- formie znaków 8 bitowych, funkcjonowanie pola UDL
merze z uwzględnieniem typu numeru. nie zmienia się z tym, że podawana jest całkowita
Druga część może mieć długość 1 oktetu, może się liczba oktetów. Wartość UDL=0 oznacza, że brak jest
też nie pojawić, jeśli długość pola odbiorcy jest równa danych użytkownika w komunikacie.
0. Parametr ten, zwany też typem adresu, to liczba
81H w przypadku, gdy nadawca używa numeracji UD (User Data): dane użytkownika
lokalnej lub 91H, gdy używany jest numer (adres) w Pole UD zawiera 140 oktetów (=160 septetów) da-
formacie międzynarodowym z występującym przed nych użytkownika. Może ono zawierać komunikat
nim prefiksem  numerem kierunkowym danego kraju. SMS, nagłówek lub komunikat SMS wraz z nagłów-
Trzecia część może mieć długość od 0 do 10 oktetów. kiem. O obecności nagłówka informuje wartość lo-
Parametr ten zawiera adres nadawcy, zakodowany w giczna 1 bitu UDHI.
identyczny sposób, jak numer Centrum Usług.
Wysłanie SMS z zapisem do pamięci
DA (Destination Address): numer (adres) odbiorcy
AT+CMGW: zapis SMS do pamięci .
Numer odbiorcy SMS kodowany jest identycznie jak
Tu podobnie jak dla trybu tekstowego komenda
numer nadawcy i w sposób jak wyżej.
AT+CMGW służy do zapisu wiadomości w pamięci,
jednak postać jej wywołania jest odmienna. Wywołu-
MR (Message Reference): numer odniesienia dla
jąc komendę należy podać długość wiadomości (w
komunikatu
oktetach) poczÄ…wszy od parametru Pierwszy Oktet i
Pole MR zawiera numer odniesienia dla komunikatu
ewentualnie, po przecinku, jej status.
(0..255) przesyłanego w formacie kilku wiadomości
AT+CPMS="SM" wybór pamięci karty SIM jako
SMS. Jest on nadawany przez aparat wysyłający ko-
miejsca do przechowywania SMS
munikat, to znaczy korzystajÄ…cy z funkcji SMS-
AT+CMGW=19 polecenie zapisu wiadomości w
SUBMIT. Oprogramowanie większości aparatów ma
pamięci karty SIM
możliwość automatycznej numeracji.
> znak zachęty wysłany przez aparat
UDL (User Data Length): długość komunikatu
07918406010013F011000B918405112030F00000C4
Pole UDL to parametr całkowity o długości poje-
05D72435A804
dynczego oktetu. Jest to liczba z zakresu od 0 do 255.
13 z 18
ciąg znaków ASCII (łańcuch tek-
Wysłanie SMS bez zapisu do pamięci.
stowy, nie liczby szesnastkowe!)
Zakodowany - według wcześniej omawianych metod -
przesłany do aparatu zakończony
SMS można wysłać również bez pośrednictwa pamię-
znakiem Ctrl+Z (0x06).
ci karty SIM. Zmniejsza się w ten sposób liczba pole-
+CMGW:1 odpowiedz aparatu informująca, że
ceń koniecznych do wysłania wiadomość oraz (ważne
wiadomość została zapisana w
zwłaszcza w aplikacjach wysyłających komunikaty
pamięci pod indeksem 1
bez ingerencji człowieka) metodzie tej nie grozi prze-
pełnienie pamięci przeznaczonej na komunikaty SMS.
AT+CMSS: wysłanie SMS zapisanego w pamięci.
Oczywiście ma to też swoje reperkusje: w związku z
Odpowiednio zakodowany i zapisany w pamięci karty tym, że komunikat nie jest zapamiętywany, nie jest
SIM komunikat SMS jest wysyłany przez krótką se- możliwe powtórne jego wysłanie w sposób inny niż
kwencja poleceń. ponowne zakodowanie komunikatu i przesłanie go do
aparatu wraz z odpowiednimi komendami AT.
AT+CPMS="SM" wybór pamięci karty SIM jako
miejsca do przechowywania SMS Do wysłania komunikatu służy polecenie AT+CMGS
=. Parametr AT+CMSS=1 wysłanie wiadomości SMS zapa-
GOŚĆ KOMUNIKATU> to liczba oktetów liczona od
miętanej pod indeksem 1
pierwszego oktetu (i wraz z nim) do końca wiadomo-
SMS odebrany nie nadaje się do wysłania, ponie-
ści SMS.
waż jego nagłówek jest inny. Przesłanie odebranej
AT+CMGS=20 polecenie wysłania komunikatu
wiadomości SMS do innego odbiorcy wymaga
SMS
zmiany nagłówka.
> znak zachęty wysyłany przez apa-
rat
AT+CMGD: usunięcie komunikatu SMS z pamięci.
07918406010013F011000B918405112030F00000C4
Wiadomość SMS może być usunięta z pamięci karty
05D72435A80C01
SIM przez polecenie AT+CMGD=. Na
komunikat SMS zakodowany w
przykład komunikat zapamiętany w pamięci karty SIM
trybie PDU (wyróżnione są oktety,
pod indeksem 1 usuwany jest przez następującą se-
których reprezentacją jest para-
kwencję poleceń:
metr ).
AT+CPMS="SM" wybór karty SIM jako miejsca do
+CMGS: 122 SMS został przekazany do Cen-
przechowywania SMS
trum Usług; Centrum zwróciło kod
AT+CMGD=1 polecenie usunięcia wiadomości
odniesienia o wartości 122
znajdującej się w pamięci karty
SIM pod indeksem 1
14 z 18
tualny jej odczyt z pamięci SIM są identyczne w trybie
Odbiór SMS w trybach: TEXT i PDU.
TEXT jak i w trybie PDU, sposób odczytu oraz odbioru
Opisując odbiór SMS mam na myśli nie tyle wyświe-
omówiony będzie wspólnie dla obu trybów.
tlenie komunikatu przez aparat, ile jego odbiór przez
Informacje zawarte w nagłówku opisywane były wcze-
dołączone urządzenie. Będzie to więc forma usługi
śniej, przy okazji omawiania kompozycji SMS w trybie
świadczonej przez terminal czy telefon GSM, a nie
PDU. W związku z tym, że w trybie tekstowym mają
wyświetlenie przezeń SMS. To jest zapewniane przez
one postać już zdekodowaną, przytoczę tutaj przykład
implementacjÄ™ odpowiedniego oprogramowania przez
wiadomości odebranej w trybie tekstowym. Jak przy-
producenta i kwestii tej nie będziemy poruszać.
kład posłuży odbiór komunikatu  WITAJ! dla parame-
tru +CSDH=0 oraz +CSDH=1 wysłanego z sieci Plus
Nagłówek wiadomości SMS w trybie tek-
GSM, z numeru +48601102030.
stowym.
Niżej podano przykłady odebranych komunikatów
Wiadomość odebrana w trybie tekstowym zwracana
SMS w trybie TEXT w trybie podstawowym
jest w formie łańcucha znaków, częściowo zdekodo- (+CSDH:0) i rozszerzonym (+CSDH:1).
wanego (tzn. zdekodowane sÄ… wszystkie informacje
AT+CSDH=0
za wyjątkiem oktetów zawierających status) i towarzy-
 REC_UNRED , +48601102030 , JANUSZ , 03/07/01
szącego odebranej wiadomości SMS. Struktura wia-
,13:05:20+00 WITAJ!
domości odebranej w trybie tekstowym jest następu-
jÄ…ca:
 REC_UNREAD status komunikatu SMS
, , nadawcy> domości SMS
nadawcy>, , ,
, , nadawcy> dzynarodowej = 145
kodowania>, , adresu Centrum Usług>,
nadawcy> czerpnięta z książki
adresowej karty SIM,
Parametry wyróżnione pojawiają się w nagłówku zaw-
jeśli numer nadawcy w
sze. Obecność pozostałych uzależniona jest od na- niej istnieje
stawy parametru +CSDH. Jeśli jego wartość jest rów-
czasu> 13:05:20+00 trum Usług: dnia 1 Lip-
na 1, to nagłówek SMS ma postać rozszerzoną, jeśli ca 2003, godzina 13:05,
strefa czasowa +0 go-
0, to nagłówek SMS składa się wyłącznie z tych wy-
dzin
różnionych pól. WITAJ! zdekodowany tekst
wiadomości SMS
Tekst SMS umieszczany jest bezpośrednio za na-
główkiem. Tryb tekstowy cechuje wyjątkowa prostota
AT+CSDH=1
obsługi, więc wszystkie wiadomości zostają odbierane
 REC_UNRED , +48601102030 , JANUSZ , 03/07/01
jako już zdekodowane i nie ma potrzeby wykonywania
,13:05:20+00 ,145,17,0,0,
jakichkolwiek dodatkowych czynności za wyjątkiem
 +48601000310 ,145,6WITAJ!
prostego sformatowania wyniku. W związku z tym, że
sygnalizacja odebranej wiadomości SMS oraz ewen-
15 z 18
 REC_UNREAD status komunikatu numeru kierunkowego kraju, 81H dla numeracji
SMS (opis w 2.6.11)
lokalnej  bez numeru kierunkowego kraju.
cy> wiadomości SMS
3. Adres (numer) Centrum Usług  zależny od ope-
ratora sieci komórkowej, dostarczyciela usługi
nadawcy> międzynarodowej =
145 dziesiętnie
Centrum Usług.
nadawcy> zaczerpnięta z książ- 4. Pierwszy oktet zwrócony przez Centrum Usług.
ki adresowej karty
5. Długość adresu (numeru) odbiorcy wiadomości 
SIM, jeśli numer
nadawcy w niej ist-
podobnie jak w przypadku wysyłanych wiadomo-
nieje
ści SMS jest to liczba cyfr numeru adresata wia-
czasu> 13:05:20+00 trum Usług: dnia 1
domości.
Lipca 2003, godzina
13:05, strefa czaso-
6. Typ adresu (numeru) odbiorcy: 91H dla numeracji
wa +0 godzin
międzynarodowej z uwzględnieniem numeru kie-
oktet> pierwszego oktetu
runkowego kraju, 81H dla numeracji lokalnej 
dla funkcji doręcza-
nia SMS do aparatu
bez numeru kierunkowego kraju.
GSM
7. Adres (numer) odbiorcy SMS.
protokołu> jako zwykły tekst
8. Identyfikator protokołu użytego do transmisji SMS.
kodowania> kodowania, znaki 7-
9. Schemat kodowania danych.
bitowe, domyślny
alfabet
10. Znacznik czasu zawierający datę, dokładną go-
dzinę oraz strefę czasową. Sposób kodowania dla
trum Usług>
Centrum międzynarodowej =
sobą. W trybie PDU znacznik czasu ma postać
Usług> 145 dziesiętnie
WITAJ! zdekodowany tekst rrmmddHHMMSSZZ z tym, że dane zakodowane
wiadomości SMS
są w identyczny sposób jak numer odbiorcy czy
Centrum Usług to znaczy połówki bajtu zamienio-
Nagłówek wiadomości SMS odebranej
ne są miejscami. Na przykład data 1/07/2003, go-
w trybie PDU
dzina 13:10:20 strefa czasowa +0 godzin zako-
dowana będzie w następujący sposób:
Parametry nagłówka i sposoby ich kodowania są
03701031010200.
zgodne z opisanymi wcześniej, przy okazji opis trybu
11. Długość tekstu podana jako liczba oktetów.
PDU i funkcji SMS-SUBMIT (wysyłania wiadomości
SMS). Nagłówek zawiera następujące informacje:
Tekst wiadomości SMS podawany jest bezpośrednio
1. Długość pola numeru Centrum Usług z uwzględ- po nagłówku. Liczba parametrów nagłówka jest stała
i nie zależy od parametru +CSDH. Ma on znaczenie
nieniem pola  Typ SCA .
wyłącznie w trybie tekstowym. Informacje zakodowa-
2. Typ adresu (numeru) Centrum Usług: 91H dla
ne sÄ… tak samo, jak dla potrzeb realizacji funkcji SMS-
numeracji międzynarodowej z uwzględnieniem
SUBMIT (wysłania SMS).
16 z 18
AT+CNMI: ustawienie sposobu powiadamiania AT+CNMI=1,1,0,2 ustawienie powiadamiania o odbio-
o nowym SMS. rze wiadomości SMS
Komunikat SMS każdorazowo dostarczany jest do Po takiej nastawie komunikat aparatu w postaci:
abonenta GSM przez Centrum Usług bez względu na
+CMTI: "MT",1 komunikat  powiadomienie o
miejsce i sposób jego wysyłki. Nie istnieje funkcja
odebraniu SMS przesłany przez
przesyłania wiadomości SMS wprost od jednego abo-
aparat do urzÄ…dzenia odbierajÄ…ce-
nenta do drugiego. Istnieją dwa główne sposoby od-
go powiadomienie informuje, że
bioru wiadomości SMS przez dołączone urządzenie
wiadomość SMS została odebrana
zewnętrzne:
i zapisana w pamięci kombinowa-
nej aparatu.
·ð jeÅ›li komunikat SMS zapisywany jest w pamiÄ™ci
karty SIM, indeks oraz typ lokalizacji SMS może
AT+CMGR: odczyt SMS zapisanego w pamięci w
być przesłany do podłączonego urządzenia w for-
trybie TEXT
macie +CMTI: , po czym
Odczyt odebranego w ten sposób komunikatu możli-
wiadomość może być odczytana przy pomocy po-
wy jest po wydaniu polecenia AT+CMGR=
lecenia AT+CMGR=
(niżej przykład dla trybu tekstowego).
·ð wiadomoÅ›ci SMS mogÄ… być przesÅ‚ane wprost do
AT+CMGR=1 odczyt odebranego komunikatu z
podłączonego urządzenia.
pozycji 1 pamięci MT
Sposób funkcjonowania funkcji odbioru SMS można
+CMGR:  REC READ , +48605010203 , Hello! ,
ustawić przy pomocy polecenia AT+CNMI. Polecenie
 03/08/01, 17:00:00+00
to umożliwia również sprawdzenie zarówno listy ob-
Zmiana formatu komunikatu, a uściślając  jego
sługiwanych trybów jak i bieżących nastaw powiada-
wzbogacenie o informacje o statusie, jest możliwa
miania.
dzięki poleceniu AT+CSDH=1. Wówczas to przesyła-
AT+CNMI=? pytanie o listę obsługiwanych try-
ne sÄ… dodatkowe informacje o statusie funkcji dorÄ™-
bów powiadamiania
czenia SMS zawarte w nagłówku otrzymanej wiado-
+CNMI:(0,1),(0,1),(0,2),(0,2),(1) odpowiedz aparatu
mości.
w formacie takim, jak opisano wy-
żej, to znaczy +CNMI: (TRYB),
Powiadomienie o odebranej wiadomości
(MT), (BM), (DS), (BFR)
SMS i jej odczyt w trybie PDU
AT+CNMI? pytanie o aktualne nastawy
Sposób powiadamiania jest identyczny z opisanym
+CNMI: 1,1,0,2,1 odpowiedz aparatu, informacja o
wcześniej dla trybu tekstowego.
aktualnych nastawach
AT+CNMI=1,1,0,2 ustawienie metody powiadomienia
Dla typowych potrzeb odbioru komunikatu wystarcza-
+CMTI: "MT",17 powiadomienie o nowej wiadomo-
jÄ…ce jest wprowadzenie nastawy AT+CNMI=1,1,0,2.
ści SMS zapisanej w pamięci
Polecenie to załącza przekazywanie powiadomień
 kombinowanej pod indeksem 17
o komunikatach do urządzenia zewnętrznego, jeśli
tylko urządzenie to jest gotowe do odbioru. AT+CPMS="MT" wybór pamięci do odczytu SMS
17 z 18
+CPMS: 17,45,0,20,0,20 +CMGS: 129 wiadomość wysłana pomyślnie
AT+CMGR=17 odczyt komunikatu zapamiętanego +CDSI: "MT",1 powiadomienie o odbiorze wiado-
pod indeksem 17 mości SMS przez adresata
+CMGR: 0,,38 AT+CMGR=1 odczyt powiadomienia
07918406010013F00406A1119999000030909131041 +CMGR: 0,,167 treść powiadomienia zakodowane-
208193C75785C5EB7C36A009D5D76BBE06C9F025 go tak, jak zwykła wiadomość
964329F21 SMS w trybie PDU
Na odbiorcy  użytkowniku spoczywa konieczność 07918406010013F006810B918406934847F7309091
dekodowania komunikatu w celu jego odczytania. 419164083090914191050800FFFFFFFFFFFFFFFFF
Korzystając z pamięci karty SIM i telefonu komórko- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
wego należy pamiętać o tym, że pamięć karty ma FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
skończoną pojemność. Mieści się w niej najczęściej FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
ok. 20 wiadomości SMS. W związku z tym na aplikacji FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
sterującej i odbierającej wiadomości spoczywać bę- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
dzie również obowiązek czyszczenia pamięci karty FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
SIM. F FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Do powiadamiania o odebranym potwierdzeniu służy
+CDSI: , . Powiadomienie zo-
Odczyt statusu doręczenia SMS
staje zapamiętane tak, jak zwykła wiadomość SMS i w
Informacja na temat statusu doręczenia wiadomości
ten sposób może być również odebrane i zdekodowa-
SMS to jedna z usług, które mogą być świadczone
ne. Właściwa treść potwierdzenia zawarta jest w ko-
przez Centrum Usług. Informacja na temat doręczenia
munikacie SMS, który po zdekodowaniu wygląda na-
wiadomości dociera w postaci krótkiej wiadomości
stępująco:
tekstowej i jest zapamiętywana w pamięci karty SIM.
3090914191050800 = 19/09/2003 14:19:05+08
Aby otrzymać potwierdzenie odbioru, oczywiście o ile
Status:00
Centrum Usług umożliwia raportowanie odbioru wia-
Wartość 00 oznacza  Delivered , to znaczy  doręczo-
domości, należy ustawić bit numer 5 parametru
ny . Liczba FFH w komunikacie zastępuje znak pusty.
 Pierwszy Oktet wysyłanej wiadomości SMS. Tak
więc typowa wartość parametru dla funkcji SMS-
SUBMIT to 11H bez potwierdzenia odbioru i 31H dla
Jacek Bogusz
uzyskania raportu odbioru. Prześledzmy poniższą
j.bogusz@easy-soft.net.pl
sekwencję rozkazów wysyłających wiadomość SMS w
trybie PDU oraz odbierajÄ…cych potwierdzenie odbioru:
AT+CMGS=20 wysłanie SMS w trybie PDU
07918406010013F031000B918406934847F70000C4
06D72435A80C01
18 z 18


Wyszukiwarka

Podobne podstrony:
komendy at isdn wew
FAQ Komendy Broń (Nazwy używane w komendach) do OFP
komendy1
Komendy
Specyfikacje techniczne wykonania i odbioru robót
121010141958?c english at work episode6
the strike at shayol ghul
new?atures 1 1
Biblioteka PHP Wysyłanie pliku na serwer
SMS Miłosne
120702094621 english at work episode! final
AT praca zal PBG
Darmowa bramka sms bez logowania play

więcej podobnych podstron