Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Платформы Windows Mobile и Windows Embedded > Запутался с PDU пакетом при отправке через AT


Автор: Serbis 31.7.2008, 21:08
Отправляю PDU пакет с таким содержимым - 
0011000B919761883850F20000AA0AE8329BFD4697D9EC37

00 - Не совсем понятный для меня байт означающий что сообщение вроде как перед отправкой должно быть сохранено в памяти телефона.
11 - Начало пакета
00 - Отправитель мой номер.
0B - Длинна номера получателя 11 символов
91 - Международный номерной стандарт
9761883850F2 - Номер получателя
00 - Тип протокола передачи, вот тут скорее всего и находится запинка
00 - Кодировка
AA - Время ожидания сообщения 4 дня
0A - Длинна сообщения
E8329BFD4697D9EC37 - Собственно само сообщение

Отправляю

AT+CMGS=23
> 0011000B919761883850F20800AA0AE8329BFD4697D9EC37
+CMS ERROR:21

Что по русски означает - Передача коротких сообщений отключена... Спецы, помогите, где напортачил? smile 



Автор: Apimpl 6.9.2008, 20:02
Все не то.
Первый байт 00 обозначает что номер сервисного центра телефон определит автоматически.
Это не совсем верный подход, т.к. многие телефоны этого не умеют, благо есть возможность вместо 00 написать в спец. формате номер сервис центра вручную, предварительно получив его спец командой AT+CSCA помоему.
11 - PDU Type - собственно у этого байта каждый бит это отдельная история, это одно из самых выжных полей.
"00 - Отправитель мой номер.", - где вы это нашли ? такого в протоколе нет.
---
Вобщем мой совет - скачайте GSM 03.40 стандарт и по нему смотрите.
Я сейчас заканчиваю библиотеку специально для этих целей прием/отправка смс. Если интересует, пишите.
---
P.S. еще забыл сказать. Перед отправкой телефон должен быть переведен в спец режим отправки смс в PDU mode. А то может вашг телефон другой режим поддерживает, где ничего и кодировать не нужно )

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)