Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (44 – UDP Чат , часть 13)

предыдущая часть ««»» следующая часть

Вызывается метод recv_event() объекта ChatObjects::Comm для получения сообщения с сервера и разбиения его путем синтаксического анализа на код события и данные. Этот код будет применяться для поиска обработчика в таблице переходов %messages. Если таковой найден, он вызывается. В ином случае выводится предупреждающее сообщение. После вызо­ва данной подпрограммы подпрограмма do_server () возвращает код события как результат своего выполнения.

Строки 76-88. Регистрация. Подпрограмма do_login () вначале отправляет код события logoff, если глобальная переменная $nickname уже определена. Затем она запрашивает у пользователя регистрационное имя путем вызова подпрограммы get_nickname () и отправляет на сервер сообщение login_req.

Теперь подпрограмма ожидает получения сообщения login_ack с подтверждением регистра­ции от сервера. Возможно, что запрос или подтверждение будут потеряны при передаче, по­этому подпрограмма do_login() несколько раз повторяет попытку регистрации, используя при этом функцию select () с шестисекундным тайм-аутом для ожидания ответа. Если под­тверждение LOGIN_ACK не будет получено после пяти попыток, подпрограмма do_login() отказывается от дальнейших попыток.

Строки 89-158. Обработка событий сервера. Остальная часть этой клиентской программы в основном состоит из подпрограмм обработки событий сервера. Каждая из них выполняет синтаксический анализ данных событий сервера (если в этом есть необходи­мость) и выводит сообщение для пользователя, к примеру, его информационную подписку про солнечные модули гибкие . Типичным примером является подпро­грамма list_channel () , которая вызывается при получении клиентом сообщения channel_item, содержащего информацию о том, к каким дискуссионным каналам может присоединиться пользователь.

2015-04-28 13:15:59

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2024 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония