По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
От Алтуфьево до контроффера лишь на первый взгляд далеко: системный администратор Артем Горячев о своем пути из техподдержки в работу с сетевым и серверным железом Артем, системный администратор из Москвы, делится своей историей знакомства с технологиями и рассказывает о судьбоносных случайностях, которые случаются не только в кино, но и в мире IT. Влюбиться в технологии, начиная с университетских дней, и даже не знать, как учеба перевернет твою жизнь спустя 20 лет — Артем сменил множество компаний, пережил взлеты и падения, чтобы оказаться на своем месте. Он поделился с нами классной историей, в которой нашлось место инсайтам, счастливому совпадению и упорному труду. Как я встретил ваше IT Начало нулевых — вот где находятся истоки моей карьеры. История поисков себя развивалась в атмосферных декорациях, полных артефактов того времени: ЦАО, метро Новокузнецкая, субкультуры и теплые вечера, в которых чувствуешь себя в самом начале пути. Так оно и оказалось — это была дорога с надписью «СТАРТ», про которую я пока ничего не знал. Зато я знал точно, что учусь в технологическом вузе, где помимо стандартной начертательной геометрии и сопромата можно познакомиться и с программированием. Тогда это были Delphi и Turbo Pascal — простые для понимания языки, в которых я быстро разобрался и начал их осваивать. Программирование дает тебе чувство созидания и власти, похожее на эмоции от ремесленного дела. Вот перед тобой ничего нет, а потом — раз! — и ты пишешь программу, которую можно потрогать, увидеть, задействовать. Или, например, игру. Про геймдев я тогда ничего не знал, но сам факт, что своими руками можно разработать игру, не будучи при этом «Букой», очень волновал! Проще говоря, это было началом моего увлечения IT, которое следует за мной на протяжении всей карьеры. После окончания учебы я попробовал себя в различных областях технологий. Начал с работы оператором баз данных в большой сети кинотеатров, где мой труд был замечен, и меня повысили до дежурного администратора. Затем последовала работа по IT-мониторингу в банке, где моей задачей было разруливать инциденты в инфраструктуре. Знание английского языка стало дополнительным преимуществом — я много общался с европейскими партнерами, хоть условия и были стрессовыми (а в мониторинге не может быть иначе), работа мне нравилась. Несмотря на несколько переходов между компаниями, мое увлечение IT оставалось неизменным. Целительная сила провала Расскажу вот про какой опыт: я был обычным системным администратором, когда устроился на работу в известную ресторанную сеть. Моя рутина включала в себя администрирование и работу с программами типа 1С. Казалось, что я нашел свое место, но скоро выяснилось, что этот опыт оказался далеко не таким успешным, каким виделся изначально. Я решил уйти, но так и остался с неприятным осадком на душе (а эту сеть недолюбливаю до сих пор!). Этот провал был для меня не только уроком, но и важным моментом самопознания. Осознав, что нужно двигаться вперед, я решил не сдаваться и найти точки роста в этом неудачном опыте. Понимание, что мое текущее положение – всего лишь этап в моем профессиональном пути, стало толчком для стремления к новым знаниям в IT. На пути к успеху провалы — не страшные захлопнутые двери, а ключи к новым главам. Не бойтесь сделать шаг в неизвестность, и если что-то идет не так, лучше рассматривайте ошибки как уроки. Найти IT в Алтуфьево Скажу честно: уровень знаний у меня особо не рос, но любовь к IT никуда не делась: мне просто было комфортно на той планке, где я был. На тот момент я работал системным администратором в крупном строительном холдинге, занимаясь довольно рутинными задачами. Настолько рутинными, что в какой-то момент мой шеф сказал: «Пожалуй, хватит тут сидеть, Артем. Сейчас есть возможность заниматься задачами системного администрирования, но нужно будет многому учиться». Задача такого специалиста заключается в поддержании работоспособности оборудования на каждом из объектов заказчика — и я согласился. Работа на хелплдеске в какой-то момент превращается в карусель: одни и те же задачи, декорации, способы решения проблем, а смена роли пошла мне на пользу. Она позволяет не только смотреть на процессы, но и чувствовать их изнутри. Однажды я трудился на одном из выездных объектов — была классная теплая погода, и в перерыв я вышел прогуляться в парке. Очень хорошо помню этот момент: это было в районе Алтуфьево, тогда я достал телефон, чтобы сфотографировать живописное дерево, а когда зашел в интернет, чтобы выложить фотографию, увидел рекламу онлайн курсов. Это будто был знак свыше — я посмотрел программу, стоимость, и без раздумий оплатил обучение. Я прошел два курса по основам сетевых технологий и углубленному администрированию маршрутизаторов MikroTik — освоил их всего за полгода. Этот момент изменил все – я, работая в IT уже 10 лет, понял, как много еще предстоит узнать. С этого момента о своей карьере могу сказать так — это был не просто подъем, а настоящий бег в гору. Я находил все новые и новые пробелы в знаниях, ведь до этого я был, по сути, талантливым самоучкой без хорошей теоретической базы. Так я познакомился с академией Merion Network — активно приобретал дополнительные курсы: «Установку и настройку Asterisk» прошел за 2022 год, «Администрирование Linux» — за 2023 год, а сейчас изучаю «Администрирование Windows». В какой-то момент я понял, что у меня достаточно знаний и опыта для покорения новых вершин и решил сменить работу — остаться в той же группе компаний, но перейти на новую должность. Техническое собеседование было длинным и сложным, но благодаря новым умениям мне удалось получить предложение о работе. А когда я пришел увольняться с текущей работы, совершенно внезапно моя компания предложила мне контроффер с отличной зарплатой, и я оказался в красивом офисе в Москва Сити. Как понять, что ты добился успеха Для меня действительно был некий вау-момент: из простого системного администратора на поддержке я начал заниматься сетями и серверами, работать в классной локации за деньги, о которых раньше мог только мечтать. С новой должностью и новым местом работы стало меньше контактов с пользователями, зато стало больше работы именно с железом и технологиями. Вот именно это я и подразумеваю под словом «рост» — челленджи и смещение зоны ответственности. Как оказалось, в мире IT недостаточно иметь фундаментальное образование – нужно постоянно обучаться. Мой опыт показал, что даже после десяти лет в IT найдется место новым знаниям, и я уверен, что это справедливо для специалистов из любой айти-сферы. Вера в себя и непрерывное обучение стали ключевыми факторами в моем пути к успеху. Моя история доказывает, что даже с базовыми знаниями в айти, с верой в себя и нахождением правильных образовательных курсов, можно добиться впечатляющих результатов. Важно помнить, что обучение – это постоянный процесс. Только так и можно добиться успеха в быстро меняющемся мире технологий. О курсах и жизненных целях Мы решили задать Артему несколько вопросов о его учебе и планах, и заодно узнать его мнение о курсах Merion. Как тебе подача материала в курсах? Я совсем не новичок, поэтому нахожу какие-то минусы, конечно. Где-то преподаватель теряется, где-то кажется, что не хватает системы. Но я привык, мне абсолютно окей — в конце концов, я пришел учиться, конспектировать и задавать вопросы, а не придираться по мелочам. Основатели Merion говорят, что сознательно отказались от штаба кураторов и менторов, так как любое обучение во многом про самообучение. Согласен ли ты с этим, пришлось ли самому «копать» информацию дополнительно, или достаточно было того, что есть на курсе? Честно говоря, иногда возмущаюсь структуре, по которой написан курс. Возмущаюсь, возмущаюсь… А потом иду за покупкой нового курса. Все потому, что хорошего текстового структурированного материала по какой-либо теме или предметной области ты не найдешь днем с огнем. У Merion содержание курсов всегда хорошее, было бы желание учиться. Удалось ли достичь поставленных при обучении целей? Да, удалось. Моей главной целью было достичь понимания каких-то моментов, в которых я раньше не мог разобраться. И я разобрался, так что да — своих целей я достиг. Заплатить за курс, сказав этим «спасибо», я никогда не против, особенно если этот курс мне нужен. Скажу еще вот что: «Учеба — как рыбалка. Увидишь скидку на курс от Merion — тащи!» Заключение Я поделился своей историей — вы видите, как простой системный администратор, начавший свой путь с программирования на Delphi, стал специалистом, который работает с серверами, Active Directory, DNS, DHCP, сетевым железом. Да, эта история полнилась вызовами и провалами, но каждая ошибка стала шагом к росту, и к той точке, в которой я сейчас нахожусь. Главный урок из этой истории — важность постоянного обучения и веры в свои силы. Да, я не остановился после первых неудач, а, наоборот, использовал их как топливо для своего развития. Мой путь еще раз доказывает, что в мире IT образование — это не статичная точка, а динамичный путь.
img
Привет! В статье расскажем о бесплатном способе передачи информации о звонящем в момент звонка из Битрикс24. Проверять мы будем лид и контакт. В качестве системы, куда мы будет отправлять данные будет уютный Telegram :) Погнали. Создаем Вебхук в Битрикс24 Переходим в Битрикс24 и открываем раскрывающееся меню в верхнем левом углу. Далее, выбираем «Вебхуки»: Добавляем Входящий вебхук, нажав на зеленую кнопку в правом верхнем углу Добавить вебхук. Делаем следующие настройки: Название - дайте имя. Например «Внешний доступ к REST API»; Описание - «cоответствие номера клиента и его имени»; Права доступа - необходимо выбрать «CRM (crm)»; Нажимаем «Сохранить». Для нас будет сгенерирован Вебхук. Переходим к настройке скрипта. Telegram - бот Перед продолжение настройки, вам необходимо создать Telegram – бота. О том, как это сделать читайте по кнопке: Создание бота Скрипт интеграции Из предыдущего шага, у вас должен быть идентификатор чата в Telegram, токен бота, вебхук и доменное имя вашего Битрикс24. Все, остальное дело скрипта: #!/usr/bin/php -q <?php #подключаем AGI - библиотеку; require('phpagi.php'); $agi = new AGI(); $cid = $agi->request['agi_callerid']; #от провайдера, номер на нашу АТС прилетает в формате 79ХХХХХХХХХ. В CRM номера записаны как 89ХХХХХХХХХ. Поэтому, мы стрипаем цифру спереди и подставлем 8ку; $phone = substr($cid, 1); $phone = "8$phone"; $phoneFieldset = "Коллеги, входящий звонок. Звонящий: "; #укажите служебные параметры: токен бота, идентификатор чата, хостовое имя CRM (то, что между https:// и до .bitrix24.ru) и вебхук, который мы получили ранее; $token = "333333333:MMMMMEEEEE_RRRIIIIOOOO_NNNNEEEETTTT"; $chat_id = "-1001001001001"; $crm_id = "имя_вашего_Битрикс24"; $webhook = "wblhahgytuwrnwer"; #проверяем существование лида по номеру; $bitrix_lead_url = "https://$crm_id.bitrix24.ru/rest/2/$webhook/crm.lead.list.json?filter[PHONE]=$phone&select[]=TITLE&select[]=NAME&select[]=LAST_NAME"; $btl = curl_init(); curl_setopt ($btl, CURLOPT_URL,$bitrix_lead_url); curl_setopt ($btl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); curl_setopt ($btl, CURLOPT_TIMEOUT, 60); curl_setopt ($btl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt ($btl, CURLOPT_RETURNTRANSFER, 1); $bitrix_lead = curl_exec ($btl); curl_close($btl); $bitrix_lead_o = json_decode($bitrix_lead, true); $l_total = $bitrix_lead_o['total']; #проверяем существование контакта по номеру; $bitrix_contact_url = "https://$crm_id.bitrix24.ru/rest/2/$webhook/crm.contact.list.json?filter[PHONE]=$phone&select[]=TITLE&select[]=NAME&select[]=LAST_NAME"; $btc = curl_init(); curl_setopt ($btc, CURLOPT_URL,$bitrix_contact_url); curl_setopt ($btc, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); curl_setopt ($btc, CURLOPT_TIMEOUT, 60); curl_setopt ($btc, CURLOPT_FOLLOWLOCATION, 1); curl_setopt ($btc, CURLOPT_RETURNTRANSFER, 1); $bitrix_contact = curl_exec ($btc); curl_close($btc); $bitrix_contact_o = json_decode($bitrix_contact, true); $c_total = $bitrix_contact_o ['total']; #если найден лид, то: формируем массив и кидаем в сторону Telegram: имя, фамилия и идентификатор лида; if ($l_total >= 1) { $l_name = $bitrix_lead_o['result'][0]['NAME']; $l_title = $bitrix_lead_o['result'][0]['TITLE']; $l_l_name = $bitrix_lead_o['result'][0]['LAST_NAME']; $l_id = $bitrix_lead_o['result'][0]['ID']; $l_titleFieldset = "Входящий звонок от лида - "; $l_FnameFieldset = "Его имя - "; $l_linkFieldset = "Ссылка на лид - "; $l_fullname = "$l_name $l_l_name"; $l_link = "https://$crm_id.bitrix24.ru/crm/lead/show/$l_id/"; $arr = array( $l_titleFieldset => $l_title, $l_FnameFieldset => $l_fullname, $l_linkFieldset => $l_link, ); foreach($arr as $key => $value) { $txt .= "".$key." ".$value."%0A"; }; fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r"); } #если найден контакт, то: формируем массив и кидаем в сторону Telegram: имя, фамилия и идентификатор контакта; elseif ($c_total >= 1) { $c_name = $bitrix_contact_o ['result'][0]['NAME']; $c_c_name = $bitrix_contact_o ['result'][0]['LAST_NAME']; $c_id = $bitrix_contact_o ['result'][0]['ID']; $c_FnameFieldset = "Входящий звонок от контакта - "; $c_linkFieldset = "Ссылка на контакт - "; $c_fullname = "$c_name $c_c_name"; $c_link = "https://$crm_id.bitrix24.ru/crm/contact/show/$c_id/"; $arr = array( $c_FnameFieldset => $c_fullname, $c_linkFieldset => $c_link, ); foreach($arr as $key => $value) { $txt .= "".$key." ".$value."%0A"; }; fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r"); } else {}; Скачать скрипт По факту, от вас требуется изменить следующие переменные: $token - токен вашего бота. Как его получить указано в стате по ссылке «Создание телеграм бота» выше; $chat_id - идентификатор чата, в котором находится бот. Генерация так же указана в статье; $crm_id - хостовая часть вашего Битрикс24. Если у вас URL CRM company.bitrix24.ru, то указать нужно company; $webhook - вебхук. Мы показывали ранее, как его получить в Битрикс24 (у нас wblhahgytuwrnwer); Сохраняем скрипт как b24.php закидываем его в директорию /var/lib/asterisk/agi-bin. Адаптируем скрипт в unix – среде: dos2unix /var/lib/asterisk/agi-bin/b24.php chown asterisk:asterisk /var/lib/asterisk/agi-bin/b24.php chmod 775 /var/lib/asterisk/agi-bin/b24.php В диалплане (вставьте исполнение скрипта в транке, например): exten => _.,n,AGI(b24.php) Добавив в скрипт конструкцию вида $agi->set_variable("lookupcid", "$c_fullname"); для контакта или $agi->set_variable("lookupcid", "$l_fullname"); для лида, в диалплане мы сможем сделать следующее: Set(CALLERID(name)=${lookupcid}) мы получим имя звонящего в виде CallerID Name – например, на дисплее телефона. Можете создать тестового лида (или контакт) со своим номером телефона или дождаться звонка клиента. Наслаждаемся :)
img
В нашей базе знаний достаточно много статей касаемо установки и настройки FreePBX, поэтому вы наверняка неоднократно натыкались на скриншоты Dashboard в FreePBX – окна, содержащего в себе сводку по всем сервисам, службам и «железным» характеристикам сервера АТС – в сегодняшней статье мы расскажем как установить похожий дэшборд абсолютно на любой сервер – в нашем примере мы будем его ставить на CentOS 6. Установка Для начала обновим все пакеты с помощью командыyum update, а затем установим Apache, PHP и git пакеты: yum -y install httpd git php php-json php-xml php-common Далее включим и запустим сервис httpd командами: systemctl start httpd systemctl enable httpd Следующим шагом необходимо скачать сам дэшборд с помощью git, но для этого необходимо сначала сменить рабочую директорию на /var/www/html с помощью команды cd /var/www/html. После смены директории вводим команду для скачивания - git clone https://github.com/afaqurk/linux-dash.git - в общем и целом, почти всё готово для запуска. Запуск Теперь перезагружаем сервис httpd с помощью команды service httpd restart и пробуем зайти по следующему адресу: http://адрес_вашего_сервера/linux-dash Если всё прошло успешно – у вас должен запуститься веб-интерфейс следующего вида, как на скриншоте ниже: Обратите внимание, что есть 5 вкладок: System Status - информация о загруженности оперативной памяти, CPU и так далее; Basic Info - общая информация о сервере; Network - информация о сетевых интерфейсах; Accounts - информация об аккаунтах пользователей; Apps - описание используемых приложений; Данное приложение находится в процессе постоянной доработки разработчиком, поэтому вы всегда можете обратиться к нему напрямую через GitHub.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59