e164, ENUM, ENUMER...

8 мая 2018, 08:42

   

Как описано в https://ru.wikipedia.org/wiki/ENUM

ENUM (или Enum, от E.164 NUmber Mapping) — набор протоколов для объединения системы нумерации телефонов E.164 с системой адресации интернет, а DNS при использовании косвенного метода поиска получает записи NAPTR. Записи хранятся в базе данных DNS. Логика создания такой базы вытекала из базовой (условной) стоимости звонков по протоколам VoIP, стремящейся к нулю.

Функция поиска номера назначения при исходящем вызове на межгородские и международные соединения легко включала бы в себя запрос в единую базу номеров Enum, и, при наличии этого номера в базе, узел совершал бы вызов не по традиционным каналам PSTN, а напрямую к ресурсу, на котором зарегистрирован этот номер.

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


   
По сути, ENUM также не является функцией VoIP, являясь лишь удобным дополнением. Диалектика развития нулевой стоимости вызовов для проекта Enum привела его к угасанию

И только в последнее время появилось новое продолжение - ENUMER, та же самая функция идейно, но на новой технологической платформе - блокчейна Emercoin.

Зачем нужен ENUMER простому клиенту?

  • Публикуясь в ENUMER, вы даёте возможность миру позвонить себе бесплатно. Это полезно для организаций, кто принимает звонки, в особенности - владельцы 800-х номеров: служба заказов билетов, магазины, заводы и тп.;
  • Если у вас 800-ый (toll-free) номер - то это прямая экономия на расходах за принимаемые вызовы, которые оплачивает владелец номера;
  • ENUMER сокращает время установления соединения с примерно 2х sec PSTN до 0.3s ENUMER;
  • Повышенное качество сигнала и снижение задержек за счёт сокращения цепочки транскодинга;
  • Повышенное качество сигнала за счёт возможности использовать HD codec;
  • Возможность безопасного соединения за счёт SRTP/ZRTP;
  • Обход ограничения на кол-во линий E1/T1;

  • Как использовать ?

    В Asterisk есть команда dialplan ENUMLOOKUP. Применив которую осуществляется DNS запрос в базу блокчейна.
    Пример dialplan:

    exten => s,1,Set(DIAL_NUMBER=74951234567)                                                                ;набираемый номер
    exten => s,n,Set(ENUMER=${ENUMLOOKUP(${DIAL_NUMBER},sip,,1,enum.)})            ;выполняем поиск номера в блокчейне
    exten => s,n,NoOp(ENUMLOOKUP is ${ENUMER})                                                           ;выводим результат запроса
    exten => s,n,GotoIf($["${ENUMER}" != ""]?enum:pstn)                                                        ;если номер существует - звоним напрямую, если нет - звоним через свою обычную линию
    exten => s,n(enum),Dial(SIP/${ENUMER},30)                                                                     ;звоним напрямую
    exten => s,n,Hangup()
    exten => s,n(pstn),Dial(SIP/my_provider_trunk/${DIAL_NUMBER},30)                              ;звоним через свою обычную линию
    exten => s,n,Hangup()

    Для осуществления DNS запроса в клиенте emercoin встроен DNS сервер, который необходимо включить в emercoin.conf.

    Присоединяйтесь !
    Если Вы хотите зарегистрировать свой номер в ENUMER, то обратитесь к нам и мы поможем Вам сделать это абсолютно бесплатно.

    Для более детального понимания читать  >>> https://habr.com/company/emercoin/blog/337034/