Мультиплатформенный SIP туннель
Техническое задание
библиотека и приложение SIPxTunnel
Описание проекта:
Необходимо написать C++ библиотеку и приложения (клиент и сервер) на основе нее для
туннелирования через TCP-соединение SIP-протокола, использующего сетевой UDP-протокол.
За основу должен быть взят открытый проект "SIP Tunnel" http://siptunnel.sourceforge.net
Но, в отличие от прототипа, проект должен компилироваться в исполняемые модули под Windows и Linux,
и при работе не использовать виртуальные машины типа JVM, dotNet, Mono.
Проект может иметь отличия от прототипа во внутренней структуре, синтаксисе вызова процедур и функций,
в методах классов и в перечне самих классов, но не должен иметь меньший, чем у прототипа функционал.
Основные требования к проекту:
язык программирования: C++
OS: Windows 2000 и выше, Linux
компиляторы: GCC, MS Visual Studio 2005 и выше
внешние зависимости:
- не использовать Java, dotNet, Mono;
- минимизировать зависимость от больших библиотек сторонних разработчиков (исключая STL).
исходные коды:
- должны быть предоставлены исполнителем заказчику полностью
- должны сопровождаться внятными комментариями (на русском либо английском)
Проект считается завершенным, когда на оборудовании заказчика будут выполнены следующие действия:
- под Linux Fedora Core собран из исходных текстов и запущен исполняемый модуль сервера SIPxTunnel
- под Windows XP в среде MS VS 2005 собран из исходных текстов и под Windows 2000, XP, Vista
запущен исполняемый модуль клиента SIPxTunnel
- тестовый звонок SIP-софтфона с клиентской машины через SIPxTunnel будет совершен с тем же результатом,
что и аналогичный звонок через тестовое приложение SIPTunnel
- в течение тестового периода (срок которого оговаривается дополнительно) в приложениях SIPxTunnel
не будет выявлено ошибок, приводящих к неработоспособности приложений или операционной системы,
либо к "утечкам памяти"