вторник, 15 февраля 2011 г.

VoIP, SIP и много других страшных букв

Я понимаю, что заинтересованные уже давно нашли этот или подобный текст и без меня, тем более, что Арканоид куда популярнее :) Тем не менее, этот текст может пригодиться и мен самому. а по хомяческой привычке не только пользоваться ссылками, но хранить все у себя, дублирую цельнотянутое у arkanoid'а:

Для начала, небольшая вводная: что представляет из себя традиционная телефония? По сути, торговлю натуральными числами (номерами), то есть создание немыслимо большой прибавочной стоимости к передаче скромных объемов данных, особенно посредством таких прекрасных псевдоуслуг, как "роуминг", "межгород" и т.д. Разумеется, если мы можем передавать данные по три копейки за ведро, грешно было бы не воспользоваться этим, чтобы показать телефонистам мужской половой детородный Хуй большую дулю. К тому же, нам не нужно тянуть отдельные провода, морочиться с очень специального вида дорогостоящим оборудованием, сплошные преимущества, да и только.

Но это, так сказать, глобальная перспектива. Для частных же, особенно далеких от IT, пользователей, IP-телефония является обычно в двух воплощениях: это "цыцкофон" в офисе на столе (плевать, как он работает, пусть IT-отдел разбирается, снял трубку - гудит, как обычный старый "панасоник") и skype, через который можно бесплатно поболтать с уехавшим в другую страну приятелем. На первый взгляд выглядит логично: разные задачи, разные средства решения: в первом случае это именно телефон, бизнес-инструмент, во втором - универсальное средство общения, совмещенное с сервисом мгновенных сообщений и оповещением о статусе доступности абонента.

Так? Да не так.


Когда мы звоним голосом, мы хотим звонить по телефону, желательно с нашей привычной мобилки и из общей записной книжки, а не "через компьютер", и кому угодно. И ради этого вполне можно пожертвовать статусами присутствия - если человек может снять трубку, он ее снимет, если не сможет - мы перезвоним позже или оставим сообщение на автоответчик (*). Нет, есть, конечно, люди, которым удобнее синхронизировать записную книжку скайпа с аутлуком и звонить "прямо оттуда" и т д, но я, например, к ним не отношусь. У меня вообще "в компьютере" записной книжки нет, она вся в телефоне.

В результате, у меня к VoIP-решению сформулировался очень простой набор требований, сводимый, в принципе, к простой фразе "хочу, чтобы все работало само и я об этом не думал":

Я хочу настроить его один раз, быстро и без возни, и пользоваться далее, как обычным телефоном, то есть вообще не думать о том, что это какое-то там VoIP, что нужно запускать какие-то программы, или того хуже - ходить к компьютеру, все должно работать прямо с моего мобильного телефона, из стандартных приложений (записная книжка, ответный звонок на SMS, журнал звонков, контекстные меню), а не каких-то фрингов-талконавтов. Оно должно работать с любой WiFi сетью, частной, публичной или офисной и не требовать при этом дополнительных настроек ни от меня, ни от администратора сети. Когда я кому-то звоню в общую телефонную сеть, тот, кому я звоню, должен видеть уже привычный ему за последние десять лет номер моей мобилки, а не чорт знает что. Входящие звонки я также должен стабильно получать на свой мобильный телефон, не задумываясь, на "обычный" или "интернет" номер мне звонят. Разумеется, платить я буду только в тех ситуациях, которые предполагают взаимодействие с "обычными" телефонными сетями.



Много хочу? Отнюдь. Ровно все это делает никакой вовсе не Skype, а штатный клиент VoIP, который есть в большинстве современных смартфонов от Nokia и даже в некоторых "тупофонах" на Series 40 (например, таком простом аппарате, как 6300i, или даже Vertu Signature S), а скоро будет совсем уже везде. Мне бы хотелось написать также и про смартфоны на платформе Windows Mobile, но к сожалению, там это совсем никак не стандартизовано: вроде как, поддержка VoIP есть на большинстве HTC, какая-то своя - на HP, настраиваемая только с декстопа и т.д, так что ниже речь пойдет про Nokia и Symbian. SIP, как ни странно, родственник не Skype, а той самой офисной IP-телефонии.
UPD: Вот тут есть конфигуратор встроенного SIP для WM6. У меня нет WM-смартфона, так что не было и возможности попробовать, за что купил, за то и продаю.

Идентификатор абонента SIP похож на адрес электронной почты (или jabber id), также состоит из имени и домена, разделяемых "@" собакой и иногда совпадает с почтовым адресом - для удобства.

Все сводится к двум простым шагам: a) выбору SIP-оператора и b) настройке.

Выбор оператора

Наиболее популярный в России оператор SIP называется SipNet. К его несомненным достоинствам относится то, что за него очень просто заплатить: платежи принимаются как любыми распространенными электронными деньгами, так и с помощью вездесущих платежных терминалов. Увы, на этом его преимущества и заканчиваются (ну, если не считать наличия пользовательского форума, где можно задавать вопросы, с которыми завернули из саппорта), начинаются недостатки.

Недостатком номер один являются проблемы с NAT traversal, доступом из сетей, осуществляющих трансляцию IP адресов. Не всех, но некоторых. Не проявляется при звонках в пределах SipNet и на городские телефоны, но стоит позвонить на IP-телефон, подключенный к Asterisk (это самое популярное на настоящий момент ПО для организации "программной АТС") - возможны непредсказуемые проблемы, отсутствие соединения или отсутствие слышимости. Проблемы решаемые, но условием задачи мы поставили отсутствие проблем с настройкой, а не их разрешимость. (**)

Недостатком номер два является отсутствие поддержки ENUM. Причем как регистрации, так и при звонках. Что такое ENUM? Это такой способ плавной миграции с "традиционной" телефонии на VoIP для входящих звонков: общедоступный справочник на основе DNS, в который можно внести соответствие свого "обычного" телефона SIP-телефону. Таким образом, если кто-то мне звонит на мой мобильник с SIP-телефона, и его SIP-оператор (в теории, и клиент может то же самое) поддерживает ENUM (а поддерживают почти все), то вместо того, чтобы выводить звонок в сотовую сеть и платить за это деньги, получает автоматически мой SIP-адрес и звонит мне через IP. В свою очередь, я или принимаю этот звонок бесплатно для себя, если мой мобильник зарегистрирован в SIP в настоящее время, или получаю его через переадресацию. В лучшем случае не платит никто, в худшем - немного плачу я. С точки зрения безопасности ENUM штука несколько сомнительная, как все, что основано на DNS, но уж очень удобная.

Недостатком номер три являются тарифы, но о них в сводной табличке ниже.

Недостатком номер четыре является невозможность купить номер для входящих звонков где-либо, кроме как в Москве.

Так что критерий выбора получается простой: не SipNet ;-). А кто? Вариантов много. TruPhone (у этих, кстати, своя еще более упрощенная программа настройки и клиент для iPhone), CallWithUs и другие. Gizmo, кстати, тоже SIP-оператор в глубине своей души.

А вот, собственно, табличка, почем все это обойдется - очень приблизительная, просто для ориентации:


Оператор/ Направление Москва (+7495/+7499) Петербург (+7812) Москва (мобильные) Петербург (мобильные) Россия Украина U.S.
Мегафон СПб (Тариф Единый) $0.36 $0.12 $0.36 $0.12 $0.70 $1.0 $3.0
Мегафон Москва (Тариф Единый) $0.10 $0.10 $0.10 $0.10 $0.10 $0.20 $0.70
SkypeOut $0.025 $0.025 $0.08 $0.08 $0.055-$0.08 $0.155-$0.215 $0.025
SIPNet $0.025 $0.05 $0.09 $0.09 $0.10 $0.12 $0.05
CallWithUs $0.015 $0.015 $0.035 $0.035 $0.015-$0.04 $0.08-$0.10 $0.01


Кроме того, у всехмногих VoIP операторов принята посекундная тарификация и никакой "платы за соединение". У CallWithUs как раз поминутка, но при таких тарифах это не страшно.
Я, честно сказать, до сих пор не переключился с SIPNet на CallWithUs, потому что уже занес сдуру в SIPNet денег и все никак их не могу потратить.

Настройка телефона

Куда уж проще! Обычно все это описано в руководстве, которое выдаст выбранный SIP-оператор. Нужно зайти в меню Tools -> Settings -> Connections -> SIP Settings, создать новый профиль, указать ему тип IETF, ввести имя сервера, realm, имя пользователя и пароль. Выглядит это примерно так:



Здесь мы вводим ту точку доступа WiFi, которая доступна в настоящий момент:




UPD: "Realm" в русских прошивках называется загадочным словом "Область". Ллео Каганов пытался там вводить "Москва, Чертаново" и удивлялся, что ничего не работает. Так делать не надо!

Обращаем внимание, что если все прошло, как нужно, статус меняется на registered и в правом верхнем углу появляется новая иконка с телефонной трубкой на фоне земного шара:



После этого указываем, что по умолчанию мы будем звонить через Internet, если этот сервис доступен:



Вот, собственно, и все. Не сложнее настройки электронной почты. Когда мы оказываемся в зоне действия другой (новой) WiFi сети, нам нужно зайти в меню "Internet telephone" (лучше вывести ее шорткат на десктоп active standby для удобства) и добавить эту сеть в качестве возможного транспорта для подключения. Один раз. В следующий она уже увидится и зацепится сама.

Что еще можно придумать? Если у вас в офисе тоже используется SIP, можно зарегистрировать мобилку в офисной сети WiFi и на офисной АТС и тогда ваш рабочий телефон всегда будет в кармане в курилке или на обеде. Ограничений на одновременную регистрацию в нескольких сетях нет.

Батарейку при правильных настройках WiFi (не поддавайтесь на уговоры форумных "гуру" выключить к чорту энергосбережение) потребляет вполне умеренно, то есть стандартной батарейки e71 или e90 хватает примерно на двое суток режима ожидания при постоянной регистрации SIP.

Стоит ли все это возни? Да, пожалуй. Мне удобно, что звонок через океан обходится мне не дороже, чем звонок в соседний дом. Так и должно быть, понимаете?

Против Skype

А вот Skype должен умереть. За полной его ненадобностью. Во-первых, как видим, цены на "приземление" (вывод звонков в общую телефонную сеть) у него довольно-таки унылые. Во-вторых, "Вы хотите говорить по телефону? Нет, по граммофону!". Я не любитель разговаривать "по граммофону", то есть с помощью каких-то дополнительных программ и устройств с неочевидной эргономикой. В-третьих, это самописный клиент, закрытый протокол и никто толком не знает, что он может натворить на вашем компьютере. Хваленая способность "проникать через firewall'ы", настроенные лопуховатыми админами в нормальной корпоративной среде скорее минус, чем плюс и сама по себе является достаточным основанием для блокировки; SIP же работает документированно и "цивилизованно". В-четвертых, каждый клиент Skype является потенциальным ретранслятором чужого трафика, что далеко не всех устраивает.

Видео

А бывает ли видео SIP? Конечно, бывает. Можно же подключить и настольный видеотелефон, и веб-камеру. Если оно вам надо. Мне как-то не очень пока.. Мобильник не поддерживает, хотя и мог бы, но я не расстроен по этому поводу.

Может ли все это работать через GPRS/EDGE?

Может. Но не будет. Точнее, EDGE по идее более чем достаточно для передачи голоса, но так как реальные сети работают часто довольно-таки скверно, Nokia решила во избежание вопросов "а почему мне нихрена не слышно?" отрубить эту возможность насовсем. Обидно, что и в специальной программе, которая управляет более тонкими настройками VoIP включить ее обратно нельзя. Через 3G - пожалуйста, сколько угодно.

WiMAX

Большим соблазном было бы звонить через WiMAX, который уже неплохо покрывает центр Москвы и Петербурга. Однако, увы, Nokia n810 WiMAX edition снята с производства и не поддерживается в сети Yota, а с HTC MAX 4g любопытный казус: даже если отвелчься от того факта, что время автономной работы от батареи при активном WiMAX соединении всего лишь считанные часы (при наличии USB-зарядки под рукой дома, в офисе и автомобиле это не очень большая проблема), удивительно, что в штатной "звонилке" от HTC, унаследованной от 3G-брата HTC Touch HD поддержка VoIP есть, а вот в "звонилке" от Yota - нет!


(*) Строго говоря, статус присутствия все-таки полезен иногда. И в SIP он теоретически заложен в возможности протокола, как и обмен сообщениями (т.н. SIMPLE). Но судя по тому, что никто им не пользуется и большинство клиентов не торопятся его поддерживать, не настолько эти функции востребованы.

(**) http://wiki.sipnet.ru/index.php/Nokia_%D0%B8_NAT . SIPnet'овцы объясняли подробно, почему у них есть эта проблема, а у остальных нет.


-----

Почему я решил написать этот опус? Ни Nokia ни CallWithUs не платят мне ни копейки (наоборот!). Причина, скорее, здесь. Мой сотовый оператор, которому я за долгую историю наших отношений несу уже не первый десяток тысяч долларов, окончательно потерял страх и совесть и в борьбе за лишние 15 рублей ARPU играет с абонентами в наперстки, незаметно подключая какие-то мудацкие платные услуги и постоянно снижая и без того сомнительное качество сервиса. А на меня где сядешь, там и слезешь. Вот вам мои 15 рублей, сраные уроды.



Лично я таким способом уменьшил свой ежемесячный счет за телефон в январе почти на две тысячи рублей. Ну не только таким, еще закэшировал заранее все карты города, чтобы не подкачивать их на ходу, и стараюсь пользоваться opera mini вместо штатного броузера и jabber'ом вместо SMS. Вот бы еще придумать, как за SMS сотовому оператору тоже не платить ;-)

Цельнотянуто отсюда:SIP: VoIP для консерватора, или как не кормить даромоедов.

Комментариев нет:

Отправить комментарий