отправка длинных смс
От: HighTower Россия http://pbudget.ru
Дата: 23.11.10 12:52
Оценка:
Приветствую.

пишу маленький плагинчик для отправки уведомлений на смс через gsm модем через AT команды в PDU формате.
и возник вопрос, как отправлять длинные сообщения, чтобы они пришли и у получателя собрались и отобразились как одно целое?

одиночные — прекрасно могу кодировать, а вот длинные — нет...
вот пример:

AT+CMGS=24
0011000A9121436587090000000C050003070101E8329BFD06

00 — использовать smsc из карты
41 — pdu type
00 — что в качестве номера телефона отправителя будет использоваться номер карты --- ТУТ МОЖНО ПОДСТАВИТЬ ДРУГОЙ НОМЕР???
0A — длина номера получателя
91 — международный формат нормера получателя
2143658709 — номер получателя = 1234567890
00 — Идентификатор протокола
00 — кодировка 7 бит
00 — валидность доставки = 5 минут

0C — длины данных далее

050003070101 — добавка для длинного сообщения
05 — длина заголовка
00 — информация о том, что "длинное" собщение
03 — длина информационных данных
07 — идентфицикатор уникальный для всех составных сообщений
01 — всего частей в сообщении
01 — номер текущей части

E8329BFD06 — само сообщение = hello


в итоге если отправить сообщение — приходят иероглифы,
если воспользоваться pduspy — всё разбирается правильно, кроме самого текста сообщения — тоже ерунда какая то...

если выкинуть часть 050003070101 и поставить длину данных в 5 — сообщение приходит корректно..

где ошибка?
Бог у всех один — провайдеры разные...
Re: отправка длинных смс
От: Alexio  
Дата: 05.12.10 11:27
Оценка:
Здравствуйте, HighTower, Вы писали:

HT>Приветствую.

HT>пишу маленький плагинчик для отправки уведомлений на смс через gsm модем через AT команды в PDU формате.
HT>и возник вопрос, как отправлять длинные сообщения, чтобы они пришли и у получателя собрались и отобразились как одно целое?
HT>одиночные — прекрасно могу кодировать, а вот длинные — нет...

Ну что, разобрался? У меня такая же задачка стоит. Кстати, с еще одной проблемой столкнулся — не приходит сообщение, если указать номер SMS-центра. Т.е. брать не с sim, а тупо задать. Не пробовал? Просто тестил на модеме Мегафон — не отправляются сообщения через него. Попробовал получить номер SMS-центра от него — вернуло фигню. Поэтому и решил, что там номер не прописан. Да в принципе, и с телефона не уходят SMS, если номер SMS-центра задать в коде. Пробовал декодировать собранные мною сообщения с помощью прог — все отлично собрано, читается. Есть соображения какие-то?
Блог о путешествиях в фотографиях
http://alexio-marziano.livejournal.com
Re[2]: отправка длинных смс
От: Pepel Беларусь  
Дата: 07.12.10 10:28
Оценка:
Здравствуйте, Alexio, Вы писали:

A>Здравствуйте, HighTower, Вы писали:


HT>>Приветствую.

HT>>пишу маленький плагинчик для отправки уведомлений на смс через gsm модем через AT команды в PDU формате.
HT>>и возник вопрос, как отправлять длинные сообщения, чтобы они пришли и у получателя собрались и отобразились как одно целое?
HT>>одиночные — прекрасно могу кодировать, а вот длинные — нет...

A>Ну что, разобрался? У меня такая же задачка стоит. Кстати, с еще одной проблемой столкнулся — не приходит сообщение, если указать номер SMS-центра. Т.е. брать не с sim, а тупо задать. Не пробовал? Просто тестил на модеме Мегафон — не отправляются сообщения через него. Попробовал получить номер SMS-центра от него — вернуло фигню. Поэтому и решил, что там номер не прописан. Да в принципе, и с телефона не уходят SMS, если номер SMS-центра задать в коде. Пробовал декодировать собранные мною сообщения с помощью прог — все отлично собрано, читается. Есть соображения какие-то?


я в свое время забил на данную проблему, подозревал, что решение будет модемозависимо, прост бью текст смс по модулю 160 в латинице и шлю в несколько мессаг, один фиг на биллинге они считаются как множество
Re[3]: отправка длинных смс
От: Alexio  
Дата: 07.12.10 18:07
Оценка:
Здравствуйте, Pepel, Вы писали:

P>я в свое время забил на данную проблему, подозревал, что решение будет модемозависимо, прост бью текст смс по модулю 160 в латинице и шлю в несколько мессаг, один фиг на биллинге они считаются как множество


Да я тоже так и решил делать. Только у меня никак 160 русских символов не получается отправить. Только 69. Дальше текст затирается с начала, а потом и вовсе перестает приходить. Кодирую в UTF-16 (UCS2). Кстати, заметил нюанс. Если слать сразу одну часть за другой, то последняя не приходит. Если слать 3 части, то не приходит 2я. Эмпирически вычислил минимальный интервал — 5 сек. Есть идеи по этому поводу?
Блог о путешествиях в фотографиях
http://alexio-marziano.livejournal.com
Re[4]: отправка длинных смс
От: Pepel Беларусь  
Дата: 08.12.10 10:10
Оценка:
Здравствуйте, Alexio, Вы писали:

A>Здравствуйте, Pepel, Вы писали:


P>>я в свое время забил на данную проблему, подозревал, что решение будет модемозависимо, прост бью текст смс по модулю 160 в латинице и шлю в несколько мессаг, один фиг на биллинге они считаются как множество


A>Да я тоже так и решил делать. Только у меня никак 160 русских символов не получается отправить. Только 69. Дальше текст затирается с начала, а потом и вовсе перестает приходить. Кодирую в UTF-16 (UCS2). Кстати, заметил нюанс. Если слать сразу одну часть за другой, то последняя не приходит. Если слать 3 части, то не приходит 2я. Эмпирически вычислил минимальный интервал — 5 сек. Есть идеи по этому поводу?


мне думается, Вы шлете sms не дожидаясь прихода подтверждения об отсылке предыдущей sms — gsm модемы этого не любят, схема такая "послал sms — получил подтверждение об успехе/неуспехе — послал следующее sms — ... " ;

а в кириллице — да — 140 байт (7 битная кодировка) дают 70 символов максимум, в латинице 160 байт в однобайтной кодировке дают 160 символов
Re[5]: отправка длинных смс
От: Alexio  
Дата: 09.12.10 10:04
Оценка:
Здравствуйте, Pepel, Вы писали:

P>мне думается, Вы шлете sms не дожидаясь прихода подтверждения об отсылке предыдущей sms — gsm модемы этого не любят, схема такая "послал sms — получил подтверждение об успехе/неуспехе — послал следующее sms — ... " ;


Вот с этого места, если можно, подробнее пожалуйста

После отправки каждой команды жду результата выполнения, после отправки самого текста опять жду и закрываю порт. А надо еще дождаться получения подтверждения об отсылке?? И в каком оно виде придет?
Блог о путешествиях в фотографиях
http://alexio-marziano.livejournal.com
Re[6]: отправка длинных смс
От: Pepel Беларусь  
Дата: 09.12.10 12:28
Оценка:
Здравствуйте, Alexio, Вы писали:

A>Здравствуйте, Pepel, Вы писали:


P>>мне думается, Вы шлете sms не дожидаясь прихода подтверждения об отсылке предыдущей sms — gsm модемы этого не любят, схема такая "послал sms — получил подтверждение об успехе/неуспехе — послал следующее sms — ... " ;


A>Вот с этого места, если можно, подробнее пожалуйста


A>После отправки каждой команды жду результата выполнения, после отправки самого текста опять жду и закрываю порт. А надо еще дождаться получения подтверждения об отсылке?? И в каком оно виде придет?


Вы все правильно делаете, я имел ввиду тоже самое, единственный вопрос — зачем Вы закрываете порт после отсылки каждого sms ? — ваши проблемы могут быть именно от таких пенетраций с закрытием/открытием порта — там ж свои тайминги, переходите на постоянный сеанс работы c ним.
Re[7]: отправка длинных смс
От: Alexio  
Дата: 09.12.10 14:10
Оценка:
Здравствуйте, Pepel, Вы писали:

P>Вы все правильно делаете, я имел ввиду тоже самое, единственный вопрос — зачем Вы закрываете порт после отсылки каждого sms ? — ваши проблемы могут быть именно от таких пенетраций с закрытием/открытием порта — там ж свои тайминги, переходите на постоянный сеанс работы c ним.


ОК, поставлю эксперимент — буду отправлять все в одну сессию. Спасибо за совет.
Блог о путешествиях в фотографиях
http://alexio-marziano.livejournal.com
Re[8]: отправка длинных смс
От: USC.Urich Россия  
Дата: 10.12.10 09:31
Оценка:
Здравствуйте, Alexio, Вы писали:

A>Здравствуйте, Pepel, Вы писали:

A>ОК, поставлю эксперимент — буду отправлять все в одну сессию. Спасибо за совет.

http://mobiletidings.com/2009/02/18/combining-sms-messages/
Если умеешь защищать программы, то умеешь их и ломать, но не наоборот.
Документация как секс — лучше любая, чем никакой.
Re[9]: отправка длинных смс
От: Alexio  
Дата: 10.12.10 11:03
Оценка:
Здравствуйте, USC.Urich, Вы писали:

UU>http://mobiletidings.com/2009/02/18/combining-sms-messages/


Полезная ссылка. Много еще чего там нашел для себя
Блог о путешествиях в фотографиях
http://alexio-marziano.livejournal.com
Re: отправка длинных смс
От: meandr  
Дата: 19.12.10 09:15
Оценка:
отправка длинных смс
Если не можете разобраться то попробуйте smstools, он склееные сообщения умеет, вообще много чего умеет
Posted via RSDN NNTP Server 2.1 beta
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.