Сайт о горячих клавишах.





Автоматизация обновлений через почту








Received: from jkeks@localhost (localhost [127.0.0.1]) Mon, 5 May 2003 20:50:15 GMT
Date: Tue, 6 May 2003 02:50:14 +0600
From: localhost /jkeks@localhost/
X-Mailer: The Bat! (v1.62/Beta6)
Reply-To: localhost /jkeks@localhost/
X-Priority: 3 (Normal)
Message-ID: /316251540.20030506025014@localhost/
To: subjex@localhost
Subject: Автоматизация добавления
MIME-Version: 1.0
Content-Type: text/plain; charset=Windows-1251
Content-Transfer-Encoding: 8bit

Автоматизация обновления

Как будет реализован процесс

В TheBat пишется статья и если она не требует доработки, то отправляется на

локальный сервер, которым служит shttps

Данный сервер просто напросто возвращает наши сообщения обратно в Бат, при

этом в Бате генерируется событие, на которое мы назначаем функцию. Данная

функция создает временный файл и запускает Перл с нашим скриптом, которому в

параметре указывается имя временного файла.

Данный скрипт парсит MSG формат, достает необходимые поля, формирует пакет

POST запроса и отправляет на указанный в интернете сайт.

После чего скрипт завершает работу.

Удаляется временный файл сообщения.

Для конечного пользователя все будет выглядеть как будто он отправил

сообщение.

Проблемы

Бат не умеет запускать программу по началу отправки, это значит, что наш

сервер необходимо запускать вручную, либо искать пути автоматизирования

данного процесса.

На момент отправки необходимо подключение к интернет. Вопрос решается путем

принудительного указания использования такого-то инет соединения.

Как использовать несколько разных POST запросов?

На данный момент система дурацкая:

В поле темы указывается имя задания.

Первая не пустая строчка сообщения - имя статьи

остальное - статья

решение же лежит на поверхности.

Темы - это различные email локальные ящики.

Тема - есть тема

А сообщение - сообщение.

Это заставляет нас и в Бате создавать дополнительные ящики, однако - это

необязательно. Обработка сообщений будет идти тогда на событие отправки

сообщения и срабатывает только при удачной отправке.

Отправляем на указанный ящик, но не принимаем никуда (хотя если надо то можно

и создать конечно)

Ну все!... готово..

все ошибки исправлены..

все работает.. кому релиз перла ?

Да что там говорить.. кусок никчемного кода кидаю всем:

OpenSourse

--------------------
#!/perl/bin/perl
#Auto Update site news, subjex and etc.

#---------------------------------------parse data---
undef $/;
open (A,$ARGV[0]);
$a=/A/;
close (A);
#print $a;

$a=~m/\n\n/sm;

$task=$`;
$msg_=$';

$task=~/Subject: (.+)$/m;
$sbjx=;
$task=~/To: (\w+)@.+$/m;
$task=;
$msg_=~s/\n+//;

print "$task-$sbjx-$msg_";
getc;
#----------------------------------------send data---
# $task
# $sbjx
# @msg_

if ($task=~/subjex/i)
{
use HTTP::Request::Common qw(POST);
use LWP::UserAgent;
$ua = LWP::UserAgent-/new;
my $req = POST 'http://jkeks.ru/cgi-bin/subjex.pl',
# 'http://localhost/cgi-bin/1.pl',
[
l =/ 'test',
p =/ 'testpasword',
action =/ 'filterSbjx',
sbjxTitle =/ $sbjx,
sbjx =/ $msg_
];
$a=$ua-/request($req)-/as_string;
open (A,"/c:/a");
print A $a;
close (A);
print $a;
getc;
} 
-------------------------

Все!

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



Edit

Яндекс.Метрика
jAntivirus