Здравствуйте, господа !#!/usr/local/bin/perl -w
use Net::SMTP;
$smtp = Net::SMTP->new('XXXX:25');
$smtp->mail('XXXX@XXXX');
$smtp->to('XXXX@XXXX');
$smtp->data();
$smtp->datasend('To:XXXX@XXXX');
$smtp->datasend("\n");
$smtp->datasend("Content-Type: text/plain; charset=\"windows-1251\"\n\n");
$smtp->datasend("ПРИВЕТ");
$smtp->dataend();
$smtp->quit;
Microsoft ESMTP MAIL Service, Version: 6.0.3790.4675
Используется Exchange2003, Письмо приходит, но с Русскими буквами проблема?Заранее благодарен.
> Здравствуйте, господа !
> $smtp->datasend("Content-Type: text/plain; charset=\"windows-1251\"\n\n");Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите исходный текст полученного письма и все там увидите...
> Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите
> исходный текст полученного письма и все там увидите...В параметрах сообщения пишется
Microsoft Mail Internet Headers Version 2.0
Received: from localhost.localdomain ([XX.XX.XX.XX]) by XXXX with Microsoft SMTPSVC(6.0.3790.4675);
Wed, 1 Jun 2011 16:38:26 +0400
To: XXXX
Content-Type: text/plain; charset="windows-1251"
From: XXXX
Return-Path: XXXX
Message-ID: <XXXN01zmRf6Ci6n00000168@XXXX>
X-OriginalArrivalTime: 01 Jun 2011 12:38:26.0611 (UTC) FILETIME=[CDA2C830:01CC2058]
Date: 1 Jun 2011 16:38:26 +0400
на экране выглядит (слово ПРИВЕТ)ÏÐÈÂÅÒ
c text/html то же самое.
Какие-то особенности Exchange ?
> на экране выглядит (слово ПРИВЕТ)
> ÏÐÈÂÅÒ$ echo 'ÏÐÈÂÅÒ'|recode -f u8..1251,u8..l1,1251..
ПРИВЕТ
$ _> c text/html то же самое.
> Какие-то особенности Exchange ?Конечно! Кривой он.
Взял входящий 1251 текст перекодировал его из latin-1 в UTF-8, потом результат _ещё_ раз перекодировал из 1251 в UTF-8.
Нормальная работа нормального почтового сервера, да.
> Взял входящий 1251 текст перекодировал его из latin-1 в UTF-8, потом результат
> _ещё_ раз перекодировал из 1251 в UTF-8.
> Нормальная работа нормального почтового сервера, да.Но, конечно и ---
>>>#!/usr/local/bin/perl -w
>>>use Net::SMTP;-- может участвовать в бардаке.
>> Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите
>> исходный текст полученного письма и все там увидите...Письма то у вас наверное приходят в нормальном виде, поэтому посмотрите исходный текст письма, который вы нормально видите, наверное не хватает какого-то заголовка для работы вашего почтовика или клиента, вот возьмите его и добавьте, ведь по datasend просто посылается строка...
>> Попробуйте Content-Type=text/html либо Content-Type=text/plain и вообще посмотрите
>> исходный текст полученного письма и все там увидите...
> В параметрах сообщения пишется
> Microsoft Mail Internet Headers Version 2.0
> Received: from localhost.localdomain ([XX.XX.XX.XX]) by XXXX with Microsoft SMTPSVC(6.0.3790.4675);
> c text/html то же самое.
> Какие-то особенности Exchange ?Да и вот еще я вообще то формирую письмо через модуль MIME:Parser, там можно указать и кодировку и кому и вложить файл и т.д.
> Да и вот еще я вообще то формирую письмо через модуль
> MIME:Parser, там можно указать и кодировку и кому и вложить файл
> и т.д.Хм, посмотр. MIME, а у Вас есть положительный опыт работы с Exchange?
покажите выводset | grep LANG
в той коносоли, где копировали кусок программы.