Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
autodial [2018/04/06 14:47] – flut | autodial [2023/05/16 09:20] (текущий) – внешнее изменение 127.0.0.1 |
---|
| АвтоОбзвон - Частные приложения |
| |
| |
| 1. Информирование звонка при нажатии определенных кнопок на почту клиента. |
| |
| 1) Для начала открываем В БД таблицу company_var. Здесь хранится частные переменные. Делаем копию строки с содержанием autodialCustomAction и меняем: |
| а) company_id - на тот, кому нужно добавить частное приложение |
| б) value - значение переменной autodialCustomAction, которое будет отрабатывать в extension. Для удобства юзается infoscript(номер) переменные. |
| с) description - описание, если требуется изменить (так будет называться задача в л.к. |
| |
| 2) Заходим на наш сервак pbx1 и открываем в директории /etc/asterisk/ast_extent файл extens_outbound-autodial |
| а) В контексте outbound-autodial-leg2 копируем строчку |
| |
| exten => infoscript2,1,Goto(outbound-autodial-infoscript2,${EXTEN},1); |
| |
| где, infoscript2 - имя значения переменной autodialCustomAction |
| outbound-autodial-infoscript2 - контекст, на который будет ссылаться данная переменная |
| |
| б) В самом низу копируем контекст вида outbound-autodial-infoscript2 |
| и вставляем внизу: |
| |
| |
| <html> <code> |
| Код: |
| |
| [outbound-autodial-infoscript2] <br> |
| exten => infoscript2,1,Answer() <br> |
| exten => infoscript2,n,Background(/asterisk/ivr/1002789/0JHQlNCUINCW0YPRh9C60L7QstCwINC8Lg) <br> |
| exten => infoscript2,n,Queue(${queue_name}) <br> |
| |
| exten => [023456789],1,Set(info_comfirm=${EXTEN}) <br> |
| exten => [023456789],n,Playback(/var/lib/asterisk/sounds/ru/queue-thankyou) <br> |
| |
| exten => 1,1,Set(info_comfirm=${EXTEN}) <br> |
| exten => 1,n,AGI(agi://web.new-tel.net/sendmail.php,${groupe_name},${EXTEN}) <br> |
| exten => 1,n,Playback(/var/lib/asterisk/sounds/ru/queue-thankyou) <br> |
| |
| exten => h,1,ExecIf($[${EXISTS(${MEMBERNAME})}]? <br> Set(ODBC_AUTODIALANSW(${taskid},${CALLERID(num)},${MEMBERNAME},${CDR(uniqueid)})=1)) <br> |
| |
| </code> </html> |
| |
| Основная инфа: |
| |
| exten => infoscript2,1,Answer() - отработка ответа по нашей переменной. |
| |
| exten => infoscript2,n,Background(/asterisk/ivr/1002789/0JHQlNCUINCW0YPRh9 - отработка проигрывания фонового звукового файла (ivr) по такому-то пути. Путь узнается по нужной группе и нужного имени файла. |
| |
| exten => infoscript2,n,Queue(${queue_name}) - отработка очереди (не используется и происходит hangup послуш прослушивания). |
| |
| |
| |
| |
| exten => [023456789],1,Set(info_comfirm=${EXTEN}) - отработка нажатия кнопок (что будет происходит после нажатия указанных кнопок). Установка значения переменной info_comfirm в текущий exten. |
| |
| exten => [023456789],n,Playback(/var/lib/asterisk/sounds/ru/queue-thankyou) - после отработки кнопок проигрывания указанного файла. |
| |
| exten => 1,1,Set(info_comfirm=${EXTEN}) - отработка нажатия кнопки. Установка значения переменной info_comfirm в текущий exten. |
| |
| exten => 1,n,AGI(agi://web.new-tel.net/sendmail.php,${groupe_name},${EXTEN}) - после нажатия кнопки передача отработки по AGI скрипту sendmail.php |
| |
| exten => 1,n,Playback(/var/lib/asterisk/sounds/ru/queue-thankyou) - после отработки кнопки проигрывания указанного файла. |
| |
| Соответственно нужно настроить так, как требует клиент. |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| 3) на web.new-tel.net открыть директории /var/www/newtelpro/fastagi |
| и открыть файл sendmail.php. |
| Скопировать данные с заменой на нужную группу и почту: |
| |
| <html> <code> |
| if ($groupe_name == '1002789') { |
| <br> |
| //if (${groupe_name} == '1002789') { |
| <br> |
| $mail->AddReplyTo("accountservice@new-tel.pro", "New-Tel Accounts Service"); |
| <br> |
| $mail->SetFrom('noreply@web.new-tel.net', "New-Tel Accounts Service"); |
| <br> |
| //$mail->AddAddress("ev.som15@gmail.com"); |
| <br> |
| $mail->AddAddress("zhuchkova@dpokadrov.ru"); |
| <br> |
| $mail->CharSet = 'utf-8'; |
| <br> |
| $mail->Subject = 'Заказ звонка. C номера: ' . $dnid_num[0][0] . ' Время звонка: ' . date("Y-m-d H:i") . '.'; |
| <br> |
| $mail->MsgHTML('Заказ звонка. C номера: ' . $dnid_num[0][0] . ' Время звонка: ' . date("Y-m-d H:i") . '.'); |
| <br> |
| $mail->Send(); |
| } <br> |
| ?> <br> |
| </code> </html> |
| |
| где, SetFrom - с какой почты идет письмо информирования |
| AddAddress - на какой адрес будет происходить информирование. |
| |
| |
| |
| 4) После редактирования файла проинформировать Ярослава чтобы он норм перезапустил php скрипт. |
| Вероятно для правильной работы нужно будет юзать наш проект в NetBeans программе. |
| |
| |
| Дальше просто создаем задачу и проверяем, что все работает. |
| |