Считая нет.звонков произошло в удаленном телефоне - PullRequest
0 голосов
/ 29 марта 2011

Я создал программу на C #, которая может набирать номер телефона. Теперь мне нужно посчитать количество звонков на удаленном телефонном устройстве.

Моя программа на C # использует команду ATDT [phoneno] для набора номера. Если удаленный телефон звонит более 5 раз, я должен выполнить некоторые другие действия.

Есть ли способ, которым я могу этого достичь?

Ответы [ 3 ]

0 голосов
/ 29 марта 2011

Насколько я знаю, вы не можете сосчитать реальное количество колец. Подумайте только о том, что не звонит, а играет песню. Поэтому все, что вы можете сделать, это запустить таймер и повесить трубку после истечения времени ожидания (например, 20 секунд).

0 голосов
/ 29 марта 2011

В зависимости от модема вы сможете получать уведомления о звонке.Откройте последовательный порт для ввода и следите за словом, таким как RING, пока вызывается линия.Вы должны иметь возможность запустить какой-то счетчик и наблюдать за состоянием линии.Вам может потребоваться просмотреть расширенные AT-команды для вашего устройства, чтобы убедиться, что оно настроено на выдачу этих уведомлений.

Похоже, вы захотите взглянуть на регистры S0 и S1.

0 голосов
/ 29 марта 2011

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

Если вам абсолютно необходимо это сделать, это будет включать в себя извлечение звука из модема и его обработку для получения количества звонков (нетривиально, в зависимости от телефонной сети и т. Д., Звонки значительно различаются и могут быть перепутаны с сигналами удержания).

...