powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как это сделать?
3 сообщений из 3, страница 1 из 1
Как это сделать?
    #33913875
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У МЕНЯ ЕСТЬ:
1. Софтовый телефон, который я написал на С# (WinForms), частью этого проекта является dll (PhoneClient.dll), которая содержит описание класса для работы с телефонией. Для работы с телефонией устанавливается постоянное соединение с сервером, который позволяет получать события телефонией.

В конструкторе формы я вызывал функции PhoneClient.dll, которые назначали функциональность кнопкам на форме:
public frmMain()
{
string Server = ConfigurationSettings.AppSettings["NCCTServerAddress"];
string Port = ConfigurationSettings.AppSettings["NCCTServerPort"];

// Инициализация объекта для работы с телефонией
_PhoneClient = new NCCTToolkit(Server, Convert.ToInt32(Port), Environment.MachineName);

// Определяем обработчик события "OnSessionConnected"
_PhoneClient.OnSessionConnected += new NCCTToolkit.mySessionConnected(OnSessionConnected);
// Определяем обработчик события "OnSessionDisconnected"
_PhoneClient.OnSessionDisconnected += new NCCTToolkit.mySessionDisconnected(OnSessionDisconnected);

// Инициализация функциональности кнопки "Вызов..."
_PhoneClient.InitOriginateButton(buttonOriginate, tbDestAddress);
// Инициализация функциональности кнопки "Ответ..."
_PhoneClient.InitAnswerButton(buttonAnswer);
// Инициализация функциональности кнопки "Удержать/Вернуть"
_PhoneClient.InitHoldUnholdButton(buttonHoldUnhold);
// Инициализация функциональности кнопки "Повесить трубку"
_PhoneClient.InitButtonRelease(buttonRelease);
// Инициализация функциональности кнопки "Переадресация"
_PhoneClient.InitButtonTransfer(buttonTransfer, tbDestAddress);
// Инициализация функциональности кнопки "Конференция"
_PhoneClient.InitButtonConference(buttonConference, tbDestAddress);
}
Потом при выборе меню соединения с сервером я вызывал:
private void MenuItemConnect_Click(object sender, System.EventArgs e)
{
// Устанавливаем соединение с сервером
_PhoneClient.Connect(this);
}
Потом в обработчике события "OnSessionConnected" я назначал обработчики событий телефонии, вообщем всё было зашибись.

МНЕ НАДО: сделать туже самую программу на чтобы она была в браузере.
Проблема которую мне надо решить: Как мне сделать так чтобы при заходе нового пользователя на ASP.Net страницу создавался новый объект класса для работы с телефонией, который бы соединялся с сервером и весел там пока пользователь на прекратил работу с программой, а пользователь переодически запрашивал сервер на предмет поступления новых событий и т.д.?
Например, при использовании AJAX и обычной ASP.Net страниц мне никак не сделать чтобы объект для работы с телефонией висел постоянно во время ссесии. А есть использовать файл Global.asax, то никак не получить доступ к элементам управления на конкретной Asp.Net странице!
...
Рейтинг: 0 / 0
Как это сделать?
    #33914811
mormat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Аноним, Вы писали:

А>МНЕ НАДО: сделать туже самую программу на чтобы она была в браузере.
А>Проблема которую мне надо решить: Как мне сделать так чтобы при заходе нового пользователя на ASP.Net страницу создавался новый объект класса для работы с телефонией, который бы соединялся с сервером и весел там пока пользователь на прекратил работу с программой, а пользователь переодически запрашивал сервер на предмет поступления новых событий и т.д.?
А>Например, при использовании AJAX и обычной ASP.Net страниц мне никак не сделать чтобы объект для работы с телефонией висел постоянно во время ссесии. А есть использовать файл Global.asax, то никак не получить доступ к элементам управления на конкретной Asp.Net странице!

Привыкай к другой модели, отличной от WinForms. ASP.NET страница генерируется заново при каждом запросе пользователя.
Т.о. при каждом запросе пользователя вызывается череда событий Page.*Init, *Load*, *Render, Unload, соответственно гденибудь в Init-e или Load-e привязывай обработчики событий к элементам управления на странице. А сами объекты соединения etc храни в Session, или Application, как удобнее
ЗЫ: Не совсем понятно, в чём собственно проблема...
...
Рейтинг: 0 / 0
Как это сделать?
    #33917277
Oxyman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, у меня с горем пополам заработало:-)

Правда в WebButton мне не хватает событие которое я использовал EnabledChanged и VisibleChanged... Но это уже технические проблемы, а не идеологические...
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как это сделать?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]