Страница 1 из 1

Отправка электронки.

СообщениеДобавлено: 23 апр 2010 22:38
VooDoo
Нужен как воздух скриптик, отправляющий приватный текст на e-mail. Адрес отправки один и задан в скрипте - так что не для спама это.
Нашёл один забугорный, но разобраться никак не могу, увы.

Re: Отправка электронки.

СообщениеДобавлено: 24 апр 2010 09:19
VooDoo
Нашёл у вас sendmail.tcl

Код: Выделить всё
proc ::sendmail::msg { nick uhost hand args } {
   global sendmail botnick
   if { [llength [split [lindex $args 0] ] ] > 1 || [llength [split [lindex $args 0] ] ] == 0 } { set args [split [lindex $args 0]] }
   if {[llength $args]==0} { ::egglib::outh $nick $nick "!sendmail" "<от(mail)> <кому(mail)> <'тема'> <'текст'>"; return }
   ::egglib::log $nick $nick "sendmail" $args
   set from ""; set to ""; set subject ""; set text ""
   set from [lindex $args 0]
   set to [lindex $args 1]
   set subject [lindex [split $args \'] 1];
   if { $subject == "" } { set subject [lindex $args 2] }
   set text [lindex [split $args \'] 3];
   if { $text == "" } { set text [lrange $args 3 end] }
   if { $to == "" } { ::egglib::outh $nick $nick "!sendmail" "<от(mail)> <кому(mail)> <'тема'> <'текст'>"; return }
   if { $subject == "" } { ::egglib::outh $nick $nick "!sendmail" "<от(mail)> <кому(mail)> <'тема'> <'текст'>"; return }
   if { $text == "" } { ::egglib::outh $nick $nick "!sendmail" "<от(mail)> <кому(mail)> <'тема'> <'текст'>"; return }
   if {![string match "*@*" $from]} { set from "i.am.too.l@me.to.set.mail.correctly" }
   if {![catch {open "| $sendmail(path) -f $from -t" "w"} message]} {
           puts $message "To: $to"
           puts $message "From: $from"
           puts $message "Subject: $subject"
           puts $message "$text Не скажу от кого письмо =\"
           close $message
           ::egglib::out $nick $nick "Ваше сообщение отправлено."
           return
       }


Tcl error [::sendmail::msg]: extra characters after close-quote

Re: Отправка электронки.

СообщениеДобавлено: 24 апр 2010 17:16
VooDoo
Форум-призрак - ни одной живой души :cry:

Re: Отправка электронки.

СообщениеДобавлено: 24 апр 2010 20:36
tvrsh
И при каком действии такая ошибка? Кто будет показывать errorInfo?

Re: Отправка электронки.

СообщениеДобавлено: 24 апр 2010 22:18
VooDoo
!sendmail vasya@domain.ru vova@domain.ru тема проверка связи.

При правильно введённой команде выдаёт.

Re: Отправка электронки.

СообщениеДобавлено: 25 апр 2010 00:58
tvrsh
.set errorInfo сразу после ошибки покажи.

Re: Отправка электронки.

СообщениеДобавлено: 25 апр 2010 01:35
VooDoo
век живи, век учись...

пока разобрался сам.

было так:
Код: Выделить всё
if {![catch {open "| $sendmail(path) -f $from -t" "w"} message]} {


надо так:
Код: Выделить всё
if {![catch {open | "$sendmail(path) -f $from -t" "w"} message]} {


как дальше пойдёт отпишусь.
Сэнкс!

-------

Уже отписываюсь :)
Не отсылает. Это error теперь.

Currently: expected integer but got "w"
Currently: while executing
Currently: "open | "$sendmail(path) -f $from -t" "w""

Re: Отправка электронки.

СообщениеДобавлено: 25 апр 2010 09:51
tvrsh
Чтобы убрать ошибку extra characters after close-quote надо в строке
           puts $message "$text Не скажу от кого письмо =\"
убрать последний элемент смайлика =\ так как он экранирует закрывающую кавычку.
Или вообще сделать так:
           puts $message "$text"

Re: Отправка электронки.

СообщениеДобавлено: 25 апр 2010 11:50
VooDoo
Currently: expected integer but got "w"
Currently: while executing
Currently: "open | "$sendmail(path) -f $from -t" "w""


А это как?
---
И, кстати, как заставить бота вывести в тексте \ ?

Re: Отправка электронки.

СообщениеДобавлено: 26 апр 2010 16:23
tvrsh
Эта ошибка стала появляться после того как ты сделал это: viewtopic.php?p=706#p706
Самому трудно догадаться все вернуть назад?
Также как и любой другой символ. Только если у тебя после \ должна идти закрывающая кавычка то оставить перед ней пробел.
<tvrsh> $$ putserv "PRIVMSG $chan :test\ "
<@bionic> test
<@bionic> OK - 0.276 ms.
<tvrsh> $$ putserv "PRIVMSG $chan :test\"
<@bionic> Error: missing " - 0.118 ms.

Re: Отправка электронки.

СообщениеДобавлено: 26 апр 2010 19:00
VooDoo
Итак!

1. Пока в тикле туговато порой догадываться. Скипт принял наконец-то рабочий вид. Как теперь заставить его присылать не белиберду? Я о кодировке.

2. \ удалось вывести на канал так: ...\\ "

P.S. В целом ужЕ БОЛЬШОЕ спасибо за помощь и отзывчивость!

Re: Отправка электронки.

СообщениеДобавлено: 26 апр 2010 22:17
tvrsh
VooDoo писал(а): Я о кодировке.

Когда ты научишься задавать вопросы по конкретным ошибкам?

Re: Отправка электронки.

СообщениеДобавлено: 26 апр 2010 22:44
VooDoo
Встречный вопрос: когда ты научишься вникать в суть вопроса?
Из поста видно, что текст, вполне понятный, был отослан в одной кодировке, а на мыло он попал совершенно в другой и стал представлять из себя некую крокозябру. Вот КАК, именно КАК заставить бота присылать на мыло ТО, ЧТО было непосредственно послано ему???

Скрипт есть у вас на сайте, потести сам. Что мы как сломанное радио?..

Re: Отправка электронки.

СообщениеДобавлено: 26 апр 2010 22:50
tvrsh
Идиот, может ты покажешь эту, как ты выразился, "крокозябру"? Я понятия не имею что и в какой кодировке у тебя работает. Скрипт нужен тебе и по-этому тести его сам, мне все это абсолютно без надобности.
Дебил.

Re: Отправка электронки.

СообщениеДобавлено: 27 апр 2010 15:43
VooDoo
Во как! Спасибо за лестные слова. Тогда нахуя сайт носит название eggHELP? Чтоб с высоты модератора всех слать? Раз такое громкое название, то в идеале надо иметь бы бота и на нём отрабатывать скрипты, которые тем более имеются на вашем сайте. За них надо бы быть в ответе. А так у вас пока свалка скриптов, а не "рабочие лошадки".
За "идиот" и "дебил" имею право послать вас, молодой человек, на хуй, что непосредственно и делаю!
Про convertto/convertfrom не судьба отписать? Долбоёб... Эт те в догонку, ёпть.