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

 
 
 
Reply to this topicStart new topic
> Как определить поднятие трубки абонентом?, Telit GE864-PY
mempfis_
сообщение Jun 16 2009, 13:13
Сообщение #1


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Добрый день.

Разбираюсь с голосовым вызовом в модеме GE864-PY
Настраиваю его так

Код
#установка параметров
AT+FCLASS=8\r        # voice call
AT#CAP=2\r          # select microphone
AT+CLVL=10\r        # level

ATD number  #voice call


После команды ATD дожидаюсь OK, а потом только или BUSY или NO CARRIER.
Момент когда подымается трубка никак не отображается в терминале.

Подскажите как можно определить поднятие трубки абонентом или что настроить в модеме чтобы он както отображал этот момент?
Поиск по списку АТ-команд ничего не дал.
Это вообще реально - определить поднятие трубки?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 16 2009, 13:20
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



В GSM07.07 есть команда List current calls AT+CLCC, можно воспользоваться ей.
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Jun 16 2009, 13:44
Сообщение #3


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(aaarrr @ Jun 16 2009, 16:20) *
В GSM07.07 есть команда List current calls AT+CLCC, можно воспользоваться ей.


Спасибо, нашёл команду, правда она довольно сложная - буду разбираться с ней завтра.
Думал определения поднятия трубки можно сделать проще.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 16 2009, 13:47
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Да ничего сложного по большому счету, необходимость поллинга только вызывает неудобство.
Go to the top of the page
 
+Quote Post
MicronSys
сообщение Jun 16 2009, 17:49
Сообщение #5


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

Группа: Участник
Сообщений: 106
Регистрация: 12-05-05
Пользователь №: 4 946



В обще то есть замечательная команда AT+COLP=1CRLF
Данная команды отправляется модему 1 раз при инициализации.

в случае поднятия вызываемым абонентом трубки ВЫ получите какую строку
+COLP: "+xxxxxxxxxx"CRLF где ххххх - номер абонента который поднял трубку


AT+CLCC - тоже не плохая команда но с ней нужно возится, постоянно отправлять модему
Я ее лично использую после набора номера каждые 3 секунды

Просто не все телефоны AT+COLP=1CRLF воспринимают в частности Siemens C35

Сообщение отредактировал MicronSys - Jun 16 2009, 17:52
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Jun 17 2009, 07:23
Сообщение #6


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(MicronSys @ Jun 16 2009, 20:49) *
В обще то есть замечательная команда AT+COLP=1CRLF...


К сожалению эта команда не поддерживается моим модемом.
А вот AT+CLCC действительно работает. Проверил в терминале - ответ вполне понятный.
Всем спасибо, буду использовать эту команду smile.gif
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 17 2009, 08:14
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(mempfis_ @ Jun 17 2009, 10:23) *
Проверил в терминале - ответ вполне понятный.
Там есть один "подводный камень"... Параметр stat во время вызова абонента имеет значение 3. Абонент поднят трубку - значение 0. Но, если абонент, например, вне зоны действия сети или что-то подобное, то в трубке бубнит женский голос, а значение stat остаётся равным 3 (от нормального вызова невозможно отличить). Только после того, как баба в трубке своё отбубнела (секунд через 30), в ответ на AT+CLCC Вы получите просто ОК без строк +CLCC. Вот по этому ответу "ОK без +СLCC" и можно отределить, что вывоз не прошёл из-за недоступности абонента.
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Jun 17 2009, 08:26
Сообщение #8


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(Палыч @ Jun 17 2009, 11:14) *
Там есть один "подводный камень"... Параметр stat во время вызова абонента имеет значение 3. Абонент поднят трубку - значение 0. Но, если абонент, например, вне зоны действия сети или что-то подобное, то в трубке бубнит женский голос, а значение stat остаётся равным 3 (от нормального вызова невозможно отличить). Только после того, как баба в трубке своё отбубнела (секунд через 30), в ответ на AT+CLCC Вы получите просто ОК без строк +CLCC. Вот по этому ответу "ОK без +СLCC" и можно отределить, что вывоз не прошёл из-за недоступности абонента.


Спасибо за информацию, учту в будущем. Сейчас не стоит задача определить что абонент не ответил из-за отсутствия в сети или звонок не удался из-за недостатка денег на счету. После того "как баба в трубке своё отбубнела" мне достаточно что она ложит трубку и по NO CARRIER я могу выйти из программы звонка smile.gif
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 17 2009, 09:28
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(mempfis_ @ Jun 17 2009, 11:26) *
После того "как баба в трубке своё отбубнела" мне достаточно что она ложит трубку и по NO CARRIER я могу выйти из программы звонка
Так, NO CARRIER - и не будет...
Go to the top of the page
 
+Quote Post
asvp
сообщение Apr 13 2010, 07:34
Сообщение #10





Группа: Участник
Сообщений: 3
Регистрация: 4-05-06
Пользователь №: 16 776



E Telit есть команда AT#DIALMODE. Я использую AT#DIALMODE=1.
AT#DIALMODE=1
ATD....
OK - только когда трубку поднимут.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 11th July 2025 - 22:22
Рейтинг@Mail.ru


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