Annotation of wpscripts/wpquotas/wpqsmtp.pm, Revision 1.1.1.1
1.1 yason 1: package wpqsmtp;
2:
3: use wpqio;
4: use Net::SMTP;
5:
6: our $SERVER = "192.168.21.221";
7: our $HELLO = "192.168.21.221";
8: #our $SENDER = 'it_support@reklamy.ru';
9: our $SENDER = 'wplimits@mail.reklamy.ru';
10: our $FROM = "it_support";
11: our $SUBJECT = "бЮЬ ЙЮРЮКНЦ МЮ wideprint/managers ОЕПЕОНКМЕМ!";
12:
13:
14: sub email($$)
15: {
16: my $user = shift;
17: my $amount = shift;
18: my $sv = new Net::SMTP( "$SERVER", Hello => "$HELLO", Debug => 1) or warn("Can't create SMTP object");
19: my $message = generate_msg($user, $amount);
20:
21: $sv->mail("$SENDER");
22: $sv->to($user . '@reklamy.ru');
23:
24: $sv->data();
25: $sv->datasend("From: $FROM\n");
26: # $sv->datasend("To: $user\n");
27: $sv->datasend("Subject: $SUBJECT\n\n");
28: $sv->datasend("Feedback message from " . $ENV{'REMOTE_ADDR'} . ":\n\n $text\n");
29: $sv->dataend();
30:
31: print "From: $FROM\n";
32: print "To: $user\n";
33: print "Subject: $SUBJECT\n\n";
34: print "$message\n";
35:
36: $sv->quit();
37:
38: }
39:
40:
41: sub email_cio($)
42: {
43: my $blacklisted_ref = shift;
44: my @blacklisted = @$blacklisted_ref;
45: my $line;
46: my $user;
47: my $amount;
48:
49: my $sv = new Net::SMTP( "$SERVER", Hello => "$HELLO", Debug => 1) or warn("Can't create SMTP object");
50:
51: $sv->mail("$SENDER");
52: $sv->to('cio@reklamy.ru');
53: $sv->cc('root@reklamy.ru');
54: $sv->cc('yason@reklamy.ru');
55:
56: $sv->data();
57: $sv->datasend("From: $FROM\n");
58: $sv->datasend("To: cio\n");
59: $sv->datasend("Subject: мЮПСЬХРЕКХ КХЛХРЮ ЛЕЯРЮ fileserver/managers\n\n");
60:
61: $sv->datasend("Свои квоты переполнили (текущая квота 15360 МБайт):\n");
62:
63: foreach $line (@blacklisted)
64: {
65: ($user, $amount) = split(/ /, $line);
66:
67: $sv->datasend("$user - каталог $amount Мбайт\n");
68: }
69: $sv->datasend("\n");
70: $sv->datasend(`df -h`);
71:
72: $sv->dataend();
73:
74: $sv->quit();
75:
76:
77: }
78:
79: sub generate_msg($$)
80: {
81: my $user = shift;
82: my $amount = shift;
83: my $needfree = $amount - 15360;
84:
85: return "- ЭТО АВТОМАТИЧЕСКИ СГЕНЕРИРОВАННОЕ СООБЩЕНИЕ -\n\n
86: Уважаемый пользователь '$user'!
87: Ваш каталог fileserver/managers/$user исчерпал лимит дискового пространства.
88: Пожалуйста, удалите или заархивируйте старые/ненужные файлы.
89: Если место не будет освобождено, в ближайшее время автоматическая система блокировки заблокирует право на запись в каталог.
90:
91: Текущий лимит на каталог: 15 ГБайт
92: Освободите по крайней мере $needfree МБайт.";
93:
94: }
95:
96:
97: return 1;
98:
99: # бЮЬ ЙЮРЮКНЦ МЮ wideprint/managers ОЕПЕОНКМЕМ!
100: # мЮПСЬХРЕКХ КХЛХРЮ ЛЕЯРЮ fileserver/managers
CVSweb