>Обьясните как закодировать текст в соответствии
>с RCF 2047 или где
>взять такой кодировщик текста.Быть может
>что-то я не догоняю.Кто может
>обьясните или на инфу тыкните.
>
все что не в первой половине ascii, включая
заголовки и тело письма должно быть закодировано
в 7'и битное представление, и это должно быть
представлено соответствующими заголовками в
headers и в теле: наличие MIME и чем закодировано
- для обратной операции.
Например:
Received: from unix1.jinr.dubna.su (unix1.jinr.dubna.su [159.93.17.121])
by cntc.dubna.ru (8.11.3/8.11.2) with ESMTP id fB8DOvY90509
for <lavr@dubna.ru>; Sat, 8 Dec 2001 16:24:57 +0300 (MSK)
Received: (from lavr@localhost)
by unix1.jinr.dubna.su (8.11.2/8.11.2) id fB8DQLL42683
for lavr@dubna.ru; Sat, 8 Dec 2001 16:26:21 +0300 (MSK)
(envelope-from lavr)
From: Andrey Lavrentyev <lavr@unix1.jinr.dubna.su>
Message-Id: <200112081326.fB8DQLL42683@unix1.jinr.dubna.su>
Subject: это проверка
X-ELM-OSV: (Our standard violations) hdr-charset=KOI8-R
To: lavr@dubna.ru
Date: Sat, 8 Dec 2001 16:26:20 +0300 (MSK)
Reply-To: lavr@unix1.jinr.ru
X-Mailer: ELM [version 2.4ME+ PL88 (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=KOI8-R
Hi Lavr,
проверка почты:
qwertyuiop[]
asdfghjkl;'
zxcvbnm,./
QWERTYUIOP{
ASDFGHJKL:"
ZXCVBNM<>
ЙНГШЩЗХЪ
ФЫВАПРОЛДЖЭ
ЯЧСМИТЬБЮ,
йцукенгшщзх
фывапролджэ
ячсмитьбю.
Best regards,
--
lavr / Andrey Lavrentyev
В данном примере почти кое-что неверно сделано,
те настроено для того чтобы можно было писать
в новости. Точнее:
правильно указаны заголовки и тело письма не
mime'ится потому как mailer настроен на
разрешение передачи 8bit - Content-Transfer-Encoding:
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=KOI8-R
и MTA настроено для пропуска 8bit'ой почты.
а вот в Subject'е пропускаются 8bit символы,
что противоречит RFC в отличие от всего остального
Итого: письмо кроме Subject соответствует RFC
второй вариант:
From lavr@mammoth.jinr.ru Sat Dec 8 16:35:49 2001
Return-Path: <lavr@mammoth.jinr.ru>
Received: from mammoth.jinr.ru (mammoth.jinr.ru [159.93.17.100])
by cntc.dubna.ru (8.11.3/8.11.2) with ESMTP id fB8DZmY94327
for <lavr@dubna.ru>; Sat, 8 Dec 2001 16:35:49 +0300 (MSK)
Received: from localhost (lavr@localhost)
by mammoth.jinr.ru (8.9.3/8.9.3) with ESMTP id QAA22407
for <lavr@dubna.ru>; Sat, 8 Dec 2001 16:35:48 +0300 (MSK)
(envelope-from lavr@mammoth.jinr.ru)
Date: Sat, 8 Dec 2001 16:35:48 +0300 (MSK)
From: Andrey Lavrentyev <lavr@mammoth.jinr.ru>
To: lavr@dubna.ru
Subject: =?KOI8-R?B?0NLP09TPINDSz8LB?=
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- вот
тут ВСЕ правильно.
Message-ID: <Pine.BSF.4.21.0112081634250.22398-100000@mammoth.jinr.ru>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=KOI8-R
Content-Transfer-Encoding: 8BIT
Привет Лавр,
Мама мыла раму.
Папа пошел в магазин.
qwerewtyetywqtuioweipuroep[ito[i
sdjhgdskuio;wquio;isdk;hjsdlhj
dskljhdjklhjkdlshjldshjldshjklds
dlkjghsdjklhjklsahjklhsajlhsajlhd
Best regards,
--
lavr
Формирование складывается из:
1) заголовки по RFC
2) тело письма
следующие заголовки отражают суть:
MIME-Version: 1.0
Content-Type: text/plain; charset=KOI8-R
Content-Transfer-Encoding: 8bit
Content-Type: должен указвать ту кодировку в
которой написано письмо
Content-Transfer-Encoding: собственно в чем отправлено 7bit или 8bit
Касательно тела, дополнительные аттачменты, одно
или несколько, взависимости от типа конвертера:
From lavr@unix1.jinr.dubna.su Sat Dec 8 16:55:02 2001
Return-Path: <lavr@unix1.jinr.dubna.su>
Received: from unix1.jinr.dubna.su (unix1.jinr.dubna.su [159.93.17.121])
by cntc.dubna.ru (8.11.3/8.11.2) with ESMTP id fB8Dt1Y01221
for <lavr@dubna.ru>; Sat, 8 Dec 2001 16:55:02 +0300 (MSK)
Received: (from lavr@localhost)
by unix1.jinr.dubna.su (8.11.2/8.11.2) id fB8DuPc42762
for lavr@dubna.ru; Sat, 8 Dec 2001 16:56:25 +0300 (MSK)
(envelope-from lavr)
From: Andrey Lavrentyev <lavr@unix1.jinr.dubna.su>
Message-Id: <200112081356.fB8DuPc42762@unix1.jinr.dubna.su>
Subject: just a probe
X-ELM-OSV: (Our standard violations) hdr-charset=KOI8-R
To: lavr@dubna.ru
Date: Sat, 8 Dec 2001 16:56:25 +0300 (MSK)
Reply-To: lavr@unix1.jinr.ru
X-Mailer: ELM [version 2.4ME+ PL88 (25)]
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=ELM714732651-42755-0_
Content-Transfer-Encoding: 8bit
--ELM714732651-42755-0_
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=KOI8-R
Hi Lavr,
посылаю тебе программу vcdgear, ниже attachment:
Best regards,
--
lavr / Andrey Lavrentyev
--ELM714732651-42755-0_
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset=KOI8-R
Content-Disposition: attachment; filename=vcdgear
Content-Description:
f0VMRgEBAQlGcmVlQlNEAAIAAwABAAAAyIkECDQAAACIDQEAAAAAADQAIAAGACgAFgAVAAYAAAA0
AAAANIAECDSABAjAAAAAwAAAAAUAAAAEAAAAAwAAAPQAAAD0gAQI9IAECBkAAAAZAAAABAAAAAEA
AAABAAAAAAAAAACABAgAgAQIAMgAAADIAAAFAAAAABAAAAEAAAAAyAAAAFgFCABYBQhkQgAAyFAA
<skipped>
AAAAAAAgAAAAAAAAAJ8AAAABAAAAAAAAAAAAAACADQoBALgBAAAAAAAAAAAAAAEAAAAAAAAAqAAA
AAcAAAAAAAAAuAEAADgMAQCgAAAAAAAAAAAAAAABAAAAAAAAABEAAAADAAAAAAAAAAAAAADYDAEA
rgAAAAAAAAAAAAAAAQAAAAAAAAA=
--ELM714732651-42755-0_--
имеем в заголовках расшифровку:
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=ELM714732651-42755-0_
Content-Transfer-Encoding: 8bit
поскольку тело состоит из двух кусков - Content-Type: multipart/mixed; boundary=ELM714732651-42755-0_
первый:
--ELM714732651-42755-0_
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=KOI8-R
Hi Lavr,
посылаю тебе программу vcdgear, ниже attachment:
Best regards,
--
lavr / Andrey Lavrentyev
второй - аттачмент:
--ELM714732651-42755-0_
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset=KOI8-R
Content-Disposition: attachment; filename=vcdgear
Content-Description:
где указан тип конвертации: base64 или quoted-printable, и имя файла, и после заголовка
идут данные.
любой mailer читает и парсит все это хозяйство
можно формировать полностью все 7bit и отсылать
законвертированными и текст и аттачменты.
Описание было составлено на самом простецком
уровне, и взяты базовые примеры.
Все форматы можно посмотреть при настройке
какого-нить M$ мейлера:
- разрешить пересылку 8bit - "Да"/"Нет"
- использовать MIME: "Да"/"Нет"
- для преобразования использовать base64?
- или quoted-printable?
попробовать различные настройки и посмотреть
на различных примерах какие будут форматы.