SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Разработка универсального телекоммуникационного сервиса по записи звонков  для  Asterisk Научный руководитель: канд. физ.-мат. наук, с.н.с. лаборатории Открытых Информационных Технологий Дмитрий Евгеньевич Намиот Выполнил: студент факультета ВМиК, м-211 Илья Вячеславович Тимофеев
Актуальность ,[object Object],[object Object]
Возможные применения ,[object Object],[object Object],[object Object],[object Object],[object Object]
Цель и требования ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Аналоги ,[object Object],[object Object],[object Object],[object Object],[object Object]
Подход ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Получение звукового файла ,[object Object],[object Object]
Сервисы хранения данных с открытыми  API
Обобщение  API  сервисов
Алгоритм работы
Результат работы программы 1
Результат работы программы 2
Заключение ,[object Object],[object Object],[object Object]

Weitere ähnliche Inhalte

Ähnlich wie Voice to cloud

DLP 007: три элемента мобильной безопасности
DLP 007: три элемента мобильной безопасностиDLP 007: три элемента мобильной безопасности
DLP 007: три элемента мобильной безопасностиInfoWatch
 
Api Microsoft Loghechkin
Api Microsoft LoghechkinApi Microsoft Loghechkin
Api Microsoft LoghechkinAlex Ilyin
 
Android Platform - новые мобильные рынки
Android Platform - новые мобильные рынкиAndroid Platform - новые мобильные рынки
Android Platform - новые мобильные рынкиBlogcamp Organization Committee
 
диссертационная презентация
диссертационная презентациядиссертационная презентация
диссертационная презентацияSon Ingvar
 
Bachelors Diploma Slides Short Version
Bachelors Diploma Slides Short VersionBachelors Diploma Slides Short Version
Bachelors Diploma Slides Short VersionDenis Zakharov
 
Современна Программная инженерия. Системная инженерия
Современна Программная инженерия. Системная инженерияСовременна Программная инженерия. Системная инженерия
Современна Программная инженерия. Системная инженерияMarcus Akoev
 
Cyber Bionics #iotconfua
Cyber Bionics #iotconfuaCyber Bionics #iotconfua
Cyber Bionics #iotconfuaAndy Shutka
 
Информационные технологии. Общие понятия и классификация
Информационные технологии. Общие понятия и классификацияИнформационные технологии. Общие понятия и классификация
Информационные технологии. Общие понятия и классификацияAnn Shalankina
 
Особенности мобильной платформы Windows Phone 8
Особенности мобильной платформы Windows Phone 8Особенности мобильной платформы Windows Phone 8
Особенности мобильной платформы Windows Phone 8GetDev.NET
 
Windows Phone School HSE Lecture 1
Windows Phone School HSE Lecture 1Windows Phone School HSE Lecture 1
Windows Phone School HSE Lecture 1Dmitry Gridnev
 
Positive Hack Days. Гурзов. Легенды и мифы безопасности VOIP
Positive Hack Days. Гурзов. Легенды и мифы безопасности VOIPPositive Hack Days. Гурзов. Легенды и мифы безопасности VOIP
Positive Hack Days. Гурзов. Легенды и мифы безопасности VOIPPositive Hack Days
 
Голосовая Платформа
Голосовая ПлатформаГолосовая Платформа
Голосовая ПлатформаNatalia Startseva
 
Solar inCode – система анализа программного кода на наличие уязвимостей ИБ
Solar inCode – системаанализа программного кода на наличие уязвимостей ИБSolar inCode – системаанализа программного кода на наличие уязвимостей ИБ
Solar inCode – система анализа программного кода на наличие уязвимостей ИБSolar Security
 
Интеграция мобильных приложений с Window azure
Интеграция мобильных приложений с Window azureИнтеграция мобильных приложений с Window azure
Интеграция мобильных приложений с Window azureИлья Родин
 

Ähnlich wie Voice to cloud (20)

DLP 007: три элемента мобильной безопасности
DLP 007: три элемента мобильной безопасностиDLP 007: три элемента мобильной безопасности
DLP 007: три элемента мобильной безопасности
 
Api Microsoft Loghechkin
Api Microsoft LoghechkinApi Microsoft Loghechkin
Api Microsoft Loghechkin
 
Android Platform - новые мобильные рынки
Android Platform - новые мобильные рынкиAndroid Platform - новые мобильные рынки
Android Platform - новые мобильные рынки
 
Babich Intel Report
Babich Intel ReportBabich Intel Report
Babich Intel Report
 
диссертационная презентация
диссертационная презентациядиссертационная презентация
диссертационная презентация
 
What is WebEx?
What is WebEx?What is WebEx?
What is WebEx?
 
Цифровой Агент
 Цифровой Агент Цифровой Агент
Цифровой Агент
 
Bachelors Diploma Slides Short Version
Bachelors Diploma Slides Short VersionBachelors Diploma Slides Short Version
Bachelors Diploma Slides Short Version
 
Современна Программная инженерия. Системная инженерия
Современна Программная инженерия. Системная инженерияСовременна Программная инженерия. Системная инженерия
Современна Программная инженерия. Системная инженерия
 
Cyber Bionics #iotconfua
Cyber Bionics #iotconfuaCyber Bionics #iotconfua
Cyber Bionics #iotconfua
 
Информационные технологии. Общие понятия и классификация
Информационные технологии. Общие понятия и классификацияИнформационные технологии. Общие понятия и классификация
Информационные технологии. Общие понятия и классификация
 
Особенности мобильной платформы Windows Phone 8
Особенности мобильной платформы Windows Phone 8Особенности мобильной платформы Windows Phone 8
Особенности мобильной платформы Windows Phone 8
 
Zabiyako CV
Zabiyako CVZabiyako CV
Zabiyako CV
 
Zabiyako CV
Zabiyako CVZabiyako CV
Zabiyako CV
 
Windows Phone School HSE Lecture 1
Windows Phone School HSE Lecture 1Windows Phone School HSE Lecture 1
Windows Phone School HSE Lecture 1
 
Topsolutions LLP - software solutions
Topsolutions LLP - software solutionsTopsolutions LLP - software solutions
Topsolutions LLP - software solutions
 
Positive Hack Days. Гурзов. Легенды и мифы безопасности VOIP
Positive Hack Days. Гурзов. Легенды и мифы безопасности VOIPPositive Hack Days. Гурзов. Легенды и мифы безопасности VOIP
Positive Hack Days. Гурзов. Легенды и мифы безопасности VOIP
 
Голосовая Платформа
Голосовая ПлатформаГолосовая Платформа
Голосовая Платформа
 
Solar inCode – система анализа программного кода на наличие уязвимостей ИБ
Solar inCode – системаанализа программного кода на наличие уязвимостей ИБSolar inCode – системаанализа программного кода на наличие уязвимостей ИБ
Solar inCode – система анализа программного кода на наличие уязвимостей ИБ
 
Интеграция мобильных приложений с Window azure
Интеграция мобильных приложений с Window azureИнтеграция мобильных приложений с Window azure
Интеграция мобильных приложений с Window azure
 

Mehr von Coldbeans Software

On Internet of Things education
On Internet of Things educationOn Internet of Things education
On Internet of Things educationColdbeans Software
 
Стандарты в цифровой экономике
Стандарты в цифровой экономикеСтандарты в цифровой экономике
Стандарты в цифровой экономикеColdbeans Software
 
On Internet of Things programming models
On Internet of Things programming modelsOn Internet of Things programming models
On Internet of Things programming modelsColdbeans Software
 
Безопасный город
Безопасный городБезопасный город
Безопасный городColdbeans Software
 
Twitter as a Transport Layer Platform
Twitter as a Transport Layer Platform Twitter as a Transport Layer Platform
Twitter as a Transport Layer Platform Coldbeans Software
 
On data model for context–aware services
On data model for context–aware servicesOn data model for context–aware services
On data model for context–aware servicesColdbeans Software
 
On Web-based Domain-Specific Language for Internet of Things
On Web-based Domain-Specific Language for Internet of ThingsOn Web-based Domain-Specific Language for Internet of Things
On Web-based Domain-Specific Language for Internet of ThingsColdbeans Software
 
ON THE SYNERGY OF CIRCUITS AND PACKETS
ON THE SYNERGY OF CIRCUITS AND PACKETS ON THE SYNERGY OF CIRCUITS AND PACKETS
ON THE SYNERGY OF CIRCUITS AND PACKETS Coldbeans Software
 
Базы данных для временных рядов
Базы данных для временных рядовБазы данных для временных рядов
Базы данных для временных рядовColdbeans Software
 
Метаданные в модели REST
Метаданные в модели RESTМетаданные в модели REST
Метаданные в модели RESTColdbeans Software
 
ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.
ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.
ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.Coldbeans Software
 
From Jules Verne’s Moon landing dream in 1865 to “Star Wars” now
From Jules Verne’s Moon landing dream in 1865 to “Star Wars” nowFrom Jules Verne’s Moon landing dream in 1865 to “Star Wars” now
From Jules Verne’s Moon landing dream in 1865 to “Star Wars” nowColdbeans Software
 

Mehr von Coldbeans Software (20)

On Internet of Things education
On Internet of Things educationOn Internet of Things education
On Internet of Things education
 
Стандарты в цифровой экономике
Стандарты в цифровой экономикеСтандарты в цифровой экономике
Стандарты в цифровой экономике
 
On Internet of Things programming models
On Internet of Things programming modelsOn Internet of Things programming models
On Internet of Things programming models
 
IoT education
IoT educationIoT education
IoT education
 
On Crowd-sensing back-end
On Crowd-sensing back-endOn Crowd-sensing back-end
On Crowd-sensing back-end
 
On Physical Web models
On Physical Web modelsOn Physical Web models
On Physical Web models
 
Безопасный город
Безопасный городБезопасный город
Безопасный город
 
Twitter as a Transport Layer Platform
Twitter as a Transport Layer Platform Twitter as a Transport Layer Platform
Twitter as a Transport Layer Platform
 
On hyper-local web pages
On hyper-local web pagesOn hyper-local web pages
On hyper-local web pages
 
On data model for context–aware services
On data model for context–aware servicesOn data model for context–aware services
On data model for context–aware services
 
On time-series databases
On time-series databasesOn time-series databases
On time-series databases
 
On Web-based Domain-Specific Language for Internet of Things
On Web-based Domain-Specific Language for Internet of ThingsOn Web-based Domain-Specific Language for Internet of Things
On Web-based Domain-Specific Language for Internet of Things
 
ON THE SYNERGY OF CIRCUITS AND PACKETS
ON THE SYNERGY OF CIRCUITS AND PACKETS ON THE SYNERGY OF CIRCUITS AND PACKETS
ON THE SYNERGY OF CIRCUITS AND PACKETS
 
Базы данных для временных рядов
Базы данных для временных рядовБазы данных для временных рядов
Базы данных для временных рядов
 
Bluetooth Data Points
Bluetooth Data PointsBluetooth Data Points
Bluetooth Data Points
 
Метаданные в модели REST
Метаданные в модели RESTМетаданные в модели REST
Метаданные в модели REST
 
ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.
ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.
ОБ ИСПОЛЬЗОВАНИИ BLUETOOTH ДЛЯ ПРЕДСТАВЛЕНИЯ ЛОКАЛЬНЫХ ДАННЫХ.
 
From Jules Verne’s Moon landing dream in 1865 to “Star Wars” now
From Jules Verne’s Moon landing dream in 1865 to “Star Wars” nowFrom Jules Verne’s Moon landing dream in 1865 to “Star Wars” now
From Jules Verne’s Moon landing dream in 1865 to “Star Wars” now
 
Cars as Tags
Cars as TagsCars as Tags
Cars as Tags
 
Sensing
SensingSensing
Sensing
 

Voice to cloud

Hinweis der Redaktion

  1. Здравствуйте! Я - Тимофеев Илья, студент магистратуры факультета ВМиК, группа м-211. Представляю работу по теме «Разработка универсального телекоммуникационного сервиса по записи звонков для Asterisk ». Научный руководитель – Дмитрий Евгеньевич Намиот.
  2. В настоящее время очень быстро развивается рынок смартфонов и коммуникаторов. Такие мобильные устройства способны выполнять настоящие программы в частности для обработки звуковой информации от пользователей. Но по прежнему самым распространенным способом генерации звуковой информации для большинства пользователей является звонок по обычному телефону. Разработке подхода для создания сервисов по работе с такой информацией и посвящена данная работа.
  3. Результаты работы могут быть применены для создания таких сервисов, как: Голосовая почта с хранением файлов вне сервера атс Сервиса подкастов Публикация голосовой записи в блоге Одно из наиболее важных применений - публикация голосового описания проблем в системе ushahidi Автоматизация действий работников техподдержки по созданию задачи в системе трекинга и прикрепление к ней звукового файла разговора с клиентом
  4. Исходя из актуальности темы ставится следующая цель: «Разработать подход и его реализацию для обработки звуковой информации, полученной от пользователя». К решение предъявляются следующие требования: 1 2 3
  5. Существуют компании, предоставляющие облачные телекоммуникационные сервисы. Проблема заключается в том, что они являются платными и закрытыми. Сервис VoiceLJ позволяет клиентам сохранить запись их звонка в ЖЖ. Этот сервис основан на тесном взаимодействии с одним из операторов связи и не может быть использован при решении других задач. В рамках данной работы создано полностью открытое решение, являющееся универсальным облачным сервисом по записи звонков.
  6. Относительно недавно стали появляться программные реализации автоматических телефонных станций, что позволило широкому кругу программистов (а не только людям работающим на владельцев этих атс) создавать свои телекоммуникационные сервисы. В основу решения положен наиболее широко распространённая и открытая реализация атс Asterisk. Популярность и кроссплатформенность java явились определяющими факторами выбора ее, в качестве языка реализации. AGI-proxy – система с открытыми исходными кодами, разработанная в МГУ будет использоваться для получения звукового файла звонка. Полученный файл желательно хранить не на локальной машине, а на отдельной. Наиболее гибким решением является использование специальных сервисов хранения файлов в интернет. Для выполнения требования расширяемости все модули программы будут общаться через четко определенные интерфейсы. Применение принципа Inversion of control позволяет упростит создание дополнительных модулей сторонними разработчиками.
  7. Наиболее простым и эффективным решение задачи получения звукового файла звонка является использование разработанного ранее прокси, переадресующего телефонные вызовы в http запросы . Алгоритм работы следующий. Пользователь звонит через астериск. Этот звонок обрабатывается через вызов API, который в свою очередь переадресуется прокси. Он же посылает http запрос на сервер. В ответ приходят команды «поднять трубку» и «записать звонок в файл», которые так же переадресуются астериску. Все завершается, когда пользователь кладет трубку.
  8. Таким образом на предыдущем шаге получилась запись звонка. Теперь эти записи нужно где-то хранить. Были исследованы наиболее популярные сервисы для хранения файлов. Сравнение некоторых параметров приведены на этой таблице. Наиболее важным параметром является наличие прямой ссылки на файл, а не на экран загрузки файла с капчей, как у narod.yandex.ru Прямую ссылку можно подать на вход к флеш плееру, который сможет сразу и проиграть этот файл. Как видно из таблицы наиболее выгодными являются сервисы от Amazon и Dropbox.
  9. Изучив API перечисленных выше сервисов, я пришел к выводу, что следующая схема работы будет наиболее универсальной, подходящей для работы с любым из них. Перед началом работы нужно провести инициализацию. Объект типа PropertySet содержит настройки. Перед завершением работы некоторым сервисам нужно выполнить завершающие действия. Таким образом метод init и destroy выполняются только один раз. Непосредственно перед загрузкой файла нужно выполнить предварительные действия, например, установить соединение. В результате загрузки получаем ссылку или URL по которой можно получить к нему доступ. После этого нужно выполнить закрыть соединение в методе clean.
  10. В итоге, алгоритм работы получился следующим. Пользователь звонит через Asterisk , который производит запись звонка. После этого разработанный фреймворк заботится о получении этого файла, подключении конкретного модуля, получении настроек для модуля, производит все приготовительные мероприятия и вызывает у модуля метод upload. Это и есть реализация принципа инверсии контроля. Конкретная реализация модуля выполняет сохранения файла и возвращает его URL . После этого, похожая последовательность действий происходит и при публикации записи в блоге, например.
  11. В итоге Предложено решение, позволяющее быстро и просто реализовывать сервисы, использующие записи звонков пользователей Проведено исследование сервисов хранения файлов в интернет с открытыми API Реализованы несколько сервисов, использующих предложенное решение, что показывает его состоятельность и конформность требованиям