Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

спросил 2014-02-27 13:05:33 +0400

Elvision Gravatar Elvision

Скрипт выполняется только вручную

Добрый день! Со скриптами и Астериском только начинаю свое знакомство, а начальство как обычно говорит что должно работать уже вчера. Есть простенький скрипт, который при пришествии факса должен отправлять сообщение на e-mail. Выполняя этот скрипт вручную из командной строки все работает хорошо, но когда скрипт выполняется астериском не происходит вообще ничего(в логах Астериска есть запись о вызове скрипта). Пересмотрел весь форум, в похожей теме ответа не нашел. Разрешения на используемые папки поставил 777, подскажите в какую сторону посмотреть? Тело скрипта прилагаю:

#!/usr/bin/perl -w

use MIME::Base64; use Net::SMTP;

my $smtpmailfrom = "pochta\@bk.ru"; my $smtp_addr = "smtp.mail.ru"; my $email = "Poluchatel\@mail.ru";

my $subj = "Fax prinat"; my $Body = "Fax prinat"; my $code = encodebase64("Password"); my $login = encodebase64('pochta@bk.ru');

$smtp = Net::SMTP->new('smtp.mail.ru', Debug => 1, Port=> 25, Timeout => 40

print $smtp->domain, "\n"; $smtp->datasend("AUTH LOGIN\n"); $smtp->response(); $smtp->datasend($login); $smtp->response(); $smtp->datasend($code); $smtp->datasend("\n"); $smtp->response(); $smtp->mail($smtpmailfrom); $smtp->recipient($email); $smtp->data(); $smtp->datasend("Subject: $subj \n"); $smtp->datasend("\n"); $smtp->datasend("$Body \n"); $smtp->dataend(); $smtp->response(); $smtp->quit; print "done\n\n";

Скрипт выполняется только вручную

Добрый день! Со скриптами и Астериском только начинаю свое знакомство, а начальство как обычно говорит что должно работать уже вчера. Есть простенький скрипт, который при пришествии факса должен отправлять сообщение на e-mail. Выполняя этот скрипт вручную из командной строки все работает хорошо, но когда скрипт выполняется астериском не происходит вообще ничего(в логах Астериска есть запись о вызове скрипта). Пересмотрел весь форум, в похожей теме ответа не нашел. Разрешения на используемые папки поставил 777, подскажите в какую сторону посмотреть? Тело скрипта прилагаю:

#!/usr/bin/perl -w

-w use MIME::Base64; use Net::SMTP;

my $smtpmailfrom Net::SMTP; my $smtp_mail_from = "pochta\@bk.ru"; my $smtp_addr = "smtp.mail.ru"; my $email = "Poluchatel\@mail.ru";

"Poluchatel\@mail.ru"; my $subj = "Fax prinat"; my $Body = "Fax prinat"; my $code = encodebase64("Password"); encode_base64("Password"); my $login = encodebase64('pochta@bk.ru');

encode_base64('pochta@bk.ru'); $smtp = Net::SMTP->new('smtp.mail.ru', Debug => 1, Port=> 25, Timeout => 40

40 print $smtp->domain, "\n"; $smtp->datasend("AUTH LOGIN\n"); $smtp->response(); $smtp->datasend($login); $smtp->response(); $smtp->datasend($code); $smtp->datasend("\n"); $smtp->response(); $smtp->mail($smtpmailfrom); $smtp->mail($smtp_mail_from); $smtp->recipient($email); $smtp->data(); $smtp->datasend("Subject: $subj \n"); $smtp->datasend("\n"); $smtp->datasend("$Body \n"); $smtp->dataend(); $smtp->response(); $smtp->quit; print "done\n\n";

"done\n\n";

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.