По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Наверняка кто-то из вас хоть раз в жизни получал SMS после звонка в определенную компанию. Обычно, это просьба оценить работу операторов. Так, например, это сделано у GSM операторов. Также это может быть SMS с благодарностью за обращение от компании или же об актуальных акциях и предложениях. Сегодня я хотел бы рассказать о том, как Вы можете реализовать подобную функцию с использованием FreePBX Статья написана по мотивам существующей на данном ресурсе публикации "Оценка оператора после звонка" У данного метода есть один недостаток - для его работы нужен chan_dongle и тариф с безлимитными SMS. Для тех, у кого нет пресловутого chan_dоngle, есть другой метод, который я постараюсь объяснить. Для особо нетерпеливых прошу Вас заглянуть в контакты, возможно, я уже там появился :) В данном методе мы не будем ломать диалплан FreePBX и использовать тяжелую артиллерию в виде MySQL. Итак, приступим. Для начала открываем конфигурационные файлы, а именно: /etc/asterisk/extensions_custom.conf Вносим в него такой кусочек диалплана. В коде я дал комментарии зачем нужны некоторые части: [send-sms] exten => _.,1,NoOp(Start sms) exten => _.,n,DIAL(SIP/${EXTEN},,trg) ;опция g позволяет "проваливаться вниз". ВНИМАНИЕ агент должен использовать вашу технологию (sip или pjsip) exten => _X.,n,GotoIf($[${DIALSTATUS}=BUSY]?busy:answered) //проверяем, был ли отвечен вызов, вот здесь мы или пропускаем клиента дальше если с ним уже говорили или нет. exten => _X.,n(busy),Hangup() exten => _X.,n(answered),Goto(sms,${EXTEN},1) [sms] exten => _X.,1,NoOp(Statrt SendSms) exten => _X.,n,Answer() same => n,Set(COUNT=1); установка счетчика. По идее, он тут не нужен, но сделан на всякий аварийный случай. Вдруг заклинит и клиента заспамит смс? :) same => n,Set(RECIVER=Имя донгла в системе); если используете донгл same => n,Set(RECIPIENT=${CALLERID(num)}) same => n,Set(TEXT="Спасибо что обратились в нашу компанию Рога и копыта"); текст смс same => n,GotoIf($["${RECIPIENT:0:2}" != "79"]?end); это проверка на принадлежность к мобильным номерам. Уточните формат входящих CALLERID(num) на вашей АТС - с 7 или 8? same => n,System(/usr/sbin/asterisk -rx 'dongle sms ${RECIVER} 7${RECIPIENT:1} ${TEXT}'); тут отправка с донгла. same => n,Set(COUNT=$[${COUNT} + 1]); увеличение счетчика (который не нужен, а вдруг) same => n,GotoIf($["${COUNT}" > "1"]?end); проверка и отправка на завершение exten => _X.,n(end),Goto(macro-hangupcall,s,1); Конец Обратите внимание на пометки в диалплане. В частности, Агент должен использовать вашу технологию подключения. Входящие форматы на ваши транки, 7 или 8. Если он еще не унифицирован, то рекомендую это сделать и привести в норму стандарта E164. Если входящие у вас содержат + то, вместо ${RECIPIENT:0:2} сделайте ${RECIPIENT:0:3} На этом, настройка конфигурационного файла extensions_custom.conf закончена. Теперь открываем файл queues_post_custom.conf и вставляем туда такую строку: member=Local/4015781@send-sms/n,0,4015781,hint:4015781@ext-local Где 4015781 номер существующего Агента в очереди. После этого, закрываем файл, перезагружаем диалплан командой dialplan reload и тестируем. Применять можно, например, для отправки благодарности клиенту с напоминанием времени работы или адреса компании. Чтобы не огорчить тех, кто не использует донглы или использует GoIP или другие Gsm шлюзы, на мой взгляд, есть более "красивый" метод: Идем в один из множества веб сервисов для SMS рассылок (названия писать не буду), регистрируемся у них и берем их готовые библиотеки для доступа к API. Я покажу на примере PHP API одной известной компании: #!/usr/bin/php -q <?php #парсим данные из AGI require(′phpagi.php′); $agi = new AGI(); $phone = $agi->request[′agi_arg_1′]; text = $agi->request[′agi_arg_2′]; $sender = ′INFORM′; // !!! Замените API-ключ на свой. $apikey = ′XXXXXXXXXXXXYYYYYYYYYYYYZZZZZZZZXXXXXXXXXXXXYYYYYYYYYYYYZZZZZZZZ′; $url = ′https://smspilot.ru/api.php′ ′?send=′.urlencode( $text ) .′&to=′.urlencode( $phone ) .′&from=′.$sender .′&apikey=′.$apikey .′&format=json′; $json = file_get_contents( $url ); echo $json.′′; $j = json_decode( $json ); if ( !isset($j->error)) { echo ′SMS успешно отправлена server_id=′.$j->send[0]->server_id; } else { trigger_error( $j->description_ru, E_USER_WARNING ); } Используем AGI. И в представленном диалплане меняем одну строку, а именно: same => n,System(/usr/sbin/asterisk -rx 'dongle sms ${RECIVER} ${TEXT}'); тут отправка с донгла. на: same => n,AGI(sendsms.php, 7${RECIPIENT:1}, "${TEXT}") И на этом - все. Чем данный способ лучше? Могу точно сказать, что в подобных сервисах для компаний есть возможность в качестве отправителя зарегистрировать название организации – это явно плюс в копилку лояльности клиента :) Это значит, что не нужен донг и SMS клиенту приходит не с безликих цифр, а от имени вашей компании в поле отправитель. Это, безусловно, повышает доверие и лояльность получателя SMS. Надеюсь, что данный метод будет полезен и найдёт применение в ваших бизнес-процессах. Удачи!
img
Привет! Мы в одной из предыдущих статей уже рассказывали про то, как зарегистрировать IP-телефон в CME (CUCME) , работающий по протоколу SCCP. Сегодня поговорим про то, как зарегистрировать Third Party SIP телефоны (то есть от других производителей) в CME. Настройка Для начала инициализируем SIP звонки и сервер регистрации: CME(config)#voice service voip CME(conf-voi-serv)#allow-connections sip to sip CME(conf-voi-serv)#sip CME(conf-serv-sip)#registrar server voice service voip – вход в режим конфигурации voip; allow-connections sip to sip – по-умолчанию IOS не разрешает SIP вызовы; sip – команда sip, введенная в меню конфигурации voice service voip позволяет использовать команды для настройки SIP; registrar server – определяет CME как сервер регистрации для сторонних SIP телефонов; Далее применим глобальные настройки CME: CME(config)#voice register global CME(config-register-global)#mode CME CME(config-register-global)#max-dn 10 CME(config-register-global)#max-pool 10 CME(config-register-global)#source-address 192.168.1.1 port 5060 CME(config-register-global)#tftp-path flash: CME(config-register-global)#authenticate register CME(config-register-global)#camera CME(config-register-global)#video CME(config-register-global)#create profile voice register global– вход в режим глобальных настроек CME; mode CME – устанавливает поведение устройства как CME; max-dn [X] – максимальное количество номеров dn (directory number); max-pool [Y] – максимальное количество телефонов; source-address X.X.X.X port Y – указываем откуда будут загружаться конфигурационные файлы для IP-телефонов; tftp-path flash: - корневой каталог TFTP это flash память маршрутизатора; authenticate register – аутентификация для телефонов, находящихся в другой подсети; camera – команда включает камеру; video – команда включает видео; create profile – создает конфигурационные файлы; После этого создадим номер: CME(config)#voice register dn1 CME(config-register-dn) number 1001 voice register dn1 – создание ephone-dn с меткой 1; number [номер] – указываем номер; Далее зарегистрируем SIP телефон в CME: CME(config)#voice register pool 1 CME(config-register-pool)#id mac 0123.45ab.cdef CME(config-register-pool)#type 9971 CME(config-register-pool)#number 1 dn 1 CME(config-register-pool)#username admin password admin CME(config-register-pool)#codec g711ulaw CME(config-register-pool)#dtmf-relay rtp-nte CME(config-register-pool)#camera CME(config-register-pool)#video voice register pool [X] – режим конфигурации SIP телефонов (тут pool означает телефоны); id mac XXXX.XXXX.XXXX – mac-адрес устройства (для third-party можно ввести любой); type – указываем тип телефона, для third party эта команда не обязательна; number [X] dn [Y] – назначаем на копку X номер Y; username XXXX password YYYY – включает аутентификацию для SIP телефонов с указанными данными; codec g711ulaw – указываем используемый кодек; dtmf-relay rtp-nte – указываем тип DTMF-relay; Теперь переходим к настройке на самом third-party софтфоне (на примере софтфона 3CX): Здесь необходимо заполнить следующие поля: Extension – номер, который мы создали на CME; ID – username, созданный на CME; Password – пароль, созданный на CME; IP of your PBX/SIP server – IP адрес CME;
img
Для любых интерфейсов 10/100 Мбит/с или 10/100/1000Мбит/с, то есть интерфейсов, которые могут работать на разных скоростях, коммутаторы Cisco по умолчанию устанавливают значение duplex auto и speed auto. В результате эти интерфейсы пытаются автоматически определить скорость и настройку дуплекса. Кроме того, как вы уже знаете, можно настроить большинство устройств, включая интерфейсы коммутатора, для использования определенной скорости и/или дуплекса. В реальности, использование автосогласования не требует каких либо дополнительных настроек: просто можно выставить параметры скорости и дуплекса по умолчанию, и пусть порт коммутатора определяет, какие настройки использовать автоматически. Однако проблемы могут возникнуть из-за неудачных комбинаций настроек. Автоматическое согласование в рабочих сетях Устройства Ethernet, объединенные каналами связи, должны использовать один и тот же стандарт. В противном случае они не смогут корректно передавать данные. Например, старый компьютер с сетевым адаптером стандарта 100BASE-T, который использует двухпарный UTP-кабель со скоростью 100 Мбит /с, не сможет "общаться" с коммутатором, подключенному к ПК, так как порт коммутатора использует стандарт 1000BASE-T. Даже если подключите кабель, работающий по стандарту Gigabit Ethernet, канал не будет работать с оконечным устройством, пытающимся отправить данные со скоростью 100 Мбит /с на порт другого устройства, работающем со скоростью 1000 Мбит /с. Переход на новые и более быстрые стандарты Ethernet становится проблемой, поскольку обе стороны должны использовать один и тот же стандарт. Например, если вы замените старый компьютер, который поддерживает стандарт передачи данных 100BASE-T , на новый, работающий по стандарту 1000BASE-T, то соответственно порты коммутатора на другом конце линии связи должны также работать по стандарту 1000BASE-T. Поэтому, если у вас коммутатор только с поддержкой технологии 100BASE-T, то вам придется его заменить на новый. Если коммутатор будет иметь порты, которые работают только по технологии 1000BASE-T, то соответственно вам придется заменить все старые компьютеры, подключенные к коммутатору. Таким образом, наличие как сетевых адаптеров ПК (NIC), так и портов коммутатора, поддерживающих несколько стандартов/скоростей, значительно облегчает переход к следующему улучшенному стандарту. Протокол автосоглосования (IEEE autonegotiation) значительно облегчает работу с локальной сетью, когда сетевые адаптеры и порты коммутатора поддерживают несколько скоростей. IEEE autonegotiation (стандарт IEEE 802.3 u) определяет протокол, который позволяет двум узлам Ethernet, на основе витой пары, договариваться таким образом, чтобы они одновременно использовали одинаковую скорость и параметры дуплекса. Вначале каждый узел сообщает соседям, свои "возможности" по передаче данных. Затем каждый узел выбирает наилучшие варианты, поддерживаемые обоими устройствами: максимальную скорость и лучшую настройку дуплекса (full duplex лучше, чем half duplex) . Автосогласование основывается на том факте, что стандарт IEEE использует одни и те же выводы кабеля для 10BASE-T и 100BASE-T (можно использовать кабель с двумя витыми парами). И что бы согласование проходило по технологии 1000BASE-T IEEE autonegotiation просто подключает новые две пары в кабеле (необходимо использовать кабель с четырьмя витыми парами). Большинство сетей работают в режиме автосогласования, особенно между пользовательскими устройствами и коммутаторами локальной сети уровня доступа, как показано на рисунке 1. В организации установлено четыре узла. Узлы соединены кабелем с поддержкой Gigabit Ethernet (1000BASE-T). В результате, линия связи поддерживает скорость 10Мбит /с, 100Мбит /с и 1000Мбит /с. Оба узла на каждом канале посылают друг другу сообщения автосогласования. Коммутатор в нашем случае может работать в одном из трех режимов: 10/100/1000, в то время как сетевые платы ПК поддерживают различные опции. Настроены в ручную Рисунок отображает концепцию автоматического согласования стандарта IEEE. В результате сетевая карта и порт на коммутаторе работают правильно. На рисунке показаны три ПК - 1, 2 и 3, подключенные к общему коммутатору. Сетевые адаптеры этих узлов имеют характеристики соответственно: 1 ПК 10 Mb/s, 2 ПК - 10/100 Mb/s и 3 ПК - 10/100/1000 Mb/s. ПК подключаются к коммутатору через порт поддерживающий режим работы 10/100/1000 Mb/s. С обеих сторон автосогласование включено. Результатом во всех трех случаях является: дуплекс включен в режиме FULL, выставлена соответствующая скорость. Далее разберем логику работы автосоглосования на каждом соединении: ПК 1: порт коммутатора сообщает, что он может работать на максимальной скорости в 1000 Мбит /с, но сетевая карта компьютера утверждает, что ее максимальная скорость составляет всего 10 Мбит / с. И ПК, и коммутатор выбирают самую быструю скорость, на которой они могут работать совместно (10 Мбит /с), и устанавливают лучший дуплекс (full). ПК2 сообщает коммутатору, что максимальная скорость передачи данных его сетевой карты составляет 100 Мбит /с. Это означает что ПК2 может работать по стандарту 10BASE-T или 100BASE-T. Порт коммутатора и сетевой адаптер договариваются использовать максимальную скорость в 100 Мбит /с и полный дуплекс (full). ПК3: сообщает коммутатору, что его сетевая карта может работать в трех режимах: 10/100/1000 Мбит/с, и соответственно поддерживает все три стандарта. Поэтому и сетевая карта, и порт коммутатора выбирают максимальную скорость в 1000 Мбит /с и полный дуплекс (full). Одностороннее автосогласовние (режим, при котором только один узел использует автоматическое согласование) На рисунке 1 показано двухстороннее автосогласования IEEE (оба узла используют этот процесс). Однако большинство устройств Ethernet могут отключить автоматическое согласование, и поэтому важно знать, что происходит, когда один из узлов использует автосогласование, а другой нет. Иногда возникает необходимость отключить автосогласование. Например, многие системные администраторы отключают автосогласование на соединениях между коммутаторами и просто настраивают желаемую скорость и дуплекс. Однако могут возникнуть ошибки, когда одно устройство использует автосогласование, а другое нет. В этом случае связь может не работать вообще, или она может работать нестабильно. IEEE autonegotiation (автосогласование) определяет некоторые правила (значения по умолчанию), которые узлы должны использовать в качестве значений по умолчанию, когда автосогласование завершается неудачей-то есть когда узел пытается использовать автосогласование, но ничего не слышит от устройства. Правила: Скорость: используйте самую низкую поддерживаемую скорость (часто 10 Мбит / с). Дуплекс: если ваша скорость равна 10 Мбит/, используйте полудуплекс (half duplex); Если 100 Мбит/с используйте полный дуплекс (full duplex) . Коммутаторы Cisco могут самостоятельно выбирать наилучшие настройки порта по скорости и дуплексу, чем параметры IEEE, установленные по умолчанию (speed default). Это связано с тем, что коммутаторы Cisco могут анализировать скорость, используемую другими узлами, даже без автосогласования IEEE. В результате коммутаторы Cisco используют эту свою возможность для выбора скорости, когда автосогласование не работает: Скорость: происходит попытка определения скорости (без использования автосогласования), если это не удается, используются настройки по умолчанию (устанавливается самая низкая поддерживаемая скорость, обычно 10 Мбит/с). Дуплекс: в зависимости от установленной скорости настраиваются параметры дуплекса: если скорость равна 10 Мбит/с назначается полудуплекс (half duplex), если скорость равна 100 Мбит/с, то используется полный дуплекс (full duplex). Гигабитные интерфейсы (1Gb/s) всегда используют полный дуплекс. На рисунке 2 показаны три примера, в которых пользователи изменили настройки свих сетевых карт и отключили автоматическое согласование, в то время как коммутатор (на всех портах поддерживается скорость 10/100/1000 Мбит/с) пытается провести автосогласование. То есть, на портах коммутатора выставлены параметры скорости (speed auto) и (duplex auto) дуплекса в режим auto. В верхней части рисунка отображены настроенные параметры каждой сетевой карты компьютеров, а выбор, сделанный коммутатором, указан рядом с каждым портом коммутатора. На рисунке показаны результаты работы автосогласования IEEE с отключенным режимом автосогласования на одной стороне. На рисунке показаны три компьютера - 1, 2 и 3, подключенные к общему коммутатору. Параметры сетевых адаптеров этих систем следующие: ПК1- 10/100Мбит/с, ПК2 - 10/100/1000 Мбит/с и ПК3 - 10/100Мбит/с. Компьютеры соединены с коммутатором через интерфейсы F0/1, F0/2 и F0/3. На стороне компьютеров автосогласование отключено, и произведены настройки скорости и дуплекса вручную, которые вы можете посмотреть на рисунке 2. На стороне коммутатора включено автосогласование (10/100/1000). Разберем работу устройств на рисунке: ПК1: коммутатор не получает сообщений автосогласования, поэтому он автоматически определяет скорость передачи данных ПК1 в 100 Мбит/с. Коммутатор использует дуплекс IEEE по умолчанию, основанный на скорости 100 Мбит/с (полудуплекс). ПК2: коммутатор использует те же действия, что и при анализе работы с ПК1, за исключением того, что коммутатор выбирает использование полного дуплекса, потому что скорость составляет 1000 Мбит / с. ПК3: пользователь установил самую низшую скорость (10 Мбит/с) и не самый лучший режим дуплекса (half). Однако коммутатор Cisco определяет скорость без использования автосогласования IEEE и затем использует стандарт IEEE duplex по умолчанию для каналов 10 Мбит / с (half duplex). ПК1.Итог работы этой связки: дуплексное несоответствие. Оба узла используют скорость 100 Мбит/с, поэтому они могут обмениваться данными. Однако ПК1, используя полный дуплекс, не пытается использовать carrier sense multiple access (CSMA) для обнаружения столкновений (CSMA / CD) и отправляет кадры в любое время. В свою очередь интерфейс коммутатора F0/1 (в режиме half duplex), использует CSMA / CD. Отчего порт коммутатора F0/1 будет считать, что на канале происходят коллизии, даже если физически они не происходят. Порт остановит передачу, очистит канал, повторно отправит кадры и так до бесконечности. В результате связь будет установлена, но работать она будет нестабильно.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59