По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
OpenNMS - бесплатный, расширяемый, легко масштабируемый продукт уровня предприятия с открытым исходным кодом. Он проверяет состояние удалённых устройств и собирает информацию об этих хостах при помощи SNMP и JMX (Java Management Extensions). Система основана на Java поэтому поддерживает все популярные операционные системы. OpenNMS работает под управлением таких операционных систем, как Linux и Windows и поставляется с веб-консолью для упрощения добавления сетевых устройств и приложений в систему. Вся информация, введенная в систему, хранится в базе данных Postgres. Системные требования OpenNMS Debian 9.0 и выше, Ubuntu 16.04 LTS и выше; Пакет OpenJDK 11 Development Kit; 2 CPU, 2 Гб RAM, 20 Гб жесткого диска. В этом материале покажем, как устанавливать свежую версию системы мониторинга OpenNMS Horizont на Debian и Ubuntu. Шаг 1. Развертывание Java-OpenJDK 11 на Ubuntu Для начала скачает свежую версию OpenJDK Java 11 при помощи следующей команды: $ sudo apt-get install openjdk-11-jdk Затем убеждаемся, что установлена самая последняя версия Java $ java -version После этого устанавливаем переменную среду для всех пользователей при загрузке. Чтобы сделать это нужно добавить в файл /etc/profile следующие строки. export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64 Сохраняем файл и выполняем следующую команду, чтобы система заново прочитала файл /etc/profile. $ source /etc/profile Шаг 2. Установка OpenNMS Horizon на Ubuntu Чтобы развернуть OpenNMS Horizon, в файл /etc/apt/sources.list.d/opennms.list следует добавить репозиторий и GPG ключ, а затем обновить кеш apt командой ниже: $ cat EOF | sudo tee /etc/apt/sources.list.d/opennms.list deb https://debian.opennms.org stable main deb-src https://debian.opennms.org stable main EOF $ wget -O - https://debian.opennms.org/OPENNMS-GPG-KEY | apt-key add - $ apt update Далее скачиваем мета-пакеты OpenNMS (opennms-core и opennms-webapp-jetty) со всеми зависимостями (jicmp6 и jicmp, postgresql и postgresql-libs). $ sudo apt install opennms Затем с помощью утилиты tree, проверяем, что мета-пакеты OpenNMS установлены в директорию /usr/share/opennms $ cd /usr/share/opennms $ tree -L 1 На заметку: Чтобы предотвратить внеплановые обновления, после установки рекомендуется отключить репозиторий OpenNMS $ sudo apt-mark hold libopennms-java libopennmsdeps-java opennms-common opennms-db Шаг 3. Инициализация и установка PostgreSQL В Debian и Ubuntu сразу после установки пакетов программа установки определяет базу данных Postgres, запускает службу и добавляет его в автозапуск при старте системы. Чтобы проверить, работает ли служба, выполните указанную ниже команду: $ sudo systemctl status postgresql Далее делаем вход под пользователем postgre и создаём пользователя opennms и задаем пароль. $ sudo su - postgres $ createuser -P opennms $ createdb -O opennms opennms А теперь в целях безопасности назначим пользователю postgres пароль: $ psql -c "ALTER USER postgres WITH PASSWORD 'YOUR-POSTGRES-PASSWORD';" На данном этапе следует настроить доступ OpenNMS Horizon к базе данных. Для этого редактируем файл конфигурации. $ sudo vim /usr/share/opennms/etc/opennms-datasources.xml Найдите в данном файле указанные ниже разделы и введите учетные данные jdbc-data-source name="opennms" database-name="opennms" class-name="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/opennms" user-name="opennms-db-username" password="opennms-db-user-passwd" / jdbc-data-source name="opennms-admin" database-name="template1" class-name="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/template1" user-name="postgres" password="postgres-super-user-passwd" / Сохраните изменения и закройте файл. Шаг 4. Инициализация и запуск OpenNMS Horizon Чтобы инициализировать OpenNMS, необходимо интегрировать его с Java. Итак, для обнаружения среды Java и добавления её в файл конфигурации /usr/share/opennms/etc/java.conf выполните следующую команду: $ sudo /usr/share/opennms/bin/runjava -s Затем, следует проинициализировать базу данных и найти библиотеки, указанные в файле /opt/opennms/etc/libraries.properties, с помощью следующей команды: $ sudo /usr/share/opennms/bin/install -dis После этого запускаем службу OpenNMS используя systemd, затем добавляем её в автозапуск и проверяем статус следующими командами: $ sudo systemctl start opennms $ sudo systemctl enable opennms $ sudo systemctl status opennms Если в системе установлен межсетевой экран ufw, следует открыть порт 8980 $ sudo ufw allow 8980/tcp $ sudo ufw reload Шаг 5. Подключение к веб-консоли OpenNMS Теперь запускаем любимый браузер и открываем страницу веб-консоли OpenNMS. http://SERVER_IP:8980/opennms или http://FDQN-OF-YOUR-SERVER:8980/opennms Далее для входа в систему вводим логин и пароль по умолчанию - admin/admin После этого вы попадете в панели администратора В целях безопасности следует поменять предустановленный пароль администратора. Для этого переходим на панели меню выбираем "admin → Change Password", в разделе "User account self-service" нажимаем "Change Password". Вводим текущий пароль, новый пароль и подтверждаем его, затем нажимаем "Submit". После этого выходим из системы и заходим в нее с новым паролем. А теперь, время изучать, детальные настройки системы и тонкости управления OpenNMS Horizon через веб-интерфейс, добавлять узлы и приложения, согласно Руководству Администратора OpenNMS.
img
Управление кэш-памятью определяет поведение кэширования для веб-сайта, давая браузерам понять, как часто следует обновлять локально хранящиеся ресурсы. Что такое cache-control? Cache-control – это HTTP-заголовок, который определяет поведение браузера при кэшировании. Проще говоря, когда кто-то посещает веб-сайт, то его браузер сохраняет определенные ресурсы, такие как изображения и данные веб-сайта, в хранилище, которое называется кэш. Когда пользователь вновь посещает этот веб-сайт, то cache-control диктует правила, которые определяют, будут ли эти ресурсы загружены из локального кэша данного пользователя, или браузер должен отправить запрос на сервер для получения новых ресурсов. Для более глубокого понимания, что такое cache-control необходимо базовое понимание того, что такое кэширование в браузере и что такое HTTP-заголовки. Что такое кэширование в браузере? Как уже было описано выше, кэширование в браузере – это когда веб-браузер сохраняет ресурсы веб-сайта, чтобы не запрашивать их вновь с сервера. Например, фоновое изображение веб-сайта может быть сохранено локально в кэше, чтобы при повторном посещении пользователем данного веб-сайта изображение загружалось из локальных файлов пользователя, и тем самым страница загружалась бы быстрее. Браузеры хранят эти ресурсы в течение определенного периода времени, известного как время жизни информации (TTL - Time To Live). Если пользователь запросит кэшированный ресурс после истечения TTL, то браузеру придется снова обратиться к серверу, чтобы загрузить новую копию ресурса. Как браузеры и веб-серверы узнают TTL для каждого ресурса? Вот здесь в игру вступают HTTP-заголовки. Что такое HTTP-заголовки? Протокол передачи гипертекста (HTTP - Hypertext Transfer Protocol) представляет собой синтаксис для обмена данными во Всемирной паутине, и этот обмен данными состоит из запросов от клиентов к серверам и ответов от серверов к клиентам. Каждый из HTTP-запросов и ответов содержит ряд пар «ключ-значение», которые называют заголовками. Заголовки содержат большое количество важной информации о каждом сообщении. Например, заголовок запроса обычно содержит: Информацию о том, какой ресурс запрашивается Информацию о том, какой браузер использует клиент Информацию о том, какие форматы данных примет клиент Заголовки ответов обычно содержат информацию о: Успешности выполнения запроса Языке и формате любых ресурсов в теле ответа Заголовок cache-control может использоваться как в HTTP-запросах, так и в HTTP-ответах. Что находится внутри заголовка cache-control? Заголовки состоят из пар «ключ-значение», разделенных двоеточием. Для cache-control «ключ», или часть слева от двоеточия, - это всегда «cache-control». «Значение» - это то, что находится справа от двоеточия. Значений для cache-control может быть несколько, или оно может быть одно. Если их несколько, то они разделяются запятыми. Эти значения называются директивами, и они определяют, кто может кэшировать ресурс, а также как долго эти ресурсы могут быть кэшированными, прежде чем их необходимо будет обновить. Давайте рассмотрим несколько наиболее распространенных директив cache-control: cache-control: private Ответ с директивой private может быть кэширован только клиентом, но никак не посредником, таким как CDN или прокси-сервером. Часто сюда относятся ресурсы, которые содержат личные данные, например, веб-сайт, отображающий личную информацию пользователя. cache-control: public Здесь наоборот, директива public говорит о том, что ресурс может хранится в любом кэше. cache-control: no-store Ответ с директивой no-store нельзя кэшировать нигде и никогда. Это означает, что при каждом запросе пользователем этих данных, требуется отправить запрос на исходный сервер для их получения. Эта директива, как правило, используется для ресурсов, содержащих конфиденциальные данные, например, информацию о банковском счете. cache-control: no-cache Эта директива означает, что кэшированные версии запрошенного ресурса нельзя использовать без предварительной проверки наличия обновленной версии. Обычно это делается с помощью ETag. ETag – это еще один HTTP-заголовок, который содержит маркер, уникальный для версии ресурса на момент его запроса. Этот маркер меняется на исходном сервере при каждом обновлении ресурса. Когда пользователь возвращается на страницу с ресурсом под директивой no-cache, клиенту всегда придется подключаться к исходному серверу и сравнивать ETag на кэшированном ресурсе с ETag на сервере. Если они совпадают, то кэшированный ресурс предоставляется пользователю. В противном случае, это означает, что ресурс был обновлен, и клиенту необходимо загрузить обновленную версию, чтобы иметь возможность предоставить его пользователю. Этот процесс гарантирует, что пользователь всегда будет получать самую последнюю версию ресурса без ненужных постоянных загрузок. cache-control: max-age Эта директива определяет время жизни информации, или, иными словами, сколько секунд ресурс может находиться в кэше после его загрузки. Например, если max-age установлен на 1800, то это значит, что в течение 1800 секунд (30 минут) после того, как ресурс был впервые запрошен с сервера, пользователю будет предоставляться кэшированная версия этого ресурса при последующих запросах. Если пользователь запросит этот ресурс снова по истечении этих 30 минут, то клиенту необходимо будет запросить новую копию с исходного сервера. Директива s-maxage предназначена специально для общих кэшей, таких как CDN. Она определяет, как долго эти общие кэши могут продолжать обслуживать ресурс из кэша. Эта директива отменяет действие директивы max-age для некоторых клиентов. Почему cache-control так важен? Кэширование в браузере – это отличный способ сохранить ресурсы и, тем самым, улучшить процесс взаимодействия с пользователем в Интернете, но без cache-control этот процесс не был бы столь надежным. Все ресурсы на всех сайтах будут использовать одни и те же правила кэширования, а это значит, что конфиденциальная информация будет кэшироваться также, как и общедоступная информация, а ресурсы, которые часто обновляются, будут кэшироваться на то же время, что и ресурсы, которые редко обновляются. Cache-control добавляет гибкости, которая делает кэширование в браузере действительно полезным, позволяя разработчикам определять, как будет кэшироваться каждый ресурс. Этот заголовок также позволяет разработчикам устанавливать определенные правила для посредников, что является причиной, по которой сайты, которые используют CDN, как правило, работают лучше, чем сайты, которые этого не делают.
img
”Здравствуйте, вы позвонили в компанию "Company Name", для соединения с отделом продаж – нажмите 1, если вы являетесь партнером нашей компании – нажмите 2, по вопросам технической поддержки – 3. Для соединения с оператором – оставайтесь на линии”. Наверное, сейчас уже ни одна компания не осталась без подобного сценария обработки входящих звонков. Короткие гудки в трубке, прежде чем Вам ответит сотрудник компании, в которую Вы пытаетесь дозвониться – теперь уже большая редкость. Всё это стало возможным с появлением цифровых АТС, а функционал, пример которого был приведен выше, называется IVR (Interactive Voice Response) в русской литературе – голосовое меню. В сегодняшней статье, мы рассмотрим функционал IVR на примере IP-АТС Asterisk и FreePBX 13. Основной функцией IVR – является маршрутизация входящих вызовов между департаментами компании, посредством обработки сигналов тонального набора, осуществляемых дозвонившимся клиентом, на своем телефоне. Тем самым, IVR позволяет распределить нагрузку на операторов кол-центра, т.к клиенту предоставляется возможность соединиться с интересующим его отделом и получить всю необходимую информацию, минуя первую линию операторов. Помимо данной функции, IVR может использоваться в рекламных и маркетинговых акциях, в целях получения статистической информации и даже в организации автономных голосовых порталов с распознаванием речи, где вообще не требуется присутствие оператора. В больших кол-центрах к организации IVR подходят серьёзно, учитываются все факторы вплоть до психологического. От того насколько грамотно подобран голос диктора, музыкальное сопровождение и информация сообщения, зависит расположение клиента, который дозвонился в компанию и его лояльность. Информация, которая сообщается в меню IVR должна быть изложена лаконично, дружелюбно и емко. Поэтому в первую очередь – необходимо написать текст IVR и его сценарий. Общая рекомендация – ограничиться несколькими опциями, т.е не стоит задавать слишком большое меню с 6 и более опциями, поскольку в нем попросту будет сложно ориентироваться. Пошаговое видео Настройка Перейдём к FreePBX 13 и рассмотрим какие варианты предлагает его функционал при настройке IVR. В первую очередь, с главной страницы перейдем по следующему пути Applications -> IVR. Нам предложат создать новое голосовое меню: Перед нами откроется страница добавления нового голосового меню IVR, нажимаем Add IVR Пройдёмся по основным пунктам: IVR Name – Имя голосового меню, тут все просто IVR Description – Опционально, можно добавить описание данного IVR, например IVR_Holiday – меню, которое будет слышать дозвонившийся по праздникам Announcement – Голосовое сообщение, которое будет слышать дозвонившийся. Именно данное сообщение будет направлять абонента (“нажмите 1, нажмите 2 и так далее”). Добавляется через System Recordings Enable Direct Dial – Данная опция позволяет абоненту набрать внутренний номер сотрудника (если он его знает) и напрямую соединиться с ним, не дожидаясь, пока это предложит IVR Timeout – Время, за которое абоненту предлагают выбрать опцию после сообщения. Если данное время истекло, то IVR отработает по timeout rules, которые описываются ниже Invalid Retries – Количество попыток, которые есть у абонента, чтобы ввести правильный номер опции, прежде чем абонента отправят на Invalid Destination Invalid Retry Recording – Сообщение, которое услышит абонент, после того как повторно введет неверный номер опции. Добавляется через System Recordings Append Announcement to Invalid – Опция, определяющая проигрывать ли основное сообщение IVR пользователю, который исчерпал все попытки ввода Return on Invalid – Данная опция контролирует процесс возврата звонка пользователя, исчерпавшего попытки ввода, в основное меню IVR из, так называемого под-меню (sub-IVR). Работает только если настроено данный IVR был настроен как sub-IVR для основного голосового меню Invalid Recording – Сообщение, которое будет проигрываться абоненту, после того как он исчерпает все попытки Invalid Retries. Добавляется через System Recordings Invalid Destination - Если пользователь исчерпал все попытки ввода, то он будет отправлен по данному пути. Это может быть, например, номер операторов или любое другое направление настроенное на АТС Timeout Retries – Как много раз пользователь может ждать времени, указанного в Timeout Timeout Retry Recording - Сообщение, которое услышит пользователь, достигший Timeout. Добавляется через System Recordings Append Announcement on Timeout - Опция, определяющая проигрывать ли основное сообщение IVR пользователю, который достиг Timeout. Добавляется через System Recordings Return on Timeout - Данная опция контролирует процесс возврата звонка пользователя, достигшего Timeout, в основное меню IVR из, так называемого под-меню (sub-IVR). Работает только если настроено данный IVR был настроен как sub-IVR для основного голосового меню Timeout Recording - Сообщение, которое услышит пользователь, исчерпавший Timeout Retries. Добавляется через System Recordings Timeout Destination - Если пользователь исчерпал все Timeout Retries, то он будет отправлен по данному пути. Return to IVR after VM – Опция, позволяющая пользователю вернуться в IVR после того как он был направлен на голосовую почту IVR Entries - Самая важная вкладка. Здесь мы настраиваем соответствие цифр тонального набора и направления звонка, т.е ту самую маршрутизацию вызова. На примере ниже, если абонент введет цифру 1, то попадет на группу обзвона ( Ring Group ) технической поддержки
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59