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

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

Реклама

Perl для IP-Телефонии (47 – Сокеты домена UNIX , часть 13)

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

Строки 8-12. Создание сокета. Устанавливается значение umask, равное 0111, для того что­бы сокет был доступен для записи всем пользователям, и вызывается метод IO::Socket::UNIX->new () для создания сокета и привязки его к указанному полному имени. В отличие от предыдущего примера, где было разрешено создать сокет с установлением ло­гического соединения в соответствии с опциями, применяемыми в модуле IO::Socket::UNIX по умолчанию, здесь методу new () передается параметр type со значением sock_dgram. Поскольку это — сокет, ориентированный на работу с сообщениями, параметр Listen не предоставляется.

Строки 13-22. Цикл выполнения транзакций. Сценарий входит в бесконечный цикл. При ка­ждом проходе по циклу вызывается функция recv() для возврата сообщения, длиной до 128 байт (именно такую максимальную длину может иметь строка с обозначением часового пояса). Значение, возвращенное функцией recv (), представляет собой полное имя сокета другого участника соединения, к примеру клиента-загрузщика, который выполняет скачивание андроид 5.0 бесплатно .

Выполняется проверка содержимого сообщения, и если его формат совместим со специфика­тором часового пояса, полученное значение используется для установки переменной среды TZ, которая содержит текущее значение часового пояса. В ином случае эта переменная уда­ляется, в результате чего интерпретатор Perl принимает по умолчанию значение местного ча­сового пояса.

Теперь с помощью полного имени второго участника обмена данными вызывается функция send () для передачи ему (участнику) дейтаграммы, содержащей результаты вызова функции localtime (). Если по некоторым причинам функция send () возвращает ложное значение, программа выдает предупреждающее сообщение.

Строка 23. Блок end {}. Данный блок сценария выполняет уничтожение файла сокета, если переменная $path не пуста.

 

Клиент службы времени домена UNIX

Клиент, предназначенный для работы с описанным выше сервером службы времени, приведен в листинге приложения. Проведем анализ программы.

Строки 1-4. Загрузка модулей. Загружаются модули IO::Socket и Getopt::Long. Преду­сматривается также вызов функции tmpnam () из модуля posix.

2016-03-05 20:39:49

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


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


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


РЕКОМЕНДУЕМ

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