Автор работы: Пользователь скрыл имя, 25 Июня 2013 в 22:01, дипломная работа
Останім часом все ширше стає застосовуватись мережі Інтернет. І якщо років 10 тому аналітики заперечували можливість передачі голосу і відео через мережу Інтернет, то сьогодні їхні погляди на ці речі повністю змінились. Наприклад, з прогнозу дослідницької фірми Analysys у 2003 році на Інтернет-телефонію буде припадати 36% всіх міждународних переговорів.
Великим поштовхом для прогресивного розвитку Інтернет-телефонії стало те що використання мережі Інтернет для передавання голосових і відео повідомлень є досить зручним і є набагато дешевшим чим звичайний телефоний дзвінок.
ІР - телефонія , за допомогою Інтернету дозволяє організовувати дзвінки між комп'ютерами . В ІР - телефонії використовуються канали зв'язку мережі Інтернет. При розмові наші голосові сигнали перетворюються в пакети даних які стискаються
ВСТУП 9
Розділ 1. IP - ТЕЛЕФОНІЯ і SIP ПРОТОКОЛ 13
1.1. Історія розвитку ІР - телефонії 13
1.2. Принцип дії ІР - телефонії 13
1.3. Якість Зв'язку ІР - телефонії 14
1.4. Протокол SIP 16
1.5.Можливості протоколу SIP 17
1.6. Повідомлення SIP 18
1.7. Приклад встановлення з'єднання 20
1.8.Мережа на базі протоколу SIP 22
1.9. Висновок до першого розділу 26
2. ВИБІР ЗАСОБІВ ДЛЯ РЕАЛІЗАЦІЇ ПРОГРАМИ 27
2.1. Вибір мови програмування 27
2.2. Опис мови програмування і її основні елементи 27
2.3. Структура програми 29
2.4. Характеристики Delphi SIP Component 31
2.5. Вимог до апаратних 32
2.6. Призначення програми 32
2.7. Вимоги до програми загалом 32
2.8. Розробка узагальненого алгоритму функціонування програми 33
2.9. Висновок до другого розділу 35
3. ПРОГРАМНА РЕАЛІЗАЦІЯ СИСТЕМИ 36
3.1. Розробка архітектури програмного рішення 36
3.1.1. MainForm - головне вікно 36
3.1.2 DialForm - форма дизайну і розташування всіх компонентів 37
3.1.3 AudiFrm - форма налаштування звуку. 38
3.1.4 AccountsFrm - форма налаштування користувачів. 39
3.2. Проектування інтерфейсу користувача 40
3.2.1 Головне вікно 40
3.2.2 Вікно "Account Settings" 41
3.2.3 Вікно "Audio Settings" 43
3.2.4 Вікно "About" 43
3.2.5 Розробка діаграм функцій для програми. 44
3.3. Тестування роботи програми 51
3.4. Висновок до третього розділу 53
4. ЕКОНОМІЧНА ЧАСТИНА 54
4.1. Розрахунок витрат на розробку та впровадження проектного рішення 54
4.3. Визначення комплексного показника якості 60
4.4. Визначення експлуатаційних витрат 62
4.5. Розрахунок ціни споживання проектного рішення 64
4.6. Визначення показників економічної ефективності 65
4.6.1. Показник конкурентоздатності: 65
4.6.2. Економічний ефект в сфері проектування рішення: 65
4.6.3. Економічний ефект в сфері експлуатації : 65
4.6.4. Оскільки Епр>0 і Еекс>0, розраховуємо додатковий економічний ефект в сфері проектування: 66
4.6.5. Сумарний ефект 66
4.7.Висновок до четвертого розділу 67
ВИСНОВОК 68
Рис 1.5. Мережа SIP з проксі-сервером
На
рис.1.5 представлений алгоритм встановлення
з'єднання за допомогою
протоколу_SIP_за_участю_проксі
1)_Проксі-сервер приймає запит
з'єднання INVITE від
користувача;
2)_Проксі-сервер встановлює
місцезнаходження клієнта
за допомогою сервера
позиціонування_(location_serve
3)_Проксі-сервер передає
запит INVITE викликуваному користувачу;
4)_Обладнання користувача повідомляє про
вхідний виклик і повертає проксі-серверу повідомлення
про те, що запит INVITE обробляється
(код 100). Проксі-сервер, у
свою чергу, направляє цю
інформацію обладнанню;
5)_Коли абонент,
що викликається приймає
виклик, його обладнання сповіщає
про це проксі-серверу (код 200), який переправляє інформацію
про те, що виклик прийнятий;
6)_Викликаюча сторона
підтверджує встановлення з'єднання передачею запиту АСК, яке проксі-сервер переправляє викликаючі
стороні. Встановлення
з'єднання закінчено, абоненти можуть
обмінюватися мовною
інформацією.
Сервер переадресації (Redirect server) визначає поточне місце розташування абонента, що викликається і повідомляє його користувачеві (рис. 1.6). Для визначення поточного місця розташування абонента, що викликається сервер переадресації звертається до сервера визначення місця розташування.
Алгоритм
встановлення з'єднання з використанням
протоколу SIP за участю сервера переадресації
виглядає наступним чином:
1) Сервер переадресації приймає від сторони
запит з'єднання INVITE і зв'язується з сервером
визначення місцезнаходження, який видає
поточний адресу_викликаючого_клієнта;
2) Сервер переадресації передає цю адресу
стороні. На відміну від проксі-сервера,
запит INVITE до устаткування викликається
користувача сервер переадресації_не_передається;
3) Обладнання викликає користувача підтверджує
завершення транзакції з сервером_переадресації_запитом
4) _Далі
обладнання користувача передає запит
INVITE на адресу, отриманий від__сервера__переадресації;
5) Устаткування користувача повідомляє
про вхідний виклик і повертає обладнанню
повідомлення про те, що запит INVITE обробляється
(код 100);
6) Коли абонент, що викликається приймає
виклик, про це сповіщається обладнання
користувача (код 200). Встановлення з'єднання
закінчено, абоненти можуть обмінюватися
мовною інформацією.
Рис. 1.6. Мережа SIP з сервером переадресації
Існує
також і безсерверний
варіант з'єднання, коли один
термінал може передати запит
іншому терміналу безпосередньо. Протокол SIP передбачає
5 запитів_і_відповідей_на_них.
Сигналізація SIP дає можливість
агентам і мережевим
серверам визначати місце
розташування, видавати запити
і керувати з'єднаннями.
INVITE -
запит приваблює користувача до
участі в сеансі зв'язку і
містить опис параметрів цього
зв'язку. За допомогою цього
запиту користувач може визначити функціональні можливості терміналу свого
партнера по зв'язку і
почати сеанс зв'язку, використовуючи обмежене
число повідомлень і підтверджень_їх_прийому.
АСК - запит підтверджує прийом від сторони відповіді
на команду INVITE і_завершує_транзакцію.
OPTIONS - запит дозволяє
отримати інформацію про
функціональні можливості користувацьких
агентів і мережевих серверів. Однак цей
запит не використовується_для_організац
BYE - запит використовується для
руйнування з'єднання. Перед тим
як зруйнувати з'єднання,
призначені для користувача агенти відправляють цей
запит до сервера, повідомляючи про
намір припинити сеанс
зв'язку.
CANCEL - запит дозволяє користувальницьким агентам і мережевим
серверам скасувати будь
який раніше переданий запит, якщо
відповідь на запит ще не
була отримана.
В першому розділі було проведено загальний огляд технології яка використовується в системі.
SIP
є протокол , за допомогою якого
ми можемо здійснювати
IP-телефонія досягла загальносвітового рівня і дозволяє зв'язати абонентів з усього світу. Це дозволить значно заощадити на міжнародних і міжміських розмовах користувача .
Для реалізації поставленої задачі я вибрав мову програмування Delphi, тому що за допомогою цієї мови легко можна створювати прикладні програми з графічним інтерфейсом , а також для Delphi існує уже готовий компонент для роботи з протокол SIP. Компілятор я вибрав Delphi 2007, на даний момент він один з найкращих і провідних компіляторів для мови Delphi, який підтримує безліч корисних компонентів що полегшують написання програм.
Delphi
-- мова програмування, що
Delphi
- це нащадок Турбо Паскаля,
який був випущений для
Embarcadero
Delphi — це інтегроване середовище
швидкої розробки програмного
забезпечення для роботи під
Microsoft Windows. Воно підтримує розробку
Windows-застосунків на мові
Дана версія стабільно працює на всі ліній ОС XP і вище , підтримує х32/х64 розрядність. Для цієї версії є багато корисних і зручних , а саме головне безплатних компонентів , що прискорюють написання програм, в більшості прикладних - графічних.
Інтегроване середовище Delphi 2007 складається з чотирьох основних елементів: головне вікно, вікно інспектора об'єктів, вікно форми та вікно модуля (вікно коду).
Головне меню - стандартне меню в стилі Windows. Це меню дозволяє керувати всіма аспектами роботи в Delphi. Рядок меню можна налаштувати за власним бажанням, наприклад, додати власні елементи до пункту меню інструментів Tools.
Кнопки і гарячі клавіші. Кнопки використовуються для швидкого доступу до найнеобхідніших пунктів меню. Вони розташовані в лівій частині екрану на панелі швидкого доступу. Серед них є кнопки для компіляції і запуску програм, для перегляду вихідного коду рядок за рядком тощо. Для того, щоб з'ясувати призначення кнопки досить навести на неї вказівник миші і прочитати підказку.
Палітра
компонентів - це каталог візуальних
і не візуальних об'єктів, які можна
включати до власних форм і програм.
У Delphi компоненти об'єднані в кілька
основних груп: стандартна, додаткова,
група Windows 95, група доступу до даних,
група управління даними, група Windows
3.1, діалогова група, системна група,
група звітів, OCX група і група
взірців. Кожна з цих груп представлена
на окремій сторінці палітри компонент.
Щоб з'ясувати призначення
Вікно, яке знаходиться у центрі, називається формою. Під час розробки форма являє собою вікно програми. У цьому вікні проходить основна частина роботи по проектуванню програми. Деякі елементи у вікні форми (лінії сітки, невізуальні компоненти) не будуть видимими під час виконання програми. Але, оскільки Delphi - це середовище програмування типу WYSIWYG (What - You - See - Is - What - You - Get, що бачите, те й отримаєте), то більша частина того, що ми бачимо під час проектування є тим, що ми побачимо і під час виконання програми. Є можливість змінити різні його властивості, наприклад, прибрати кнопки максимізації та мінімізації вікна тощо.
Вікно коду працює аналогічно до простого текстового редактора. Можна використовувати клавіші PgUp i PgDn, клавіші курсору, мишу, можна виділити, скопіювати, вставити текст за допомогою меню EDIT і відповідних гарячих клавіш.
Вгорі вікна коду є закладка. Вона належить до файлу, який зараз редагується. Якщо відкрити декілька файлів, кожен з них буде мати свою закладку.
Інспектор об'єктів або Object Inspector як правило знаходиться в лівій частині екрану і містить інформацію про виділений обєкт. Інспектор об'єктів складається з таких елементів: комбінованої панелі (Combo box) вибору об'єкту, сторінки властивостей (Properties Page) та сторінки подій (Events Page) вибраного об'єкту.
У
інспекторі об'єктів описані всі
властивості об'єкту, і його використовують
для зміни цих властивостей. Наприклад,
можна змінити заголовок
Крім того за допомогою інспектору об'єктів можна переглянути та змінити всі події, що пов'язані з виділеним об'єктом.
В
основі будь-якої Delphi-програми лежить
проект. Основою проекту в свою
чергу є форма, на якій розміщаються
необхідні для розвязку конкретної
задачі компоненти. Проект складається
з різних частин, кожна з яких
розміщена в окремому файлі й
виконує чітко визначені
Головний
файл проекту - текстовий файл з розширенням
DPR, який містить головний програмний
блок. Файл проекту підключає всі
програмні модулі і містить методи
для запуску програми. Цей файл
створює і контролює
Файли опису форм - двійкові файли з розширенням DFM, які описують форми з компонентами. В цих файлах запамятовуються початкові значення властивостей, встановлених в Інспекторі Обєктів.
Файли програмних модулів - текстові файли з розширенням PAS, які містять код на мові Object Pascal. У цих файлах містяться методи обробки подій, які генеруються компонентами і формами.
Файл ресурсів з розширенням RES. У ньому, наприклад, зберігається піктограма програми, яку видно на Панелі Задач Windows.
Обєктні файли з розширенням OBJ, написані на інших мовах програмування.
Файл опцій з розширенням DOF, де розміщені задані програмістом параметри компіляції і компонування проекту.
Файл з розширенням DSK, де розміщені настройки візуального середовища для даного проекту[1].
Це все можна побачити на рис.2.1. який представлений нижче.
Рис. 2.1.Робоча оболонка компілятора Delphi
Delphi SIP Component - був створений з метою полегшення розробки програм , які працюють з SIP протоколом. У ньому зразу є вбудовано рішення які економлять велику кількість часу що би писати це самому.
До складу готових рішень входять:
Ці всі функції доступні у повні версії компоненту. За допомогою них досить зручно розробити власну програму SoftPhone.
Для даного програмного продукту потрібні мінімально наступні характеристики ПК:
Програма що розробляється, являє собою клієнт який забезпечить розмову між двома користувачами. Цільова аудиторія користувачів є люди які знаходяться один від одного на відстані і прагнуть спілкування.
Дана
програма відносить до виду прикладних
програм з простим і зрозумілим
графічним інтерфейсом для
Програма
повинна забезпечувати