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

 
 
 
Reply to this topicStart new topic
> Как ответить на вызов при входящем во время CIICR, SIM800C
Alt.F4
сообщение Dec 11 2016, 15:18
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 433
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Здравствуйте.

Наткнулся на ситуацию: если входящий вызов попадает в момент ожидания ответа на AT+CIICR, то ответить или сбросить вызов невозможно.
Модем не отвечает ни на какие команды...

[16:04:34] Recv: AT+CIICR
[16:04:37] Recv:
[16:04:37] Recv: RING
[16:04:37] Recv:
[16:04:37] Recv: +CLIP: "+ххххххххххх",145,"",0,"",0
[16:04:37] Recv:
[16:04:37] Recv: ATA - и тишина пока вызов не окончится (прилетают только URC)...

P.S. Согласен, что ситуация редкая, однако в SIM900 URC в таком месте никогда не прилетало, сперва был ответ на саму команду AT+CIICR
Go to the top of the page
 
+Quote Post
Alechek
сообщение Dec 12 2016, 05:16
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Ну, во-первых, все-таки не стоит подавать команду, пока не получили OK на предыдущую. Где OK на +CIICR?
Во-вторых,
》》Модем не отвечает ни на какие команды...
не отвечает это сколько? На +CIICR Max Response Time 85 seconds по инструкции.
В-третьих, если связь устанавливаем и таймауты большие, но звонок может проходить, тут мультиплексор напрашивается....

PS: экспериментирвал тут с неответом на команду во время "инициализации" модема.
Так вот, ответ приходил от 5 секунд, до, видимо, бесконечности. Видел ответ и через 60+ секунд... Бывало, и через 100 не дожидался (больше не ждал, но ответ на повторную команду тут же приходил).
Go to the top of the page
 
+Quote Post
smalcom
сообщение Dec 12 2016, 06:31
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 290
Регистрация: 26-06-07
Пользователь №: 28 718



Цитата(Alt.F4 @ Dec 11 2016, 17:18) *
Наткнулся на ситуацию: если входящий вызов попадает в момент ожидания ответа на AT+CIICR, то ответить или сбросить вызов невозможно.
Модем не отвечает ни на какие команды...
P.S. Согласен, что ситуация редкая, однако в SIM900 URC в таком месте никогда не прилетало, сперва был ответ на саму команду AT+CIICR


На то и URC))
Попробуйте AT&D и управляйте выводом DTR модема.
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Dec 12 2016, 07:12
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 433
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Цитата
Ну, во-первых, все-таки не стоит подавать команду, пока не получили OK на предыдущую. Где OK на +CIICR?
В том то и дело, что ответ на CIICR прилетает только после окончания вх.вызова.

Цитата
На то и URC))
Попробуйте AT&D и управляйте выводом DTR модема.
Я не против URC, но среагировать то надо как-то sm.gif
Да, DTR - это решение, жаль железо уже не переделать в текущей ревизии...

Go to the top of the page
 
+Quote Post
Baser
сообщение Dec 12 2016, 10:54
Сообщение #5


Просто Che
*****

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



Цитата(Alt.F4 @ Dec 11 2016, 17:18) *
Наткнулся на ситуацию: если входящий вызов попадает в момент ожидания ответа на AT+CIICR, то ответить или сбросить вызов невозможно.
Модем не отвечает ни на какие команды...

Знакомое поведение, но проверял это очень давно и подробностей уже не помню.
То ли еще на SIM300 проверял, то ли уже на SIM900,
но было какое-то состояние при поднятии GPRS, когда при входящем звонке появлялся RING RING,
и модем на команды не отвечал и ожидал окончания этого входящего звонка.
После отбоя (внешнего) вываливались одним махом все мною посланные команды вместе с ответами модема.

Такое впечатление, что при звонке модем уходил на более приоритетную задачу и все другое просто приостанавливалось (подвисало).

Так что этот баг (или фича? sm.gif) у Симкома испокон веков...

Я с этим никак не борюсь, поскольку не вижу возможности, да и ситуация редкая.
Просто алгоритмы отлавливания ошибок при GPRS соединении эту ситуацию определяют и перезапускают подключение.
Вряд ли кому то нужно специально "валить" устройство при помощи такой DDOS-атаки.

з.ы. дергать DTR-ом не пробовал, может и поможет...
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Dec 12 2016, 11:28
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 5 825
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



>>>Наткнулся на ситуацию: если входящий вызов попадает в момент ожидания ответа на AT+CIICR, то ответить или сбросить вызов невозможно.

А просто взять и на момент GPRS запретить входящие?
Go to the top of the page
 
+Quote Post
Alechek
сообщение Dec 12 2016, 13:45
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Цитата(CADiLO @ Dec 12 2016, 16:28) *
А просто взять и на момент GPRS запретить входящие?

Так вроде и так абонент должен быть недоступен... А нас же не класс A модуль? Или, все-таки А?

Цитата(Alt.F4 @ Dec 12 2016, 12:12) *
Да, DTR - это решение, жаль железо уже не переделать в текущей ревизии...

Мультиплексор переразводки не потребует...

Правда, работает ли он адекватно (с MTK RTOS, ведь все проблемы от нее идут)?
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Dec 12 2016, 13:58
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 5 825
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



Нет, не класс А, но и у вас на момент подачи команды AT+CIICR еще GPRS соединение не установлено. Оно появится только после AT+CIPSTART.
Потому и рекомендую пользоваться AT+GSMBUSY
Go to the top of the page
 
+Quote Post
esaulenka
сообщение Dec 13 2016, 17:21
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 944
Регистрация: 13-03-08
Из: Маськва
Пользователь №: 35 877



Цитата(CADiLO @ Dec 12 2016, 14:28) *
>>>Наткнулся на ситуацию: если входящий вызов попадает в момент ожидания ответа на AT+CIICR, то ответить или сбросить вызов невозможно.

А просто взять и на момент GPRS запретить входящие?

Дурацкий вопрос. Что делать, если я не хочу запрещать входящие?
Хочется и GPRS держать как можно дольше, и дать пользователю резервный канал управления в виде DTMF'а.
Запретить - попробовать поднять сессию - разрешить?


PS старое наше решение (на модеме от другой конторы) тупо игнорирует входящий вызов, когда пытается поднять GPRS. Клиенты расстраиваются - в интернете устройства нет, и дозвониться до него сложно...


--------------------
Тут обсуждается творческий порыв, а не соответствие каким-либо стандартам ©
Go to the top of the page
 
+Quote Post
CADiLO
сообщение Dec 13 2016, 18:32
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 5 825
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



Что делать, что делать - коллизии разгребать. Особенно при выполнении операторозависимых команд.
Или вы думаете что у операторов софт умнее написан, если он позволяет отправить вызов устройству зная что устройство ждет от него ответ на команду.
Тут уж оператору надо иди крестик снять или трусы одеть.
Go to the top of the page
 
+Quote Post
Alechek
сообщение Dec 14 2016, 13:21
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 15-11-05
Из: Челябинск
Пользователь №: 10 882



Цитата(CADiLO @ Dec 13 2016, 23:32) *
Или вы думаете что у операторов софт умнее написан, если он позволяет отправить вызов устройству зная что устройство ждет от него ответ на команду.

А кто сказал, что оператор ПОЛУЧИЛ команду раньше, чем он послал вызов устройству? Логи?
Крайний случай - оба одновременно послали друг другу.
Что делать в таких случаях - должно быть описано в стандартах.
Послал != Получил(дошло).

Стандарты читают тогда, когда документация производителя уже не помогает (то есть редко).
Симком будет пенять на MTK, МТК на лицензионный GSM стек.
Опсосы будут пенять на софтописателей, те будут пенять на производителей оборудования, а они, в свою очередь, на лицензионный GSM стек, который прошел все сертификаты..

Go to the top of the page
 
+Quote Post
CADiLO
сообщение Dec 14 2016, 13:27
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 5 825
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988



Потому и не исключены подобные ситуации.
Только опираясь на то что основная масса потребителей услуг это простые абоненты с трубками, вся эта логика у операторов строится на одном постулате.
- работает как-то и фиг с ним, а случатся коллизии - перезвонят. Потому и чудят иногда операторы не по детски зная что мало кто докопается до того что они нарушают.
Это мы видим что происходит при обмене командами-ответами. А простой юзер услышав тишину в трубке, отобьется и еще раз номер наберет.
Go to the top of the page
 
+Quote Post
Alt.F4
сообщение Jan 3 2017, 08:43
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 433
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Не по теме, но возможно будет интересно...
Наткнулся на странный ответ модема "SIM800 R14.18":
Код
[11:35:34] Recv: AT+CREG?
[11:35:34] Recv:
[11:35:34] Recv: +CREG: 0,2
[11:35:34] Recv:
[11:35:34] Recv: OK
[11:35:34] Recv:
[11:35:35] Recv: AT+CREG? <-- 2сек тишина
[11:35:37] Recv: AT+CREG?
[11:35:40] Recv:
[11:35:40] Recv: SIM800 R14.18
[11:35:40] Recv:
[11:35:40] Recv: ERROR
[11:35:40] Recv: AT+CREG?
[11:35:40] Recv:
[11:35:40] Recv: +CREG: 0,1
[11:35:40] Recv:
[11:35:40] Recv: OK
Go to the top of the page
 
+Quote Post
Hub
сообщение Jan 13 2017, 15:02
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 184
Регистрация: 7-10-15
Из: Санкт-Петербург
Пользователь №: 88 743



Цитата(Alt.F4 @ Jan 3 2017, 11:43) *
Не по теме, но возможно будет интересно...
Наткнулся на странный ответ модема "SIM800 R14.18":
Код
[11:35:34] Recv: AT+CREG?
[11:35:34] Recv:
[11:35:34] Recv: +CREG: 0,2
[11:35:34] Recv:
[11:35:34] Recv: OK
[11:35:34] Recv:
[11:35:35] Recv: AT+CREG? <-- 2сек тишина
[11:35:37] Recv: AT+CREG?
[11:35:40] Recv:
[11:35:40] Recv: SIM800 R14.18
[11:35:40] Recv:
[11:35:40] Recv: ERROR
[11:35:40] Recv: AT+CREG?
[11:35:40] Recv:
[11:35:40] Recv: +CREG: 0,1
[11:35:40] Recv:
[11:35:40] Recv: OK

на линии обмена с модулем нет помех?..
т.к. этот ответ активирует другая команда


--------------------
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 24th November 2017 - 04:02
Рейтинг@Mail.ru


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