The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"универсальный скрипт отправки e-mail"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"универсальный скрипт отправки e-mail"  
Сообщение от sergey_green (??) on 08-Май-07, 17:49 
здравствуйте господа!
есть необходимость написать универсальную функцию отправки e-mail на заданный адрес, через заданный SMTP-сервер. универсальную значит для Solaris, freeBSD, Linux. Дело в том что в моей Solaris например нет sendmail, фря тоже урезанная и т.п.
возможно это легко, но я плохо знаю shell.
варианты типа:

#!/bin/sh
cat mess.txt | telnet 121.212.23.111 25

или

#!/bin/sh
cat mess.txt > telnet 121.212.23.111 25

где, mess.txt:
---------------
helo MyName
MAIL FROM:xxx@xxx.ru
RCPT TO:adres@mail.ru
DATA
bla-bla!!
.
---------------

НЕ РАБОТАЮТ!
Подскажите плизз идеи.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "универсальный скрипт отправки e-mail"  
Сообщение от Alexander S. Salieff email on 08-Май-07, 17:58 
Не работают, потому что ввод/вывод получается несинхронизированный. Ты вываливаешь все сразу, а нужно чтоб была последовательность запрос-ответ. Смотреть нужно в сторону expect.
Вроде такого:

#!/usr/bin/expect

spawn telnet smtp.mail.com 25

expect "220 "
send "lhlo localhost\n"
expect "250 "
send "mail from: <john@yandex.ru>\n"
expect "250 "
send "rcpt to: <alisa@mail.ru>\n"
expect "250 "
send "data\n"
expect "354 "
send "Test message string 0
Test message string 1
Test message string 2
Test message string 3
Test message string 4
Test message string 5
Test message string 6
Test message string 7
Test message string 8
Test message string 9
.
"
expect "250 "
send "quit\n"
expect eof

Ну, естесственно по уму ошибки там обрабатывать нужно и т.д. Expect предоставляет достаточно гибкие языковые средства и позволяет все это делать.

Если expect не катит, можно на perl'е налабать или еще на чем-нибудь...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "универсальный скрипт отправки e-mail"  
Сообщение от sergey_green (??) on 10-Май-07, 17:41 
Спасибо за идеи господа.
perl это чудо конечно, но к сожалению его нет на салярке, а ставить его удаленно на все мои 15 девайсов, как то не хочется..., к тому же не секьюрно это.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "универсальный скрипт отправки e-mail"  
Сообщение от jd (??) on 10-Май-07, 02:13 
Можно использовать программу nail - это аналог mail, который работает с SMTP.
Сейчас это вроде находится здесь:
http://heirloom.sourceforge.net/mailx.html
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "универсальный скрипт отправки e-mail"  
Сообщение от dronord (ok) on 16-Май-07, 13:25 
Что-то не пойму, команды mail(x) нет?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "универсальный скрипт отправки e-mail"  
Сообщение от sergey_green (??) on 17-Май-07, 11:16 
>Что-то не пойму, команды mail(x) нет?

есть mail (и mailx на соляре), но на некоторых девайсах письма возвращаются root`y типа "не могу доставить и всё такое", а с некоторых нормально уходят, проблема наверно в настройках почтовой системы DNS или х.е.з. чего. поэтому и хочется сделать железно, универсально.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру