lVlOzART
@lVlOzART

Скрипт для отправки на почту номера телефона пропущенного вызова из названия файла записи звонков?

Имеется астериск, пишет все звонки в формате /var/spool/asterisk/monitor/YYYY/MM/DD/in(или out)-Номер транка-номер_звонившего_в_формате89********-YYYYMMDD-HHMMSS-цифровой_идентификатор_для_CDR.wav Нужен скрипт который в начале рабочего! дня, к примеру в 8:00 формировал список из номер_звонившего_в_формате89******** за предыдущий день с 17:00 по время выполнения скрипта, и если понедельник то с 17:00 пятницы по время выполнения скрипта и отправлял на электронку. 3a80ecd186ba46898c475eea4b091416.jpg На пикче протестировал отправку на почту вывода ls данной папки, предполагаю что либо поиском по всей папке искать содержащее текущую дату файло либо шагать по папкам, как это сделать не представляю, задача поставлена недавно, курю маны и попутно задаю вопрос здесь. 2 главных вопроса это как искать нужный файл в зависимости от даты и как отсортировать вывод, если будет подробнее то вобще замечательно. Заранее благодарен!
  • Вопрос задан
  • 291 просмотр
Решения вопроса 1
lVlOzART
@lVlOzART Автор вопроса
Дошли руки наконец то - вот готовое решение под мои нужды, может кому то пригодится:
Crontab -e:
#баш
#путь к башу
#в понедельник (1) 8:00 выполнять еженедельный скрипт
#во вт ср чт пт (2-5) 8:00 выполнять ежедневный скрипт
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
00 8 * * 1 /bin/bash .bin/crontab.weekly
00 8 * * 2-5 /bin/bash .bin/crontab.daily

crontab.weekly !!! +х
#ищем в папке записей все вавки за прошедшие 3780 минут (с 17:00 пятницы по 08:00 понедельника) | отбираем по префиксу входящих | отрезаем кусок с номером | шлем #на почту

find /var/spool/asterisk/monitor/ -name *.wav -cmin -3780 | grep 'in'| cut -c43-74 | mail -s "Пропущенные с 17:00 пятницы" почта@почта.почта -t почта1@почта.почта , почта2@почта.почта

crontab.daily !!! +х
#аналогично, только 900 минут

find /var/spool/asterisk/monitor/ -name *.wav -cmin -900 | grep 'in'| cut -c43-74 | mail -s "Пропущенные с 17:00 вчерашнего дня" почта@почта.почта -t почта1@почта.почта , почта2@почта.почта

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

d1d5c7c8b2d6404c927a045bff706042.jpg
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
saboteur_kiev
@saboteur_kiev Куратор тега bash
software engineer
Курите ман по команде find.

Но у вас вопроса нет, у вас задание "дайте мне кто-нибудь скрипт".
Обратитесь на биржу, такое за 100-200 рублей кто-нить сделает.
Ответ написан
@silverjoe
Проще с CRM интегрировать Астер и не надо будет таких костылей делать.
Ответ написан
Leksnsk
@Leksnsk
Поставьте себе Asterisk-CDR-Viewer-Mod:
https://github.com/prog-it/Asterisk-CDR-Viewer-Mod
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы