Pull to refresh
19
0
Виталий Фомин @vf1

User

Send message

Javascript UPNP/DLNA сервер

Reading time1 min
Views16K


По причине «интересно», на досуге, собрал простой upnp/dlna сервер. Написанных на javascript найти не удалось, а идея кажется интересной: один исходный код для всех платформ (спасибо node-webkit), javascript со всеми его достоинствами и недостатками, а также простота сборки. Можно легко собрать проект под все платформы в одной из них. Для этого написал скрипт на питоне, который все сделает сам, даже скачает необходимые файлы node-webkit. Хотелось снизить кол-во телодвижений необходимых для тех, кто захочет внести свою лепту в проект.

Скачать можно здесь, спасибо github за то, что вернули возможность хранить файлы. Умеют сделать людям хорошо. Еще немного текста можно найти под катом.

Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments13

Многопользовательский видео чат

Reading time2 min
Views36K
Недавно столкнулся с несколькими интересными проектами: jssip, node-webkit. Весьма кстати родилась свежая оригинальная тост идея. Так как для ее реализации достаточно лишь соединить готовые компоненты, оперативно написал небольшое кросс-платформенное приложение, исходники открыл. Вот что получилось:



Скачать можно здесь. В статье раскрою некоторые детали.
Читать дальше →
Total votes 46: ↑41 and ↓5+36
Comments12

JavaScript SIP библиотека от авторов стандарта

Reading time1 min
Views20K
Я уже писал заметку на эту тему, с того времени стала доступна еще одна JavaScript SIP библиотека. В первой статье я упоминал её, но на тот момент вся информация о библиотеке включала: описание авторов и видео демонстрирующее работу. Сейчас исходный код открыт под MIT лицензией, имеются документация и форум.

Примечательно, что данную библиотеку разрабатывают авторы того самого стандарта, который и описывает особенности SIP протокола при работе поверх WebSocket. Помимо этого разработчики указывают следующие достоинства:
  • легковесна, ~140КB
  • простой и мощный API
  • совместима с популярными SIP серверами
  • аудио-видео вызовы; мгновенные сообщения
  • статус пользователей (эта функция уникальна, пока отсутствует в других библиотеках)

От себя к преимуществам добавлю: компетентность и отзывчивость авторов, багрепорты закрывают очень быстро.

Под катом длинное подробное видео с пошаговой инструкцией в первой половине для тех кто захочет попробовать самостоятельно, и демонстрацией работы во второй половине (c 3:10). Кстати, в свежих версиях Chrome, WebRTC — протокол для обмена аудио-видео данными, доступен и включен по умолчанию.
Читать дальше →
Total votes 57: ↑54 and ↓3+51
Comments4

Ошибка в HTTP протоколе

Reading time3 min
Views10K
В статье я хочу рассказать не столько об ошибке в RFC 2616, сколько о своем подходе к созданию парсера HTTP сообщений, показать его преимущества и недостатки. В основу моего подхода положено два принципа «лучше час потерять, потом за пять минут долететь» и «пусть компьютер работает, а я отдохну».
Читать дальше →
Total votes 30: ↑19 and ↓11+8
Comments10

DesktopGap для Windows

Reading time2 min
Views2.3K
В течении пробного заплыва в териториальные воды HTML5 разработчиков с целью ознакомления, я разработал небольшое приложение. С помощью PhoneGap его удалось успешно запустить на андроиде, а возможно (не тестировал) и еще на нескольких мобильных платформах. Но, к сожалению, PhoneGap не собирает приложения для настольных ОС (вроде что-то есть под Mac OS). Я решил исправить это упущение для Windows.



Читать дальше →
Total votes 21: ↑16 and ↓5+11
Comments36

Принцип работы SIP клиента в браузере

Reading time2 min
Views15K
Пообщавшись в комментариях к посту, я понял, что не все до конца понимают принцип работы SIP в браузере. Поэтому, решил экспромтом написать небольшую статью, где в общих чертах раскрыть эту тему.


Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments11

Видео SIP клиент в браузере

Reading time1 min
Views14K
Сейчас почти не осталось препятствий для создания полноценного SIP клиента в браузере. Необходимый для видео конференций WebRTC уже можно протестировать, например, в Chrome Canary. Существует draft-ibc-sipcore-sip-websocket, который добавляет WebSocket в качестве еще одного транспорта для SIP. И уже появляются первые реализации SIP клиентов:



К сожалению, автор представленного на видео клиента еще не определился будет ли открывать исходники и под какой лицензией. Под катом альтернативные решения с демонстрацией передачи видео…

Читать дальше →
Total votes 35: ↑35 and ↓0+35
Comments4

Создание конечного автомата для разбора HTTP запроса

Reading time3 min
Views8.9K
Детерминированный конечный автомат можно использовать для реализации очень быстрого способа разбора входной последовательности. Требуется всего один проход по входной последовательности, и минимальные действия на каждом шаге. К сожалению эта модель имеет ограничения — не всегда возможно построить ДКА, для имеющегося Недетерминированного конечного автомата (регулярного выражения, грамматики). Или даже если возможно построить, автомат может иметь слишком большое число состояний.

Тем не менее я решил попробовать создать парсер для HTTP запроса на основе ДКА. Основная задача не просто проверить корректность HTTP запроса, а именно выделить во входной строке элементы соответствующие определенным значениям полей HTTP запроса. Автомат должен генерироваться из BNF правил (разбросанных по) RFC2616. Реализовано все на C#, автомат на выходе тоже на C#. Хотя понятно что когда автомат готов, сгенерировать его на любом языке, в любом виде не проблема.
Читать дальше →
Total votes 31: ↑23 and ↓8+15
Comments12

Information

Rating
Does not participate
Location
Таганрог, Ростовская обл., Россия
Date of birth
Registered
Activity