реклама на сайте
подробности

 
 
> Как распознать формат принятой SMS:PDU или TXT?
Lenger
сообщение Dec 22 2008, 13:12
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 31-07-08
Пользователь №: 39 338



Всем привет
Изучаю новый для себя раздел техники: прием и передача SMS. Вобщем пока все понятно как работать в TXT режиме, в PDU режиме. А если пришла SMSка одного формата, затем другого, как различить их формат ? В какой режим переключить GSM модуль ? Или чегой-то я не понимаю ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 8)
Палыч
сообщение Dec 22 2008, 14:06
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Lenger @ Dec 22 2008, 16:12) *
А если пришла SMSка одного формата, затем другого, как различить их формат ? В какой режим переключить GSM модуль ?
Модуль отдаёт в линию UART эсэмэску в том виде, в какой режим выдачи Вы модуль перевели командой AT+CMGF=0 - pdu; AT+CMGF=1 - текст.
Go to the top of the page
 
+Quote Post
Lenger
сообщение Dec 22 2008, 14:22
Сообщение #3





Группа: Новичок
Сообщений: 4
Регистрация: 31-07-08
Пользователь №: 39 338



Цитата(Палыч @ Dec 22 2008, 17:06) *
Модуль отдаёт в линию UART эсэмэску в том виде, в какой режим выдачи Вы модуль перевели командой AT+CMGF=0 - pdu; AT+CMGF=1 - текст.

Значит, если пришла SMSка в PDU формате, а я ранее перевел модуль TXT режим, то скорее всего я прочитаю из SM памяти нечто не читабельное ? А как мне научить контроллер, управляющий модулем, выйти из этого затруднительного положения ?
Go to the top of the page
 
+Quote Post
vladimir_k
сообщение Dec 22 2008, 14:43
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 16
Регистрация: 10-11-08
Пользователь №: 41 507



Lenger, Вас не должно волновать в каком виде sms-ка приходит от оператора и хранится в модеме. Важно в каком формате модем выдаёт её Вам - либо в текстовом, либо в формате PDU, а эта настройка контролируется командой [AT+CMGF], как уже отметил Палыч.
Go to the top of the page
 
+Quote Post
Lenger
сообщение Dec 22 2008, 14:53
Сообщение #5





Группа: Новичок
Сообщений: 4
Регистрация: 31-07-08
Пользователь №: 39 338



Благодарю всех за ответы.
Значит, как я понял, нет формального признака, по которому можно различить эти форматы. Я полагаю, на практике чаще всего используется PDU, скорее всего на него и нужно ориентироваться.
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Dec 22 2008, 17:34
Сообщение #6


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(Lenger @ Dec 22 2008, 20:53) *
Значит, как я понял, нет формального признака, по которому можно различить эти форматы. Я полагаю, на практике чаще всего используется PDU, скорее всего на него и нужно ориентироваться.
Нет никаких форматов при передаче смсок. Они передаются в единственном внутреннем формате GSM и вам об этом знать не надо. Вы можете прочитать принятую смску в одном из двух форматов. И телефон сам эту смску сконвертирует в нужный формат.


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
KGB
сообщение Dec 23 2008, 11:34
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 21-12-08
Пользователь №: 42 644



Lenger вот смотри....

+CMTI: "SM",2 - приша смс №2
AT+CMGR=2 - читаем
+CMGR: 0,,25
07919730071111F1040B919730331986F5000080213230809221065079DA5EA603
OK
AT+CMGF=1- меняем формат считывания
OK
AT+CMGR=2 -читаем ... уже в текстовом формате.
+CMGR: "REC READ","+79033391685",,"08/12/23,03:08:29+12"
Privet
--------------
как видно из REC READ смс уже была прочитана
Go to the top of the page
 
+Quote Post
Lenger
сообщение Dec 26 2008, 13:33
Сообщение #8





Группа: Новичок
Сообщений: 4
Регистрация: 31-07-08
Пользователь №: 39 338



Уважаемый KGB,
благодарю за полезное дополнение.
Методами тыка, чтения разных описаний и проч постепенно удается продраться через эту муть.
Пока не пробовал, но интересно, что получится, если вместо Privet будет Привет ?


Попробовал, отослать ничего не получается, вернее отсылается но доходит пустое место, т е служебная часть доходит но в информационной ничего. Если же отослать Привет с мобильника, то в режиме TXT на модеме - получаю правильный юникод.

Похоже с помощью АТ с модема нужно отправлять Unicode-сообщение в режиме PDU а принимать, вернее считывать принятое сообщение из памяти модема, - в режиме TXT. Поправьте меня, опытные люди smile.gif
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jan 5 2009, 12:01
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Lenger @ Dec 26 2008, 16:33) *
Пока не пробовал, но интересно, что получится, если вместо Privet будет Привет ? ... Похоже с помощью АТ с модема нужно отправлять Unicode-сообщение в режиме PDU а принимать, вернее считывать принятое сообщение из памяти модема, - в режиме TXT.
Режим выбирают тот, который удобен. Поскольку Вы свои действия не коментируете примерами, то и подсказать - что Вы делаете не так - тяжело. Например, в pdu кодировка сообщения передаётся в служебной части; как Вы указали, что передаёте сообщение "Привет" в юникоде?
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 11:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01417 секунд с 7
ELECTRONIX ©2004-2016