Описание работы создоваемого продукта: 1. Берет из удаленной mysql базы список телефонов. 2. Звонит поочередно на них из Skype, после того как берут трубку прокручивает взаранее заданное аудио. 3. Анализирует ответ на предмет наличия в нем ...
Доработка opensource программы TinyProxy
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.
Прокси менеджер
Есть такой прокси как tinyproxy http://linux.die.net/man/5/tinyproxy.conf ,
легкий понятный, стабильно работающий. Для одного проекта нужны следуюшие модификации.
1) Убрать весь код которые отвечает за стандартную логику выбора вышестоящего прокси ( опции Upstream, No Upstream ),
мне эта функциональность не нужна. Нужно будет реализовать альтернативную логику ( см ниже)
2) Альтернативная логика будет заключаться, в том, что клиенту будет позволено выбирать через какой
вышестоящий прокси можно будет послать запрос, а также реализовать API по динамическому добавлению - удалению upstream
2.1 Предполагается, что тинипрокси будет держать в памяти список возможных прокси ( до 25 тыс IP адресов),
группу к которой относится прокси, и базовую статистику работы с вышестоящим прокси ( количество байт, количество запросов,количество неудачных запросов)
2.2) При запуске , он должен считывать список вышестоящих прокси из файла. По сигналу ( любой на ваш выбор), он должен сохранять данные о вышестоящих прокси в файл.
2.3) Файл представляет собой обычный текстовый файл вида ( до 25 тыс строк)
ip_address_of_upstram0:port,Group1
ip_address_of_upstram1:port,Group1
ip_address_of_upstram2:port,Group2
ip_address_of_upstram3:port,Group2
3.1) У тинипрокси есть такая опция как StatHost='yourname.local' , когда клиент обращается к такому хосту, то тинипрокси
прехватывает запрос и выдает в ответ статистику, нужно аналогично реализовать опцию ApiHost. При обращении к хосту указанному
в этой опции, должны выполнятся комманды определяемые дополнительными полями в HTTP заголовках.
3.2) Все API запросы передаются в HTTP полях X-API-XXXXXXX
3.3) Возможные API запросы ( HTTP заголовки)
3.3.1) X-API-ShowGroup: - в ответ выдает список груп
3.3.2) X-API-AddGroup: - создать новую группу ( максимально 15-20 групп)
3.3.3) X-API-DelGroup: - удалить группу
3.3.4) X-API-MoveGroup: перенести все IP адреса в новую группу ( если ее не существует, то создать новую) и удалить
3.3.5) X-API-AddProxy: Добавить прокси в группу
3.3.6) X-API-DelProxy: удалить прокси из группы
3.3.7) X-API-ShowGroupMembers: показывает список IP в этой группе
3.3.8) X-API-ShowGroupMembersStats: показывает список IP в этой группе и краткую статистику по каждому IP - количество байт, количество запросов,количество неудачных запросов
3.3.9) X-API-ShowProxyStats: краткую статистику
Те все API комманды относятся к управлению группами и адресами.
3.4) В конфиге определяется переменная DefaultGroup
3.5) При обработке обычного запроса, прокси обращает внимание на наличие следующих HTTP заголовков
X-PM-Group:
X-PM-Proxy: IP:Port
Если не существует, то ее нужно создать и добавить туда переденный адрес прокси.
Если заголовок X-PM-Group не определен, то используется DefaultGroup.
3.5.1) - Если заголовок X-PM-Proxy не определен, то нужно смотреть на переменную конфига DefaultAction
Если значение DefaultAction = Direct , то устанавливаем соединение с запрашиваемым узлом напрямую.
Если значение DefaultAction = Rotary , то случайным образом выбирается один из IP адресов из группы X-PM-Group и соединение уставливается через него.
3.5.2) - Если использовался вышестоящй проксти, то нужно передать клиенту информацию о том какой из апстримов использовался, чтобы клиент при повторных запросах мог повторно использовать один и тот же прокси.
Информация клиенту передается путем добавления заголовков
X-PM-UsedGroup:
X-PM-UsedProxy: IP:Port
Работа не срочная, две-три недели вполне приемлемый срок, оплата WMR. Разбиваем проект на стадии, оплата за каждую стадию.
- Похожие заказы
- $500Прикладное ПО2 заявкиЗакрыт12 лет назад
нужно написать много поточность минимум 100 потоков запросы post get.используя через компонент curl(delphi 7 ) . в идеале писать все на delphi 7, но как вариант как дополнительный модуль на C( чисто много поточность) , ...
Прикладное ПО4 заявкиЗакрыт12 лет назадНужен плагин для Mozilla Firefox на подобие SkipScreen, только именно для Turbobit чтоб скачивало без ожидания минуты.
Прикладное ПО1 заявкаЗакрыт12 лет назад- $250
Средства разработки Unity3D создают окно приложения у которого заблокирована возможность изменения размеров (при перетаскивании границы окна), а так же возможность максимизации окна (разворачивание окна во весь экран как любого стандартного Windows-приложения). Необходимо разработать Unity3D-скрипт позволяющий разблокировать ...
Прикладное ПО1 заявкаЗакрыт12 лет назад Нужно написать программу для Win XP,Vista,7 - Мультимедийный Курс Английского языка. Весь контент и дизайн готовы - нужно только программирование. Подробно об объеме и типе работ вы можете понять посмотрев презентацию, и почитав там комментарии у ...
Прикладное ПО4 заявкиЗакрыт12 лет назаддизайн в psd, язык желательно c#+xaml, необходимо реализовать UI, механизм фильтрации и принятия решений по блокировке, управление черным и белым списком, блокировкой по расписанию, фильтр блокировки нежелательного контента, dll для перехвата траффика готова(LSP), необходимо к ...
Прикладное ПО2 заявкиЗакрыт12 лет назад- $50
Необходима доработка программы на Delphi. Программа сканирует страничку авторов самиздата и показывает изменения. Задание: Добавить в программу 2 опции которые будут учитываться при сканировании всех авторов.
Прикладное ПО1 исполнительЗакрыт12 лет назад - $50
Нужно из набора файлов, из которого формируется chm. Нужно сделать набор html файлов для веба. https://dl.dropbox.com/u/64566964/%D1%82-%D0%B7%20help.wmv - ТЗ тут. Набор файлов вышлю выбранному исполнителю.
Прикладное ПО1 исполнительЗавершен12 лет назад - $200
Необходимо помочь с записью звука с использованим библиотеки portaudio. Есть рабочий функционал (пару файлов, совсем немного). Затруднение вот в чем - берется звук с источника звука, в каком либо формате (частота, семлы итд). Надо добавить ...
Прикладное ПО2 заявкиЗакрыт12 лет назад - $100
Добрый день. Требуется разработать XML структуру данных для хранения информации о наличии файлов. Файлы разбиты по категориям, для каждого файла в структуре требуется учесть имя файла, дату последнего обновления, автора, e-mail, описание(может быть много текста), ...
Прикладное ПО1 исполнительЗавершен12 лет назад