222 просмотров
от (120 баллов) в категории Тонкая настройка

Хочу настроить приложение, которое бы при входящем в нерабочее время отправляла письмо на общую почту с номером входящего звонка. Но не понимаю как работать с почтовым приложением, выдернул кусок кода из четвертой аскозии из callflow:

n,System(echo "Date: \`date -R\`" > /tmp/email-${UNIQUEID})
n,System(echo "To: address" >> /tmp/email-${UNIQUEID})
n,System(echo "Subject: Пропущенные вызовы, Caller: ${CALLERID(all)}" >> /tmp/email-${UNIQUEID})
n,System(echo "From: AskoziaPBX Notifications <address>" >> /tmp/email-${UNIQUEID})
n,System(echo "X-Mailer: AskoziaPBX" >> /tmp/email-${UNIQUEID})
n,System(echo "Content-Type: multipart/mixed\; boundary=\"EMAIL-154b2cedbb4ec9a1e48c763c7bb68b38\"\n" >> /tmp/email-${UNIQUEID})
n,System(echo "--EMAIL-154b2cedbb4ec9a1e48c763c7bb68b38" >> /tmp/email-${UNIQUEID})
n,System(echo "Content-Type: text/plain\; format=flowed\; charset=UTF-8" >> /tmp/email-${UNIQUEID})
n,System(echo "Content-Disposition: inline" >> /tmp/email-${UNIQUEID})
n,System(echo "Content-Transfer-Encoding: 8bit\n" >> /tmp/email-${UNIQUEID})
n,System(echo "\n\nDate: ${STRFTIME(${EPOCH},,%d%m%Y-%H:%M:%S)}\nCaller ID: ${CALLERID(all)}\n" >> /tmp/email-${UNIQUEID})
n,System(echo "--EMAIL-154b2cedbb4ec9a1e48c763c7bb68b38" >> /tmp/email-${UNIQUEID})
n,System(/usr/bin/msmtp -C /etc/msmtp.conf -t < /tmp/email-${UNIQUEID})

но естественно оно не работает, а я даже не понимаю как его отладить. 

1 Ответ

от (122 тыс. баллов)

Ниже предлагаю альтернативу "dialplan приложению". Она более правильная и ближе к идеологии Askozia. 

Лучше описать "php приложение". Пример кода скрипта:

<?php

require_once 'phpagi.php';

require_once 'globals.php';

$agi = new AGI();

$FROM_DID = $agi->get_variable("FROM_DID",  true); 

$linkedid   = $agi->get_variable('CDR(linkedid)', true); 

$agi_callerid = $agi->request['agi_callerid']; 

$to = 'help@miko.ru';

$subject = 'Тема письма';

$body = "Текст письма. Допускается применять HTML. <br>".

"Клиент позвонило на номер: {$FROM_DID} <br>".

"Номер телефона клиента: {$agi_callerid} <br>".

"Идентификатор звонка: {$linkedid} <hr>" ;

// $linkedid - по этому ID работает поиск в истории звонков на АТС. 

// Отправляем письмо.

\Notifications::send_mail($to, $subject, $body);

 См. документацию:

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

Популярные теги

askozia входящие-вызовы настройка исходящие маршрутизация провайдер запись-разговоров входящие ivr исходящие-звонки обновление ошибка очередь провайдеры битрикс24 очередь-вызовов переадресация запись установка маршрут история-звонков mikopbx транк панель-телефонии-1с перевод-вызова перевод askozia7 askozia6 битрикс callerid интеграция голосовая-почта логи перехват-вызова ростелеком нерабочее-время факс модуль nat docker запись-разговора веб-интерфейс bitrix24 goip настройка-провайдер история диалплан почта журнал-звонков релиз gsm вызовы звонок внешние-номера web-интерфейс zabbix маршруты cdr sip панель pjsip переадресация-мобильный voicemail ascozia телефонная-книга аон мобильный звонков лицензирование вызовов редактор номер asterisk лицензия ami регистрация оповещения провайдеров время голосовая fax trunk разговоров группы-пользователей #mikopbx пропущенные-звонки донабор beeline monitoring тишина smtp cisco мобильные мультифон мегафон шлюз не-работает электронная-почта не-слышно-звук

2.8 тыс. вопросов

2.4 тыс. ответов

6.7 тыс. комментариев

465 тыс. пользователей

...