Pull to refresh
15
0
Maks Mikhalov @neopug

DevOps, MLOps

Send message

Телефоны CISCO 7942G и 7940 в связке с Asterisk 11

Reading time4 min
Views28K
Попали в мои руки данные аппараты. С Cisco я не очень дружу, потому полез в гугл и таки настроил эти аппараты. Очень помогла эта статья, но и в ней есть ошибки, которые не совместимы с некоторыми ревизиями 7942G.

Из коробки телефоны работают с цисовскими протоколами, потому надо сначала прошить на SIP.

Начнем с нуля.
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments8

Загрузочное меню PXE с System Center Configuration Manager

Reading time11 min
Views103K


Рассматриваем расширение возможностей System Center Configuration Manager (продукт для управления ИТ-инфраструктурой) при загрузке пользовательских ПК по сети используя PXE. Создаем загрузочное меню на основе PXELinux с функционалом System Center и добавляем возможности антивирусной проверки, образы диагностики и восстановления. В конце статьи касаемся особенностей работы System Center 2012 Configuration Manager совместно с Windows Deployment Services (WDS) при загрузке через PXE.

Все действия производим на тестовой среде, в которой уже есть установленный System Center 2012 Configuration Manager SP1, контроллер домена и некоторое количество тестовых машин. Предполагается, что в SCCM уже используется развертывание по сети используя PXE.
Читать дальше →
Total votes 22: ↑19 and ↓3+16
Comments17

Домашняя Cisco VoIP лаборатория на базе эмулятора GNS3

Reading time5 min
Views48K
image

Как и во многих других областях связи, всеми нами любимая компания Cisco стремится закрепить свои лидирующие позиции на рынке VoIP. Именно под эгидой этой технологии прошла последняя выставка Cisco Expo. Cisco всячески поощряет и развивает это направление, а с учетом того, что VoIP специалисты на сегодняшний день – одни из самых дорогих сетевых инженеров, все больше и больше сетевиков обращают свои взоры на эту сферу.

В линейке сертификатов Cisco есть отдельная «концентрация» для VoIP специалистов, состоящая из трех сертификатов: CCNA Voice, CCNP Voice и CCIE Voice. Cisco выпускала и продолжает выпускать огромное количество учебных материалов для подготовки к этим сертификациям, но тут появляется камень преткновения для заинтересованных: где попрактиковаться?
Читать дальше →
Total votes 36: ↑36 and ↓0+36
Comments24

Пишем голосовое IVR меню на языке TCL, с использованием Cisco IVR API

Reading time20 min
Views13K
Сегодня речь о голосовом меню (IVR) для маршрутизаторов Cisco, которое мы будем писать на языке TCL, и подключать на Cisco 3845.

Итак, для начала давайте разберемся в азах


Cisco начиная с версии IOS 12 поддерживает как VXML так и TCL скрипты для работы с голосовым меню. Однако, в отличии от VXML, скрипты на TCL имеют гораздо больше возможностей взаимодействия с Cisco IVR API. Так же существует возможность подключать гибридные IVR скрипты, со встроенными кусками VXML кода внутри TCL скрипта.

Все документы, связанные с IVR от Cisco, которые мне довелось получить можно скачать здесь.

FSM


Первое это FSM переходы.
Finite-State Machines — абстрактный автомат, число возможных внутренних состояний которого конечно.
Выглядит это примерно так:
set ivr_fsm(CALLCOMES,ev_setup_indication) "act_Setup same_state"

Переходов таких может быть сколько угодно, и расположены они в конце TCL скрипта.

Давайте разберемся, что это вообще такое.
Общий синтаксис этой команды таков:
set array(CURRSTATE, curr_event) “act_proc NEXTSTATE”

где:
array – это имя FSM массива.
CURRSTATE – имя текущего состояния, при котором получено событие curr_event.
act_proc – имя функции, которую необходимо выполнить при поступлении события curr_event.
NEXTSTATE – имя состояния, которое установится после выполнения act_proc.

Другими словами, FSM это маркер, по которому Cisco сравнивает полученное от API событие с curr_event и текущий статус с CURRSTATE, если в каком либо FSM переходе они описаны, вызывается процедура act_proc и состояние изменяется на NEXTSTATE.

Самое главное в этом — это то, что текущее событие и состояние сравниваются со всеми описанными FSM переходами одновременно. Т.е. для Cisco не имеет значения порядок, в котором расположены FSM переходы, все они обрабатываются асинхронно.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments2

Создание шорткодов в WordPress CMS

Reading time6 min
Views48K


Что такое шорткоды

Начиная с версии 2.5, разработчики WordPress ввели понятие «Shortcodes API». Этот функционал позволяет создавать и использовать макрокоды в страницах сайта или в записях блога. Например, простая и короткая запись добавит на странице целую фотогалерею.

Более подробно прочитать о шорткодах и узнать, как создавать простые шорткоды, вы можете из документации WordPress.

В статье хочу показать, как правильно создавать более сложные шорткоды и решить наиболее распространенные проблемы при их создании:
  1. Подключение сторонних скриптов и запуск только при наличии шорткода на странице.
  2. Многоуровневый шорткод.
    • Составной шорткод.
    • Вложенность шорткодов.


Читать дальше →
Total votes 13: ↑9 and ↓4+5
Comments7

Технокнига, часть 1: литература по веб-технологиям, алгоритмам и структурам данных, углубленному программированию на С++

Reading time18 min
Views104K


В процессе построения учебной программы наших образовательных проектов мы составили список специализированных книг, рекомендованных к изучению по каждой из дисциплин, — всего более 100 наименований на весь период обучения. Не станем таить и представим вам этот список, сопроводив краткими комментариями. Уместить такой объем информации в рамках одной статьи затруднительно, поэтому обзор рекомендованной Технопарком литературы разбит на четыре части — по числу семестров, с небольшой добавкой полезных книг, предложенных студентами. Ссылки в комментариях на дополнительное интересное чтиво только приветствуются.

Первый семестр призван «выровнять» знания студентов. Он содержит такие дисциплины, как алгоритмы и структуры данных, программирование на C++, а также обзорный курс по веб-технологиям. С книг по этим предметам и начнется обзор. Большая часть представленных книг относится к нестареющей «классике», являющейся собранием основополагающих концепций.
Читать дальше →
Total votes 40: ↑37 and ↓3+34
Comments10

Asterisk. Начало

Reading time10 min
Views154K
На написание этой статьи меня побудило практически полное отсутствие how-to по настройке Астериска, с понятными новичку примерами. В сети можно найти кучу информации по настройке IVR, по настройке авторизации SIP-пользователей через LDAP, мануалов по созданию HA-кластеров с Астерисками внутри, etc., но нет ни одной статьи о том, как завести его с нуля, да и еще с примерами. Практически везде предлагается сразу же использовать все возможности, которые предлагает Астериск, а если убрать часть функционала, предлагаемого в мануале, то в большинстве случаев это приведет к получению неработоспособной конструкции. Эта статья — результат хождения по граблям… чтения мануалов. Если вы находитесь в такой же ситуации, что и я пару лет назад — добро пожаловать под кат.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments40

PowerShell, кто Вы и что Вам нужно?

Reading time7 min
Views54K


PowerShell — простое синее окно, преобразившее мир администрирования Windows от классического GUI интерфейса, который удобен неподготовленным пользователям, до сценариев, которые автоматизируют все, предоставляют ротацию логов, управление жизненным циклом идентификаций, а также распределением обновлений по серверам.
Читать дальше →
Total votes 32: ↑26 and ↓6+20
Comments15

200 млн. проверок в месяц или архитектура и статистика сервиса CloudStats.me

Reading time3 min
Views6.2K
Привет!

Это первый пост от лица нашей компании на Хабре и в нём мы хотим вам немного рассказать об архитектуре нашего облачного сервиса мониторинга серверов и веб сайтов CloudStats.me, с которым мы в данный момент проходим акселерацию во ФРИИ в Москве. Мы также хотим поделиться с вами нашей текущей статистикой и рассказать о планах на ближайшее будущее, но обо всём по порядку.

1. Архитектура системы

Наша платформа нацелена на системных администраторов, которым не хочется долго возиться с настройкой Nagios или Zabbix, а просто нужно отслеживать основные параметры серверов, не тратя много времени и ресурсов на мониторинг. Мы стараемся не перегружать интерфейс системы количеством настроек, поэтому всё построено по принципу KISS (keep it simple stupid).

Почти вся система написана на Ruby on Rails (за исключением python агента, которого мы скоро также заменим на агента на Ruby), с использованием RactiveJS. Front-end работает на Tomcat, нагрузка на которые распределяется с помощью Haproxy. В качестве CDN мы используем CloudFlare, через которую проходят только статичные файлы JS, CSS, PNG и т.д. Тем не менее, даже для такого достаточно простого и пока что не очень большого сервиса, нам уже приходится применять балансировку нагрузки на всех частях платформы для избежания перегрузок.

Архитектура сервиса на конец июня:



(большая картинка)

Как видно на картинке, задачи создаются отдельным нодом Scheduler и обрабатываются несколькими Worker нодами, которые в свою очередь связываются по API с серверами проверок Ping/Port/URL, расположенными в 3х зонах — France, UK, USA. Если один из серверов проверок вернул «Ping Failed» статус для какого-либо IP, то осуществляются дополнительные проверки в двух других зонах, чтобы исключить false positives. В будущем мы планируем вывести всё это во front-end чтобы вы смогли видеть, из каких локаций ваш IP недоступен (допустим, в ситуации с DDoS или routing issues).
Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments42

Быстрые помощники для вашего Asterisk'а

Reading time5 min
Views17K
Эта статья подводит промежуточный итог в разработке моих приложений для asterisk'а. Все началось в новогодние праздники, когда мне захотелось сделать быстрый голосовой набор на asterisk'е. Затем был реализован поиск направления по номеру звонящего (полезная штука для входящих на номера 8-800). Затем была пара заказных проектов. А недавно еще и LCR для asterisk. Все эти приложения разработаны с использованием библиотеки ding-dong, которая позволяет работать с AGI (Asterisk Gateway Interface) в node.js приложении.

Далее я хотел бы показать, что используя node.js и ding-dong, можно быстро разрабатывать полезные приложения для астериска.
Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments22

Как я делал и продавал курс по Axure 7

Reading time4 min
Views5.9K
Не бойтесь, я не собираюсь вам ничего продавать. Да и пиариться не собирался. Просто не нашёл, в какой ещё хаб Хабра или Мегамозга можно опубликовать эту статью. Просто расскажу историю. Постараюсь покороче.

Когда-то давным-давно я купил несколько книг, обучающих работе в 3dsmax 6 и прочитал их. И больше всего знаний мне дала книга, построенная по принципу «делаем практические занятия и по ходу разбираемся с программой». В отличие от остальных, сухо рассказывающих обо всех функциях 3dsmax без практических примеров.

Когда в начале этого года я сел за курс по Акшуре, я решил пойти сразу двумя путями и взялся за два продукта. Первый был набором видео по всем Акшурным функциям, а второй демонстрировал, как я за 5 часов делаю с нуля прототип интернет-магазина. К счастью, первый я подзабросил (к счастью, потому что на подходе восьмая версия программы, лучше браться уже за неё), а второй довёл до конца.
Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments4

Upgrade до Middle PHP-разработчика за 3 месяца

Reading time2 min
Views193K

В очередной раз на меня свалилась задача найти хорошего PHP-программиста.
По результатам прозвона потенциальных кандидатов, 90% тех, кто мнит себя Middle, на самом деле Junior и годы опыта не спасают, потому что клепают однотипный код в пределах заданий, посланных свыше.
Прописал минимальный план желающим сделать рывок и перейти на следующий уровень без отрыва от производства.


Читать дальше →
Total votes 94: ↑55 and ↓39+16
Comments190

Выдираем sms из GOIP на PHP

Reading time2 min
Views12K
Да, Астериск в данной заметке только косвенно — метод (и скрипт) предназначены для дальнейшей интеграции в него, в зависимости от задач. Но более удачного хаба не нашлось.

Если пропустил — укажите, поправлю. Спасибо!

Итак, имеем GOIP — GSM шлюз. К нему есть разработанный производителем SMS-сервер, но я не хотел выделять под простую задачу ресурсы на vds, да и он рассчитан (имеет смысл) на работу с несколькими шлюзами и хорошим объемом. Если же у нас один-два шлюза, и смс хочется видеть «постольку — поскольку» — данный путь вполне может иметь смысл.

В вебморде шлюза sms-ки доступны в разделе «Tools» => «SMS in box». Да да, этот вопрос не ко мне — к китайцам :)
Шлюз хранит по 5 смс на канал.
Оттуда и будем их выдирать, скриптом на PHP. Постараюсь прокомментировать происходящее в исходнике.
Читать дальше →
Total votes 10: ↑5 and ↓50
Comments6

10 полезных фреймворков, о которых нужно знать разработчику

Reading time2 min
Views43K
image

Постоянное создание и развитие динамических кросс-браузерных вебсайтов и приложений требует выхода за рамки стандартных техник. К счастью, в сети есть несколько фреймворков, дающих всё необходимое разработчикам для того, чтобы они увеличили эффективность своей работы и своих разработок. Главное, фреймворки предлагают гибкие варианты решения и возможности для экономии ценного времени.

1) UIkit


getuikit.com

99% проблем юзабилити возникают из-за медленного ответа веб-интерфейсов. Очень важно создавать быстрые интерфейсы. UIKit полезен именно для этого. Он лёгкий, модульный, и идеальный для разработки фронтенда. Предоставляет богатый набор HTML, JavaScript и CSS компонентов.
Читать дальше →
Total votes 47: ↑25 and ↓22+3
Comments10

OData + Angular.js + Bootstrap + JavaScript Grid = приложение за 5 минут

Reading time6 min
Views32K
Предположим в некотором проекте появилась необходимость добавить некоторую форму опроса пользователей на веб сайте (детальная форма) и форму для просмотра и редактирования списка пользователей для администратора системы (списковая форма).

Рассмотрим процесс создания этих форм с использованием OData, Angular.js, Bootstrap и JavaScript Grid. Все требования к такому приложению уже реализованы в этих инструментах, и нам практически не требуется ничего писать.

Читать дальше →
Total votes 19: ↑17 and ↓2+15
Comments9

Готовимся к CCNA Security (IINS 554)

Reading time4 min
Views34K
Всем привет! Надеюсь этот пост будет полезным для тех, кто хочет сдавать сертификацию по безопасности на основе IOS.
Так уже повелось, что для прежнего экзамена CCNA или как сейчас он называется CCNA Routing&Switching хватает софта из Cisco Networking Academy (Diccovery and Exploration) Cisco Packet Tracer, однако для отраслевых сертификаций он уже не подойдет. В этом случае, если, конечно, у Вас нет под рукой физического стенда, подойдет GNS3. Взглянем на темы экзамена CCNA Security. Понимаем что вопросами исключительно по IOS дело не обойдется: CCP, ASA, IPS. Что нужно? Правильно сконфигурированный стенд!
Итак, в одну корзинку кладем:
  • PC host — CCP, ASDM, Kali — virual_box образы
  • IOS Switch — в GNS не реализован, поэтому используем образ cisco 3745 с модулем NM-16ESW. В этом случае он будет функционировать как Switch L3 (Catalyst 3560)
  • Router с функционалом Zone-based Firewall — образ IOS c3725-adventerprisek9-mz124-15.bin
  • Cisco ASA — asa842 (kernel и initrd)
  • Cisco IPS

Вот что-то такое должно быть…
Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments8

Установка, настройка и использование сканера безопасности Antidoto

Reading time4 min
Views9.3K
Ранее я писал о двух известных сканерах безопасности общего плана rkhunter и CentOS
На “Хабре” так же есть описание организации работы сканера для вебхостинга — maldet. Теперь хотелось бы рассмотреть реализацию приложения для эвристического обнаружения уязвимостей, вирусов и ботнетов для OpenVZ ОС Linux — Antidoto.


Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments9

А вы хорошо знаете статическую маршрутизацию?

Reading time12 min
Views203K
Статический маршрут — первое, с чем сталкивается любой человек при изучении понятия маршрутизации IP пакетов. Считается, что это — наиболее простая тема из всех, в ней всё просто и очевидно. Я же постараюсь показать, что даже настолько примитивная технология может содержать в себе множество нюансов.
Следите за руками.
Total votes 68: ↑65 and ↓3+62
Comments53

Пишем обработку Asterisk AMI своими руками. Часть первая: создаем класс на PHP для обращения к звездочке или как сделать php socket клиент своими руками

Reading time16 min
Views40K

Вместо предисловия


Приветствую сообщество!

Моя первая статья Пример реализации обращения к Asterisk CLI на PHP. Структуризация ответа звездочки наконец то перешла из модерации в песочницу и модератор сразу дал мне полные права для публикации на хабре.

Я хочу начать цикл статей о том как можно реализовать собственное API для обращения с Астериском через AMI. Если у Вас имеются время, желание и самое главное опыт, поддержать меня и попытаться составить команду которая на данном портале создаст полноценное php API для взаимодействия с AMI Астериска велком к диалогу.

Задача очень интересная так как многие сервисы посвященные Звездочке сразу прячут всю информацию о попытках разработки собственных интерфейсов для Asterisk. Хотя мой опыт который я здесь изложу может стать для многих «коддеров» попыткой потешить свое «эго», но вариантов создать собственное веб приложение, которое не будет глючить каждую секунду не даст (правда если вы виртуоз языка javascript то очень даже получится какой нибудь грамотный заменитель буржуйской веб-морды для астера).

В этой части я покажу что написать собственный класс для обращения к AMI звездочки проще простого, главное идти от простого к сложному.

Для особо ленивых в конце статьи готовый (рабочий) модуль с классом Asterisk AMI. С примерами запросов. Класс полностью рабочий и готов к использованию.
Читать дальше →
Total votes 17: ↑10 and ↓7+3
Comments20

Архитектурная визуализация в Unreal Engine 4

Reading time4 min
Views119K
Работая над проектом, архитекторы и дизайнеры прибегают к такому способу подачи, как 3D визуализация. Чаще всего это статичное изображение, полученное с помощью визуализаторов vRay, MentalRay, Corona и других.

В данной статье речь пойдет о визуализации архитектурных проектов на движке Unreal Engine. Рассмотрим все плюсы и минусы, а также поделюсь своими впечатлениями и опытом на примере готового проекта:


Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments11

Information

Rating
Does not participate
Location
Dallas, Texas, США
Date of birth
Registered
Activity