Полная версия этой страницы:
GPRS и голосовой звонок
Unomano
Feb 12 2007, 11:33
Добрый день,
Использую MC35i для передачи данных по GPRS и для голосовых звонков.
Последовательность действий:
1. Подключение к GPRS
2. Обнаружения сигнала RING (вх. звонок)
3. +++ (переход в реж. АТ команд)
4. ATA
5. ATO (возвр. в реж. данных)
-разговор-
6. +++
7. ATH
- длительная задержка в полминуты -
8. разрыв и голосового соединения и GPRS
Вопрос в том как убрать длительную задержку и по возможности не рвать GPRS?
Порядок совсем не тот. Должно быть:
1. Подключение к GPRS -online-
2. Обнаружения сигнала RING (вх. звонок) в режиме online
3. +++ (переход в реж. АТ команд) offline
4. ATA -разговор- offline
5. ATH -завершение разговора-offline
6. ATO (возвр. в реж. данных GPRS)
7. online GPRS
И никакого разрыва соединения если класс модема позволяет.
В модемах с двумя UART делается проще. Один занят GPRS другой можно использовать для АТ команд. Без применения "+++"
Unomano
Feb 13 2007, 10:13
попробывал, тот же результат.
вот что сименс про ATH пишет:
The V.25ter ’H’ or ’H0’ (On-hook) command may be used to deactivate all PDP contexts which are active or online on the same interface.
Попробуй без ATH. Я думаю достаточно ATO. Всегда работал с модулями по 2-ум УАРТам.
Unomano
Feb 13 2007, 20:31
без, ATH не ложит трубку вобще
Я проверю, будет свободное время. Но вопрос. Что у тебя во время GPRS соединения среди данных, которые прут по UART, вдруг возникают RING и данные престают валить? Просто он у меня возникает по второму каналу. Кто с этим работал может подскажет. У меня другая беда. Если во время разговора трубу ложит удаленный абонент и выскакивает NO CARIER - происходит разрыв GPRS cоединения. А если я успеваю сам сделать отбой - все нормально.
Unomano
Feb 14 2007, 09:46
Я использую линию /RING.
Вот нашел в датшите пример использования АТ команд. Пауза в передаче данных затем голосовой вызов. Далее завершение вызова и возобновление передачи данных.
AT+CGDCONT=1,”IP” ....
OK
ATD*99#
CONNECT
<data>
+++
OK
ATD6241xxxx;
OK
<voice>
ATH
ATO
CONNECT
<data>
Хотя тут же на этой странице останавливают передачу данных GPRS след. командами.
AT+CGDCONT=1,”IP” ....
OK
ATD*99#
CONNECT
<data>
+++
OK
ATH
OK
Stop the GPRS data transfer
Непонятно. Может команда АТН делает в первом случае только отбой голоса но не влияет на GPRS.
Unomano
Feb 26 2007, 15:01
Решением оказалась команда AT+CHLD=1
Очень интересно. Но неужели нет более красивого решения, без использования команд дополнительных услуг. Эти услуги специально подключаются и не всегда в симке активированы изначально. Ты нашел выход! Но как то через заднее крыльцо.
Unomano
Feb 26 2007, 18:19
Эта команда работает без подключения специальных услуг.
Ну что сказать? Оказывается можно обмануть и модуль.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.