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

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

Реклама

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

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

С помо­щью метода, который применялся в модуле Daemon, описанном ранее, создается объект POSIX::SigSet, содержащий сигналы INT, CHLD и term, и вызывается функция sigproemask () для блокировки на время этих сигналов. После того как сигналы будут безо­пасно заблокированы, вызывается функция fork () и для каждого из этих обработчиков в до­чернем процессе переустанавливаются правила, применяемые по умолчанию. Теперь в до­чернем процессе сигналы снова разблокируются путем вызова функции sigproemask (), и в результате будет выполнен возврат pid дочернего процесса.

Строки 43-48. Подпрограмма interact (). Эта подпрограмма, которая выполняет всю ре­альную работу, состоит только из шести строк. Она выбирает подключенный сокет из списка параметров, читает из сокета список текстовых строк, предназначенных для форматирования, и вызывает функцию chomp () для удаления символов обозначения конца строки, если они имеются. Таким же образом можно организовать поток обмена к примеру с VoIP шлюзом GOIP 1 . Затем эта подпрограмма передает строки функции fill () модуля Text::Wrap, от­правляет полученный результат через сокет и закрывает сокет.

Клиент Text::Wrap

Проведем анализ программы.

Строки 1—3. Импортирование модулей. Вызываются модули IO::Socket и Getopt::Long. Последний модуль используется для обработки опций командной строки.

Строка 4. Определение константы sock_path. Определяется константа, содержащая за­данное по умолчанию полное имя сокета домена UNIX.

Строки 5-7. Обработка параметров командной строки. Эта клиентская программа позволя­ет пользователю указать вручную путь к сокету с помощью параметра $path. Вызывается функция GetOptions () для интерпретации командной строки и поиска этого параметра, Если он не задан, то по умолчанию принимается значение sock_path.

Строки 8, 9. Открытие сокета. Вызывается метод IO::Socket::UNIX->new() с одним па­раметром для создания нового сокета домена UNIX и попытки подключения к адресу, задан­ному параметром $path. Перед вызовом метода new () нет необходимости устанавливать маску пользователя umask, поскольку не предусмотрена привязка к локальному адресу.



2016-03-02 14:37:02

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


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


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


РЕКОМЕНДУЕМ

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