![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Доброго времени суток. Благородные доны помогите подправить код. Написал АОН, но возникли трудности в этом месте:
Проблема в том, что пока телефон звонит номер постоянно определяется, т.к. он в таймере. Что тут можно предпринять? Кроме выключения таймера, потому что его потом как-то нужно включать, а это "как-то" - RING (при прослушивании порта), но он возникает через определенные промежутки времени при входящем звонке. Поэтому как таймер выключится, так сразу и включится. Условие по времени между рингами это вообще не вариант. Может флаг на открытую линию? Но что-то не получается. В общем мне на ум больше ничего не приходит. Подайте пожалуйста идею. |
|||
|
||||
| explorer |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 104 Регистрация: 26.2.2008 Репутация: 1 Всего: 2 |
Как вариант (правда в случае, если RING не возникает слишком часто). Поступает звонок первый раз - запустить таймер и выставить флаг "разговора". При повторном RING проверять, не идет ли разговор (по флагу). Елси идет, значит и таймер не нужен. Если нет, то все с начала. А флаг разговора должен быть убран сразу после разрыва соединения.
Добавлено @ 16:42 А еще можно без проверок флагов и таймера. Например, при первом RING выставляем свойство LineBuzy = true вот так:
Ну и в обработчике события OnNewSession() вызывать
Это сообщение отредактировал(а) explorer - 18.12.2009, 16:43 --------------------
|
||||
|
|||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
explorer, Поправка. Пока поступает звонок и не снята трубка модем шлет уведомления RING непрерывно (наверное, ну может через какой-то интервал). После определения номера можно отключить таймер, но как его потом включить? Значит нужен еще один таймер (где-то же уведомления должны обрабатываться). Можно поставить условие на функцию CallerID() и подписать его на флаг. Который отключится после определенного времени при отсутствии RING, но это криво :(
Добавлено @ 17:02 explorer, кхм, спасибо я дико извиняюсь, но я нифига не понял Это сообщение отредактировал(а) okaton - 18.12.2009, 17:04 |
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Кто знает как использовать SerialPinChange ?
|
|||
|
||||
| okaton |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 213 Регистрация: 24.11.2006 Репутация: нет Всего: нет |
Ну вот, приплыл: Недопустимая операция в нескольких потоках: попытка доступа к элементу управления "richTextBox1" не из того потока, в котором он был создан :(
Это сообщение отредактировал(а) okaton - 21.12.2009, 22:19 |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |