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

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

Реклама

Perl для IP-Телефонии (35 – Мультиплексные приложения, часть 12)

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

Вместо этого снова создается подкласс класса Chatbot::Elizа для создания вежливой версии, способной уступить место другим клиентам, в качестве которых могут выступать процессы получения, например, содержимого страницы автопортала autoportal.ua или любой другой. В этой версии добавлены три новых метода: welcomed , one_line () и done (). Первый метод возвращает строку с приветствием, которое пользователь видит сразу после подключения. второй метод принимает строку, введенную пользователем преобразует ее и возвращает строку, содержащую ответ психотерапевта с новым приглашением к вводу информации пользователем. Третий метод done () возвращает истинное значение, если предыдущая строка, введенная пользователем, содержала одну из фраз, требующих завершения работы, таких как “bye”, “goodbye” или “exit”.

Еще одно изменение необходимо для контроля за многочисленными экземплярами объектов Chatbot::Eliza. Поскольку каждый объект ведет собственную регистрацию высказываний пользователя, необходимо связать каждый подключенный сокет с уникальным объектом Eliza.

Это можно сделать путем создания глобального хеша %SESS IONS, ключами которого являются объекты сокетов, а значениями— связанные с ними объекты Chatbot:: Eliza. После того как метод can_read () возвращает сокет, готовый для ввода-вывода, хеш %SESS IONS применяется для поиска соответствующего объекта Chatbot::Eliza. Проведем общий анализ программы.

1) Загрузка модулей. Загружаются модули IO::Socket, IO::Select и Chatbot::Eliza::Polite. Объявляется также хеш % SESSIONS для отображения экземп­ляров IO::Socket на объекты Chatbot.

2) Создание приемного сокета. Создается приемный сокет, привязанный к порту, применяемому по умолчанию.

3) Добавление приемного сокета к набору дескрипторов объекта IO::Select. Создается новый объект IO::Select, и к его набору дескрипторов добавляется приемный сокет.



2014-07-18 12:39:35

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


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


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


РЕКОМЕНДУЕМ

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