Телефония без АТС, оператора и Siri

АТС- нетТелефонные номера- зачем?

В одном форуме был задан вопрос- «Как узнать IP адрес человека?». Этот простой вопрос ставит в тупик большинство ИТ специалистов. Вот другой вопрос- «Как узнать номер телефона человека?». Он уже не вызывает долгих раздумий. На последний вопрос можно дать кучу ответов.Но если сравнить его с первым вопросом, становится понятно, что оба вопроса не совсем корректные. В обоих случаях IP адрес и номер телефона- это адреса (указатели, ссылки) на терминальное устройство- компьютер или телефон. Они могут быть связаны с человеком, а могут и нет. Эта связь очень неустойчивая.

Вы не можете быть уверены, какой номер телефона у вас- рабочий, домашний, мобильный. Номер телефона может измениться, человек может сменить работу, переехать в другой город. У Google Voice есть хороший ролик, поясняющий это. С IP адресами происходит тоже самое, только быстрее. Поэтому вместо IP адресов давно уже стали использовать систему доменных имен, которая раньше по аналогии с телефонными справочниками называлась «yellow pages». Поэтому вам теперь не надо уточнять адрес и писать письмо на ящик homer@10.10.1.25, а можно просто писать на homer@burns-a-plant.com, или вместо того, чтобы заходить на узел 139.81.153.100, можно указать www.burns-a-plant.com.

Что то подобное используется в номерах телефонов для рекламы — когда номера пишутся буквами, как 1-800-NUC-LEAR. По этому поводу есть хорошая статья Артемия Лебедева.

Как IP адреса, так и номера телефонов являются не физическими адресами, а логическими и выдаются пулами (или зонами в телефонии) провайдерам и телефонным компаниям. Поэтому и те и другие обычно являются собственностью Интернет провайдера или телефонной компании.

Сопоставление же с человеком делается с использованием «yellow pages»: DNS в Интернете и записей в телефонной книге компании.

Когда вы пишете письмо в почтовой программе, вы просто указываете адрес homer@burns-a-plant.com и отправляете письмо. Если бы эта программа работала как телефон, вам бы пришлось сделать так много всего:

  1. узнать, в локальной ли сети находится homer

  2. узнать его нынешний IP адрес

  3. проложить маршрут до homer через серию серверов, если она находится за пределами локальной сети

  4. много чего еще

Резонно возражение- этим занимается ИТ специалисты. Теперь сравним, что заставляют делать телефонные компании, чтобы позвонить homer:

  1. Узнать, не на атомной станции ли он. Если да, узнать его добавочный номер

  2. Узнать, не изменился ли у нее отдел или департамент, найти в справочнике его номер

  3. Если он далеко, узнать, как выйти в город, набрать межгород (желательно через оператора, где тариф дешевле, если их несколько)

  4. Если не отвечает, искать ее мобильный, и много чего еще придется сделать, чтобы наконец дозвониться

Unified communucations

Вопрос- а почему телефонная компания не берет на себя труд искать где же ты сейчас, homer? Этот процесс один в один такой же, как отправка электронного письма. Почему бы его не автоматизировать? Может быть, телефонной компании выгодно, когда мы обзваниваем полчаса ее коллег, чтобы только узнать, как ей позвонить? Некоторые телефонные компании умудряются телефонные справочники делать платными. Примерно в 2000 году стало понятно, что движения навстречу со стороны телефонных компаний не дождаться, и для корпоративного рынка стали предлагаться системы unified communications (UC), позволяющие «достать» любого сотрудника, где бы он не находился одним звонком, направляя вызов на телефон или другое устройство. Одной из таких систем является Google Voice.

Очевидный вариант UC- Mobile Number Portability, MNP. Обеспечение переносимости мобильного номера с июня 2009 действует в Татарстане, эта услуга еще называется пожизненным номером телефона.

Presence

Есть ли различие между сопоставлением доменного имени с IP адресом и сопоставлением unified communication телефонного имени (номера) человека с номером телефона? Оно есть, и заключается в том, что называется presence (присутствие).

В случае с телефонами возникает техническая сложность с определением того, готов ли человек ответить на звонок. Для этого он должен вручную устанавливать статус присутствия. В телефонии часто это заменяется переносом звонков на другой номер или ящик голосовой почты, поднятием трубки или отключением сотового телефона, так что единственным способом узнать о доступности остается тайм-аут, в течение которого абонент не поднимает трубку, и звонок переадресуется, например, на автоответчик, голосовую почту или другой номер телефона. Причина этого кроется в том, что человек не может заниматься тем, чтобы отмечать статусы на всех телефонах, которые находятся возле него. Хотя технически это возможно, используя геолокационные сервисы. Тогда звонок вечером скорее всего может быть переадресован в moes@springfield.com.

Геотеги

Почему бы не использовать мобильный телефон с функцией геолокации для этого? Одна из проблем, связанная с использованием мобильных телефонов заключается в том, что его владелец почти всегда остается на связи, даже если он этого не хочет.

UX

Можно ли перенести DNS в область телефонов? Конечно, можно, но нужно ли? Набирать на телефоне адрес не очень удобно- в алфавите много букв. Набирать цифры быстрее и легче.

Сейчас много усилий прикладывается в областях usability и UX — user experience. Есть и очевидные вещи- большая часть пользователей предпочитает в интерфейсах пользователей выбирать из коротких списков. Наглядно это видно в том, как построены интерфейсы в ОС для телефонов- Андроид, iOS, Windows Phone 7: большинство интерфейсов представляют серию прокручиваемых списков, где пользователь может за один раз делать один выбор.

Это не новость- раньше были мастера (волшебники), которые разбивали интерфейс на серию простых экранов с выбором из списков или с галочками, до этого- ниспадающие меню.

Исключением из этого является ribbon (Microsoft fluent) интерфейс, основанный на запоминании «местности» и который уместен для больших экранов в часто используемых программах- хотя в нем опять же нет ничего нового, это давно использовалось в X интерфейсах. Все таки, перенос практики «богатого» интерфейса в телефонной книге на мобильный малооправданно, и здесь встает сложная технически задача разбиения телефонного справочника на серию связанных более коротких списков.

Первое, что приходит в голову:

  1. использовать голосовые команды;

  2. использовать акселерометр для каких то манипуляций;

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

Контексты

Очень помогла бы возможность предсказания того, что пользователь хочет, используя анализ окружающего контекста, сведения о котором поступает с разных датчиков, встроенных в телефон: микрофона, камеры, акселерометра, приемника спутниковой навигации, компаса и других. Одна из таких технологий — MotionX, разрабатываемая компанией Fullpower. Fullpower основана Филипом Каном, изобретателем камеры для мобильных, более известным по созданным им Turbo Pascal и корпорации Borland. Также можно анализировать присутствие других людей.

Изучение окружения приводит к появлению новых применений. Действительно, почему телефон должен ограничиваться предоставлением голосовой связи? Если подумать, голосовые коммуникации устанавливаются не только с целью поболтать и обменяться информацией (что во многом теряет смысл, так как на все вопросы можно дать универсальный ответ- «ты гуглил? Погугли в гугле и выгуглишь») но и для того, чтобы побудить респондента оказать какую то иную услугу. Позвонив в какую нибудь компанию, чтобы заказать какой то товар или услугу, мы часто попадаем в голосовое меню. То есть с той стороны необязательно должен быть человек. Следующий шаг- это понимание того, что необязательно вообще говорить, если вы хотите получить какую то простую услугу- достаточно факта звонка. Во всяком случае вам перезвонят, но вы сможете заказать такси, доставку воды и пиццы, если ваш коммуникатор предоставит нужную информацию компании.

Big Red Button

Еще один шаг к обобщению- звонить вообще не надо. У вас может быть кнопка в телефоне «Такси», и другие кнопки. Передача вашего желания может делаться без телефонии, по другим каналам связи- NFC, BlueTooth, WiFi, ИК.

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

Для более сложных случаев, когда программа, установленная у клиента, должна делать какие то нетривиальные расчеты, было бы полезно использование более гибкого инструментария для создания программ с открытыми интерфейсами.

Суть этого заключается в следующем. Предположим, мы пытаемся обогнуть земной шар за 80 дней. У нас на телефоне установлено какое то хитрое приложение, которое занимается стыковкой расписаний самолетов, автобусов, заказывает места в гостинице и билеты на поезда, выданное банком на накопительную карту. То есть целью этого приложения является оптимизировать маршрут с точки зрения удобства, быстроты, экономии и накопления скидок. С самого начала маршрута мы проложили маршрут- но в пути возникают какие то недоразумения, и в план каждый день приходится вносить изменения. Для этого приложение должно искать вокруг нас сервисы, узнавать цены, анализировать, сколько скидок мы получим, делать заказы и отменять те заказы, которыми мы не смогли воспользоваться.

BPEL

Развертывание такого приложения — задача громоздкая, если использовать современные технологии, как BPEL4WS, BPWS4J. Языки композиции бизнес-приложений (web service composition languages) реализуются обычно на серверной стороне и базируются в свою очередь на языке описание сервисов (WSDL) и реестрах сервисов (UDDI). Было бы очень заманчиво иметь вместо нагромождения технологий предоставить разработчику язык высокого уровня, который бы мог делать позднее связывание с найденными удаленными (находящимися в сети на других телефонах и серверах) объектами, используя, например, механизм рандеву, как в Аде, или активных объектов, как в Zonnon или Oberon. Этот язык может быть и проблемно-ориентированным, но от него требуется скрывать от разработчика прокси классы, транслирующие RPC вызовы в сеть- не хотелось бы все это нагромождение видеть в API телефона.

Что в осадке

WiFi пиринг в новом Андроиде- хороший знак. Как именно будет выглядеть BRB — это пока ежик в тумане.

Comments

comments

Powered by Facebook Comments

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *