|
|
  |
Зависает радиоканал в SIM300D!, Зависает радиоканал в SIM300D! |
|
|
|
Mar 19 2009, 08:24
|
Местный
  
Группа: Свой
Сообщений: 483
Регистрация: 1-09-06
Из: Гродно РБ
Пользователь №: 20 011

|
Цитата(vladimir_k @ Mar 19 2009, 10:49)  Минус такого подхода - модуль будет частенько перегружаться при отсутствии денег на SIM-карте и частой отправке SMS, т.к. постоянно будут сыпаться ошибки при отправке SMS. Тут уж следите за балансом, либо можно поставить второй разъём для SIM и переключаться на вторую (запасную) SIM-карту в таких случаях. Я бы сделал маленькое дополнение. Если после определенного количества попыток перезагрузки модуля работа не возобновилась, делаем пузу на некоторое время, не перезагружаем модуль. Это может быть несколько часов, дело вкуса. потом повторяем по новой. Я это делаю, но не SMSкой а попыткой законектиться к серверу и передать данные. оно дешевле и проще. Поскольку если устройство работает, то данные в любом случае передаются. Можно конечно узнать наличие денег, запросив баланс. Но тут много мароки, лень. Если пользуете GPRS, то наличие денег определять можно по ответу на команду at+cgatt=1. если денег нет получаю ошибку. Правда это проверялось только опытным путем на нескольких операторах на просторах былого СССР а также в странах дальнего зарубежья. Работает стабильно.
Сообщение отредактировал M_Z - Mar 19 2009, 08:26
|
|
|
|
|
Mar 19 2009, 08:43
|
Участник

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

|
Цитата(av-master @ Mar 19 2009, 13:08)  чето не понял где здесь уличение? в том что смс не доставленна? довольно затратный способ ИМХО. Обнаружение того что с модемом что-то не так (завис попросту говоря) происходит в результате неуспешной отправки SMS в течении определённого времени. Если за это время сообщение так и не было отправлено - перегружаем модем, сообщение же всё это время находится в очереди, пока позволяет "время жизни", либо пока не будет отправлено. Для моей задачи, например, время жизни для SMS в 5 мин. является приемлимым. В таком случае сообщение будет потеряно, если закончились деньги на сим-карте, либо сим-карта не зарегистрирована в сети, либо большой поток SMS-сообщений для отправки (тогда старые сообщения затираются новыми при отсутствиии места в очереди), либо перегрузка сети, как бывает в новогоднюю ночь. Иначе сообщение доставляется без проблем, независимо от зависания модема. Согласен, способ немного затратен по ресурсам памяти для организации очереди и коду для проверки различных таймаутов, но для современных контроллеров это не помеха. Всё же при таком подходе нет надобности в периодической перезагрузке модема. Цитата(M_Z @ Mar 19 2009, 13:24)  Я бы сделал маленькое дополнение. Если после определенного количества попыток перезагрузки модуля работа не возобновилась, делаем пузу на некоторое время, не перезагружаем модуль. Это может быть несколько часов, дело вкуса. потом повторяем по новой. Я это делаю, но не SMSкой а попыткой законектиться к серверу и передать данные. оно дешевле и проще. Поскольку если устройство работает, то данные в любом случае передаются. Можно конечно узнать наличие денег, запросив баланс. Но тут много мароки, лень. Если пользуете GPRS, то наличие денег определять можно по ответу на команду at+cgatt=1. если денег нет получаю ошибку. Правда это проверялось только опытным путем на нескольких операторах на просторах былого СССР а также в странах дальнего зарубежья. Работает стабильно. Вы правы, M_Z, так и надо делать. Так я делаю и у себя, приостанавливая работу с модемом минут на 10-20, если, например, нет денег на сим-карте и не удалось зарегистрировать сервис GPRS (командой CGREG), чтобы зря не мучить модем частыми перезагрузками.
|
|
|
|
|
Mar 19 2009, 15:35
|

Просто Che
    
Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881

|
Цитата(M_Z @ Mar 19 2009, 10:24)  Если пользуете GPRS, то наличие денег определять можно по ответу на команду at+cgatt=1. если денег нет получаю ошибку. Правда это проверялось только опытным путем на нескольких операторах на просторах былого СССР а также в странах дальнего зарубежья. Работает стабильно. У моего оператора логика другая. У тарифного плана есть фича - подключение GPRS. Можно подключить, можно нет. Так если денег нет, а фича была подключена, то после at+cgatt=1 исправно выдается ОК А вот уже на попытку законнектиться куда-нибудь вываливается ошибка. Логика видимо следующая: фича активирована, значит подключаться можно, это бесплатно. А вот данные передавать - извини, нельзя - за это мы деньги хотим
|
|
|
|
|
Mar 20 2009, 06:35
|
Местный
  
Группа: Свой
Сообщений: 483
Регистрация: 1-09-06
Из: Гродно РБ
Пользователь №: 20 011

|
Цитата(Baser @ Mar 19 2009, 19:35)  У моего оператора логика другая. У тарифного плана есть фича - подключение GPRS. Можно подключить, можно нет. Так если денег нет, а фича была подключена, то после at+cgatt=1 исправно выдается ОК А вот уже на попытку законнектиться куда-нибудь вываливается ошибка. Логика видимо следующая: фича активирована, значит подключаться можно, это бесплатно. А вот данные передавать - извини, нельзя - за это мы деньги хотим  С этим я полностью согласен. Я и писал что проверялось опытным путем и конечно не на всех операторах.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|