По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Дружище! В этой статье мы пошагово разберем процесс установки и первичной настройки Kamailio SIP сервера. Установку будем производить на Ubuntu 18.04/16.04. Готов приблизиться к телефонии уровня энтерпрайз, построенной на open – source? :) А что есть Kamailio? Kamailio берет начало от SER/Open SER. Откровенно говоря, Kamailio это масштабируемая и гибкая SIP – платформа, созданная как для маленьких инсталляций, так и для больших проектов уровня сервис – провайдеров. Продукт написан на C и работает на Linux/Unix машинах. Kamailio используется в связке с медиа – сервером (RTP потоки и данные, например, Asterisk) и обеспечивает такие фичи как: До 5000 вызовов в секунду; Поддержка 300 000 абонентов (WOW!) при условии наличия всего 4ГБ оперативной памяти для сервера Kamailio! Легкая кластеризация и добавление новых нод в существующих кластер; Вообще, Kamailio может выполнять такие роли как: Registrar server - точка для регистрации клиентов (UAC) ; Location server - сервер определения местоположения. Сервер хранит адрес (сетевой) абонента и отдает его SIP – серверам по запросу; Proxy server - роль посредника для дальнейшего проксирования этих запросов далее по цепочке SIP - серверов; SIP Application server - он же SAS. Сервер приложений. Любых. Плечи в БД, API, XML и так далее – все здесь; Redirect server - информация клиенту (UAC) о его маршруте. Условно говоря, перенаправляет SIP – потоки по нужному пути; На этом прелести Kamailio не заканчиваются. Вот еще немного фич, на которые стоит обратить внимание: Поддержка NAT –T (NAT traversal) для SIP и RTP трафика; Балансировка нагрузки и отказоустойчивость с множеством сценариев/алгоритмов распределения трафика (на случай отказа); Лёгкий механизм настрйоки правил маршрутизации; Простота в реализации отказоустойчивой маршрутизации! Отвалился один маршрут – легко перенаправить трафик на другой; Поддержка IPv4 и IPv6; SCTP (Stream Control Transmission Protocol) с поддержкой многопоточности и так называемого multi – homing (синхронизация хостов по двум и более физическим каналам); Коммуникация по протоколам UDP, TCP, TLS и SCTP; Кодите на Java, Python, Lua, Perl? Ваши навыки точно пригодятся :) Приступаем Перед началом работ, у вас должны быть выполнены следующие требования: У вас есть сервер, с установленной на него Ubuntu 18.04/16.04; Вы установили MariaDB на этот сервер; Вы добавили репозитории Kamailio; Мы предполагаем, что 1 и 2 пункты вы выполнили :) Приступаем к третьему. Добавляем репозиторий Kamailio Если у вас установлена Ubuntu версии 16.04 вам нужно добавить репозиторий Kamailio, который будет использован при установке этой SIP – платформы. Для начала скачиваем и добавляем GPG ключ: wget -O- http://deb.kamailio.org/kamailiodebkey.gpg | sudo apt-key add - После этого нужно добавить строки в файл /etc/apt/sources.list. Работать мы будем с версией 5.1 Kamailio: $ sudo vim /etc/apt/sources.list.d/kamailio.list Добавляем данные: deb http://deb.kamailio.org/kamailio51 xenial main deb-src http://deb.kamailio.org/kamailio51 xenial main Установка Kamailio Как только мы сконфигурировали репозитории, приступаем к установке самого продукта. В том числе, мы установим некоторые MySQL модули: $ sudo apt install kamailio kamailio-mysql-modules Установим так же модуль для web – сокетов: $ sudo apt install kamailio-websocket-modules Ждем. Как только процессы, рождаемые этими командами будут выполнены, мы можем проверить приложение kamailio и увидеть его версию командой kamailio -V: $ which kamailio /usr/sbin/kamailio $ kamailio -V version: kamailio 5.1.2 (x86_64/linux) flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB poll method support: poll, epoll_lt, epoll_et, sigio_rt, select. id: unknown compiled with gcc 7.3.0 Огонь. После этого, правим файл /etc/kamailio/kamctlrc (откройте так же через vim) и проверяем, что параметр DBENGINE выставлен в значение MySQL. Раскомментируйте значение DBENGINE=MYSQL, удалив # перед строчкой Далее, создаем базу данных. Команда, указанная ниже, создаст пользователей и таблицы, необходимые для Kamailio: $ kamdbctl create INFO: creating database kamailio ... INFO: granting privileges to database kamailio ... INFO: creating standard tables into kamailio ... INFO: Core Kamailio tables succesfully created. Install presence related tables? (y/n): y INFO: creating presence tables into kamailio ... INFO: Presence tables succesfully created. Install tables for imc cpl siptrace domainpolicy carrierroute drouting userblacklist htable purple uac pipelimit mtree sca mohqueue rtpproxy rtpengine? (y/n): y INFO: creating extra tables into kamailio ... INFO: Extra tables succesfully created. Install tables for uid_auth_db uid_avp_db uid_domain uid_gflags uid_uri_db? (y/n): y INFO: creating uid tables into kamailio ... INFO: UID tables succesfully created. Во время инсталляции, вам нужно будет указать пароль для MySQL. Инсталлятор сделает следующих юзеров: kamailio - с паролем kamailiorw. Этот юзер имеет права на чтение и запись в БД; kamailioro - с паролем kamailioro. Этот юзер имеет права только на чтение; Почти готово. Теперь слегка поправим конфигурационный файл Kamailio /etc/kamailio/kamailio.cfg. Настроим SIP – домен: $ sudo vim /etc/kamailio/kamctlrc ## ваш SIP домен SIP_DOMAIN=wiki.merionet.ru В том же файле, включим некоторые нужные модули. Расположите следующий код в том же файле, прямо под строкой #!KAMAILIO: #!define WITH_MYSQL #!define WITH_AUTH #!define WITH_USRLOCDB #!define WITH_ACCDB Включаем Kamailio! $ sudo systemctl restart kamailio Командой systemctl status kamailio можно проверить текущий статус Kamailio. Если что-либо не работает, лог – файл приложения можно найти в /var/log/kamailio.log.
img
Nginx - это популярный HTTP-веб-сервер с открытым исходным кодом. Программное обеспечение использует масштабируемую управляемую событиями асинхронную архитектуру, которая обрабатывает запросы по одному за раз. Помимо веб-сервера, он также работает в качестве обратного прокси-сервера, почтового прокси, HTTP-кэша и балансировщика нагрузки. Nginx является частью стека LEMP, набора программного обеспечения с открытым исходным кодом, используемого для разработки веб-приложений и веб-сайтов. LEMP является популярной альтернативой традиционному стеку LAMP. Единственная разница между ними состоит в том, что первый использует Nginx, а второй использует Apache в качестве своего веб-сервера. Мы уже рассказывали как установить Nginx на Windows. В этом руководстве вы узнаете, как установить Nginx на Linux. Установка Nginx Рассмотрим установку Nginx для разных дистрибутивов Linux. Установка Nginx на CentOS 8 Перед любой установкой всегда обновляйте локальный репозиторий, чтобы убедиться, что вы загружаете последнюю версию программного обеспечения. Используйте команду: sudo yum update Вы можете проверить пакет Nginx, прежде чем добавить его в свою систему. Запросите просмотр метаданных RPM, включенных в каждый пакет RPM: sudo yum info nginx Затем установите Nginx на CentOS 8 с помощью команды: sudo yum install nginx Установка Nginx на CentOS 7 Пакеты Nginx доступны в репозиториях EPEL. Если у вас не установлено хранилище EPEL, наберите: sudo yum install epel-release Затем установите Nginx при помощи команды: sudo yum install nginx Если вы устанавливаете пакет из EPEL в первый раз, то yum может предложить вам импортировать ключ GPEL EPEL: Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Importing GPG key 0x352C64E5: Userid : "Fedora EPEL (7) " Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5 Package : epel-release-7-9.noarch (@extras) From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Is this ok [y/N]: Тут вам нужно нажать y и затем Enter. Установка Nginx на Ubuntu и Debian Пакеты Nginx доступны в репозиториях Ubuntu и Debian по умолчанию. Поэтому для установки сначала обновим список пакетов: sudo apt update А затем установим сам Nginx: sudo apt install nginx Запуск nginx Запуск nginx осуществляется следующей командой: sudo systemctl start nginx Чтобы включать службу при загрузке системы, используйте: sudo systemctl enable nginx Если вы проверите статус сервиса, то в выводе должно быть указано, что Nginx активен - active (running): sudo systemctl status nginx Остановить можно Nginx с помощью команды: sudo systemctl stop nginx Перезапустить Nginx: sudo systemctl restart nginx Перезагрузить файлы конфигурации, не останавливая службу: sudo systemctl reload nginx Настройка firewall Nginx включает в себя служебные файлы firewalld, которые указывают, что служба использует порты 80 (HTTP) и 443 (HTTPS) для веб-трафика. Поэтому вам необходимо открыть и включить эти порты, чтобы разрешить постоянный доступ. Настройка firewall в CentOS Откройте порт HTTP и HTTPS с помощью команд: sudo firewall-cmd --permanent --zone=public --add-service=http --add-service=https sudo firewall-cmd --reload sudo firewall-cmd --list-services --zone=public Настройка firewall в Ubuntu и Debian Если вы используете UFW (Uncomplicated Firewall) для управления брандмауэром, вам необходимо открыть порты, включив профиль Nginx Full, который включает правила для обоих портов: sudo ufw allow 'Nginx Full' Если вы используете nftables, то используйте следующую команду: nft add rule inet filter input tcp dport {80, 443} ct state new,established counter accept Проверка доступа Используйте netstat, чтобы вывести список всех открытых портов и убедиться, что вы успешно открыли 80 и 443: netstat -tulpn Найдите IP-адрес и скопируйте его. Чтобы увидеть IP-адрес вашего сервера, введите в терминале следующую команду: ip addr Затем откройте веб-браузер и вставьте IP-адрес (или имя домена) в строку URL. Откроется страница приветствия Nginx, подтверждающая, что вы успешно установили и настроили сервер. Настройка Nginx Вам не нужно настраивать Nginx после установки. Однако будет полезно знать расположение файлов конфигурации и корневого каталога Nginx на случай, если вам нужно изменить конфигурацию. Если вы хотите изменить файл глобальной конфигурации, вы должны открыть его в текстовом редакторе и применить изменения. Каталог конфигурации Nginx: /etc/nginx Корневой каталог Nginx: /usr/share/nginx/html Основной файл конфигурации: /etc/nginx/nginx.conf Файлы логов Nginx (access.log и error.log): /var/log/nginx/ Теперь вы можете установить корневую директорию вашего домена. Вы можете сделать это в любом месте, которое вы хотите. Наиболее распространенные места включают в себя: /home/user_name/site_name /var/www/site_name /var/www/html/site_name /opt/site_name
img
В данной статье пойдет речь о голосовых уведомлениях (Announcements) Модуль уведомлений используется для проигрывания голосовых записей абонентам и после проигрыша маршрутизации звонка на нужное направление. Важно не путать модуль Announcements (Голосовые уведомления) и System Recordings (Системные записи) . Модуль системных записей – это приложение в котором происходит загрузка или запись самих голосовых сообщений. Модуль Announcements просто позволяет проиграть одну из этих записей. Важно: для использования этого модуля предварительно записи нужно загрузить или создать с помощью модуля System Recordings. Модуль Announcements в FreePBX 13 находится по следующему пути: Applications – Announcements Для создания уведомления нужно нажать на кнопку «Add», что приведет к открытию интерфейса создания сообщений Далее опишем каждое поле в данном интерфейсе: Description – названиеописание самого уведомления, проще всегда писать какое-то название, которое описывает назначение голосового сообщения. Recording – необходимо выбрать запись, созданную с помощью интерфейса System Recordings Repeat – количество повторений данного голосового уведомления при нажатии на кнопку, важный момент: если необходима пауза между повторениями, требуется добавить паузу в саму запись Allow Skip – возможность пропускать уведомление с помощью нажатия на кнопку (полезно, если абонент очень часто звонит на данный номер) Return to IVR – возврат звонка на IVR, игнорируя выбранное направление звонка с помощью опции ниже. Звонок вернется на последний IVR в цепочке звонков. Don’t answer Channel – по дефолту значение стоит «No», т.е ответ на звонок и проигрывание сообщения. Если стоит «Yes», то голосовое уведомление будет отправлено абоненту как «Early Media», но многие провайдеры не поддерживают данную опцию. Destination after Playback – направление звонка после проигрыша сообщения. В данном конкретном примере указана ринг-группа, однако вариантов направлений масса На этом все, придумывайте собственные сценарии использования уведомлений, ведь спектр крайне широк!
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59