VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Астрикс, не могу принять факс.

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Дюки
Сообщения: 32
Зарегистрирован: 15 ноя 2012, 18:16

Астрикс, не могу принять факс.

Сообщение Дюки »

Всем привет. Столкнулся с проблемой принятия факса и последующий отправки его на e-mail.
Кто сталкивался с данным ТЗ прошу разместите пожалуйста тут весь пусть ваших настроек.
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Астрикс, не могу принять факс.

Сообщение awsswa »

тут 2 задания
Принять факс
И отправить на почту
платный суппорт по мере возможностей
Дюки
Сообщения: 32
Зарегистрирован: 15 ноя 2012, 18:16

Re: Астрикс, не могу принять факс.

Сообщение Дюки »

В общем в поисковиках нашел вот что:
Пример диалплана для приема Факсов
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
[incoming]
exten => fax,1,NoOp(-------------------Call from ${CALLERID(number)} to ${EXTEN}------------------)
exten => fax,n,Goto(fax-rx,receive,1)

[fax-rx]
exten => receive,1,NoOP(------------------- FAX from ${CALLERID(number)} ------------------)
exten => receive,n,Answer()
exten => receive,n,Set(FILENAME=fax-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${CALLERID(number)})
exten => receive,n,Set(FAXFILE=/var/spool/asterisk/fax/receive/${FILENAME}.tif)
exten => receive,n,Set(FAXOPT(headerinfo)=Received by ${CALLERID(number)} ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M)})
exten => receive,n,Set(FAXOPT(localstationid)=OFFICE)
exten => receive,n,Set(FAXOPT(maxrate)=14400)
exten => receive,n,Set(FAXOPT(minrate)=2400)
exten => receive,n,NoOp(FAXOPT(ecm) : ${FAXOPT(ecm)})
exten => receive,n,NoOp(FAXOPT(headerinfo) : ${FAXOPT(headerinfo)})
exten => receive,n,NoOp(FAXOPT(localstationid) : ${FAXOPT(localstationid)})
exten => receive,n,NoOp(FAXOPT(maxrate) : ${FAXOPT(maxrate)})
exten => receive,n,NoOp(FAXOPT(minrate) : ${FAXOPT(minrate)})
exten => receive,n,NoOp(**** RECEIVING FAX : ${FAXFILE} ****)
exten => receive,n,ReceiveFAX(${FAXFILE})
exten => receive,n,Hangup()
exten => h,1,NoOP(------------------- FAX from ${CALLERID(number)} ------------------)
exten => h,n,NoOP(------------------- STATUS ${FAXSTATUS} ${FAXERROR} ------------------)
exten => h,n,system(/var/lib/asterisk/agi-bin/fax/fax-process.pl --to fax@asterisk.org --from asterisk@asterisk.org --subject "Fax prineat s ${URIENCODE(${CALLERID(number)})} ${URIENCODE(${CALLERID(name)})}" --attachment ${FILENAME}.pdf --type application/pdf --file ${FAXFILE});

<a href="http://asterisk-system.ru/wp-content/up ... pl">Скрипт для конвертации полученного факса и отправки на почту</a>
После отправки факса запускается перловый скрипт “sendfax_success.pl”, который отправляет на почту информацию о статусе отправки, и перемещает отправленные файлы в другую директорию. В принципе сам скрипт как пример(выставляю по просьбе трудящихся), можете переделать под ваши задачи.

#!/usr/bin/perl
#
#
#
# Developed by 2012 Mihail Belobrov
#
# Скрипт подтверждения успешной отправки факса
#

use strict;
use warnings;
use Net::SMTP;

my $response = $ARGV[0];
my $done_dir = "/var/spool/asterisk/fax/send/done";
my $queue_dir = "/var/spool/asterisk/fax/send/queue";
my $from_mail;

#парсим нужные данные
chomp($response);
my $filename = $1 if ($response =~ /\/var\/spool\/asterisk\/fax.+(sendto.+\.tif)/);
my $phone = $1 if ($response =~ /\/var\/spool\/asterisk\/fax.+sendto_(\d+)_.+\.tif/);
my $faxname = $1 if ($response =~ /\/var\/spool\/asterisk\/fax.+sendto_\d+_(.+\.tif)/);
my $file_without = $1 if ($response =~ /\/var\/spool\/asterisk\/fax.+(sendto_\d+_.+)\.tif/);

sleep(3);
#Перемещаем успешно, переданные факсы в папку done
system("/bin/mv $response $done_dir");

#Выбираем дополнительные данные

my $mail_user_to = 'fax1\@yourdomain.com';
my $mail_user_from = 'asterisk\@yuordomain.com';
my $mail_server = 'mail.yourdomain.com';
my $mail_user = 'fax1\@yourdomain.com';

my $subj = 'Fax otrpavlen';
my $Body='Факс '.$faxname.' на номер '.$phone.' отправлен успешно!';

my $smtp = Net::SMTP->new($mail_server);
$smtp->mail($ENV{USER});
$smtp->to($mail_user);
$smtp->data();
$smtp->datasend("To: $mail_user_to\n");
$smtp->datasend("From: $mail_user_from\n");
$smtp->datasend("Subject: $subj\n");
$smtp->datasend("\n");
$smtp->datasend("$Body\n");
$smtp->dataend();
$smtp->quit;
=============================================================
Не помню где стянул. Но не могу разобраться в его работе. Пожалуйста разжуйте.
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Астрикс, не могу принять факс.

Сообщение zzuz »

Жую.
В диаплане принимается факс через драйвер fax_digium.so . Далее отправляется письмо с этим факсом кривым скриптом на Perl пьяного программиста , который писал его 15 лет назад.
Линия24 - Системы Массового Телефонного Обслуживания
Дюки
Сообщения: 32
Зарегистрирован: 15 ноя 2012, 18:16

Re: Астрикс, не могу принять факс.

Сообщение Дюки »

Да мне все равно на перле он или на языке древних египтян. По сути можете выложить рабочий вариант с разъяснениями.
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Астрикс, не могу принять факс.

Сообщение zzuz »

Вы уже скачали рабочий скрипт. Разъяснения у автора спрашивайте. Копание в чужом коде - работа неблагодарная.
Как пользоваться скриптом указано в примере
exten => h,n,system(/var/lib/asterisk/agi-bin/fax/fax-process.pl ....
Линия24 - Системы Массового Телефонного Обслуживания
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Астрикс, не могу принять факс.

Сообщение awsswa »

платный суппорт у нас приветствуется :)
желающих тут помочь море
платный суппорт по мере возможностей
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Астрикс, не могу принять факс.

Сообщение awsswa »

спугнешь клиента :)
платный суппорт по мере возможностей
Дюки
Сообщения: 32
Зарегистрирован: 15 ноя 2012, 18:16

Re: Астрикс, не могу принять факс.

Сообщение Дюки »

switch писал(а):awsswa, да ты что! Он же поставил Астерикс и теперь ему все должны!
Без таких соплей как ты уже разобрался. Сделал удобнее. Да и нахрен этот форум нужен, 20 процентов новичков, 5 процентов гуру. Остальные такие как ты маразматики. Так что "ВАСЯ" мы тебе не фраера!
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Астрикс, не могу принять факс.

Сообщение zzuz »

Дюки , Вы не представляете , как я рад вашему высказыванию. Потому что я начал беспокоиться , что на этой недели нарушится статистика. А заключается она , эта статистика , что в неделю раз-два появляется требовательный и хамский быдлоадмин и начинает свой танец эникейщика, потрясывая пузом и раздутыми щеками. Пойду бахну чего-нить по этому поводу))
Линия24 - Системы Массового Телефонного Обслуживания
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH