Полная версия этой страницы:
СМС на SIM
MKdemiurg
Mar 23 2015, 09:20
Можно ли?
И как это сделать?
aleksandr-zh
Mar 23 2015, 09:37
что?
хранить, читать?

настройки чего? я делал сигнализацию, в одной из версий хранил настройки на sim в sms
MKdemiurg
Mar 23 2015, 10:39
просто записать на СИМ СМС, чтобы потом модем с симки вычитал настройки подключения и прочего.
Вообще идея такая - записать дефолтное смс, чтобы пользователь потом менял поля настроек в сохранённой смске на телефоне.
Но я так и не понял , как записать СМС на сим. Где выбирать область памяти?
aleksandr-zh
Mar 23 2015, 10:44
эх
читать даташит

какой модем-то...?
RadikX
Mar 23 2015, 10:58
AT+CMGW - записать СМС
AT+CMGR - считать СМС
AT+CPMS -задать источник памяти СМС
MKdemiurg
Mar 23 2015, 10:59
Цитата(aleksandr-zh @ Mar 23 2015, 13:44)

эх
читать даташит

какой модем-то...?
Да всё , нашёл...
AT+CPMS
Это стандарт GSM. для всех модемов сразу.
Цитата(MKdemiurg @ Mar 23 2015, 12:39)

Вообще идея такая - записать дефолтное смс, чтобы пользователь потом менял поля настроек в сохранённой смске на телефоне.
Сделать такое можно, но я бы категорически не рекомендовал.
Настройки получатся абсолютно "недуракоустойчивыми"
Шанс ошибиться, даже для подготовленного пользователя, будет очень большим.
В результате ничего работать не будет.
aleksandr-zh
Mar 23 2015, 11:17
так делали, и так будут делать.
Зачастую это - самый простой и наглядный метод: СМС могут набрать многие. А вот "найди комп, установи в него ПО, подключи кабелем устройство..." - не каждый.
Из личного опыта
MKdemiurg
Mar 23 2015, 11:26
Цитата(Baser @ Mar 23 2015, 14:14)

Сделать такое можно, но я бы категорически не рекомендовал.
Настройки получатся абсолютно "недуракоустойчивыми"
Шанс ошибиться, даже для подготовленного пользователя, будет очень большим.
В результате ничего работать не будет.
Других вариантов просто нет.
Я работаю на чужой железной платформе. Кроме прошивки контроллера и симки никакого доступа к внешнему миру

--
А как по номеру отправителя найти СМСку ?
aleksandr-zh
Mar 23 2015, 11:30
поля читать надо
MKdemiurg
Mar 23 2015, 13:28
Сохраняю смс в памяти сим
AT+CPMS= SM,SM,SM
Потом вынимаю симку , вставляю в телефон - нигде в телефоне этого СМС нет...
А на симке точно энергонезависимая память?
Где лучше сохранять СМС?
Идея такая шаблон вгонять через модем, а потом смена вручную, если надо изменить дефолтные настройки.
aleksandr-zh
Mar 23 2015, 13:34
работаю с sim900d
AT+COPS? ' выдаст имя оператора связи
AT+CMGF=1 ' включить текстовый режим SMS
AT+CSCS= "GSM" ' Кодировка текста GSM (только латинские)
AT+GSMBUSY=0 ' 0 = разрешить входящие
AT+CLIP=1 ' включить АОН
AT+CPBS="SM" ' Выбрать Как Основную Память Сим-карту
AT+DDET=1 ' Включить детектор DTMF
AT+CPBS?" ' чтобы убедиться в правильности выбора: Sim - как основное хранилище
ответ +CPBS: "SM",X,110
AT+CPBR=1 ' Чтение данных. Считывает запись SIM1
ответ +CPBR: 1,"+7...",145,"..."
AT+CPBW=4,"+71234567890",145,«Test» ' записать контакт на сим-карту.
AT+CPMS? ' определим количество SMS на SIM
ответ +CPMS: "SM",7,10,"SM",7,10,"SM",7,10
MKdemiurg
Mar 23 2015, 13:39
Да это понятно...
А как быть с CMGW?
Где потом эти сообщения искать на телефоне?
aleksandr-zh
Mar 23 2015, 13:41
ленивы вы, батенька
разжевал, в ротик положил разжеванное
дале - читайте сами
MKdemiurg
Mar 23 2015, 13:51
Цитата(aleksandr-zh @ Mar 23 2015, 16:41)

ленивы вы, батенька
разжевал, в ротик положил разжеванное
дале - читайте сами
Да эти команды я раздуплил.
Другое дело, что вставляешь симку в телефон и тупо нет этих сообщений...
На андроиде жму "Сообщения на СИМ". Нету...
Цитата(MKdemiurg @ Mar 23 2015, 15:28)

Сохраняю смс в памяти сим
AT+CPMS= SM,SM,SM
Потом вынимаю симку , вставляю в телефон - нигде в телефоне этого СМС нет...
А на симке точно энергонезависимая память?
Где лучше сохранять СМС?
Во-первых, вы так и не раскрыли страшную тайну, какой модем пользуете.
Если SIM900, так у него только SM тип и есть, ничего другого выбрать не сможете.
Если в телефоне СМСки нет, значит вы её не записали.
Записывают командой CMGW
Цитата(MKdemiurg @ Mar 23 2015, 13:26)

А как по номеру отправителя найти СМСку ?
Можно выбрать конкретный индекс (например первый) и работать только с ним.
А можно тупо перебирать все индексы и искать свой шаблон и номер отправителя.
И парсить, и парсить...
MKdemiurg
Mar 24 2015, 05:29
Цитата(Baser @ Mar 23 2015, 23:50)

Во-первых, вы так и не раскрыли страшную тайну, какой модем пользуете.
Если SIM900, так у него только SM тип и есть, ничего другого выбрать не сможете.
Если в телефоне СМСки нет, значит вы её не записали.
Записывают командой CMGW
Можно выбрать конкретный индекс (например первый) и работать только с ним.
А можно тупо перебирать все индексы и искать свой шаблон и номер отправителя.
И парсить, и парсить...

M72 и Sim900. Сейчас под M72.
Таки записал.
Записываю Как AT+CMGW="номер". Жду 0x3E , пишу СМС, отправляю 0x1A.
AT+CPMS? выдаёт , что счётчик подрос...
А почему настройки именно в СМС? Не рассматривали записную книгу в кечестве хранилища? Если настройки чисто цифровые, то вообще идеально получится, там даже команда поиска по записной книге есть. Если с текстом, то тогда можно сделать наоборот, номер телефона будет номером параметра, а имя контакта значением параметра, правда, поиска уже не будет, придется запрашивать всю книгу и парсить.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.