Portál AbcLinuxu, 26. dubna 2024 21:43


Dotaz: Spuštění skriptu po příchodu emailu

17.6.2006 10:43 swejk
Spuštění skriptu po příchodu emailu
Přečteno: 262×
Odpovědět | Admin
Zdravíčko, má někdo typ jak vykonat skrypt např. sh nebo php když mi přijde do qmailu pošta ze které se vezmou např. dvě první slova jako proměné? dík.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

17.6.2006 12:11 temporary | skóre: 17
Rozbalit Rozbalit vše Re: Přišlí email
Odpovědět | | Sbalit | Link | Blokovat | Admin
Napada me ne zrovna nejcistejsi reseni, ale pravdepodobne by se dala dopsat funkce do /var/qmail/bin/qmail-scanner-queue.pl, pokud tedy pouzivas qmail s podporou qmail-scanneru.
Mostly harmless
19.6.2006 15:14 swejk | skóre: 7
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Odpovědět | | Sbalit | Link | Blokovat | Admin
a nějaké čistější řešení?
19.6.2006 15:26 swejk | skóre: 7
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Napadá mě že by šlo nějak dostat se k tomu mejlu ve /var/spool/vpopmail/domains/domena.neco/ucet/Maildir/new/soubor_mejlu
Obsah z toho mejlu by šel získat gawkem. Ale nevím jak dosáhnout toho aby mi nějakej vlastní program kontroloval nové mejli v tom adresáři vzal obsah gawgem a mejl vymazal.
Je to uskutečnitelný udělat třeba bash skriptem spouštěným cronem?
Má někdo nějaký jiný návrh?

Dík.
19.6.2006 23:38 temporary | skóre: 17
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
jo, přesně. pokud je jedná o aplikaci skiptu až po doručení do schránky pak samozřejmě
$ man dot-qmail.
Mostly harmless
20.6.2006 22:15 swejk
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Tak jsem neco vyčet z dot-qmail.
Takže když mi přijde email spustim skrypt (php)
V domovskym adresáři mam soubor .qmail a vněm | /cesta/skript.php, ten se mi vpohodě provede ale nevim jak přenést do skriptu proměnou která by obsahovala celí text emailu.
V man jsem vyčet jenom nějaké proměné jako SENDER, HOST. Ale nevím jak tam dostat ten obsah :-(
20.6.2006 22:50 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Obsah mailu dostane ten skript na standardním vstupu.
21.6.2006 12:21 swejk | skóre: 7
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Něco jsem přečet o standardních vstupech a výstupech ale stále mi není jasné jak to dostanu do toho skryptu do proměné. Můžete mi to nějak víc upřesnit?
21.6.2006 15:25 swejk | skóre: 7
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Když do toho php skriptu prásknu tohle

$stdin = fopen('php://stdin', 'r');

tak: echo $stdin; je "Resource id #5" to nevim co to je když obsah mejlu je jinej
21.6.2006 15:34 zelial | skóre: 21
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
22.6.2006 09:43 swejk | skóre: 7
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Super pomohlo díky moc za rady.
19.6.2006 15:46 zelial | skóre: 21
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Odpovědět | | Sbalit | Link | Blokovat | Admin
pokud by stacilo ten skript volat az pri dorucovani do schranky, tak bych pouzil .forward soubor v homu uzivatele, kteremu ten mail prichazi. syntaxe je +- takovahle:

\username, "|/usr/local/bin/nejaky_script"

v podstate to mail rozdovji: 1. kopie se doruci (diky tomu \username) uzivateli username a 2. kopie se preda nejakemu_scriptu na zpracovani
20.6.2006 09:37 Jiří Lisický | skóre: 31 | blog: JIL_blog | Olomouc
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
a nebo procmail či maildrop pokud by jste chtěl nějaké složitější podmínky pro zpracování mailu
21.6.2006 21:29 skrypt
Rozbalit Rozbalit vše Re: Spuštění skriptu po příchodu emailu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Skrypt je neproveditelný, jeho typ není známý, zejména po jeho proměné (či proměně?).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.