MTA가 메일 형식을 다시 지정해야 하는지를 감시하여 발견하는 경우 메일의 각 부분을 확인합니다. 텍스트 부분이 있으면 해당 문자 세트 매개 변수를 사용하여 두 번째 감시를 생성합니다. MTA는 변환이 필요하다고 확인된 경우에만 두 번째 감시를 수행합니다. 이 두 번째 감시의 입력 문자열은 다음과 같습니다.
IN-CHAN=in-channel;OUT-CHAN=out-channel;IN-CHARSET=in-char-set
in-channel 및 out-channel은 앞의 예와 동일하고 in-char-set는 문제가 있는 특정 부분과 연결된 문자 세트의 이름입니다. 첫 번째 감시에서 키워드가 일치하여 메일 형식이 다시 지정(예: MIME 구조 변경)되더라도 이 두 번째 감시에서 일치 항목이 발견되지 않으면 문자 세트 변환이 수행되지 않습니다. 일치 항목이 발견될 경우 다음과 같은 형식의 문자열이 생성됩니다.
OUT-CHARSET=out-char-set
여기서 out-char-set는 in-char-set를 변환해야 하는 문자 세트의 이름을 지정합니다. 이러한 문자 세트는 모두 MTA 테이블 디렉토리에 있는 문자 세트 정의 테이블 charsets.txt에서 정의해야 합니다. 문자 세트를 이 파일에 제대로 정의하지 않으면 변환이 수행되지 않습니다. 이 파일에는 수 백개의 문자 세트가 정의되어 있고 현재 사용 중인 대부분의 문자 세트가 이 파일에 정의되어 있기 때문에 이러한 경우는 흔하지 않습니다. charsets.txt 파일에 대한 자세한 내용은 imsimta chbuild(UNIX 및 NT) 유틸리티 설명을 참조하십시오.
모든 조건이 충족되면 MTA는 문자 세트 매핑을 작성하고 변환을 수행합니다. 변환된 메일 부분의 레이블은 변환된 문자 세트의 이름으로 다시 지정됩니다.
Charset-conversion 매핑이 확장되어 다음과 같은 여러 추가 기능을 제공합니다.
IN-CHARSET 옵션은 매핑 항목의 출력 템플리트에서 지정할 수 있습니다. 이 옵션이 있을 경우 인코딩된 단어에서 지정된 문자 세트를 무시합니다.
정수 0 또는 1을 가지는 RELABEL-ONLY 옵션을 지정할 수 있습니다. 이 옵션의 값이 1인 경우 OUT-CHARSET은 단순히 IN-CHARSET를 대체하고 레이블을 다시 지정하지는 않습니다.
IN-CHARSET 옵션을 사용하여 입력 문자 세트를 *로 설정하면 문자 세트가 “감지되어” 적절한 레이블이 결정됩니다.
로컬로 ISO-8859-1이 사용된다고 할 때, 인터넷에서 사용하기 위해서는 UTF-8로 변환되어야 합니다. 특히, 인터넷 연결이 tcp_local을 통한 것이라고 가정할 때 tcp_internal과 ims-ms는 내부 메시지가 만들어져 전달되는 위치입니다. 아래는 그러한 변환을 일으키는 CHARSET-CONVERSION 표입니다. 각 IN-CHAN 항목은 한 행에 있어야 합니다. 이를 나타내기 위해 역슬래시(\)가 사용됩니다.
CHARSET-CONVERSION IN-CHAN=tcp_internal;OUT-CHAN=tcp_local;CONVERT Yes IN-CHAN=tcp_local;OUT-CHAN=tcp_internal;CONVERT Yes IN-CHAN=tcp_local;OUT-CHAN=ims-ms;CONVERT Yes IN-CHAN=*;OUT-CHAN=*;CONVERT No IN-CHAN=tcp_internal;OUT-CHAN=tcp_local;IN-CHARSET=ISO-8859-1 OUT-CHARSET=UTF-8 IN-CHAN=tcp_local;OUT-CHAN=tcp_internal;IN-CHARSET=UTF-8 OUT-CHARSET=ISO-8859-1 IN-CHAN=tcp_local;OUT-CHAN=ims-ms;IN-CHARSET=UTF-8 OUT-CHARSET=ISO-8859-1 |
아래 CHARSET-CONVERSION 표는 EUC-JP의 로컬 사용과 ISO 2022 기반 JP 코드 사이의 변환을 지정합니다.
CHARSET-CONVERSION IN-CHAN=ims-ms;OUT-CHAN=ims-ms;CONVERT No IN-CHAN=tcp_internal;OUT-CHAN=ims-ms;CONVERT No IN-CHAN=tcp_internal;OUT-CHAN=tcp_internal;CONVERT No IN-CHAN=tcp_internal;OUT-CHAN=*;CONVERT Yes IN-CHAN=*;OUT-CHAN=ims-ms;CONVERT Yes IN-CHAN=*;OUT-CHAN=tcp_internal;CONVERT Yes IN-CHAN=tcp_internal;OUT-CHAN=*;IN-CHARSET=EUC-JP OUT-CHARSET=ISO-2022-JP IN-CHAN=*;OUT-CHAN=ims-ms;IN-CHARSET=ISO-2022-JP OUT-CHARSET=EUC-JP IN-CHAN=*;OUT-CHAN=tcp_internal;IN-CHARSET=ISO-2022-JP OUT-CHARSET=EUC-JP |