По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Все знают про опцию Follow Me на FreePBX, которая позволяет перенаправить входящий звонок на другое направление, если первоначальный номер, на который звонили, не ответил на звонок в течение какого-то промежутка времени. Например, у нас есть сотрудник с внутренним номером (Extension) 4054, на него приходит звонок, и, если он не берёт трубку в течение 15 секунд, то звонок переадресовывается на мобильный телефон данного сотрудника - 89012345678. Обзор Но что если мы хотим, чтобы входящий звонок сразу шёл на мобильный номер? Предположим, у нас есть IVR, на котором играет такая запись: “Нажмите “1” для связи с отделом технической поддержки, “2” для связи с отделом продаж, “3” если Вы уже являетесь нашим клиентом”. Допустим, что у нас маленькая компания, которая не имеет офисного помещения, и наш “отдел продаж” состоит из одного очень занятого, но очень ответственного менеджера, который постоянно находится в разъездах и использует мобильный телефон для общения с заказчиками. Нам нужно, чтобы клиент, позвонивший в нашу компанию и набравший цифру “2” в IVR, сразу попадал на нашего ответственного менеджера, а звонок, соответственно, сразу шёл ему на мобильный. Решить эту задачу можно с помощью модуля Misc Destinations, который позволяет создавать любые внешние направления, на которые может быть смаршрутизирован вызов. Не стоит путать с Misc Applications. Модуль Misc Destinations работает с любым модулем на FreePBX 13, который может маршрутизировать входящий вызов по какому-либо направлению, включая IVR, Inbound Routes, Time Conditions и другие. Настройка Для того, чтобы попасть в данный модуль, открываем Applications → Misc Destinations, перед нами открывается следующее окно: Для того, чтобы добавить новое направление, кликаем Add Misc Destination, после чего перед нами открываются доступные опции данного модуля: Как видите, параметра для настройки всего два, это: Description - описание данного направления (в нашем случае – Manager’s Cell Phone, т.е – мобильный номер менеджера по продажам); Формат номера должен быть прописан так, как если бы Вы набирали его с телефонного аппарата, зарегистрированного на Вашей IP-АТС, а также убедитесь, что данный формат будет понятен Вашему VoIP провайдеру. Destination - собственно сам номер, на который следует перевести звонок (в нашем случае – это пример мобильного номера); Стоит отметить, что в поле Destination можно также ввести любой внешний номер, это необязательно должен быть мобильный. Кроме того, сюда можно вставить нужный feature code, который запустит работу какой-либо функции. Чтобы закончить настройку, не забудьте нажать Submit и Apply Config. Готово, теперь это внешнее направление можно задействовать в любом другом модуле, который может маршрутизировать вызовы, например - IVR, как показано ниже: В нашем примере, звонок клиента, который дозвонится в нашу компанию, и наберёт цифру “2” в IVR, отправится на номер 89012345678, то есть, на мобильный номер нашего менеджера. Как видите, Misc Destination - это очень простой, но в то же время очень полезный модуль, который поможет сэкономить Вам время, а также решить различные задачи.
img
Bellman-Ford - один из наиболее простых для понимания протоколов, поскольку он обычно реализуется путем сравнения недавно полученной информации о пункте назначения с существующей информацией о том же пункте назначения. Если вновь обнаруженный маршрут лучше, чем известный в настоящее время, маршрут с более высокой стоимостью просто заменяется в списке путей - в соответствии с правилом кратчайшего пути для поиска путей без петель в сети. Таким образом, перебирая всю топологию, можно найти набор кратчайших путей к каждому месту назначения. Рисунок 7 используется для иллюстрации этого процесса. Примечание. Хотя Bellman-Ford в основном известен своим распределенным вариантом, реализованным в широко распространенных протоколах, таких как Routing Information Protocol (RIP), он изначально был разработан как алгоритм поиска, выполняемый в единой структуре, описывающей топологию узлов и ребер. Беллман-Форд рассматривается здесь как алгоритм. Алгоритм Bellman-Ford Bellman-Ford рассчитывает Shortest Path Tree к каждому достижимому пункту назначения в наихудшем случае O (V * E), где V - количество узлов (вершин) в сети, а E - количество каналов (ребер). По сути, это означает, что время, необходимое Bellman-Ford для работы с топологией и вычисления Shortest Path Tree, линейно зависит от количества устройств и каналов. Удвоение количества любого из них удвоит время, необходимое для выполнения. Удвоение обеих одновременно увеличит время работы в 4 раза. Таким образом, алгоритм Bellman-Ford является умеренно медленным при использовании против более крупных топологий, когда узлы в таблице топологии начинаются в порядке от самого дальнего от корня до ближайшего к корню. Если таблица топологии отсортирована от ближайшего к корню до самого дальнего, Bellman-Ford может завершить работу за O(E), что намного быстрее. В реальном мире трудно обеспечить любой порядок, поэтому фактическое время, необходимое для построения Shortest Path Tree, обычно находится где-то между O(V * E) и O(E). Bellman-Ford - это greedy алгоритм, предполагающий, что каждый узел в сети, кроме локального, доступен только по бесконечным стоимостям, и заменяющий эти бесконечные стоимости фактическими стоимостями по мере прохождения топологии. Предположение, что все узлы бесконечно удалены, называется ослаблением вычислений, так как он использует приблизительное расстояние для всех неизвестных пунктов назначения в сети, заменяя их реальной стоимостью после ее расчета. Фактическое время выполнения любого алгоритма, используемого для расчета Shortest Path Tree, обычно ограничивается количеством времени, требуемым для передачи информации об изменениях топологии по сети. Реализации всех этих протоколов, особенно в их распределенной форме, будут содержать ряд оптимизаций, чтобы сократить время их выполнения до уровня, намного меньшего, чем наихудший случай, поэтому, хотя наихудший случай дается в качестве контрольной точки, он часто имеет мало влияющие на производительность каждого алгоритма в реальных развернутых сетях. Чтобы запустить алгоритм Bellman-Ford в этой топологии, ее необходимо сначала преобразовать в набор векторов и расстояний и сохранить в структуре данных, такой как показано в Таблице 1. В этой таблице девять записей, потому что в сети девять звеньев (граней). Алгоритмы кратчайшего пути вычисляют однонаправленное дерево (в одном направлении вдоль графа). В сети на рисунке 7 показано, что SPT берет начало в узле 1, а расчет показан удаленным от узла 1, который будет точкой, из которой будут выполняться вычисления. Алгоритм в псевдокоде следующий: // создаем набор для хранения ответа, по одной записи для каждого узла // первый слот в результирующей структуре будет представлять узел 1, // второй узел 2 и т. д. define route[nodes] { predecessor // как узел cost // как целое число } // установите для источника (меня) значение 0 // позиция 1 в массиве - это запись исходной точки. route[1].predecessor = NULL route[1].cost = 0 // таблица 1, приведенная выше, содержится в массиве под именем topo // Обходим таблицу вершин (граней) один раз для каждой записи в маршруте // (результаты) таблица, замены более длинных записей на более короткие i = nodes while i > 0 { j = 1 while j <= nodes { // перебирает каждую строку в топологии table source_router = topo[j].s destination_router = topo[j].d link_cost = topo[j].cost if route[source_router].cost == NULL { source_router_cost = INFINITY } else { source_router_cost = route[source_router].cost } if route[destination_router].cost == NULL { destination_router_cost = INFINITY } else { destination_router_cost = route[destination_router].cost } if source_router_cost + link_cost <= destination_router_cost { route[destination_router].cost = source_router_cost + link_ cost route[destination_router].predecessor = source_router } j = j + 1 //or j++ depending on what pseudocode this is representing } i = i - 1 } Этот код обманчиво выглядит сложнее, чем есть на самом деле. Ключевой строкой является сравнение if route [topo [j] .s] .cost + topo [j] .cost route [topo [j] .d] .cost. Полезно сосредоточиться на этой строке в примере. При первом прохождении внешнего цикла (который выполняется один раз для каждой записи в таблице результатов, здесь называется маршрутом): Для первой строки topo-таблицы: j равно 1, поэтому topo[j] .s - это узел 6 (F), источник вектора в таблице граней j равно 1, поэтому topo[j] .d - это узел 7 (G), адресат вектора в таблице граней. route[6].cost = infinity, topo[1].cost = 1, and route[7].cost = infinity (где infinity - бесконечность) infinity + 1 == infinity, поэтому условие не выполняется и больше ничего не происходит Любая запись в topo-таблице с исходной стоимостью infinity даст тот же результат, что и infinity + все, что всегда будет равно infinity. Остальные строки, содержащие источник со стоимостью infinity, будут пропущены. Для восьмой строки topo-таблицы (восьмая грань): j равно 8, поэтому topo[j].s - это узел 1 (A), источник вектора в таблице граней j равно 8, поэтому topo[j].d - это узел 2 (B), место назначения вектора в таблице граней. route [1].cost = 0, topo[8].cost=2 и route[2].cost = infinity. 0 + 2 = infinity, поэтому условие выполняется route[2].predecessor установлен на 1, а route [2].cost установлен на 2 Для девятой строки topo -таблицы (девятая грань): j равно 9, поэтому topo[j].s - это узел 1 (A), источник вектора в таблице граней j равно 9, поэтому topo[j].d - это узел 3 (C), место назначения вектора в таблице граней. route[1].cost=0, topo[9].cost=1 и route[3].cost = infinity. 0 + 1 = infinity, поэтому условие выполняется route[3].predecessor установлен на 1, а route[3].cost установлен на 1 Во втором прогоне внешнего цикла: Для пятой строки topo-таблицы (пятая грань): j равно 5, поэтому topo[j].s - это узел 2 (B), источник вектора в таблице граней j равно 5, поэтому topo[j].d - это узел 6 (F), место назначения вектора в таблице граней. route[2].cost=2,topo[5].cost=1 и route[6].cost = infinity. 2 + 1 = infinity, поэтому условие выполняется route[6].predecessor установлен на 2, а route[6].cost установлен на 3 Для шестой строки topo -таблицы (шестая грань): j равно 6, поэтому topo[j].s равно 2 (B), источник вектора в таблице граней j равно 6, поэтому topo[j].d равно 5 (E), место назначения вектора в таблице граней route[2].cost=2, topo[6].cost=2 и route[5].cost = infinity. 2 + 2 = infinity, поэтому условие выполняется route[5].predecessor установлен на 2, а route[5].cost установлен на 4 Окончание этого прогона показан в Таблице 2. В третьем прогоне внешнего цикла узел 8 представляет особый интерес, поскольку есть два пути к этому месту назначения. Для второй строки topo -таблицы (вторая грань): j равно 2, поэтому topo[j].s - это узел 5 (E), источник вектора в таблице граней j равно 2, поэтому topo[j].d - это узел 8 (H), место назначения вектора в таблице граней route[5].cost=4, topo[2].cost=1 и route[8].cost = infinity. 4 + 1 = infinity, поэтому условие выполняется route[8].predecessor установлен на 5, а route[8].cost установлен на 5 Для третьей строки topo -таблицы (третья грань): j равно 3, поэтому topo[j].s - это узел 4 (D), источник вектора в в таблице граней j равно 3, поэтому topo[j].d - это узел 8 (H), источник вектора в таблице граней route[4].cost=2,topo[3].cost=2 и route[8].cost = 5. 2 + 2 = 4, поэтому условие выполняется route[8].predecessor установлен на 4, а route[8].cost установлен на 4 Интересным моментом в третьем цикле в topo-таблице является то, что запись для грани [5,8] обрабатывается первой, которая устанавливает передатчик 8 (H) на 5 и стоимость на 5. Однако когда обрабатывается следующая строка в таблице topo [4,8], алгоритм обнаруживает более короткий путь к узлу 8 и заменяет существующий. Таблица 2 показывает состояние таблицы маршрутов при каждом проходе через таблицу topo. В таблице 2 верхняя строка представляет запись в таблице маршрутизации и узел, доступный в сети. Например, A (1) представляет лучший путь к A, B (2) представляет лучший путь к B и т. д. Столбец P представляет предшественника или узел, через который A должен пройти, чтобы достичь указанного пункта назначения. C представляет собой стоимость достижения этого пункта назначения. Рассмотренный пример сети может быть завершен за три цикла, если алгоритм настроен так, чтобы обнаруживать завершение дерева. Псевдокод, как показано, не имеет никакого теста для этого завершения и в любом случае будет выполнять полные 8 циклов (по одному для каждого узла). Теперь почитайте про алгоритм диффузного обновления DUAL.
img
От слов к делу! Заходим на Communication Manager через веб-браузер по его IP-адресу. После ввода правильных логина и пароля нас информируют об удачном входе и времени последней попытки неудачного входа с указание IP- адреса, откуда была выполнена данная попытка. Далее выбрав пункт Administration → Server (Maintenance) мы попадаем в веб-интерфейс управления и настройки Communication Manager. Как мы видим, тут очень много ссылок, которые позволяют проводить мониторинг работоспособности системы, диагностировать и настраивать ее. Ссылки сгруппированы по функционалу: Alarm – Current Alarm позволяет просматривать ошибки и предупреждения, выводимые системой с указанием даты возникновения. При необходимости после ознакомления предупреждения можно удалить. Diagnostics – в данном разделе представлен доступ для диагностики и просмотра результатов работоспособности сервера. Restarts – выводит список историй перезагрузок сервера с указанием причин перезагрузки, даты и времени перезагрузки и статуса процесса. System Logs – позволяет получить и просмотреть большое количество сообщений из различных журналов системы, используя настраиваемые фильтры. Ping, Traceroute – данные утилиты позволяют проверить доступность требуемого хоста (по имени или IP-адресу) с самого сервера. Netstat – с помощью настраиваемых фильтров позволяет получить различную информацию по подключениям самого сервера (порты, сетевые интерфейсы, статусы и так далее.) Server – в данной группе собрана информация, касающаяся самого сервера (общий статус сервере, запущенные процессы, актуальные время и дату, версии и даты установки ПО, переключение между активным и резервным сервером в случае наличия резервного сервера) Отдельным пунктом следует отметить пункт Shutdown Server. Данный пункт позволяет как выключить сервер, так и перегрузить его. Так как в основном подключение к серверу осуществляется удаленно, то с этим пунктом надо быть очень аккуратным, иначе придется искать физический доступ к серверу для его включения. Если перезагрузка сервера происходит НЕ в экстренном случае, то рекомендуется выполнять её с ожиданием завершения всех запущенных процессов. Server Configuration – в данной группе собраны настройки самого сервера. Настройки в данном пункте зависят от того, как был проинсталлирован сам сервер (основной или локальный (LSP) сервер). Server Role – если сервер был проинсталлирован как основной сервер, то указывается тип сервера (основной или выживающий (ESS)), идентификаторы системы и модуля и настройки для памяти (Small, Medium, Large) В случае выбора при инсталляции роли локального выживающего процессора настройки роли будут другие. Тут придется указать адреса основного сервера для регистрации, сервера для синхронизации и серийный номер шлюза, где установлен данный сервер СМ. Network Configuration – указываем сетевые настройки, такие как адреса сетевых интерфейсов, DNS-серверов, шлюзов, имена серверов и альясы к ним. Static Routes – указываем необходимые специальные направления для отправки информации для работы сервера по сети. Display Configuration – показывает информацию по «физическим» характеристикам сервера – память, количество и тип процессоров, размер «жестких» дисков. Server Upgrade – раздел, посвященный проведению обновлений ПО, установленного на сервер. На «больших» серверах, есть дополнительный пункт по подготовительным шагам, который блокирует сохранение и синхронизацию данный до тех пор, пока процесс обновления не будет завершен. Ещё одним важным пунктом является Data Backup/Restore: Backup Now – позволяет выполнить разовое сохранение выбранных данных. Необходимо выбрать сохраняемые данные, выбрать метод сохранения (scp, ftp или sftp) и ввести учетные данные для подключения к серверу, куда будет произведено сохранение. После заполнения всех необходимых данных нажимаем Start и ждем завершения операции. После завершения Backup будет выведен результат: Backup History – показывает выполненные ранее сохранения. Можно посмотреть статус по каждому представленному тут сохранению. Schedule Backup – предназначен для настройки автоматического выполнения сохранений. Настройки такие же, как и в случае выполнения одноразового сохранения, но к ним добавляется возможность указать день недели и время для запуска сохранения. На системе, которая находится в более-менее статическом состоянии (т.е. нет больших ежедневных изменений, например, абонентской емкости) можно настроить еженедельное сохранение трансляций, а полное сохранение выполнять в ручном режиме, например, раз в месяц. Backup Logs – показывает информацию по запущенным процессам сохранения с указанием самого процесса, даты и времени запуска, статуса выполнения и полного пути до сохраняемого файла. View/Restore Data – позволяет восстанавливать ранее сохраненные данные. Указываются данные для подключения, как и для выполнения сохранения. После подключения предлагается выбрать необходимый бекап и выполнить восстановление. Restore History – журнал восстановления, аналогичный журналу сохранения. Security – раздел, посвященный безопасности. В нем создаются пользователи для управления, меняются и обнуляются пароли для существующих учетных записей, настраивается доступ к серверу, устанавливаются сертификаты безопасности и так далее. Administrator Account – позволяет создавать, изменять пользователей с различными приоритетами, блокировать, разблокировать или удалять учетные записи. Login Account Policy – указываются параметры для безопасного создания и использования парольного доступа такие как минимальная длина пароля, использование в пароле заглавных и строчных букв, цифр и специальных символов, количество использованных предыдущих паролей, количество символов, отличающихся в создаваемом пароле от предыдущего, время бездействия пользователя, по истечение которого будет произведен автовыход, количество неправильных попыток входа, время блокировки после неправильного ввода пароля, срок действия пароля, время напоминания об окончании действия пароля. Change password – смена пароля для ТЕКУЩЕГО пользователя. Login Report – позволяет получать при помощи настраиваемых фильтров различные сведения о подключенных пользователях, неудачных или удачных попыток входа, конкретной учетной записи и так далее. Server Access – позволяет настраивать удаленный доступ к серверу. Рекомендуется выключать доступ по Telnet для обеспечения более безопасного подключения Syslog Server – позволяет настраивать внешний Syslog сервера и делать выбор данных, отправляемых на него Firewall – показывает текущее состояние встроенного firewall и сработок по правилам. Дальше идут пункты, позволяющие работать с сертификатами – установка новых, просмотр уже установленных, настройка порогов для уведомления об окончании сроков действия, формирования запроса на генерацию нового сертификата и SSH ключи для проверки. Web Access Mask – настройка профиля подключений для доступа через Web. В системе есть профили, которые имеют настройки по умолчанию для доступа и настройку сервера через web-браузер. Если создается новый профиль, то для работы через браузер этому профилю надо определить права доступа. Miscellaneous – в данном разделе представлены остальные инструменты File synchronization – просмотр статуса синхронизации файлов между основными и резервными серверами. Download Files – позволяет закачивать на сервер необходимые файлы, в том числе и сертификаты для установки. CM Phone Message File – файлы для поддержки Unicode на телефонных аппаратах.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59