По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В данной статье посмотрим и разберем, как создать простейшие ресурсы в облаке AWS (Amazon Web Services) с помощью замечательного инструмента IaaS, под названием Terraform. Для того, чтобы можно было повторить то, о чем пойдет речь в статье необходим действующий аккаунт AWS и рабочая машина (виртуальный сервер) с установленным Terraform, и текстовым редактором Atom + плагин для Terraform. Первоначальная настройка данных инструментов разбиралась в предыдущих статьях. Описание в статье пойдет под операционную систему CentOS. Вы можете для тренировки использовать на свой вкус любую. Для начала создадим папку под наш новый проект, можно непосредственно в домашней директории. sudo mkdir terraform Создадим первый файл нашего терраформ кода. Можно создать непосредственно в редакторе, через меню или в командной строке sudo touch myterr.tf. Принципиальной разницы, как будет создан файл нет. Если создали через командную строку открываем, как обычный файл в редакторе. Далее схема работы следующая: пишем код в файле, сохраняем, производим управляющие команды в командной строке для выполнения или проверки данного кода, уничтожения, модификации элементов или объектов в облаке. Как в начале статьи было сказано, нам необходим аккаунт AWS, чтобы терраформ взаимодействовал с облачной инфраструктурой, а более конкретно нам нужно создать пользователя и получить access key и secret key, для доступа к облаку. Это необходимо для аунтификации Terraform в AWS облаке. Заходим в AWS консоль и выбираем сервис IAM. Заходим во вкладку пользователи и создаем новую учетную запись. Вводим имя пользователя в пустое поле. Нужно поставить Programmatic Фccess. Далее нажимаем Создать пользователя и попадаем на закладку назначения прав. Тут необходимо присоеденить уже созданный по умолчанию в AWS набор прав администратора. Далее переходим к страничке назначения Tag, тут по желанию вашему, если хотите то можете добавить тэги. Нажимаем кнопку создать пользователя. Финальное окно будет выглядеть следующим образом. Получаем те данные, которые нам необходимы для Terraform. Очень важно - Secret key показывается только один раз! Теперь в принципе все готово для создания первого ресурса в AWS. Начинаем с объявления с каким облаком мы работаем. provider “aws” { } Тем самым мы обозначили с каким облачным провайдером мы будем работать. В данном коде в отличии от YAML, количество пробелов не важно. Далее прописываем access key и secret key. В каком регионе будут использоваться ресурсы. Регион мы укажем eu-central-1 – это ЦОД расположенный в Европе во Франфуркте. Старайтесь регион указывать, поближе к себе, чтобы до ресурсов была минимальная задержка прохождения пакетов. provider “aws” { access_key = “тут ключ доступа” secret key = “тут секретный ключ” region = “eu-central-1” } При нажатии Ctrl+S, мы сохраняем и видим, что плагин аккуратно выправляет для удобства написанный код. Теперь можно сделать первый ресурс. Например, инстанс в Амазон. Добавляем ниже: resource “aws_instance” “my_название” { ami = “” instance_type = “” } Для поднятия ресурса необходимо указать 2 минимальные вещи. Это ami – image id и instance_type. Теперь необходимо пойти в указанный регион, открыть EC2 и посмотреть ami интересующего инстанса. А тип возьмем t2.micro. Данный тип для новых аккаунтов на год бесплатный. Получаем код полностью готовый для развертывания первого инстанса. В принципе все готово для запуска первого инстанса. Код Terraform будет выглядеть следующим образом: provider “aws” { access_key = “тут ключ доступа” secret key = “тут секретный ключ” region = “eu-central-1” } resource “aws_instance” “TestUbuntu” { ami = “ami-0767046d1677be5a0” instance_type = “t2.micro” } Запускаем консоль и переходим в директорию, где находится у нас Terraform. Далее есть небольшой нюанс запуска, чтобы в коде не светить свои access_key и secret_key, эти данные можно убрать, экспортировав в переменные. Делается это следующим образом. С помощью команды export. export AWS_ACCESS_KEY_ID=ключ export AWS_SECRET_ACCESS_KEY=ключ И можно убирать эти 2 строчки из кода. Теперь запускаем Terraform. Первая команда, которую необходимо сделать это команда terraform init, данная команда пройдется по всем tf файлам, она увидит провайдера и скачает дополнительные файлы, необходимые для запуска в том числе и бинарники. Сам Terraform – это такая оболочка, которая подкачивает все, что ей необходимо. Следующая команда, которая понадобится это terraform plan, данная команда позволяет посмотреть, что Terraform будет делать. Т.е нечто вроде Whatif. Данная команда очень важна т.к в крупных проектах, позволяет заранее посмотреть, что будет если мы запустим файл терраформа. Вывод ее большой, кусочек представлен на картинке. Можно увидеть, что добавится. Достаточно удобно. Как мы видим, при команде на deploy, Terraform добавит в амазон 1 instance, т.е 1 виртуальную машину из указанного шаблона, указанного типа и размера. Непосредственно для deploy, необходимо ввести команду terraform apply, прочитать что Terraform будет делать и явным образом, командой yes подтвердить. После подтверждения видим следующую картину. Со стороны консоли. Со стороны амазона спустя полминуты. Как мы видим сервер создался и проходит инициализацию.
img
Облачные технологии очень широкое понятие, которому многие дают различные определения. Для кого-то это как вычислительные сервисы, предоставляемые через Интернет или какую-либо другую сеть. Некоторые определяют это для себя как любую купленную компьютерную услугу, которая находится за вашим маршрутизатором. Обозначим самые характерные признаки облачного сервиса: Централизованная система управления; Доступность по требованию; Частный, публичный или гибридный вид услуги. Примеры облачных услуг - сетевое хранилище данных, социальные сети, различные приложения. Облачная услуга предоставляет доступ к распределенному пулу ресурсов - свободному месту на диске, вычислительным мощностям, транспортному ресурсу в сетях. Таким образом, можно дать следующее определение “облакам”. "Облако" - модель предоставления доступа к услуге через какую-либо сеть к пулу различных ресурсов, таких как сети передачи данных, системы хранения данных, приложения и услуги, которые могут быть гибко распределены между пользователями. Это могут быть услуги с минимальными затратами со стороны лица, предоставляющего услугу. Такая модель являет собой высоко доступную систему, обладающую пятью основными характеристиками, тремя способами предоставления и четырьмя способами реализации. Характеристиками этой модели являются: самообслуживание; широкополосный сетевой доступ; доступ к общему пулу ресурсов; высокая эластичность и возможность точного измерения “используемости” ресурсов. Самообслуживание - возможность пользователями (организациями) запрашивать дополнительные и управлять существующими ресурсами. Широкополосный доступ в сеть позволяет предоставлять услуги через Интернет иили частные сети. Доступ к пулу ресурсов означает разделение мощностей между заказчиками соответственно их требованиям, причем эти ресурсы находятся в удаленном центре обработки данных. Способы предоставления ресурсов: IaaS (Инфраструктура как услуга) - предоставление доступа исключительно к оборудованию и сетевым ресурсам; PaaS (Платформа как услуга) - предоставление доступа к операционной системе, платформе разработки, оборудованию и сетевым ресурсам; SaaS (Приложение как услуга) - предоставление доступа к приложению, вместе с операционной системой, оборудованием и сетевым ресурсам. Как можно заметить, второй и третий способ строятся на способе “Инфраструктура как услуга”. Способы реализации доступа к услугам: приватное облако - доступ к ресурсам находится у одной организации и управляется облачным провайдером или, чаще всего, самой организацией; общедоступное облако - предоставление доступа через Интернет, права на владения находятся у облачного провайдера и доступен всем желающим; общественное облако- ресурсы и доступ делятся между несколькими организациями; гибридное облако- любая возможная комбинация вышеперечисленных. Важнейшим способом построения облака в настоящее время является технология виртуализации. Виртуализацию серверов нельзя приравнивать к облачным вычислениям. Виртуализация – замещение физического оборудования программными абстракциями. Структура облака определяет, как именно виртуальное оборудование расположено, коммутировано и какие функции выполняет. Технология виртуализации не является обязательной для реализации облака, но она вносит возможность очень гибкого масштабирования и распределения ресурсов, что для классической реализации с использованием физического оборудования недостижимо. Кроме того, физическая реализация облака никогда не позволит в реальном времени изменять параметры оборудования, такие как объем свободного пространства на жестком диске, количество оперативной памяти и вычислительной мощности. Одной из важнейших особенностей, которую позволяет виртуальная реализация центра обработки данных (ЦОД) – обеспечение более высокой надежности по сравнению с физическими аналогами. Это достигается благодаря возможности легкого копирования виртуальных машин, их содержимого и переноса в другую среду. Виртуальная машина является основной единицей в виртуальном ЦОДе, и является абстрактным вычислительным устройством, которое может выполнять множество функций – сервера, файлового хранилище, маршрутизатора и т.д.
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 – например, на дисплее телефона. Можете создать тестового лида (или контакт) со своим номером телефона или дождаться звонка клиента. Наслаждаемся :)
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59