Мало известный за пределами телеком-тусовки факт: когда вы звоните куда-нибудь со своего телефона, ваш номер, который отображается для входящего звонка – это просто произвольная текстовая строка, которую подставил ваш оператор сотовой связи. И если между двумя устройствами есть что-нибудь интересное, к примеру, машина с Asterisk или облако с Voximplant, то эту строку можно поменять на любую другую. Ситуация, когда при звонке вместо номера звонящего человека «рисуется» совсем другой номер называется маскировка телеком-данных (Phone Number Masking). И этот прием широко используется для решения ряда интересных задач. Читайте о них под катом.
Читать полностью »
Рубрика «Блог компании Voximplant» - 9
Как и зачем скрывать телефонные номера
2017-07-24 в 10:23, admin, рубрики: javascript, phone number masking, Блог компании Voximplant, Программирование, Разработка веб-сайтов, метки: phone number maskingЗвонки между браузерами: подводные камни WebRTC
2017-07-17 в 9:20, admin, рубрики: Google Chrome, javascript, voip, voximplant, WebRTC, Блог компании Voximplant, Программирование, Разработка веб-сайтовWebRTC, доступное в современных браузерах через JavaScript API, захватывает голос и видео, передает их по сети и воспроизводит в другом браузере. Еще оно умеет Peer-to-Peer между браузерами, Screen Sharing, передачу данных UDP-пакетами и подстройку битрейта под ширину канала. Очень хорошая технология. И Skype for Web на ней можно собрать, и превратить джойстик в световой меч для игры на ноутбуке, и позвонить с сотового на веб-страницу. Очень хорошая технология. Но сырая.
В Voximplant мы уже много лет развиваем множество SDK для звонков в наше облако: Android, iOS, Unity, React Native. Почетное место занимает Web SDK, использующий как раз WebRTC. С помощью него CRM принимают звонки «на веб страницу», работают кнопки «позвоните нам с веб сайта» и видео консультации с врачами. За годы мы набили множество шишек в использовании WebRTC, и под катом я кратко пройдусь по основным моментам, которые вас не обрадуют, если вы захотите использовать эту замечательную технологию.
Читать полностью »
GitLab CI: ветки больше не нужны
2017-07-11 в 9:03, admin, рубрики: continuous integration, Git, gitlab, Блог компании Voximplant, Программирование, Разработка веб-сайтов
Неделя GitLab CI на Хабре! В 2015 году мы уже писали о встроенной в GitLab системе Continuous Integration. GitLab часто ругают за предательство идеалов UNIX way и интеграцию слишком большого количества функций в одно приложение. Зато насколько удобно пользоваться этими функциями! За те полтора года, что прошли с момента нашей публикации, ребята сделали «Environments», добавили возможность сделать кнопку «раскатать на прод» и множество других улучшений. Под катом я расскажу о накопленном опыте, как небольшим командам автоматически собирать и выкладывать на прод/стейдж не только скрипты Voximplant для телефонии, но и другие проекты — сайты и сервисы.
Читать полностью »
Как повторить сервис anyroom.io в несколько строк JS и без бэкенда
2017-07-04 в 12:14, admin, рубрики: javascript, Блог компании Voximplant, Программирование, Разработка веб-сайтов, разработка мобильных приложений
Месяц назад на Hacker News в топ вышел пост про сервис AnyRoom: простенький бэкенд на Go, который позволяет создавать телефонные конференции. Рейтинг больше ста, обсуждения в комментах, Исходный код на github, подписки по 50 долларов в месяц — в общем, всё как у взрослых. После первого удивления «неужели это кому-то нужно?!?» я немного погуглил «голосовая конференция без регистраций и sms недорого», подивился дороговизне приложений и понял что таки да, нужно. А на Voximplant такую штуку можно собрать за полчаса и десяток строк JavaScript-кода. Кто хочет создать стартап и попиариться на Hacker News? Под катом рассказываю, как.
Читать полностью »
Как Pony Express удается вам доставлять
2017-06-26 в 9:16, admin, рубрики: javascript, Блог компании Voximplant, курьерская доставка, Программирование, Разработка систем связи, метки: курьерская доставкаЧего хочет любой клиент от логистического оператора? Конечно, чтобы всё происходило быстро, качественно и желательно, по максимуму, без его — клиента — непосредственного участия. Чтобы можно было заплатить свои кровные, а дальше оно уж как-нибудь само. Но в некоторых случаях, чтобы «оно само», клиенту тоже нужно немного пошевелиться. Как быть компании, если он не торопится? Под катом — опыт Pony Express.
Шел 2017 год. Где UDP фрагментация?
2017-06-19 в 10:11, admin, рубрики: sip, voip, voximplant, Блог компании Voximplant, Программирование, Разработка систем передачи данных, Разработка систем связи, системное программированиеVoIP — это термин-зонтик. Набор технологий, протоколов и просто buzzword'ов, которые относятся к передаче голоса (и видео!) по компьютерным сетям (локальным или интернет) вместо телефонных. И да, большая часть телеком-провайдеров всё ещё использует для передачи голоса собственные сети вместо интернет. С недешевыми коробочками, куда втыкаются T1 и E1 провода.
Чаще всего, для айтишников, не работающих в телекоме, VoIP – это связка RTP/RTCP для передачи голоса/видео плюс SIP – для договориться, кому и как передавать. Именно это связка позволяет подключить офисные «SIP телефоны» к Bitrix24 или Asterisk. Оба протокола могут работать как по TCP, так и по UDP. С передачей голоса по RTP вопросов нет: за редчайшим исключением используется UDP протокол, а кодеки компенсируют потерянные пакеты, так что собеседник почти не «квакает» даже не на самом лучшем канале связи. А вот с SIP история более печальная.
Почему не работает Tree Shaking и как с этим жить
2017-06-05 в 11:34, admin, рубрики: javascript, rollup, voximplant, webpack, Блог компании Voximplant, Программирование, Разработка веб-сайтов, разработка мобильных приложенийВ нашей предыдущей статье про голосовых ботов для Рокетбанка читатели возмутились, что в 2017 году примеры JavaScript для облака Voximplant написаны на ES5. У нас в облаке сильно модифицированный SpiderMonkey, специально обученный не течь и не падать. Тысячи одновременных звонков с параллельно выполняемым JavaScript как бы намекают, что нода – для нас не вариант. Тем не менее, никто не мешает использовать транспайлеры, компилировать ES2017/TypeScript/Elm/Whatever в старый добрый JavaScript и загружать результаты компиляции с помощью Continuous Integration. При таком раскладе возникает соблазн использовать все последние достижения из npmjs, собирая весь код в один ES5 бандл. И вот тут нас ждет засада: даже один метод из lodash дает на выходе бандл размером в полмегабайта. И не похоже, чтобы рекламируемый последние пару лет tree shaking работал.
Откуда Рокетбанк знает ваше имя
2017-05-29 в 9:20, admin, рубрики: Блог компании Voximplant, звонки из браузера, Программирование, Разработка веб-сайтов, разработка мобильных приложений, финтехТратить время на поиск ручками по базе или, не приведи господи, на набивку номера из CRM в телефон – это роскошь в прямом смысле слова. Когда Рокетбанк стал набирать популярность, что сопровождалось увеличением количества заявок на новые карты, банку нужно было ускорить обработку входящих обращений. Первым делом они решили научить CRM-систему звонить. Как им удалось обуздать свою CRM, читайте под катом.
Читать полностью »
Как собрать голосового бота: распознавание речи, синтез речи и NLP в несколько строк кода
2017-05-24 в 11:34, admin, рубрики: api.ai, javascript, voip, voximplant, Блог компании Voximplant, Программирование, Разработка веб-сайтов, разработка мобильных приложенийМы регулярно пишем про голосовых ботов и автоматику входящих-исходящих звонков. Подтверждение доставки, заказов, угадывание и автоответ клиенту пока соединяемся с компанией — вся вот эта история. В комментариях мне резонно заметили, что про ботов я говорю много, а показываю мало. Это легко исправить! Хакатон S7 в Парке Горького в самом разгаре, 50 команд фигачат прототипы разного интересного — а у меня есть возможность попробовать уложиться в как можно меньшее количество строк кода. Минимализм в примерах — это круто.
Кому нужны звонки, когда есть чаты и боты?
2017-05-16 в 9:08, admin, рубрики: voip, voximplant, Блог компании Voximplant, Программирование, Разработка веб-сайтов, Разработка под e-commerce, Разработка систем связи, телефонияЕсть у компаний добрая традиция: рассказывать о своих «профильных» технологиях. Как они всем нужны, развиваются и что без них никуда. Когда два года назад я пришел в Voximplant рассказывать про автоматику звонков, про звонки я знал только то, что они есть. Ну и еще страшное слово «АТС», которое обычно какая-нибудь циска в углу.
Прошло два года, в течении которых мессенджеры должно были вот-вот убить звонки. К мессенджерам присоединились чат-боты, биг дата, дип лёрнинг. У звонков вообще не было шансов. Но они почему-то не умирали. От слова «совсем». Миллионы звонков в месяц исправно удваивались, отдел продаж не вылезал из встреч, а ко мне в фейсбук, скайп и телеграм постоянно заходили разработчики, которым надо автоматизировать звонки.
Почему так? Я не знаю. Но есть ряд наблюдений, которыми мне интересно с вами поделиться и почитать комментарии.