mempfis_ 0 25 декабря, 2009 Опубликовано 25 декабря, 2009 · Жалоба Добрый день. Есть необходимость определять что пришли новые смс без их считывания. Сейчас настроил вывод AT+CNMI=2,1,0,0,0 и по приходу новой смс модем выплевывает в терминал +CMTI: # Но этот метод неудобен т.к. часто это сообщение теряется, или по включению питания могут присутствовать новые смс или сим-карта может быть не сконфигурирована на вывод информации о новых смс. AT+CMGR="REC UNREAD" не удобна т.к. может вывести все имеющиеся новые смс что может переполнить имеющийся у меня буффер и часть тсмс могут потеряться. Интересует есть ли вообще команда которая позволит вывести все ячейки на сим в которых хранятся новые смс. Несколько раз перечитал список АТ-команд но пока что ничего подходящего не нашёл. Заранее благодарен всем кто поможет советом :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
groovy 0 25 декабря, 2009 Опубликовано 25 декабря, 2009 (изменено) · Жалоба Точно в тему не скажу, но по длительности сигнала RI можно определить приход новых СМС. Изменено 25 декабря, 2009 пользователем groovy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
masterofnature 0 25 декабря, 2009 Опубликовано 25 декабря, 2009 · Жалоба Добрый день. Есть необходимость определять что пришли новые смс без их считывания. Сейчас настроил вывод AT+CNMI=2,1,0,0,0 и по приходу новой смс модем выплевывает в терминал +CMTI: # Но этот метод неудобен т.к. часто это сообщение теряется, или по включению питания могут присутствовать новые смс или сим-карта может быть не сконфигурирована на вывод информации о новых смс. AT+CMGR="REC UNREAD" не удобна т.к. может вывести все имеющиеся новые смс что может переполнить имеющийся у меня буффер и часть тсмс могут потеряться. Интересует есть ли вообще команда которая позволит вывести все ячейки на сим в которых хранятся новые смс. Несколько раз перечитал список АТ-команд но пока что ничего подходящего не нашёл. Заранее благодарен всем кто поможет советом :) А пробовали такую команду ? AT+CMGL Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Палыч 6 26 декабря, 2009 Опубликовано 26 декабря, 2009 · Жалоба А пробовали такую команду ? AT+CMGL Как нетрудно заметить автор вопроса немного ошибся:AT+CMGR="REC UNREAD" не удобна т.к. может вывести все имеющиеся новые смс что может переполнить имеющийся у меня буффер и часть тсмс могут потеряться.Совершенно очевидно, что речь как раз и идёт о команде AT+CMGL, а не о AT+CMGR По сути вопроса. В своё время тоже считал, что подобная команда нужна не мне одному, и таковая должна быть - но, увы! - её нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mempfis_ 0 26 декабря, 2009 Опубликовано 26 декабря, 2009 · Жалоба Как нетрудно заметить автор вопроса немного ошибся:Совершенно очевидно, что речь как раз и идёт о команде AT+CMGL, а не о AT+CMGR Да с командой ошибся - там должно быть AT+CMGL По сути вопроса. В своё время тоже считал, что подобная команда нужна не мне одному, и таковая должна быть - но, увы! - её нет. Очень жаль что такой команды нет.... Была бы очень полезной... Всем спасибо за ответ. Тема закрыта. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
stream 0 27 декабря, 2009 Опубликовано 27 декабря, 2009 · Жалоба AT+CPMS? и, если количество не нулевое - тупо в цикле AT+CMGR=nnn, пока не отзовется. Разумеется, при таком алгоритме обработанные SMS надо стирать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mempfis_ 0 28 декабря, 2009 Опубликовано 28 декабря, 2009 · Жалоба AT+CPMS? и, если количество не нулевое - тупо в цикле AT+CMGR=nnn, пока не отзовется. Разумеется, при таком алгоритме обработанные SMS надо стирать. Спасибо за идею. Как вариан очень даже может подойти :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gopher 0 30 декабря, 2009 Опубликовано 30 декабря, 2009 · Жалоба Спасибо за идею. Как вариан очень даже может подойти :) можно еще 'AT+CMGD=?' попробовать. команда возвращает список занятых ячеек. AT+CMGD=? +CMGD: (1,2,3,6,7,17,18,19,20,37,38,39,47),(0-4) OK Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться